CustomerRegistration¶
Endpoint¶
POST /customer/registration
Description¶
Creates a new customer profile in the LEAD lifecycle stage.
The server accepts public registration fields and resets manager/KYC/AML/internal fields to safe defaults.
registered: true confirms that the record was created. It does not mean that
the CRM lifecycle is REGISTERED. Every public registration starts with
lifecycle_stage = 0 (LEAD). A manager or workflow must explicitly promote
the lead to REGISTERED = 1.
The brand is resolved from the HTTP request host. A body brand value is used only as a fallback when the request context permits it.
Registration also resolves marketing attribution. A normal brand landing page is matched automatically; an external landing can provide an attribution object; a mobile application can provide an installation_id. See Marketing Attribution API.
Request¶
{
"email": "[email protected]",
"password": "strong-password",
"first_name": "John",
"last_name": "Smith",
"phone": "+35700000000",
"brand": "default",
"preferred_language": "en",
"timezone": "Asia/Nicosia",
"marketing_allowed": 1
}
External landing attribution¶
{
"email": "[email protected]",
"password": "strong-password",
"first_name": "John",
"attribution": {
"affiliate": "AFF1024",
"campaign": "FB_CY_01",
"utm_source": "partner-landing",
"utm_medium": "affiliate",
"sub_id": "creative-7"
}
}
Mobile registration¶
{
"email": "[email protected]",
"password": "strong-password",
"installation_id": "4c0b68c8-3c90-46dc-a0dc-e092f879dd80"
}
Response¶
{
"registered": true,
"customer": {
"customer_id": 1,
"email": "[email protected]",
"first_name": "John",
"last_name": "Smith",
"full_name": "John Smith",
"status": 0,
"lifecycle_stage": 0,
"enable": 1,
"deposit_allowed": 1,
"withdrawal_allowed": 1,
"brand": "default",
"created_time": 1777600000,
"updated_time": 1777600000
}
}
Errors¶
| HTTP | Error | Description |
|---|---|---|
400 |
INVALID_DATA |
Invalid request body |
404 |
BRAND_NOT_FOUND |
Request host and fallback brand do not resolve to an active brand |
409 |
DUPLICATE_RECORD |
Email is already registered |
Lifecycle¶
Public registration always creates LEAD = 0. Conversion to
REGISTERED = 1 is explicit:
- a CRM manager updates
lifecycle_stagewithMngUpdateCustomer; or - a workflow executes
customer.set_lifecycle_stage.
The response field registered describes the registration operation and must
not be used as the customer's CRM lifecycle value.