Offloader Wallets API now available  View changelog
Customer

Create a Customer

Create a new customer.

POST
/v2/customer
AuthorizationBearer <token>

In: header

typestring
Value in"individual"
emailstring

The customer email address

Formatemail
Lengthlength <= 254
phonestring

The customer phone number in E.164 format

Match^\+(?:[0-9]){6,14}[0-9]$
addressobject

The customer's address.

personalInformation?object

Personal information including tax identification details for individual customers. When any tax identification field is provided, all tax identification fields (number, type, country) and address are required. Please refer to the Individual Verification Criteria for the full list of reference.

meta?object

Additional metadata associated with the customer

Empty Object

typestring

The customer type.

Value in"business"
emailstring

The business customer's email address.

Formatemail
Lengthlength <= 254
phonestring

The business customer's phone number in E.164 format.

Match^\+(?:[0-9]){6,14}[0-9]$
addressesarray<object>

The business customer's addresses which includes a registered address and an operating address.

businessInformationobject

Business information including identification number and all other relevant information to onboard the business customer. See Business Verification Criteria.

meta?object

Additional metadata associated with the customer

Empty Object

Response Body

curl -X POST "https://api.spherepay.co/v2/customer" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "individual",
    "email": "user@example.com",
    "phone": "+1234567890",
    "address": {
      "line1": "123 Main Street",
      "city": "Chicago",
      "country": "USA"
    }
  }'
{
  "id": "customer_66c4168d418a410eae282b83883bdc39",
  "email": "user@example.com",
  "phone": "+1234567890",
  "firstName": "John",
  "lastName": "Doe",
  "businessLegalName": "John Doe Pte Ltd.",
  "businessTradeName": "John Doe Brand",
  "verificationProfiles": [
    {
      "name": "kyc_profile_a",
      "status": "incomplete",
      "criteria": {
        "complete": [
          "email_address",
          "phone_number",
          "residential_address",
          "tax_identification_number"
        ],
        "pending": [],
        "required": [
          "terms_of_service",
          "email_verification",
          "phone_verification",
          "identity_document",
          "liveness_check",
          "identity_verification",
          "kyc_a_approval"
        ],
        "errors": []
      }
    }
  ],
  "meta": {
    "property1": null,
    "property2": null
  },
  "createdAt": "2025-11-21T07:10:54.598Z",
  "updatedAt": "2025-11-21T07:10:54.598Z",
  "type": "individual"
}

{
  "status": 400,
  "detail": "Invalid request parameters",
  "code": "address/invalid",
  "correlationId": "28c61e885c6e5eaa78c1a2183a9b883c"
}

{
  "status": 404,
  "detail": "Resource not found",
  "code": "resource/not-found",
  "correlationId": "28c61e885c6e5eaa78c1a2183a9b883c"
}

{
  "status": 422,
  "detail": "Validation failed",
  "code": "validation/failed",
  "correlationId": "28c61e885c6e5eaa78c1a2183a9b883c",
  "errors": [
    {
      "detail": "Invalid email format",
      "pointer": "/email"
    },
    {
      "detail": "Name is required",
      "pointer": "/name"
    }
  ]
}