Payca beta API — all operations
Every endpoint of the PayCA API as plain HTML: no JavaScript, no client-side rendering. 103 operations across 14 resource groups, specification version 1.0.0.
Health
Service liveness/health probe.
-
GET
/healthHealth check
Accounts
Operations for listing accounts and their balances.
-
GET
/v1/accountsRetrieve Accounts -
POST
/v1/accounts/admin-depositAdmin deposit (correction credit to an account) -
POST
/v1/accounts/admin-withdrawalAdmin withdrawal (write-off from an account) -
POST
/v1/accounts/offramp-depositOfframp deposit (master credit + transfer) -
GET
/v1/accounts/{id}/transactionsRetrieve Account Transactions -
GET
/v1/client/settingsWhat the calling client's accounts can do -
GET
/v2/accountsRetrieve Accounts with Enabled BINs -
GET
/v2/accounts/{accountId}/balanceRetrieve an account balance -
POST
/v2/accounts/{accountId}/exchange-quotePrice an exchange between two accounts -
POST
/v2/accounts/{accountId}/exchangesExchange between two accounts -
POST
/v2/accounts/{id}/topup/cardTop up an account using an external payment card -
GET
/v2/accounts/{id}/topup/{txId}Retrieve account card top-up status -
POST
/v2/accounts/{id}/withdraw/cardWithdraw funds from an account to an external payment card -
GET
/v2/accounts/{id}/withdraw/{txId}Retrieve account card withdrawal status
Cards
Issue, manage, and retrieve cards and details.
-
GET
/v1/cardsList Cards -
POST
/v1/cardsIssue a New Card -
GET
/v1/cards/{id}Retrieve Card by ID -
DELETE
/v1/cards/{id}Close Card -
GET
/v1/cards/{id}/decline-rateCard Decline Rate -
POST
/v1/cards/{id}/freezeFreeze Card -
GET
/v1/cards/{id}/sensitiveGet card sensitive info -
POST
/v1/cards/{id}/tokenizeStart Card Tokenization -
POST
/v1/cards/{id}/topupTop Up Card -
GET
/v1/cards/{id}/transactionsRetrieve Card Transactions -
POST
/v1/cards/{id}/unfreezeUnfreeze Card -
POST
/v1/cards/{id}/withdrawWithdraw from Card -
GET
/v2/accounts/{id}/transactionsRead versioned mixed account history -
POST
/v2/cardsAccept a buffered card issuance quote -
GET
/v2/cards/issue/capabilityRead selected client, source and programme admission -
POST
/v2/cards/issue/quoteQuote explicit buffered issuance -
GET
/v2/cards/operations/{operation_id}Read an accepted operation and its exact financial result -
GET
/v2/cards/{id}Read card balance separately from its buffer -
DELETE
/v2/cards/{id}Request provider-confirmed closure -
POST
/v2/cards/{id}/freezeFreeze with a manual or insufficient-funds reason while preserving buffer and other blocks -
POST
/v2/cards/{id}/topupAccept a buffered card funding quote -
POST
/v2/cards/{id}/topup/quoteQuote card-directed funding with at most fifty percent allocation -
GET
/v2/cards/{id}/transactionsRead versioned mixed card history -
POST
/v2/cards/{id}/unfreezeRemove the manual or insufficient-funds freeze reason -
POST
/v2/cards/{id}/withdrawWithdraw card principal without accessing the buffer
Transactions
Retrieve transactions and related activity.
-
GET
/v1/cards/transactions/{id}Retrieve Transaction
Deposits
Provider-independent account deposits (top-ups from outside Payca).
The funding provider is an internal routing decision and never appears in
the API. Statuses are normalised: a deposit reads as completed only once
settlement was confirmed AND the balance credit was recorded, so a browser
returning from a checkout page never means funds are available.
Integrations discover an available route, quote it, create an idempotent deposit order, redirect the payer to hosted checkout, and then use deposit status and webhooks to reconcile the final outcome.
-
POST
/v2/accounts/{accountId}/deposit-quoteQuote a deposit -
GET
/v2/accounts/{accountId}/depositsList deposits for an account -
POST
/v2/accounts/{accountId}/depositsCreate a deposit -
GET
/v2/accounts/{accountId}/deposits/{depositId}Retrieve a deposit -
GET
/v2/accounts/{accountId}/funding-optionsList funding options for an account
Webhooks
Configure and manage webhooks.
-
GET
/v1/webhooksList Webhooks -
POST
/v1/webhooksSet Webhook URL -
DELETE
/v1/webhooksDelete Webhook -
POST
/v1/webhooks/resendResend Webhooks
Sandbox
Endpoints for sandbox/testing flows.
-
POST
/sandbox/transactionsCreate sandbox transaction
Bins
Deprecated endpoints to retrieve BINs and fees.
-
GET
/v1/binsList the BIN catalog -
GET
/v1/bins/{bin}/capacityGet per-cardholder issuance capacity on a BIN -
GET
/v1/bins/{bin}/cardholder-registrationCan a new cardholder be registered on this BIN right now
Users
User management: create, update, and retrieve users and their accounts.
-
GET
/v1/usersList Users -
POST
/v1/usersCreate User -
POST
/v1/users/transferTransfer between Payca accounts -
GET
/v1/users/{id}Get User by ID -
GET
/v1/users/{id}/account/transactionsList User Account Transactions -
POST
/v1/users/{id}/accountsOpen a user account in another currency -
POST
/v1/users/{id}/binsUpsert User BIN -
GET
/v1/users/{id}/card/transactionsList User Card Transactions -
GET
/v1/users/{id}/cardholderGet User Cardholder -
POST
/v1/users/{id}/cardholderCreate User Cardholder -
PATCH
/v1/users/{id}/statusUpdate User Status
Cardholders
Cardholder management: list, get, create cardholders. Reference data for registration (cities, occupations, regions) and file upload.
-
GET
/v1/cardholdersList Client Cardholders -
GET
/v1/cardholders/citiesList Cardholder Cities -
POST
/v1/cardholders/filesUpload Cardholder File -
GET
/v1/cardholders/occupationsList Cardholder Occupations -
GET
/v1/cardholders/regionsList Cardholder Regions -
GET
/v1/cardholders/{id}Get Cardholder -
PATCH
/v1/cardholders/{id}Update Cardholder Data -
POST
/v1/cardholders/{id}/photosUpload Cardholder Photos -
POST
/v1/cardholders/{id}/retryRetry Submission of a Failed Cardholder -
POST
/v1/cardholders/{id}/submitSubmit Cardholder to Provider
KYC
KYC verification for B2C card issuance. Upload identity documents and selfie, submit for admin review, track status via webhooks.
-
GET
/v1/users/{id}/kycGet User KYC Status -
GET
/v1/users/{id}/kyc/documentsList KYC Documents -
POST
/v1/users/{id}/kyc/documentsUpload KYC Document -
GET
/v1/users/{id}/kyc/documents/{docId}Get KYC Document -
DELETE
/v1/users/{id}/kyc/documents/{docId}Delete KYC Document -
GET
/v1/users/{id}/kyc/documents/{docId}/contentDownload KYC Document Content -
PATCH
/v1/users/{id}/kyc/documents/{docId}/statusUpdate KYC Document Status (Admin) -
PATCH
/v1/users/{id}/kyc/notesUpdate User KYC Notes (Admin) -
PATCH
/v1/users/{id}/kyc/statusUpdate User KYC Status (Admin) -
POST
/v1/users/{id}/kyc/submitSubmit KYC for Review
Exchange
Exchange operations (rates, orders, withdrawals) and settlement balance queries.
-
POST
/v1/exchange/ordersCreate exchange order -
GET
/v1/exchange/orders/{orderId}Get exchange order status -
GET
/v1/exchange/ratesGet exchange rates -
GET
/v1/exchange/settlement/balanceGet settlement balance -
POST
/v1/exchange/settlement/check-increaseCheck settlement balance increase -
GET
/v1/exchange/withdrawal-destinationsList allowed withdrawal destinations -
POST
/v1/exchange/withdrawalsCreate fiat withdrawal -
GET
/v1/exchange/withdrawals/{withdrawalId}Get withdrawal status
Virtual IBAN
A dedicated EUR IBAN for your company: receive SEPA payments and pay out by
SEPA. PayCA opens the IBAN for you after your company verification and sets
it up individually; until then every call returns 403 capability_disabled.
Fees, including monthly ones, are deducted from the IBAN balance.
Step-by-step flow, statuses and error codes: Virtual IBAN guide.
-
GET
/v1/corporate-banking/{companyId}/accountGet virtual IBAN -
POST
/v1/corporate-banking/{companyId}/payoutsPay out by SEPA -
GET
/v1/corporate-banking/{companyId}/payouts/{payoutId}Get a payout -
POST
/v1/corporate-banking/{companyId}/quoteQuote a payout -
POST
/v1/corporate-banking/{companyId}/transfersMove money to your own EUR account
Payouts
-
GET
/v2/accounts/{accountId}/payout-optionsList payout options for an account -
POST
/v2/accounts/{accountId}/payout-quotePrice a payout without creating it -
GET
/v2/accounts/{accountId}/payoutsList payouts for an account -
POST
/v2/accounts/{accountId}/payoutsCreate a payout -
GET
/v2/accounts/{accountId}/payouts/{payoutId}Retrieve a payout