---
title: Import Templates and Instructions
slug: import-templates-and-instructions
docTags: 
createdAt: 2024-05-01T13:38:28.562Z
---

Each type of import has its own template and requirements. This article covers imports that an account holder can set up and provides links from the support team. Below are the CSV templates required for each of these imports, along with links to additional resources and help.

:::hint{type="warning"}
Special characters (such as "&") can cause disruptions during import, and we recommend removing them before attempting to import.&#x20;
:::

:::hint{type="info"}
Patron, Student, and Authentication imports can be performed by any account user with **Full Admin** permissions. Instructions for those imports can be found in their respective locations within Ludus and the manual.
:::

## Imports available on your admin account:

:::::ExpandableHeading
### Authentication

::loom{url="https://www.loom.com/embed/959da4441ce04a4f90b58092dcfa0ded?sid=726c31df-29d5-472e-b31f-4f13043f97e9"}

CSV Example:

::File{src="https://api.archbee.com/api/presign/-Wjcg2-gpBfUKvBZQaMyV-Sgqr5Nr9cGR4x4H_OxAQM-20250612-191029.csv" label="authenticators_example.csv"}

Before you can upload, you will first want to organize your records into a CSV file or Excel sheet. Each bit of information (ID, email, first name, last name, grade) will need to be in its own column. Each row will represent an individual record. For more information about what bits of information are needed for an Authentication record, check out this article.&#x20;

*Suggested Article*: [What information is needed for an Authentication record?](docId:3yUlsvJA8IrlynHNweolj)&#x20;

To import Authentication:

::::WorkflowBlock
:::WorkflowBlockItem
Navigate to **More&#x20;**--> **Authentication&#x20;**&#x66;rom the top navigation bar.
:::

:::WorkflowBlockItem
Click **Import**.
:::

:::WorkflowBlockItem
Drag your file to the grey area or click the space to choose a file from your computer. Click **Continue**.
:::

:::WorkflowBlockItem
Use the drop-down boxes to make sure the columns match up to the desired import area (i.e., email to email and Auth ID to Auth ID).
:::

:::WorkflowBlockItem
Click **Import**.
:::
::::

:::hint{type="success"}
**Note** - See [Authentication](docId\:Q4e7sc530lxYYF_rogNIA) for more information, including how to enable Authentication on your account. Import information is also provided in that resource.
:::
:::::

:::::ExpandableHeading
### Patrons

::loom{url="https://www.loom.com/embed/425d98001aae43b1b9a3fee710ebef4d?sid=5a96d4bc-21e8-4e67-89ef-bd01569a1bb1"}

CSV Example:

::File{src="https://api.archbee.com/api/presign/-Wjcg2-gpBfUKvBZQaMyV-gm7p8GK1Iwl3sMGLTZ7yl-20241104-203527.csv" label="patron_example.csv"}

To import Patrons:

::::WorkflowBlock
:::WorkflowBlockItem
Navigate to **Patrons&#x20;**--> **Database&#x20;**&#x66;rom the top navigation bar.
:::

:::WorkflowBlockItem
Click **Import**
:::

:::WorkflowBlockItem
Drag your file to the grey area or click the space to choose a file from your computer. Click **Continue**.
:::
::::

:::hint{type="success"}
**Note** - check out [Import Patrons to Ludus](docId\:WUrDmCx215pFiLJFm5J8H) for more detailed instructions/information.
:::

:::hint{type="info"}
**Note**: Check out [Signup Patrons for a Mailing List  Using Imports](docId\:eYmUEcv4W103-fDlPpgZv) for how to use imports to update your mailing lists.
:::
:::::

::::::ExpandableHeading
### Students

::loom{url="https://www.loom.com/embed/0523cfd3208a4fdab99bd34442f84409?sid=24a74563-acb1-4ed7-9fc5-2b0027100e3c"}

CSV Example:

::File{src="https://api.archbee.com/api/presign/-Wjcg2-gpBfUKvBZQaMyV-jLuIoiLxc1wjLSI3XXHKs-20250107-203059.csv" label="student_example.csv"}

To import Students:

:::::WorkflowBlock
:::WorkflowBlockItem
Go to **More** (at the top of your account) -> **Students**.
:::

::::WorkflowBlockItem
Select the **More Dropdown&#x20;**(on the students page) -> Select **Import**.

:::hint{type="warning"}
**Note** - Only the Student's first and last names are required upon import.
:::
::::
:::::

:::hint{type="success"}
**Note** - Check out [Students](docId\:djfCMSRvmQcKFVb4jJvh1) for more detailed instructions and background information on the Students feature.
:::


::::::

:::::ExpandableHeading
### Volunteers



