Multiple Imports From a Single File

πŸ“… Schedule multiple gift card imports from a single CSV file.

You can schedule multiple gift card imports to run at different dates and times by adding a scheduled_on column to your CSV file. Optionally, you can also use a template_id column to override the email template per scheduled batch.

Where this works: This feature is available for gift card Import from File only. It is not available for store credit or discount codes imports.

πŸͺœ How It Works

  1. Add a scheduled_on column to your CSV. Rows with the same scheduled_on value are grouped into one scheduled import.

  2. Upload the file via Bulk Operations β†’ Import from File.

  3. The app creates one SCHEDULED import per unique scheduled_on value, each containing the matching subset of rows.

  4. A toast confirms how many scheduled imports were created (e.g. "Created 3 scheduled imports").

  5. Each scheduled import appears in your Bulk Operations list and runs automatically at its scheduled time, in your Shopify store's timezone.

πŸ“… The scheduled_on Column

Supported formats

Format
Example
Notes

Date only

2025-12-25

Time defaults to 12:00 (noon).

Date + time

2025-12-25 14:30

24-hour format.

ISO 8601

2025-12-25T10:15:00

Timezone offsets like Z or +02:00 are accepted but ignored β€” the store timezone is used.

Timezone

Scheduled times are interpreted in your Shopify store's timezone (the IANA timezone configured in your Shopify settings). Verify it before scheduling.

Grouping rules

  • Rows with the exact same scheduled_on string are grouped together. 2025-12-25 and 2025-12-25T00:00:00 are treated as different values and create two separate imports.

  • Rows with an empty scheduled_on are ignored.

  • Rows with an unrecognized format are reported as errors and excluded from scheduling.

Example

Result:

  • One scheduled import for 2025-12-25 at 12:00 β†’ 2 gift cards

  • One scheduled import for 2025-12-26 14:30 β†’ 1 gift card

βœ‰οΈ The template_id Column (Optional)

Add a template_id column to override the email template for each scheduled batch.

How to find a template ID

  1. Go to Email β†’ Templates in the app.

  2. Click the template you want to use.

  3. The ID is the last segment of the URL, e.g. for …/app/templates/abc123/edit the ID is abc123.

Behavior

  • When template_id is present, the sender for that scheduled batch is automatically set to App Email β€” the form's sender selection is overridden.

  • For each scheduled_on group, the template_id value of the first row in that group is used. Other rows in the same group ignore their template_id.

  • Different scheduled_on groups can use different templates (one per group).

  • template_id is only honored when scheduled_on is also present. Without scheduled_on, the form's template selection is used instead.

Example

Result: two scheduled imports β€” one for Christmas using holiday_template, one for New Year using newyear_template.

πŸ’‘ Use Cases

  • Holiday calendar β€” schedule gift cards for Christmas, New Year, Valentine's, etc. in one upload.

  • Birthday rewards β€” upload a list of birthdays and let each card go out on the matching date.

  • Recurring rewards β€” pre-schedule monthly or quarterly gift cards.

  • Drip campaigns β€” schedule cards to send on Day 1, Day 7, and Day 30 of a customer journey.

FAQ

Can I mix scheduled and immediate rows in one file? No. If the file contains a scheduled_on column, every row must have a value in it (rows without one are ignored). To run an immediate import alongside scheduled ones, upload a separate file without the scheduled_on column.

What if my date format is invalid? Rows with unrecognized scheduled_on values are reported in the response (e.g. "Invalid date format: …") and excluded from the scheduled imports. Other rows are processed normally.

Can I cancel or reschedule an import after uploading? Yes β€” open the entry in Bulk Operations and abort it before it runs. To reschedule, create a new import (you can't edit a scheduled one in place).

Do all scheduled imports share the same form settings? Yes. Sender, customer-handling options, allowDownload, internal email, etc. apply to every scheduled batch from one upload. The only per-batch override is template_id, and it forces the sender to App Email for that batch.

Within one scheduled date, can different rows use different templates? No. Within a single scheduled_on group, only the first row's template_id is used β€” the rest of the rows are sent with the same template. To use different templates within the same date, use a slightly different time (e.g. 2025-12-25T09:00:00 and 2025-12-25T09:00:01) so they become separate groups, or split into multiple uploads.

Does this work for store credit or discount code imports? No β€” scheduled_on and template_id columns are only supported for gift card Import from File.

βœ… Tips

  • Test with 2–3 rows first to confirm your date format is parsed as expected.

  • Use ISO 8601 (2025-12-25T10:00:00) when in doubt β€” it's unambiguous.

  • Verify your store timezone in Shopify settings before scheduling.

  • Use descriptive template names (Holiday_2025, Birthday_Reward) to make template_id easy to identify.

Last updated