InstantCard Zapier Integration2025-10-02T09:32:21-04:00

InstantCard Zapier Integration

Introduction

InstantCard Card Ordering is a secure online service for producing custom ID cards. InstantCard’s Zapier integration offers two options for integration: a Basic option that creates, finalizes, and submits a card for printing in one step, and an Advanced workflow that allows you to manage each stage separately — from creating draft cards to generating previews, building, and submitting print jobs with multiple cards. This documentation explains how to use both options, including authentication, available endpoints, and detailed action references, so you can integrate InstantCard card ordering into your own workflows with confidence.

This integration is actions-only (no triggers) and pairs well with webhooks or HRIS/Forms/Sheets triggers.

View the Zapier Integration plain text markdown file


Who this is for:
• Teams that want to use Zapier to order employee ID cards automatically.
• HR onboarding flows (“New employee in HRIS → print ID”).
Google Sheets / Airtable to card creation.
Form tools (Typeform/Jotform) to card creation with photo.
E-commerce/Portal events that need automated printing & shipping.


Limits & Notes:
• You must have an InstantCard account and API access to connect.
• Card must be finalized before adding to print jobs.
• Preview returns Base64 PNG; use other tools to convert if needed.
• Same-day cutoff is 4 p.m. ET.

Zapier ID card printing Example Workflows

Quick, at-a-glance example Zapier workflows

  • Google Sheets → Basic: When a new row is added with employee info + photo URL, run Basic: Create Card & Submit Job to print and ship the badge.

  • HRIS (e.g., BambooHR) → Advanced with preview: New employee → Create Card (Draft)Get Card Preview (send to Slack for approval) → Finalize CardCreate Print JobSubmit.

  • Typeform with Photo → Holding bank: New response → Create Card (Draft)FinalizeAdd Cards to Print Job (existing open job) → Nightly schedule Submit Print Job. Use Check Balance and email a warning if funds are low.

  • Airtable batch day: New/updated records tagged “Approved” → Add Cards to Print Job in bulk → Submit at 3:45 p.m. ET to hit same-day shipping. (Same-day cutoff is 4 p.m. ET.)

Example Workflow — Membership Cards (Two-Zap Holding Bank with Manual Approval)

Overview

• Zap A (Create & Hold): builds the member’s card, creates a print job, and holds it (not submitted).
Zap B (Approve & Submit): when an admin flags the record as Approved, it submits that job to production.

This pattern is great when you want human review (name/photo/role) before anything is printed.

Zap A — Create & Hold (one job per member)

Trigger (pick one):

New membership in your system (e.g., WooCommerce Memberships / MemberPress / Stripe customer + tag)
New row in Google Sheets / new record in Airtable for a member signup
Form submission (Typeform/Jotform) with photo URL

Actions (InstantCard):

  1. Create Card (Draft)

    • Map member fields into the template’s field__* inputs (e.g., FullName, MemberID, Portrait URL).

  2. Finalize Card

    • id ← map from Create Card id.

  3. (Optional) Get Card Preview

    • id ← map from Create Card/Finalize Card id.

    • Use returned preview URLs in your review UI (Slack/Email/Airtable attachments).

  4. Create Print Job

    • Include card_ids with the finalized Card id.

    • Provide shipping details (to the member or to HQ) and number_of_copies (usually 1).

    • Do not submit here—this is the “holding bank.”

Post-actions (data bookkeeping):

  • Update your source record (Sheets/Airtable/CRM) with:

    • InstantCard Card ID (from step 1/2)

    • InstantCard Print Job ID (from step 4)

    • Front/Back Preview URL (from step 3, if used)

    • Approval Status = Pending (default)

Zap B — Approve & Submit

Trigger (pick one):
Source record (Sheets/Airtable/CRM) changes Approval Status to Approved
Admin clicks a UI button that sets an “Approved” flag/checkbox

Actions (InstantCard):

  1. (Optional) Check Balance for Job

    • job_id ← map from the stored InstantCard Print Job ID.

    • If ok = false, notify finance/ops and stop the Zap.

  2. Submit Print Job

    • id ← map from the stored InstantCard Print Job ID.

Post-actions (notifications & audit):
Update the source record with Submitted At timestamp.
Send Slack/Email to “Membership Ops” confirming the job was submitted, including the member name and job ID.

Data fields to store on your member record

• InstantCard Card ID
InstantCard Print Job ID
Preview URLs (front/back), if you use the preview step
Approval Status (PendingApproved)
Submitted At (timestamp)

Tips & Variations

• Daily Cutoff: If you aim for same-day shipping, schedule approvals before your operational cutoff.
Batch variant: Instead of one job per member, keep an “Open Batch Job” ID on a control record; use Add Cards to Print Job in Zap A and Submit Print Job once per day in Zap B.
Edits after review: If data changes before submission, update the source, regenerate the card (Create → Finalize), and replace the card in the job (remove/add).
Address policy: For memberships you mail directly to members, map the member’s address into Create Print Job; for bulk hand-out at events, ship to HQ.

