Skip to main content
Create the customer before you build a pay-in, payout, or issued bank account. Capabilities, accounts, and transfers are scoped to that customer. Use externalId as the stable mapping to the corresponding record in your system.

Individual customers

An individual requires only type. Include profile fields you already know, and add more only when the current capability or task needs them. Create the customer with POST /v3/customers:
Store the returned data.id as CUSTOMER_ID. See Individual onboarding for policy context.

Business customers

A business requires business.legalName. Create the business with the same operation:
Store the returned data.id as CUSTOMER_ID. See Business onboarding for policy and document context. Add directors, owners, and other business participants when they are known or requested. This example creates a director with POST /v3/customers/{customerId}/related-parties:
Store the returned data.id as RELATED_PARTY_ID. If you need to export a customer, use POST /v3/customers/{customerId}/export and follow its request schema. The json_basic_data format returns the current public v3 customer resource as a JSON attachment; each call recomputes current data and excludes documents and document metadata. For a portability-token format, send the receiving KYC project’s client ID as forClientId, not the Swipelux customerId. Use the returned data.token before data.expiresAt. Reusing the same Idempotency-Key and body replays that token result; use a new key to issue another token.

Read readiness from capabilities

A customer does not have a verification or readiness status in the API. Read the customer with GET /v3/customers/{customerId} for current profile data, then use capabilities and their openTaskIds to decide what the customer can do next.
Next, continue to Capabilities and tasks to discover and activate the product outcome you need.