> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.mangopay.com/api-reference/users/natural-user-object-sca/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.mangopay.com/_mcp/server. # The Natural User object (SCA) ### Description The Natural User object represents an individual (natural person). Mangopay users have one of two [categories](/guides/users/categories), indicated by `UserCategory`: * `PAYER` – User who can only make pay-ins to their wallets and transfers to other wallets. * `OWNER` – User who can also receive transfers to their wallets. Owners are able to request [KYC verification](/guides/users/verification), which if successful gives them the `KYCLevel` of `REGULAR` and the ability to request payouts. To enable `OWNER` users to enroll in SCA, Mangopay released new versions of the user objects and new endpoints. #### [Guides](/guides/sca) Read more about SCA on Owner users #### Changes from non-SCA object The changes to the Natural User object are: * New `UserStatus` value `PENDING_USER_ACTION` indicating that the user must enroll in SCA * New response parameter `PendingUserAction.RedirectUrl` containing the SCA session URL to which the individual must be redirected (after adding an encoded `returnUrl` query parameter) * New `PhoneNumber` and `PhoneNumberCountry` parameters which may be used to pre-populate the user's phone number in the SCA session **`v2.01 – Non-SCA`** ```json v2.01 – Non-SCA { "Address": { "AddressLine1": null, "AddressLine2": null, "City": null, "Region": null, "PostalCode": null, "Country": null }, "FirstName": "Alex", "LastName": "Smith", "Birthday": null, "Nationality": null, "CountryOfResidence": null, "Occupation": null, "IncomeRange": null, "ProofOfIdentity": null, "ProofOfAddress": null, "Capacity": "NORMAL", "PhoneNumber": null, "PhoneNumberCountry": null, "Id": "user_m_01JK5MJ4Q0DM6YSH7BGKBE5CDY", "Tag": "Natural User v2.01 example on non-SCA endpoint", "CreationDate": 1738577351, "PersonType": "NATURAL", "Email": "alex.smith@example.com", "KYCLevel": "LIGHT", "TermsAndConditionsAccepted": false, "TermsAndConditionsAcceptedDate": null, "UserCategory": "PAYER", "UserStatus": "ACTIVE" } ``` **`v2.01 – SCA-enabled`** ```json v2.01 – SCA-enabled {22} { "FirstName": "Alex", "LastName": "Smith", "Birthday": null, "Nationality": null, "CountryOfResidence": null, "Occupation": null, "IncomeRange": null, "ProofOfIdentity": null, "ProofOfAddress": null, "Capacity": "NORMAL", "PhoneNumber": null, "PhoneNumberCountry": null, "Address": { "AddressLine1": null, "AddressLine2": null, "City": null, "Region": null, "PostalCode": null, "Country": null }, "PendingUserAction": null, "Id": "user_m_01JK5MJ4Q0DM6YSH7BGKBE5CDY", "Tag": "Natural User v2.01 example on SCA endpoint", "CreationDate": 1738577351, "PersonType": "NATURAL", "Email": "alex.smith@example.com", "KYCLevel": "LIGHT", "TermsAndConditionsAccepted": false, "TermsAndConditionsAcceptedDate": null, "UserCategory": "PAYER", "UserStatus": "ACTIVE" } ``` ### Attributes ### Schema (`NaturalUserSCAResponse`) ```yaml components: schemas: Address: type: object properties: AddressLine1: type: string description: The first line of the address. AddressLine2: type: string description: The second line of the address. City: type: string description: The city of the address. Region: type: string description: Required if `Country` is US, CA, or MX. The region of the address. PostalCode: type: string description: >- The postal code of the address. The postal code can contain the following characters: alphanumeric, dashes, and spaces. Country: type: string description: >- Format: Two-letter country code ([ISO 3166-1 alpha-2 format](/api-reference/overview/data-formats)) The country of the address. description: The postal address. title: Address NaturalUserScaResponsePendingUserAction: type: object properties: RedirectUrl: type: string description: >- The URL to which to redirect the user to perform strong customer authentication (SCA) via a Mangopay-hosted webpage. This value is a variable and should not be hardcoded. The SCA session link expires 10 minutes after it's generated. **Caution:** Before redirecting the user on this URL, you must add the query parameter `ReturnUrl` with the percent-encoded URL to which you want the SCA session to return the user after authentication (whether successful or not). For more details, see [How to redirect a user for an SCA session](/guides/sca/session#how-to-redirect-a-user-for-sca). description: >- Object containing the `RedirectUrl` needed for SCA redirection if triggered by the API call (otherwise returned `null`). title: NaturalUserScaResponsePendingUserAction Id: type: string description: >- Max length: 128 characters (see [data formats](/api-reference/overview/data-formats) for details) The unique identifier of the object. title: Id Tag: type: string description: >- Max. length: 255 characters Custom data that you can add to this object, such as unique identifiers in your system. To store multiple values, you can serialize them into a single string, for example a JSON object: `"{\"id_1\":AB123,\"id_2\":DE456}"`. title: Tag CreationDate: type: integer description: Unix timestamp (UTC) of the date and time the object was created. title: CreationDate NaturalUserSCAResponse: type: object properties: FirstName: type: string description: |- Min. length: 1; max. length: 100 The first name of the individual. LastName: type: string description: |- Min. length: 1; max. length: 100 The last name of the individual. Birthday: type: - integer - 'null' description: >- 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. Nationality: type: - string - 'null' description: |- Returned `null` if `UserCategory` is `PAYER`. The nationality of the individual. CountryOfResidence: type: - string - 'null' description: |- Returned `null` if `UserCategory` is `PAYER`. The country of residence of the individual. Occupation: type: - string - 'null' description: |- Max. length: 255 characters The occupation of the individual. Returned `null` if `UserCategory` is `PAYER`. IncomeRange: type: - integer - 'null' description: >- 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 ProofOfIdentity: type: - string - 'null' description: >- 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`. ProofOfAddress: type: - string - 'null' description: >- 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`. Capacity: type: string description: This is a deprecated parameter. PhoneNumber: type: - string - 'null' description: >- Format: International E.164 standard (preceded by plus sign and country code) or local format The individual's phone number. The local format (recommended) requires `PhoneNumberCountry` to ensure correct formatting. If present, the phone number forms part of card transaction data that is passed to issuers to improve authentication rates. For users with `UserCategory` `OWNER` , the phone number is used to pre-populate the SCA session for them to confirm and receive an SMS OTP. If the individual modifies the phone number during the session, this data is not updated in the API. PhoneNumberCountry: type: - string - 'null' description: >- Format: Two-letter country code ([ISO 3166-1 alpha-2 format](/api-reference/overview/data-formats)) Required if the `PhoneNumber` is provided in local format (recommended), to render the value in the E.164 standard. Address: $ref: '#/components/schemas/Address' PendingUserAction: oneOf: - $ref: '#/components/schemas/NaturalUserScaResponsePendingUserAction' - type: 'null' description: >- Object containing the `RedirectUrl` needed for SCA redirection if triggered by the API call (otherwise returned `null`). Id: $ref: '#/components/schemas/Id' Tag: $ref: '#/components/schemas/Tag' CreationDate: $ref: '#/components/schemas/CreationDate' PersonType: type: string description: >- **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. Email: type: string description: |- Format: A valid email address The individual's email address. KYCLevel: type: string description: >- **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. TermsAndConditionsAccepted: type: boolean description: >- Whether the user has accepted Mangopay's terms and conditions (as defined by your contract, see the [T&Cs guide](/guides/users/terms) for details). Must be `true` if `UserCategory` is `OWNER`. TermsAndConditionsAcceptedDate: type: - integer - 'null' description: >- The date and time at which the `TermsAndConditionsAccepted` value was set to `true`. Returned `null` if `UserCategory` is `PAYER`. UserCategory: type: string description: >- **Possible values:** `PAYER`, `OWNER`, `PLATFORM` The [category](/guides/users/categories) 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](/guides/users/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. UserStatus: type: string description: >- **Returned values:** `PENDING_USER_ACTION`, `ACTIVE`, `CLOSED` The status of the user: - `PENDING_USER_ACTION` – The user must enroll in SCA before they can become `ACTIVE`. - `ACTIVE` – The user account is active and the user can access Mangopay features. - `CLOSED` – The user account is permanently closed. This value is used by Mangopay to close an account following the procedure outlined in the terms and conditions. title: NaturalUserSCAResponse ``` ### Related resources #### [Guide](/guides/users/categories) Users – Categories #### [Guide](/guides/sca) Owner SCA