How to load discount codes into Zendesk from a CSV file

By Jake Marsh · Updated

To load discount codes into Zendesk, install Vouchwell, open it from the left navigation bar and create a pool with New pool. Then go to the Load codes tab, choose the pool, and paste your codes or choose a .txt or .csv file with one code per line and an optional expiry date in a second column. Check the preview, which flags repeated, expired and unreadable lines, and load. Codes already in the pool are skipped.

Prepare the file

  • One code per line.
  • Optional second column: the expiry date as YYYY-MM-DD, separated by a comma, semicolon or tab.
  • A header row such as code is skipped. Quotes are fine.
code,expires
SORRY-7KQ2,2027-03-31
SORRY-9TX4,2027-03-31
SORRY-2MHB

The file is read in your browser; only the codes are saved, in your Zendesk account.

Steps

  1. Create a pool with New pool: a name, a key, the reply text, and the settings in the table below.
  2. Open Load codes and choose the pool.
  3. Paste the codes or choose the file.
  4. Read the preview. It shows how many codes will be loaded and which lines are repeated, already expired or unreadable.
  5. Load. Up to 10,000 codes per load. Zendesk creates records in batches of 100, so 10,000 codes take a few minutes. Load larger files in parts.

Pool settings worth setting before you load

SettingWhat it does
Expiry for codes loaded without oneGives codes with no date in the file an expiry
Low-stock warning atWhen this many usable codes or fewer remain, the sidebar and admin page warn, and the ticket that crosses the level gets vouchwell_low_stock
Codes per ticketDefault 1; 0 for no limit
Warn if the customer got one in the last N days0 turns it off
Tag added to the ticketDefault vouchwell_<key>
Who can hand out these codesTick groups (and custom roles on Enterprise); nothing ticked means every agent
Note for agentsShown under the pool in the sidebar, such as "Orders more than 5 days late"

Codes past their expiry date are never handed out.

Get told when to restock

Make a trigger whose condition is the vouchwell_low_stock tag and whose action emails whoever orders more codes. The tag lands on the one ticket that crossed your level.

Keep the code list private

On the Vouchwell code object's Permissions tab (Admin Center > Objects and rules > Custom objects > Vouchwell code), set Object list and search to Only admins, so agents get codes through Vouchwell rather than browsing the list. Don't edit or delete Vouchwell code records by hand; use Vouchwell, which keeps each code and its hand-out in step.

Storage limits

Each pool, code and hand-out is one record of a few hundred bytes. Records count toward your account's custom object record limit and data storage. The Vouchwell page shows your account's current record count and limit, read from Zendesk, before you load.

What it costs

Vouchwell is $199 a month per Zendesk account, any number of agents, pools and codes, billed monthly by Zendesk with a 14-day trial. It needs Zendesk Suite or Support Enterprise for custom objects. See the Vouchwell documentation.

Vouchwell

Voucher and coupon codes from the ticket sidebar, one click each. Never the same code twice. $199 a month per Zendesk account.


Questions

Can I import Shopify or WooCommerce discount codes?

Yes, if you export them as a list. Vouchwell takes any codes, one per line, and doesn't connect to the store itself.

What happens if I load the same file twice?

Codes already in the pool are skipped, and the preview shows the repeats before you load.

How do I find who received a specific code?

Type the exact code in Find a code. It shows the pool, status, expiry, and who gave it, when and on which ticket.

Can I cancel a code that leaked?

Yes. In Find a code, an admin can void an unused code so nobody hands it out, and restore it later.

Can I export the codes that were handed out?

No. Handed out lists every code given, newest first, filtered by pool, ticket number or Only codes I handed out, inside the app only.


More Vouchwell guides


More Zendesk guides