Response shape
On success the body is the data object. There is no envelope — the HTTP status tells you it succeeded.Success — 201 from create
code is the HTTP status,
message the specific reason, and name the operation that failed.
One problem
Several problems
Status codes
The three conflicts
409 means one of exactly three things:
A KYC link for an already-verified customer
A KYC link for an already-verified customer
This customer's KYC is already completed; a new verification link is not neededChanging a locked identity field after completion
Changing a locked identity field after completion
This customer's KYC is completed; verified identity fields can no longer be changedDeleting a customer that holds a balance
Deleting a customer that holds a balance
Cannot delete a customer that holds a balance — the amount is never disclosed. Clear the balance first.Verification lifecycle
For an individual, uploading the photo ID auto-submits and moves the customer
to
PENDING. For a business, submission waits until the company documents
and every owner’s documents are uploaded.
Identity locks on completion
Once a customer reachesCOMPLETED, the fields the provider verified can no
longer be changed — firstName, lastName, phone, dateOfBirth, country,
nationality, gender, placeOfBirth, tin, taxResidenceCountry and the
address. Touching any of them returns 409 and nothing is written.
Database-only fields (currency, countryId, currencyId) stay editable.
Validation reference
A few messages read generically — a reused share token returns plain
Bad Request, and a missing customer returns Not found. The status code plus
name tell you which operation failed.