# KemyCard API - [Introduction](https://docs.kemycard.com/index.md): Welcome to the KemyCard API documentation - [API Keys](https://docs.kemycard.com/getting-started/api-keys.md): Generate your test and live API keys from the partner dashboard - [First API Call](https://docs.kemycard.com/getting-started/first-call.md): Make your first API call in 2 minutes - [Test Mode vs Live Mode](https://docs.kemycard.com/getting-started/test-mode.md): Understand the difference between test and live environments - [Customer to Card](https://docs.kemycard.com/guides/customer-to-card.md): Complete flow: create a customer, verify identity, and issue a card - [KYC Flow](https://docs.kemycard.com/guides/kyc-flow.md): Verify your customer's identity: from basic to verified - [POA Flow](https://docs.kemycard.com/guides/poa-flow.md): Verify your customer's address: from verified to full - [Top Up a Card](https://docs.kemycard.com/guides/topup-card.md): Fund a card from your Visa or Mastercard balance - [Ops Balance](https://docs.kemycard.com/guides/ops-balance.md): Manage your operational balances and fund your account - [Webhooks](https://docs.kemycard.com/guides/webhooks.md): Receive real-time notifications when events happen in your account - [Error Handling](https://docs.kemycard.com/guides/error-handling.md): Understand and handle API errors properly - [API Reference](https://docs.kemycard.com/api-reference/overview.md): Technical reference for all KemyCard API endpoints - [Create a Customer](https://docs.kemycard.com/api-reference/customers/create.md): Creates a new customer with verification level `basic`. All fields are required except `metadata`. - [List Customers](https://docs.kemycard.com/api-reference/customers/list.md) - [Get a Customer](https://docs.kemycard.com/api-reference/customers/get.md) - [Update a Customer](https://docs.kemycard.com/api-reference/customers/update.md): Partially update a customer. Only send the fields you want to modify. - [Suspend a Customer](https://docs.kemycard.com/api-reference/customers/suspend.md): Suspends an active customer. Their cards, wallets, and other resources become unusable. Suspension is managed by you and can be reverted with the activate endpoint. Does not work on closed customers. - [Activate a Customer](https://docs.kemycard.com/api-reference/customers/activate.md): Reactivates a customer you suspended. Does not work on closed customers — a closed customer's status can no longer be changed. - [List Card Products](https://docs.kemycard.com/api-reference/card-products/list.md): Returns the catalog of available card products with their limits, fees, and features. - [Get a Card Product](https://docs.kemycard.com/api-reference/card-products/get.md): Returns details of a specific card product by its UUID. - [Create a Card](https://docs.kemycard.com/api-reference/cards/create.md): Creates a card for a customer from a card product (see `GET /cards/products`). - [List Cards](https://docs.kemycard.com/api-reference/cards/list.md) - [Get a Card](https://docs.kemycard.com/api-reference/cards/get.md) - [Top Up a Card](https://docs.kemycard.com/api-reference/cards/topup.md): Tops up an active card of a reloadable product. - [Freeze a Card](https://docs.kemycard.com/api-reference/cards/freeze.md): Freezes an active card. Payments are declined until it is unfrozen. Only active cards can be frozen. Sends a `card.frozen` webhook. - [Unfreeze a Card](https://docs.kemycard.com/api-reference/cards/unfreeze.md): Reactivates a frozen card. Only frozen cards can be unfrozen. Sends a `card.unfrozen` webhook. - [Get Card Sensitive Data](https://docs.kemycard.com/api-reference/cards/sensitive.md): Returns the full card number, the CVV and the expiry date. This is the only endpoint that returns them: every other response only shows `last_four`. - [List Card Transactions](https://docs.kemycard.com/api-reference/cards/transactions.md): Operations of a card, most recent first — creation, top-ups, payments, declines, refunds and fees. - [Get KYC Link](https://docs.kemycard.com/api-reference/kyc/link.md): Returns the identity verification link for a customer (basic → verified). Redirect your customer to `verification_url`. - [Get KYC Status](https://docs.kemycard.com/api-reference/kyc/status.md): Returns the result of the identity verification of a customer. - [Synchronize Identity](https://docs.kemycard.com/api-reference/kyc/synchronize.md): Aligns the identity you declared for a customer (`first_name`, `last_name`, `date_of_birth`) with the identity read on the document during the KYC, then lifts the `identity_mismatch` restriction: the customer is `active` again. - [Submit Proof of Address](https://docs.kemycard.com/api-reference/poa/document.md): Submits the proof of address of a customer (verified → full) and starts its verification. The document must confirm the address you declared for this customer. - [Get POA Status](https://docs.kemycard.com/api-reference/poa/status.md): Returns the result of the proof of address verification of a customer. - [Create a Wallet](https://docs.kemycard.com/api-reference/wallets/create.md): Creates a crypto wallet for a customer. Debits the ops balance (type `others`). - [List Wallets](https://docs.kemycard.com/api-reference/wallets/list.md) - [Create a Virtual Account](https://docs.kemycard.com/api-reference/virtual-accounts/create.md): Creates a virtual bank account for a customer. Requires `full` verification level. - [List Virtual Accounts](https://docs.kemycard.com/api-reference/virtual-accounts/list.md) - [Browse Catalog](https://docs.kemycard.com/api-reference/gift-cards/catalog.md) - [Purchase a Gift Card](https://docs.kemycard.com/api-reference/gift-cards/purchase.md): Purchases a gift card for a customer. Debits the ops balance (type `gift_cards`). - [Get Balance Summary](https://docs.kemycard.com/api-reference/balance/summary.md): Returns all operational balances for the partner. - [List Transactions](https://docs.kemycard.com/api-reference/balance/transactions.md): Returns the transaction history (credits and debits) on the partner's ops balances. - [Create Webhook Endpoint](https://docs.kemycard.com/api-reference/webhooks/create.md): Creates a new webhook endpoint. A ping is sent immediately to validate the URL — it must respond with a `2xx` status code. - [List Webhook Endpoints](https://docs.kemycard.com/api-reference/webhooks/list.md): Returns all webhook endpoints for your account (active and inactive). - [Get Webhook Endpoint](https://docs.kemycard.com/api-reference/webhooks/get.md): Returns details of a specific webhook endpoint. - [Update Webhook Endpoint](https://docs.kemycard.com/api-reference/webhooks/update.md): Update the URL, events, description, or active status. If the URL changes, a new ping is sent for validation. - [Rotate Webhook Secret](https://docs.kemycard.com/api-reference/webhooks/rotate-secret.md): Generates a new HMAC secret for this endpoint. The old secret is **invalidated immediately**. Update your server code with the new secret before any pending deliveries arrive. - [Ping Webhook Endpoint](https://docs.kemycard.com/api-reference/webhooks/ping.md): Sends a test ping to verify the endpoint is reachable and responding with a `2xx` status code. - [List Deliveries](https://docs.kemycard.com/api-reference/webhooks/deliveries.md): Returns the paginated delivery history for a specific webhook endpoint. Each delivery shows the event type, status, HTTP response code, attempt number, and idempotency key. - [List Available Events](https://docs.kemycard.com/api-reference/webhooks/events.md): Returns the list of all event types you can subscribe to. ## OpenAPI Specs - [openapi](/openapi.yaml) This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.