::loom{url="https://www.loom.com/embed/8b161c333bd14167b8cc4fac8c423cd4?sid=31c0057f-033a-4c1f-9b04-7f1e5bce9334"}

CSV Example:

::File{src="https://api.archbee.com/api/presign/-Wjcg2-gpBfUKvBZQaMyV-4pgZwYEVdKUaO3pDawqNl-20250612-191401.csv" label="volunteers_example.csv"}

To import Volunteers:

::::WorkflowBlock
:::WorkflowBlockItem
Navigate to **More** (at the top of your account) -> **Volunteers**.
:::

:::WorkflowBlockItem
Once there, navigate again to **Volunteers&#x20;**(located along the top bar).
:::

:::WorkflowBlockItem
From here, select **Import Volunteers.**
:::
::::

:::hint{type="info"}
**Note** - You can also Import Volunteer Hours through Ludus support. Scroll further down this page for that information.
:::
:::::



***

## Imports that need to be done by Ludus Support:

::::ExpandableHeading
### Access Codes

CSV Sample:&#x20;

::File{src="https://api.archbee.com/api/presign/y_yS_sVZWor_q35Q4f09J-qxGD-E9cyUrT43cSy1iYt-20240925-151158.csv" label="access_code_example 9-25-2024.csv"}

To import **Access Codes** the following information can be included in the appropriate column of the CSV.

- **Access code:** **(Required)**  Can be letters or numbers,  and must be unique.  Can not contain special characters.&#x20;
- **Reference Text: (Optional)** Internal note for Admins that appears on the Access code screen.
- **Total Tickets: (Optional)** Used to set the total number of tickets a code can be used for.
- **Showtimes: (Optional)** Used to limit the code to unlocking a specific event time or times.   Event time ID is obtained via the URL for the Event (using the New Order button to get to that URL). Multiple time codes would be separated by a comma. ***See the example below.***
- **Email: (Optional)** If provided the Access code will be emailed to the address provided immediately on import.

