type: "person") and company
(type: "company") — that use the same API with the same endpoints.
This page gathers ALL the differences in one place, so you never have to
guess which one applies.
The type is set at account creation and does not change. You see it in
GET /v1/me → type.
Complete differences table
Everything else — authentication, idempotency, webhooks, statuses, errors,
per-card spending limits, enabled services — works identically.
What it looks like in practice
- Person account
- Company account
- Registration:
POST /v1/auth/registerwithtype: "person"(or your operator creates it). - Verification: request your KYC link with
POST /v1/me/verification/linkand complete the wizard — until approved you can only fund (guide). - Crypto: your deposit wallets are born with the account (one per network+asset pair; receive only). Need a wallet with its own balance? You can hold 1 segregated wallet per network+asset pair.
- Cards: up to 1 virtual + 1 physical; the first issuance carries your data and documents — guide.
- No members: your login and your API keys operate the account.
Errors that reveal the account type
Did your operation outgrow a person account? The account type cannot be
changed through the API: ask your CBPay administrator to create the company
account and migrate the balance with an internal transfer (free and
instant).