Skip to main content
POST
Register a new merchant

Authorizations

Authorization
string
header
required

Keycloak JWT. Roles: admin (platform admin — can register merchants, act on behalf of any merchant), merchant (dashboard user — scoped to their own merchant_id via user attribute mapper), POS terminals use client credentials flow with merchant_id injected via protocol mapper.

Body

application/json
email
string<email>
required
Example:

"shop@example.com"

business_name
string
required
Example:

"My Shop"

Response

Merchant registered — store client_secret securely

success
boolean
Example:

true

merchant_id
string<uuid>
Example:

"a1b2c3d4-e5f6-7890-abcd-ef1234567890"

client_id
string
Example:

"merchant-a1b2c3d4-e5f6-7890-abcd-ef1234567890"

client_secret
string

Shown only once — store securely.

Example:

"s3cr3t-shown-once"

note
string
Example:

"Store client_secret securely — it will not be shown again."