CLI First
Tools
| Tool | Type | Description |
|---|---|---|
cards_cardholder | Setup | View the company’s cardholder |
cards_create_cardholder | Setup | Create a virtual card cardholder |
cards_update_cardholder | Setup | Update cardholder details |
cards_list | Core | List all virtual cards |
cards_create | Core | Create a virtual card (returns checkout URL) |
cards_details | Core | Get card credentials (PAN/CVC or redeem code) |
cards_check_payment | Core | Check if funding completed and issue card |
cards_retry_issue | Recovery | Retry failed card issuance |
cards_topup | Core | Top up card spending limit (returns checkout URL) |
cards_refund | Recovery | Refund a failed card’s payment |
cards_cancel | Core | Cancel/deactivate a card |
cards_assign | Management | Assign an agent to a card |
cards_unassign | Management | Remove agent assignment |
cards_assignments | Management | List agents assigned to a card |
cards_log_transaction | Tracking | Log a manual spend transaction |
cards_transactions | Tracking | List card transactions |
Card Providers
Provider (provider value) | Card Type | Limit | Cardholder Required? |
|---|---|---|---|
Prepaid gift cards (prepaid_gift) — default | Prepaid gift card (Visa) | $150.00 max | No |
Managed virtual cards (managed_virtual) | Virtual Visa/Mastercard | No maximum | Yes |
If you omit
provider, cards default to prepaid_gift (prepaid Visa, no cardholder required). Pass provider: "managed_virtual" for a full virtual card with no spending cap — that path requires a cardholder to be created first.Cardholder Setup (managed virtual cards)
Before creating managed virtual cards, you must create a cardholder once per company. This registers identity information for KYC compliance.Prepaid gift cards do not require a cardholder. You can skip this step if you only use
provider: "prepaid_gift".Creating a Card
Card creation follows a checkout flow — you receive acheckout_url for the card’s initial funding.
Complete payment
Open the
checkout_url in a browser and complete the payment. The checkout session expires after 30 minutes.Issue the card
After payment, check the status and issue the card:If payment succeeded, the card is issued automatically and the response returns
status: "active".Top-Up
Add more funds to an active card’s spending limit:checkout_url for the top-up payment, just like card creation.
Agent Assignments
Cards can be assigned to specific agents, controlling which agents have access to spend:Transaction Logging
Track agent spending by logging manual transactions:Managed virtual cards also capture transactions automatically via payment webhooks. Manual logging is for non-card purchases (e.g., prepaid gift cards or offline transactions).
Card Statuses
| Status | Meaning |
|---|---|
pending_payment | Checkout created, waiting for payment |
active | Card is issued and ready to use |
issuing_failed | Payment succeeded but card issuance failed (can retry) |
payment_failed | Checkout expired or payment failed |
refunded | Payment was refunded |
canceled | Card was deactivated |
Error Handling
| Error | Cause | Recovery |
|---|---|---|
duplicate_record | Cardholder already exists for this company | Use GET to view or PATCH to update |
invalid_input (no cardholder) | Tried to create managed virtual cards card without a cardholder | Create a cardholder first |
invalid_input (limit too low) | Spending limit below $1.00 (100 cents) | Increase the spending limit |
invalid_input (prepaid max) | prepaid gift card exceeds $150 limit | Use managed virtual cards for higher limits |
resource_not_found | Card ID doesn’t exist or belongs to another company | Use GET /v1/cards for valid IDs |
provider_error | Card provider API error during issuance | Use retry-issue or refund |