---
title: "Create Customer"
method: POST
path: "/customers"
---

# Create Customer

`POST /customers`

Creates a new customer.

## Request body

- object
  - `type` 'individual' | 'company', required — This is the customer type.
  - `name` string, required — The customer's full name.
  - `phoneNumber` string, required — Customer's mobile phone number in international format.
  - `emailAddress` string — Customer's email address.
  - `individual` object — Individual details. Required if customer type is `individual`.
    - `firstName` string, required — Customer's first name.
    - `lastName` string, required — Customer's last name.
    - `otherNames` string — Customer's other names.
    - `dob` string, required — Customer's date of birth in the format `YYYY/MM/DD`.
    - `identity` object — Customer's identity data.
      - `type` 'BVN' | 'NIN' | 'CAC' | 'TIN' | 'PASSPORT', required — Identity type.
      - `number` string, required — Identity number issued by the regulator.
    - `documents` object — Customer's KYC documents.
      - `idFrontUrl` string — ID Card front page url.
      - `idBackUrl` string — ID Card back page url.
      - `incorporationCertificateUrl` string — Company incorporation certificate url.
      - `addressVerificationUrl` string — Customer address verification document url.
  - `company` object — Company details. Required if customer type is `company`.
    - `name` string, required — Company name.
    - `identity` object — Company identity details.
      - `type` 'BVN' | 'NIN' | 'CAC' | 'TIN' | 'PASSPORT', required — Identity type.
      - `number` string, required — Identity number issued by the regulator.
    - `officer` object — Company officer information.
      - `firstName` string, required — Customer's first name.
      - `lastName` string, required — Customer's last name.
      - `otherNames` string — Customer's other names.
      - `dob` string, required — Customer's date of birth in the format `YYYY/MM/DD`.
      - `identity` object — Customer's identity data.
        - `type` 'BVN' | 'NIN' | 'CAC' | 'TIN' | 'PASSPORT', required — Identity type.
        - `number` string, required — Identity number issued by the regulator.
      - `documents` object — Customer's KYC documents.
        - `idFrontUrl` string — ID Card front page url.
        - `idBackUrl` string — ID Card back page url.
        - `incorporationCertificateUrl` string — Company incorporation certificate url.
        - `addressVerificationUrl` string — Customer address verification document url.
    - `documents` object — Customer's KYC documents.
      - `idFrontUrl` string — ID Card front page url.
      - `idBackUrl` string — ID Card back page url.
      - `incorporationCertificateUrl` string — Company incorporation certificate url.
      - `addressVerificationUrl` string — Customer address verification document url.
  - `status` 'active' | 'inactive', required — This is the initial status of the customer.
  - `billingAddress` object, required — This is the billing address
    - `line1` string, required — Street address line 1
    - `line2` string — Street Address line 2
    - `city` string, required — City
    - `state` string, required — State
    - `postalCode` string, required
    - `country` string, required — Billing country

## Response `201`

Customer created successfully.

- object
  - `statusCode` integer — Status code of the response. `200` indicates a successful request.
  - `message` string — Human-readable description of the result.
  - `data` object — Response payload.
    - `_id` string — Unique identifier of the object.
    - `business` string — Identifier of the business that owns this object.
    - `type` string — Type of the object.
    - `name` string — Display name.
    - `status` string — Current status of the object.
    - `isApproved` boolean — Whether the customer has passed KYC and is approved.
    - `phoneNumber` string — Customer's phone number in international format.
    - `emailAddress` string — Customer's email address.
    - `individual` object — Details for an individual customer.
      - `firstName` string — First name.
      - `lastName` string — Last name.
      - `otherNames` string — Other names, if any.
      - `dob` string — Date of birth (YYYY/MM/DD).
      - `identity` object — Customer's verified identity record.
        - `type` string — Type of the object.
        - `number` string — Identity / card number value.
      - `documents` object — Uploaded KYC document URLs.
        - `idFrontUrl` string — URL of the front of the customer's ID document.
        - `idBackUrl` string — URL of the back of the customer's ID document.
        - `addressVerificationUrl` string — URL of the customer's address verification document.
    - `billingAddress` object — Customer's billing address.
      - `line1` string — Address line 1.
      - `line2` string — Address line 2.
      - `city` string — City.
      - `state` string — State / region.
      - `postalCode` string — Postal / ZIP code.
      - `country` string — Country.
    - `createdAt` string, date-time — ISO 8601 timestamp of when the object was created.
    - `updatedAt` string, date-time — ISO 8601 timestamp of when the object was last updated.
    - `__v` integer — Internal document version (Mongo).

## Other responses

- `400` — Validation error — a required field is missing or invalid.
- `401` — Authentication failed — missing or invalid API key.

---

[API](https://skmtc.net/sudo/apis/sudo-sandbox-api.md) · [All operations](https://skmtc.net/sudo/apis/sudo-sandbox-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/sudo/sudo-sandbox-api/versions/52be624fcb53/schema)
