> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mangopay.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 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.

<Card title="Guides" href="/guides/sca">
  Read more about SCA on Owner users
</Card>

#### 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

<CodeGroup>
  ```json v2.01 – Non-SCA theme={null}
  {
      "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"
  }
  ```

  ```json v2.01 – SCA-enabled {22} theme={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,
      "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"
  }
  ```
</CodeGroup>

### Attributes

<ResponseField name="FirstName" type="string">
  Min. length: 1; max. length: 100

  The first name of the individual.
</ResponseField>

<ResponseField name="LastName" type="string">
  Min. length: 1; max. length: 100

  The last name of the individual.
</ResponseField>

<ResponseField name="Birthday" type="Unix timestamp">
  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.
</ResponseField>

<ResponseField name="Nationality" type="string">
  Returned `null` if `UserCategory` is `PAYER`.

  The nationality of the individual.
</ResponseField>

<ResponseField name="CountryOfResidence" type="string">
  Returned `null` if `UserCategory` is `PAYER`.

  The country of residence of the individual.
</ResponseField>

<ResponseField name="Occupation" type="string">
  Max. length: 255 characters

  The occupation of the individual.

  Returned `null` if `UserCategory` is `PAYER`.
</ResponseField>

<ResponseField name="IncomeRange" type="integer">
  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
</ResponseField>

<ResponseField name="ProofOfIdentity" type="string">
  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`.
</ResponseField>

<ResponseField name="ProofOfAddress" type="string">
  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`.
</ResponseField>

<ResponseField name="Capacity" type="string">
  This is a deprecated parameter.
</ResponseField>

<ResponseField name="PhoneNumber" type="string">
  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.
</ResponseField>

<ResponseField name="PhoneNumberCountry" type="string">
  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.
</ResponseField>

<ResponseField name="Address" type="object">
  The postal address of the user.

  <Expandable title="properties">
    <ResponseField name="AddressLine1" type="string">
      Max. length: 255 characters

      The first line of the address.
    </ResponseField>

    <ResponseField name="AddressLine2" type="string">
      Max. length: 255 characters

      The second line of the address.
    </ResponseField>

    <ResponseField name="City" type="string">
      Max. length: 255 characters

      The city of the address.
    </ResponseField>

    <ResponseField name="Region" type="string">
      Max. length: 255 characters

      The region of the address. This field is optional except if the `Country` is US, CA, or MX.
    </ResponseField>

    <ResponseField name="PostalCode" type="string">
      Max. length: 255 characters

      The postal code of the address. The postal code can contain the following characters: alphanumeric, dashes, and spaces.
    </ResponseField>

    <ResponseField name="Country" type="string">
      Format: Two-letter country code ([ISO 3166-1 alpha-2 format](/api-reference/overview/data-formats))

      The country of the address.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="PendingUserAction" type="object">
  Object containing the link needed for SCA redirection if triggered by the API call (otherwise returned `null`).

  <Expandable title="properties" defaultOpen>
    <ResponseField name="RedirectUrl" type="string">
      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).
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="Id" type="string">
  Max length: 128 characters (see [data formats](/api-reference/overview/data-formats) for details)

  The unique identifier of the object.
</ResponseField>

<ResponseField name="Tag" type="string">
  Max. length: 255 characters

  Custom data that you can add to this object.
</ResponseField>

<ResponseField name="CreationDate" type="Unix timestamp">
  The date and time at which the object was created.
</ResponseField>

<ResponseField name="PersonType" type="string">
  **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.
</ResponseField>

<ResponseField name="Email" type="string">
  Format: A valid email address

  The individual's email address.
</ResponseField>

<ResponseField name="KYCLevel" type="string">
  **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.
</ResponseField>

<ResponseField name="TermsAndConditionsAccepted" type="boolean">
  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`.
</ResponseField>

<ResponseField name="TermsAndConditionsAcceptedDate" type="Unix timestamp">
  The date and time at which the `TermsAndConditionsAccepted` value was set to `true`.

  Returned `null` if `UserCategory` is `PAYER`.
</ResponseField>

<ResponseField name="UserCategory" type="string">
  **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.
</ResponseField>

<ResponseField name="UserStatus" type="string">
  **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.
</ResponseField>

### Related resources

<CardGroup cols={2}>
  <Card title="Guide" href="/guides/users/categories">
    Users – Categories
  </Card>

  <Card title="Guide" href="/guides/sca">
    Owner SCA
  </Card>
</CardGroup>