![](https://api.archbee.com/api/optimize/hZcZIA5As4EsukOh0OMVE/dWidZlhoTkGQkS0u1uelE_chrome-n11j7rkk6e.png "Highlighted - where to locate the time ID for the Showtimes column")

**Any column not used on the CSV should be deleted**

:::hint{type="info"}
Access codes will be set to individual/Family if the Total TIckets column is used.
:::


::::

::::ExpandableHeading
### Discount Codes

Both **Flat Rate discounts** and **Percentage Off** discounts can be imported.  Each type has its own CSV template.

### Flat Rate Discount Template

::File{src="https://api.archbee.com/api/presign/y_yS_sVZWor_q35Q4f09J-0IUNIfHfmMH1Z7F7PVpR4-20240829-140712.csv" label="flat_discount_codes_example.csv"}

For Flat Rate discounts, the following items can be set by import:

- **Code (Required)**: Can be Letters, words, or numbers, or a combination of those. Must be unique, with no special characters or spaces.
- **Flat Amount (Required)**: The amount of the discount.
- **Flat Type(Required)**:  This sets the discount to be either per **Order** or per **Ticket. &#x20;**
- **Total Available (Optional)**: This is the total inventory for the discount code and is not the per-patron limit. Set to **0&#x20;**&#x74;o not use this feature (this will "uncheck" that option in the interface)&#x20;
- **Tickets Limit (Optional)**: this is the total number of tickets the discount code can be used on. Set to **0&#x20;**&#x74;o not use this feature.&#x20;
- **Ticket limit Type (Optional)**: if 'tickets\_limit' is set, you can set this to **all&#x20;**&#x6F;&#x72;**&#x20;patron**. Use 'all' if the discount code should expire after being used on that many tickets in total across all orders. Use 'patron' if it's a shared discount code amongst multiple patrons (per patron).
- **Global (Optional)**: Set this discount code to be a global discount. Set to **1&#x20;**&#x74;o enable, leave as **0&#x20;**&#x6F;r blank to not use.&#x20;
- **Global Shows (Optional)**: if global is set to 1, you can set the global events using their IDs, from the URL like this: '100073 100016 100023' \<- each of those is an event ID, be sure to put a *space&#x20;*&#x62;etween each ID (commas are not accepted)

**Percentage Off Discount Code Template**

::File{src="https://api.archbee.com/api/presign/y_yS_sVZWor_q35Q4f09J-BzRIiypSDEj2skSvbQPqh-20240829-144748.csv" label="discount_codes_example 8-24.csv"}

Importing percentage off discount codes allows for using the following settings via import.

- **Code (Required)**: Must be unique and not contain any spaces or special characters.
- **Percentage (Required)** The percentage to take off of ticket prices.
- **Total Available (Optional)**:  This is the total inventory of tickets for the discount code and is not a per-patron limit.  Set to **0** to not use this feature.
- **Tickets Limit (Optional)**: This is the total number of tickets the discount code can be used on. Set to **0&#x20;**&#x74;o not use this feature.
- **Ticket limit Type (Optional)**: if 'tickets\_limit' is set, you can set this to **all&#x20;**&#x6F;&#x72;**&#x20;patron**. Use 'all' if the discount code should expire after being used on that many tickets in total across all orders. Use 'patron' if it's a shared discount code amongst multiple patrons (per patron).
- **Global (Optional)**: Set the discount code to be a global discount. Set to **1&#x20;**&#x74;o enable, leave as **0&#x20;**&#x6F;r blank to not use.&#x20;
- **Global Shows (Optional)**: if global is set to 1, you can set the global events using their IDs, from the URL like this: '100073 100016 100023' \<- each of those is an event ID, be sure to put a *space&#x20;*&#x62;etween each ID (commas are not accepted)

:::hint{type="info"}
It is important to know that not all settings for discount codes can be imported.  Only settings listed above can be imported at this time.
:::
::::

::::ExpandableHeading
### Donations

It is possible to import historical donations.  These will appear as comped donations.
Donation Import Template:

::File{src="https://api.archbee.com/api/presign/y_yS_sVZWor_q35Q4f09J-zFRTvaShCFzQmxskaH8UX-20240829-143453.csv" label="donations_example  8 24.csv"}

:::hint{type="warning"}
**Note** - Patrons must be imported first, before importing historical donations.
:::

:::hint{type="info"}
**Note** - The format for the "submit date" column must be Year-Month-date (YYYY/MM/DD). If the year is the only date on the donation, import the donation in as 2025-01-01. It must have the formatting of a four-digit year, a two-digit month, and a two-digit day to import correctly.
:::

To import donations, the following columns are available:

- **Submit Date (Optional)**:  The date of the original donation.
- **Amount (Required)**: The amount of the donation
- **Full Name (Required)**: The First and Last names of the patron can be entered
- **Email (Required)**: The email address creates the record of donation.
- **Street Address (Optional)**: Street Address for Patron Record
- **City (Optional)**: For the Patron Record
- **State (Optional)**: For the Patron Record
- **Zip Code (Optional)**: For the Patron Record
- **Phone number (Optional)**: For the Patron Record
- **Company (Optional)**: For company-based donations.
- **Memo (Optional)**: Short message about the donation that appears on the confirmation email.
- **Category ID (Optional)**: If you have categories set, you can include the Category ID, listed on the Donation Categories page.
- **Level ID (Optional)**: If using levels, you can enter the Level ID number (located in the URL when clicking **Edit** next to the level to assign the donation to your specific levels. See the example below.
::::

::::ExpandableHeading
### Flex Passes

Importing Flex passes can be done for many reasons. While normally used when onboarding to set up existing sales from your prior system for events that will take place on Ludus, you can also use them for other purposes, such as an alternative to discount codes, where they can be used for comp tickets.

Flex Passes must be set up within your account before an import can take place.
When requesting an import, let us know if patrons should be emailed the passes or not.

**Flex Pass Import Template:**

::File{src="https://api.archbee.com/api/presign/y_yS_sVZWor_q35Q4f09J-lrCNWj2xGryV2K09d_c28-20240829-143804.csv" label="pass_example 8-24.csv"}

The following fields are utilized for Flex Pass imports:

- **Pass ID (Required)**: Obtained via the Pass URL (example below)

::Image[]{src="https://api.archbee.com/api/optimize/-Wjcg2-gpBfUKvBZQaMyV-Ul8hH8rc9jIU6nihWeGwT-20250618-133157.png" size="78" width="2842" height="884" position="center" darkWidth="2842" darkHeight="884" showCaption="false"}

:::hint{type="warning" indent="2"}
**Note** - IDs are unique to each pass. Two different passes (IE, Student Flex Pass vs. Senior Flex Pass) will have different IDs.
:::

- **Code (Required)**:  The code you want to assign to the Passholder must be unique and can be letters, numbers, or a combination of both. Special characters are not allowed.
- **First Name (Optional):** Passholder's first name
- **Last Name (Optional)**: Passholder's last name
- **Email (Required)**: This assigns the pass to the patron's record
- **Address (Optional**): Patron Address
- **Phone Number (Optional)**: Patron's phone number

:::hint{type="info"}
**Note** - Importing passes can optionally send an email of the passcode to the recipient.  Let Support know if you want the patrons emailed the pass at the time of import, or if you will later send the passes out.
:::
::::

::::ExpandableHeading
### Patron Properties

:::hint{type="success"}
See [Import Properties](docId\:YRBowvaWV0qnxZiwavUyS)  for instructions and assistance (as well as the CSV).
:::
::::

::::ExpandableHeading
### Prior Gift Card Sales

:::hint{type="success"}
See [Import  Prior Gift Card Sales](docId\:MOXlDCuxkhXXGj-eK6w4y)  for instructions and assistance (as well as the CSV).
:::
::::

::::ExpandableHeading
### Prior Ticket Sales

:::hint{type="success"}
See [Import Prior Ticket Sales](docId\:JeuaumsYrBSHoDPrY9oHb) for instructions and assistance (as well as the CSV).
:::
::::

:::ExpandableHeading
### Memberships

This applies to recurring and one-time memberships and is primarily done when importing memberships from a prior system into Ludus during onboarding.

You can import existing memberships paid for in another system with their expiration dates.  7 days before the imported memberships are set to expire, an email will be sent allowing patrons to set up a payment method to continue their membership by adding a credit card.

Set up membership passes before you import, and configure any fee settings in advance.

Before importing the membership passes, we strongly recommend emailing your patrons to let them know they will receive an email about the new membership in Ludus, so they don't think it is spam and know the links are safe.

**Membership template.**

::File{src="https://api.archbee.com/api/presign/hZcZIA5As4EsukOh0OMVE/T2mvhKLXur9XVs9Cr88uA_membership-example.numbers" label="membership_example.numbers"}

::File{src="https://api.archbee.com/api/presign/y_yS_sVZWor_q35Q4f09J-2mrxymX_RdrPIdD7e00M7-20240829-143529.csv" label="Recurring membership 8-24.csv"}

The following lists all fields, including what is required and what is optional for the import.

- **Pass ID (Required):** Obtained from the URL of the pass
- **Code (Required):** The passcode you assign must be unique.
- **First Name (Optional)**
- **Last Name (Optional)**
- **Address (Optional)**
- **Phone # (Optional)**: preferred formating would be (###) ###-####
- **Email (Required)**: Patron's email address
- **Expiration Date (Required)**: Formatted as DD-Month-YY (IE, 29-Jul-24
:::

::::ExpandableHeading
### Volunteer Hours

Volunteer hours can be imported to existing volunteer profiles. This is primarily meant for recording hours accumulated in a prior system when moving to Ludus.   This import would be completed after volunteer profiles are imported or created.

**CSV Sample file:**

::File{src="https://api.archbee.com/api/presign/y_yS_sVZWor_q35Q4f09J-WBVmV6krmcwATCczI0Jfm-20240809-130841.csv" label="volunteer_hours_example_8_2024.csv"}

To import volunteer hours, the following fields are available:

- **Email** (required)
- **Hours:&#x20;**&#x4E;umber of hours to apply.
- **Notes:&#x20;**&#x41;ny information to record for these hours. (Optional)
- **Role ID:&#x20;**&#x41;ssociated Role ID in Ludus. (Optional)
- **Volunteered Date:&#x20;**&#x44;ate to record the hours worked on. (Optional)
- **Submit Date:&#x20;**&#x44;ate submitted. (Optional)

:::hint{type="info"}
**Note** - The Role ID number can be located by clicking on the Volunteer tab and using the filter for the role you need the ID number.  Once filtered, the ID number is in the URL for the page.

![](https://api.archbee.com/api/optimize/y_yS_sVZWor_q35Q4f09J-1JJFrsKI-lvH-Fy3z1CS--20240809-133411.png)
:::


::::

***

## How to Handle Season Tickets/Passes

:::hint{type="warning"}
Season Passes are not imported. You will manually go in and "resell" the passes to those patrons.&#x20;
:::

For Season Passes, we cannot import that information. Instead, you will want to:

:::::WorkflowBlock
:::WorkflowBlockItem
**Import Patrons** into Ludus&#x20;

This can be done under **Patrons** -> **Database** -> **Import** (at the top).
:::

::::WorkflowBlockItem
Once patrons have been imported, you will want to **build your current season passes**.

:::hint{type="success"}
Make sure your events for the passes are set up before creating the pass.
:::

This can be accomplished under **More** (at the top of your account) ->  **Passes** -> **+Create Pass**.
::::

:::WorkflowBlockItem
Finally, you will "**sell**" those passes to current passholders.&#x20;

This means you will go to  **More** (at the top of your account) ->  **Passes.**

From here, you will "sell" the pass to the patron. You will select the events for the pass and reserve seats for them. This will need to be done for each pass.&#x20;

Once you do this, you can check out and choose to comp the order if they have already paid for this season ticket.
:::
:::::

**Want to see the steps above? Check out the following video:**

::loom{url="https://www.loom.com/embed/6994236b649c48248868cd851c3ad77a?sid=a7d72053-f1ed-4188-bd7d-b55caeff43fb"}



