Case study

MTC Kitchen: 4,500 printed gift cards

shopify admin apinode clibulk gift cardsprinter-ready csv+1 more
MTC Kitchen's Check Gift Card Balance page with a code field and the back of the printed gift card

4,500 thank-yous, printed on plastic

MTC Kitchen has been supplying Japanese restaurants since 1926: knives, sharpening stones, sushi and ramen supplies, dinnerware and the rest of what a professional kitchen runs on. Their customers are chefs and restaurant owners who have been buying from them for years.

To thank their most loyal customers, MTC Kitchen wanted to send something they could hold: 4,500 plastic gift cards, each one a working Shopify gift card for mtckitchen.com, with its own code printed on the back.

The printer could handle the plastic. The question was how to get 4,500 real gift card codes out of Shopify and onto those cards without a single typo.

Why the Shopify admin wasn't enough

Shopify's admin creates gift cards one at a time. At 4,500 cards, that's days of clicking, followed by copying every code into a spreadsheet by hand. One wrong character and a customer is holding a card that doesn't work.

The printer had its own requirement: one file, every code, formatted exactly the way it should appear on the card. And every card had to be live in Shopify, with the same value and expiration date, before the first one shipped.

A command-line tool that makes the cards

We built a small command-line tool that connects to MTC Kitchen's store through a private Shopify app and creates the gift cards in bulk.

  • It asks before it acts. How many cards, the expiration date, how long each code should be, the value, and a note that shows in the Shopify admin. Then it shows a summary, including the total value of the batch, and waits for a yes.
  • It creates real gift cards. Every card goes straight into Shopify through the Admin API, with a running count and any failures reported, never skipped quietly.
  • It writes one file for the printer. Every card lands in a single CSV: the code in uppercase, plus a version split into groups of four (XXXX XXXX XXXX) that the printer drops straight onto the card.
  • It runs in batches. The full order went through in runs, so each batch could be checked before the next.

Here's one of those runs, exactly as it appeared in the terminal:

node-gift-card-cli
➜  node-gift-card-cli npm start
✔ How many gift cards to create? 200
✔ Expiration date (MM/DD/YYYY or YYYY-MM-DD, leave blank for no expiration): 12/31/2026
✔ Number of characters in each code (8–20, alphanumeric): 12
✔ Gift card value in USD (e.g. 100 or 100.00): 5
✔ Note to attach to each gift card (shown in Shopify admin; clear the field for none): Bulk created by Text Connects GIFT CARD System.

About to create:
  Store:        MTC Kitchen
  Quantity:     200
  Value:        5.00 USD each (1,000 total)
  Expiration:   2026-12-31
  Code length:  12 alphanumeric characters
  Note:         Bulk created by Text Connects GIFT CARD System.
✔ Proceed? Yes

  Created 200/200  (0 failed)  ~0s remaining
➜  node-gift-card-cli 
One 200-card batch against MTC Kitchen's store: $1,000 in gift cards, created and exported in seconds.

A balance checker with no app

Someone holding a plastic card needs a way to see what's left on it. Shopify doesn't include a public balance page, and most stores add an app for one, which means another monthly fee and another script on every page.

We built it into MTC Kitchen's theme instead. The Check Gift Card Balance page shows the back of the card so customers know where to look, groups the code into fours as they type, and returns the balance. It asks Shopify the same question checkout asks when someone applies a gift card, so there's no app, no server of ours in the middle and nothing stored.

Want one on your store? See a gift card balance page, no app required in our Inspiration library.

The result

  • 4,500 gift cards created in Shopify and handed to the printer as one file.
  • No manual entry. Every printed code came straight from Shopify, so what's on the card is what Shopify accepts at checkout.
  • One place to track them. Each card carries a note in the Shopify admin saying how it was created, so MTC Kitchen can find and report on the program later.
  • A balance page with no monthly fee, built into the theme they already had.

Where else this fits

Any time a business needs a lot of gift cards at once, this approach works: customer thank-yous like MTC Kitchen's, trade show giveaways, corporate gifts, apology credits, or wholesale incentives. The tool takes a number, a value and a date, and gives back a file your printer, mail house or email platform can use.

Planning a gift card program? Tell us what's stuck.

What we touched

  • shopify admin api
  • node cli
  • bulk gift cards
  • printer-ready csv
  • gift card balance page
  • Shopify
  • Custom CLI tool, Theme development, Gift card program

Clarity before code.

$7,500

Data & Systems Audit
A focused audit of your product data, systems, and operations.