Action Events

Helpful cross-references (API behaviors)
• Card must be finalized before adding to a print job.
• Previews return Base64 PNGs of front/back (and orientation).
• Print jobs support inline addresses, shipping provider IDs, copy count, and card_ids.

1) Basic: Create Card and Submit Job

Creates a card → finalizes it → creates a job → submits the job. Best when you don’t need to manage jobs manually. Inputs include the template and its dynamic fields, followed by optional delivery/shipping information.

Field key Type Required Populate from previous step?
card_template_id string → integer after selection No (user selects from dropdown)
field__{Token} (varies per template) string (text or image URL/Base64) No Usually from trigger data (new hire, form, etc.)
_label_map, _type_map string (computed) No No (hidden, auto-filled)
delivery_recipient_name string No* Usually from trigger/CRM. If any delivery fields are used, recipient_name, address1, and state become required by validation
delivery_street string No* From trigger/CRM; required if using address
delivery_city string No From trigger/CRM
delivery_state string No* From trigger/CRM; required if using address
delivery_postal_code string No From trigger/CRM
delivery_country string No From trigger/CRM
delivery_contact_phone string No From trigger/CRM
shipping_provider_id integer ✅ (default 1) No (user picks; dropdown of providers)
number_of_copies integer ✅ (default 1) No

Notes
• There’s no way to preview the card before submitting the print job when using Basic.
• Template fields are fetched dynamically from the API (tokens/types vary by template).
• Address preflight enforces recipient_name (full_name), address1, state when any delivery fields are supplied.

2) Create Card (Draft)

Creates a draft card from a chosen template and dynamic fields. Outputs a card.id that downstream steps use.

Field key Type Required Populate from previous step?
card_template_id string (selection) / integer No (user selects)
field__{Token} (varies per template) string (text or image URL/Base64) No Usually from trigger data
_label_map, _type_map string (computed) No No (hidden, auto-filled)

Images: if you provide a public image URL, the action fetches and converts it to Base64 automatically for the API. Data URIs are also accepted.

3) Finalize Card

Marks a draft card as finalized (required before adding to print jobs).

Field key Type Required Populate from previous step?
id (Card ID) string Yes → from “Create Card (Draft)” output (card.id)

4) Get Card Preview

Returns Base64 PNG previews (front/back); can also return short-lived shareable URLs.

Field Type Required Map from previous step? (suggested source)
id string Yes — from Create Card or Finalize Cardid
make_shareable_urls boolean No

Notes:
• The card must exist; finalized not strictly required to preview.
• Preview is returned as a Base 64 image. You may use another integration to convert to jpeg.

5) Create Print Job

Creates a print job; can include inline address, shipping, copies, and optional initial card_ids.

Field Type Required Map from previous step? (suggested source)
delivery_recipient_name string ⚠️ No
delivery_street string ⚠️ No
delivery_city string No
delivery_state string ⚠️ No
delivery_postal_code string No
delivery_country string No
delivery_contact_phone string No
shipping_provider_id integer No
number_of_copies integer No
card_ids list of string/number Yes — from Finalize Card → id

Notes: If inline address is provided, the action validates presence of full_name, address1, and state before calling the API.

6) Add Cards to Print Job

Adds one or more finalized cards to an existing print job.

Field Type Required Map from previous step? (suggested source)
job_id string Yes — from Create Print Job → id
card_ids list of string/number Yes — from Finalize Card → id (one or many)

Notes:
• Cards may be added directly through Create Print Job. This Action event allows you to break your workflow into several zaps for more complex integrations.

7) Check Balance for Job

Checks whether your org balance covers the job’s cost.

Field Type Required Map from previous step? (suggested source)
job_id string Yes — from Create Print Job → id

Notes:
• If it returns “false,” you may use Zapier filters to trigger an email prompting someone in your organization to replenish your account.
• You may have a separate zap that submits the print job later once the account is replensihed.

8) Submit Print Job

Submits the job to production/shipping. (Cutoff times depend on ops; the action simply POSTs to submit.)

Field Type Required Map from previous step? (suggested source)
id string Yes — from Create Print Job → id

Additional Resources

Photo Input w/ Crop & Sizing Tool

COMING SOON

FAQ

Do I have to finalize a card before printing?2025-10-02T07:27:26-04:00

Yes. Finalization is required before adding a card to a print job.

Can I preview the card before printing?2025-10-02T07:27:06-04:00

Yes. Use Get Card Preview to return Base64 PNGs and optional shareable URLs.

What’s the same-day shipping cutoff?2025-10-02T07:26:38-04:00

Orders placed by 4 p.m. ET ship the same day.

Is there a minimum order?2025-10-02T07:26:10-04:00

No. You can order a single card or large batches.

Can I use Zapier to automatically order ID cards?2025-10-02T07:25:34-04:00

Yes. Use the Basic action for one-step Create→Finalize→Print, or the Advanced workflow for multi-step control including preview, batching, holds and balance checks.

Go to Top