Skip to main content
For automated systems

A REST API for virtual cards

Issue, manage, and monitor virtual cards programmatically — no dashboard clicks required. Webhooks for real-time transaction events, fleet-scale card operations, and a clean REST interface for any automation or bot system.

No KYC Full REST API
Automation & bots

When you're running bots, automation workflows, or fleet-scale operations, clicking through a dashboard for every card doesn't scale. CryptoCardy's REST API makes card issuance a single function call — POST to /v2/cards, get back card details as JSON, route them to your downstream processes. Webhooks keep you informed of every transaction in real time.

Core API Endpoints

EndpointMethodDescriptionRate Limit
/v2/cardsPOSTIssue a new card. Body: BIN, load_amount, billing_address10/min
/v2/cards/{id}GETRetrieve card details (masked PAN by default)60/min
/v2/cards/{id}PATCHUpdate card status: freeze, unfreeze, close60/min
/v2/cards/{id}DELETEDelete card. Remaining balance refunds to account60/min
/v2/transactionsGETList transactions with filters (date range, card_id, type)60/min
/v2/balanceGETCheck account balance60/min

Webhook Events

EventPayloadTypical LatencyUse Case
authorization.attemptcard_id, merchant, amount, currency, timestamp<1sReal-time spend tracking
authorization.successcard_id, merchant, amount, auth_code<1sTrigger downstream actions after payment
authorization.declinecard_id, decline_reason, merchant<1sAlerting, auto-retry logic
refund.processedcard_id, original_txn_id, amount<5sBalance reconciliation
card.expiringcard_id, expiry_date, days_remainingFires 30 days before expiry. Auto-reissue or alert

Bot-Fleet Architecture Pattern

The recommended architecture for fleet-scale card management:

1

Orchestrator

Your main service issues cards via POST /v2/cards when a new bot instance spins up. Each bot gets a dedicated card with a pre-computed load matching its expected spend.

2

Webhook listener

A single webhook endpoint receives events for all cards. Route authorization.decline events to an alert system. Use authorization.success to trigger the bot's next step.

3

Housekeeper

A cron job polls /v2/balance and /v2/transactions. Auto-tops up cards approaching zero. Deletes cards for terminated bots. Logs everything for audit.

BIN Recommendation per Workload

WorkloadBest BINWhy
Facebook ad bots471938 (Visa Business)Highest survival rate on FB payment review
Google ad bots471938 (Visa Business)Passes Google's AVS consistently
SaaS trial sign-up bots491653 (Visa Classic)Lighter BIN, lower cost, sufficient for trial auth
E-commerce bots485291 (Visa Platinum)Platinum tier = higher auth ceiling on large purchases
Cloud infra bots493847 (Visa Corporate)Corporate tier for cloud billing systems
Frequently asked

Common questions

What are the rate limits?

Production tier: 60 requests/minute. Card issuance endpoint: 10 cards/minute. All limits are per API key.

Can I issue cards without human interaction?

Yes. POST to /v2/cards returns full card details as JSON that your system can parse and route to any downstream process. See the full API documentation.

How do I authenticate?

Bearer token in the Authorization header. Generate tokens in dashboard → Settings → API. Multiple tokens with different permission scopes (read-only, card-issue, admin).

What happens if one card in a batch fails?

API calls are atomic per card. If card #47 fails, you get a 4xx for that request. Cards #1-46 remain active. Your script should check each response individually.

Is there a sandbox environment?

Yes. All accounts include a sandbox with test tokens. Sandbox cards are generated but not provisioned on real networks — use for integration testing before production.

Comments

Leave a Comment

Only registered members can comment.

Start issuing cards programmatically

Sign up, generate an API key, and your first card is one POST request away. Full sandbox included.

Get Started

Related pages