Skip to main content

When to use

Create an end-user account after you have a valid accessToken. The returned account.id (entityId) is used to create wallets and payment links for that user.

Endpoint

  • POST {{ACCOUNT_URL}}/v1/ext/account/create-user
  • Auth: Bearer {{accessToken}}

Request

curl -X POST "{{ACCOUNT_URL}}/v1/ext/account/create-user" \
  -H "Authorization: Bearer {{accessToken}}" \
  -H "Content-Type: application/json" \
  -d '{
    "firstName": "Tim",
    "lastName": "Makinde",
    "email": "makindetimi@gmail.com",
    "identifier": "user-98314",
    "type": "USER"
  }'

Fields

FieldTypeDescriptionRequired
firstNamestringEnd user first nameYes
lastNamestringEnd user last nameYes
emailstringEnd user emailYes
identifierstringYour unique user identifierYes
typestringMust be USERYes

Success Response (200)

{
  "message": "User account created",
  "account": {
    "id": "NmFkZWQyYTYtMGY5Yy00YTVkLWJhYWYtNTZiMTVkMzg0ZTQ1"
  }
}

Error (400 - Account Exists)

{
  "message": "An account with the given email already exists.",
  "fatal": true
}

Next steps

  • Save account.id as entityId.
  • Create wallets for this user.
  • Link payments (externalId) to this user in downstream calls.