Create a Natural User

Deprecated
<Warning icon="fa-regular fa-triangle-exclamation"> **Caution - Deprecated endpoint** The legacy User endpoints are deprecated. This endpoint will stop working and return an error after **Dec 15, 2025**. These endpoints were made redundant by the equivalent SCA-enabled endpoints during the introduction of SCA. Instead of calling this endpoint for user creation, your platform must call [POST Create a Natural User (SCA)](/api-reference/users/create-natural-user-sca). </Warning> <Note icon="fa-regular fa-circle-info"> **Note – Country-based restrictions apply to users** Due to Mangopay's [country restrictions](/guides/users/country-restrictions), it is not possible to use blocked countries as the following: - `Nationality` - `CountryOfResidence` - `Address.Country` </Note> Create a Natural User

Authentication

AuthorizationBearer
Bearer authentication of the form `Bearer <token>`, where token is your auth token. If your platform is using a [proxy](/guides/sca/proxy-management) to take SCA-triggering action on behalf of users, you also need to integrate [mTLS authentication](/guides/sca/platform) and use the `api-mtls` base URL.

Path parameters

ClientIdstringRequired
Platform's API account identifier, associated with the API key.

Request

This endpoint expects an object.
UserCategorystringRequired

Allowed values: PAYER, OWNER

The category of the user:

  • PAYER – User who can only make pay-ins to their wallets and transfers to other wallets (as well as refunds for pay-ins and transfers).
  • OWNER – User who can also receive transfers to their wallets. Owners are able to request KYC verification, which if successful gives them the KYCLevel of REGULAR and the ability to request payouts.
TermsAndConditionsAcceptedbooleanRequired

Whether the user has accepted Mangopay’s terms and conditions (as defined by your contract, see the T&Cs guide for details).

Must be true if UserCategory is OWNER.

FirstNamestringRequired

Min. length: 1; max. length: 100

The first name of the individual.

LastNamestringRequired

Min. length: 1; max. length: 100

The last name of the individual.

EmailstringRequired

Format: A valid email address

The email address of the user.

BirthdayintegerOptional

Required if UserCategory is OWNER. Returned null if UserCategory is PAYER.

The date of birth of the individual.

Note: This is a Unix timestamp in UTC. Ensure you convert your timezone to UTC to avoid midnight being interpreted as the day before.

NationalitystringOptional

Format: Two-letter country code (ISO 3166-1 alpha-2 format)

Required if UserCategory is OWNER. Returned null if UserCategory is PAYER.

The nationality of the individual.

CountryOfResidencestringOptional

Format: Two-letter country code (ISO 3166-1 alpha-2 format)

Required if UserCategory is OWNER. Returned null if UserCategory is PAYER.

The country of residence of the individual.

AddressobjectOptional
The postal address.
OccupationstringOptional

Max. length: 255 characters

Returned null if UserCategory is PAYER.

The occupation of the individual.

IncomeRangeintegerOptional

Allowed values: 1, 2, 3, 4, 5, 6, null

Returned null if UserCategory is PAYER.

The bracket indicating the income of the individual. The brackets are:

  • 1: < 18K
  • 2: 18K - 30K
  • 3: 30K - 50K
  • 4: 50K - 80K
  • 5: 80K - 120K
  • 6: > 120K
TagstringOptional

Max. length: 255 characters

Custom data that you can add to this object.

Response

Success
Addressobject
The postal address.
FirstNamestring

Min. length: 1; max. length: 100

The first name of the individual.

LastNamestring

Min. length: 1; max. length: 100

The last name of the individual.

Birthdayinteger

Returned null if UserCategory is PAYER.

The date of birth of the individual.

Note: This is a Unix timestamp in UTC. Ensure you convert your timezone to UTC to avoid midnight being interpreted as the day before.

Nationalitystring

Returned null if UserCategory is PAYER.

The nationality of the individual.

CountryOfResidencestring

Returned null if UserCategory is PAYER.

The country of residence of the individual.

Occupationstring

Max. length: 255 characters

The occupation of the individual.

Returned null if UserCategory is PAYER.

IncomeRangeinteger

Returned null if UserCategory is PAYER.

The bracket indicating the income of the individual. The brackets are:

  • 1: < 18K
  • 2: 18K - 30K
  • 3: 30K - 50K
  • 4: 50K - 80K
  • 5: 80K - 120K
  • 6: > 120K
ProofOfIdentitystring

The Id of the KYC Document whose Type is IDENTITY_PROOF if validated for the user. If no identity proof is validated, then this value is null.

ProofOfAddressstring

The Id of the KYC Document whose Type is ADDRESS_PROOF if validated for the user. If no address proof is validated, then this value is null.

Capacitystring
This is a deprecated parameter.
Idstring

Max length: 128 characters (see data formats for details)

The unique identifier of the object.

Tagstring

Max. length: 255 characters

Custom data that you can add to this object.

CreationDateinteger

Unix timestamp (UTC) of the date and time the object was created.

PersonTypestring

Returned values: NATURAL, LEGAL

The type of the user:

  • NATURAL – Natural users are individuals (natural persons).
  • LEGAL – Legal users are legal entities (legal persons) like companies, non-profits, and sole proprietors.

The PersonType is defined by the endpoint used to create the user and can’t be modified.

Emailstring

Format: A valid email address

The email address of the user.

KYCLevelstring

Default value: LIGHT

Returned values: LIGHT, REGULAR

The verification status of the user set by Mangopay:

  • LIGHT – Unverified, assigned by default to all users.
  • REGULAR – Verified, meaning the user has successfully completed the verification process and had the necessary documents validated by Mangopay. Only users whose UserCategory is OWNER can submit verification documents for validation. Only users whose KYCLevel is REGULAR can request payouts.
TermsAndConditionsAcceptedboolean

Whether the user has accepted Mangopay’s terms and conditions (as defined by your contract, see the T&Cs guide for details).

Must be true if UserCategory is OWNER.

TermsAndConditionsAcceptedDateinteger

Unix timestamp (UTC) of the date and time the TermsAndConditionsAccepted value was set to true.

Returned null if UserCategory is PAYER.

UserCategorystring

Possible values: PAYER, OWNER, PLATFORM

The category of the user:

  • PAYER – User who can only make pay-ins to their wallets and transfers to other wallets (as well as refunds for pay-ins and transfers).
  • OWNER – User who can also receive transfers to their wallets. Owners are able to request KYC verification, which if successful gives them the KYCLevel of REGULAR and the ability to request payouts.
  • PLATFORM – Single specific user that represents the platform. The PLATFORM value is only assigned by Mangopay and may be used as part of the validated workflow implemented by the platform.
UserStatusstring

Returned values: ACTIVE, CLOSED

Internal use only. This field can only be used and updated by Mangopay teams.

Errors

400
Bad Request Error