Skip to content

CustomerRegistrationWithAccount

Deprecated

POST /customer/registration/with-account and the command name CustomerRegistrationWithAccount are compatibility aliases for CustomerRegistrationByAffiliate.

Replacement: CustomerRegistrationByAffiliate — POST /customer/registration/by-affiliate

Despite its historical name, this method no longer creates a trading account and never credits a starting balance. It creates an affiliate CRM lead and returns account_created: false with account_creation: "workflow".

The created record is always a lead: customer_kind = 0, with lifecycle_flags and conversion_flags at 0. Neither field is accepted on input, and promotion to a client is a separate operation performed by MngConvertLeadToClient.

The compatibility wrapper accepts the historical payload and normalizes it before invoking CustomerRegistrationByAffiliate:

  • legacy string affiliate_id is treated as the affiliate code and mapped to canonical affiliate_code; transitional positive numeric values are also resolved for compatibility but must not be used by new integrations;
  • affiliate_id remains optional for this deprecated wrapper, as it was in the original API. If neither an affiliate nor a marketing attribution can be resolved, the customer is created without an affiliate attachment;
  • brand remains optional for this wrapper and is resolved from the HTTP host when omitted;
  • group_name, installation_id, attribution, source_type, and the other historical registration fields remain accepted;
  • the wrapper runs the historical registration-attribution resolver. Explicit attribution data is checked first, followed by installation, browser fingerprint, and short-lived same-brand IP matching;
  • resolved affiliate, campaign, source, UTM, landing, and referrer values take precedence over the corresponding fields in the legacy payload. The exact resolved touch, campaign, and link identifiers are retained when the customer attribution is attached;
  • group_name is ignored and reported in deprecated_fields.

After normalization, validation, customer creation, conditional SSO token generation, and the response format follow CustomerRegistrationByAffiliate. Account creation must be configured as a customer.created workflow using the account.open action.

Legacy request example:

{
  "email": "[email protected]",
  "password": "strong-password",
  "group_name": "DEMO_EU",
  "full_name": "John Smith",
  "phone": "+35700000000",
  "affiliate_id": "AFF-PRIMARY",
  "campaign": "AFF_Q4",
  "preferred_language": "en",
  "country_of_residence": "CY",
  "installation_id": "legacy-installation-501",
  "meta_json": "{\"external_lead_id\":\"501\"}"
}

brand may be included explicitly. When omitted, the wrapper resolves it from the request host. For the complete list of accepted shared fields and the full response example, see CustomerRegistrationByAffiliate.

New integrations must use POST /customer/registration/by-affiliate. Unlike this compatibility wrapper, the canonical endpoint always requires affiliate_code.