Skip to content

Bulk Operations

Bulk operations let you create and distribute large numbers of gift cards in one job — without issuing them one at a time.

Bulk operations hub

Three types of bulk jobs

Job type What it does Best for
Generate Creates codes with a set balance, no recipient Export to CSV, physical card programs, internal use
Send Creates codes and emails each one to a recipient Corporate gifting, loyalty rewards, promotions
Update Adjusts the balance on a set of existing cards Adding bonus credit, correcting balances

Bulk Generate

Use this to create a batch of gift card codes that you'll distribute yourself (e.g., export and print, add to packaging, hand to a partner).

Bulk generate

Settings

Field Description
Quantity Number of cards to generate (up to 10,000 per job)
Amount per card Fixed balance loaded on each card
Expiry Optional expiry date
Gift card type Which design/settings template to use
Export format CSV with code, balance, expiry, and status

After generation

When the job completes, you can download a CSV with all generated codes and their details. The codes are also live in Shopify as active gift cards.

Bulk Send

Use this to send gift cards to a list of named recipients. Each person gets their own card and a personalized email.

Bulk send

Preparing your recipient list

Upload a CSV with the following columns:

Column Required Description
email Yes Recipient's email address
first_name Recommended Used in email greeting
last_name Optional
amount Optional Per-recipient amount (overrides default if set)
message Optional Per-recipient personal message
send_date Optional Schedule delivery (ISO date: 2026-03-15)

Example CSV:

email,first_name,last_name,amount,message
jane@example.com,Jane,Smith,50,Thank you for your loyalty!
bob@example.com,Bob,Jones,100,Happy birthday Bob!

Settings

  • Default amount — used for rows that don't specify an amount
  • Gift card type — design and settings template
  • Sender name — shown in the email as "A gift from..."
  • Default message — used when a row doesn't have a message column
  • Schedule — send all at once or spread over time (e.g., 500/hour to avoid email throttling)

Sending throttle

For large lists (1,000+), GiftCard Hero spreads the sends over time to avoid hitting Shopify's email rate limits. You can set the rate in the advanced options.

Bulk Update

Adjust balances on a set of existing cards. Use cases:

  • Add $10 bonus credit to all cards issued in a specific month
  • Zero out cards that are past expiry
  • Correct an incorrect balance after a system issue

Upload a CSV with:

code,new_balance
ABCD-1234-EFGH-5678,75.00
IJKL-9012-MNOP-3456,0.00

Note: Bulk Update sets the balance to the value you provide — it doesn't add or subtract. To add $10 to a card with $40, you'd set new_balance to 50.00.

Tracking results

After starting any bulk job, you can monitor progress in Bulk → Results.

The results page shows:

  • Job status (queued, running, completed, failed)
  • Progress (e.g., 847 / 1000 sent)
  • Per-row errors (e.g., invalid email, duplicate code)
  • Download links for the results CSV

Results CSV

The results CSV includes all input columns plus:

  • status — success / failed / skipped
  • error — error message if failed
  • helpscout_url — public URL of the gift card (for Generate jobs)
  • code_last4 — last 4 digits of the gift card code

Limits and performance

Limit Value
Max cards per Generate job 10,000
Max rows per Send job 10,000
Max rows per Update job 50,000
Estimated speed (Generate) ~500 cards/minute
Estimated speed (Send) ~200 emails/minute

Large jobs run in the background — you don't need to keep the browser open. You'll receive a summary email when the job completes.