Skip to main content

Errors

Every API answers errors in the same shape as LoginLink and CrudApi:

{ "error": "live_not_ready", "error_description": "Live payments need at least one payment method with Live settings that passed their check." }

error is stable for code to check; error_description is for people and may change.

Statuserror
400invalid_requestA field is missing or wrong; the description says which.
400invalid_jsonThe body isn't valid JSON.
400invalid_queryA reporting API filter or parameter is wrong.
400live_not_readyNo method has passing Live settings yet.
400link_closedThe payment link is off, expired or used up.
401invalid_key / invalid_tokenNo key, an unknown key, or a revoked or expired one.
403wrong_key_typesk_ keys are for /api/v1, tdk_ keys for /api/tenant, pdk_ keys for /api/admin.
403insufficient_scopeThe key lacks the capability the route needs.
403tenant_suspendedThe platform suspended this account.
403owner_onlyOnly an owner can make someone an owner, in the console.
404not_foundNo such object (or outside this key's reach).
409idempotency_conflictThe Idempotency-Key was used with a different body.
409reference_conflict, code_taken, conflictAlready exists.
409finalThe payment's status is final.
409processingThe payment is processing and can't be cancelled.
409not_paid, refunds_not_supportedSee refunds.
409last_ownerThe account would have no owner left.
422statement_unreadable, report_unreadable, …An uploaded file couldn't be read; the description says why.
429quota_exceededA platform key's tenant-creation limit is used up.
503setup_requiredPayLink isn't set up yet.

Every call made with a tenant's keys is listed (without bodies) in Console → Developers → API request log, with its error code.