**Version: 202601**

# Create customer

**POST** `/openapi/2026-01/customers`

Create a new customer with the provided details.

## Request

**application/json**

**Body | Example**

**Body (required)**

- `customer` object (required)

  Customer

  - `contact_type` string (required)

    Should be phone or email. If phone, the phone parameter is required; otherwise, email is required
  - `first_name` string

    Customer's first name
  - `last_name` string

    Customer's last name
  - `password` string

    Customer's password
  - `password_confirmation` string

    Confirmation of the password
  - `tags` string[]

    Tags assigned to the customer
  - `registered_at` string

    The registered\_at field records the creation time in UTC (0 timezone), formatted as ISO-8601
  - `addresses` object[]

    A list of address objects under the customer object

    *   Array \[

    - `country` string (required)

      Country name of the address, required at least 1 character. e.g "China"
    - `country_code` string (required)

      ISO country code, required at least 1 character, e.g "CN" for China
    - `first_name` string

      The first name of the person receiving the shipment or package
    - `last_name` string

      The last name of the person receiving the shipment or package
    - `address1` string

      This field represents the main address line, such as the house number and street name. It is used to specify the primary location of the address
    - `address2` string

      This field represents an additional address line, such as an apartment number or suite number. It is used to provide more specific information about the location of the address
    - `area` string

      Area or region of the address
    - `city` string

      City of the address. This field specifies the name of the city or town where the address is located
    - `province` string

      Province or state of the address. This field specifies the administrative division or region within a country
    - `province_code` string

      Province code of the address. This field specifies the abbreviated or standardized code representing the province or state
    - `company` string

      Company name associated with the address
    - `phone` string

      Phone number associated with the consignee
    - `phone_area_code` string

      Area code for the phone number. This field specifies the code used to identify a specific geographic area for telephone calls
    - `zip` string

      Postal or ZIP code of the address. This field specifies the code used to identify a specific geographic area for mail delivery
    - `gender` string

      Gender of the person, optional field. Acceptable values are "male" and "female"
    - `email` string

      Email address for the consignee. This field is used to specify the email address of the person receiving the shipment or package
    - `default` boolean

      Indicates if this is the default address. "true" if this is the first address created for the user, otherwise "false"
    *   \]
  - `email` string

    Email address, required when contact\_type is email
  - `phone` string

    Phone number with area code, required when contact\_type is phone
  - `accepts_marketing` boolean

    Whether to subscribe to marketing email campaigns. Defaults to true

    **Default value:** `true`
  - `accepts_sms_marketing` boolean

    Whether to subscribe to SMS marketing campaigns. Defaults to true

    **Default value:** `true`

```json
{
  "customer": {
    "contact_type": "string",
    "first_name": "string",
    "last_name": "string",
    "password": "string",
    "password_confirmation": "string",
    "tags": [
      "string"
    ],
    "registered_at": "string",
    "addresses": [
      {
        "country": "string",
        "country_code": "string",
        "first_name": "string",
        "last_name": "string",
        "address1": "string",
        "address2": "string",
        "area": "string",
        "city": "string",
        "province": "string",
        "province_code": "string",
        "company": "string",
        "phone": "string",
        "phone_area_code": "string",
        "zip": "string",
        "gender": "string",
        "email": "string",
        "default": true
      }
    ],
    "email": "string",
    "phone": "string",
    "accepts_marketing": true,
    "accepts_sms_marketing": true
  }
}
```

## Responses

**200**

OK

**application/json**

**Schema | Example**

**Schema**

- `code` string

  error code
- `message` string

  error message
- `data` object

  - `customer` object

    Customer object containing customer details

    - `id` string

      Customer ID
    - `email` string

      Customer's email address
    - `created_at` string

      Timestamp when the customer was created, in ISO8601 format
    - `updated_at` string

      Timestamp when the customer was last updated, in ISO8601 format
    - `first_name` string

      Customer's first name
    - `last_name` string

      Customer's last name
    - `phone` string

      Customer's phone number
    - `tags` string[]

      Tags associated with the customer
    - `name` string

      Full name of the customer
    - `phone_area_code` string

      Area code of the phone number
    - `contact_type` string

      Contact type, either email or phone
    - `sms_subscribed_flag` int32

      Customer's SMS subscription status flag
    - `addresses` object[]

      List of all customer addresses

      *   Array \[

      - `id` string

        Address ID
      - `customer_id` string

        ID of the customer this address belongs to
      - `first_name` string

        First name of the consignee
      - `last_name` string

        Last name of the consignee
      - `company` string

        Company name
      - `city` string

        City of the address
      - `province` string

        Province or state of the address
      - `country` string

        Country name of the address
      - `zip` string

        Postal or ZIP code
      - `province_code` string

        Province code
      - `country_code` string

        ISO country code
      - `gender` string

        Gender of the consignee
      - `phone` string

        Phone number associated with the address
      - `phone_area_code` string

        Area code of the phone number
      - `area` string

        Area or region of the address
      - `email` string

        Email associated with the address
      - `name` string

        Full name of the consignee
      - `address1` string

        Primary street address
      - `address2` string

        Secondary street address
      - `country_name` string

        Full name of the country
      - `default` boolean

        Indicates if this is the default address
      *   \]
    - `accepts_marketing` boolean

      Indicates if the customer is subscribed to marketing emails
    - `source` string

      Source of the customer data
    - `free_tax` boolean

      Indicates if the customer is exempt from taxes
    - `registered` boolean

      Indicates if the customer is registered
    - `orders_count` int32

      Number of orders placed by the customer
    - `first_order_at` string

      First order timestamp
    - `last_order_at` string

      Timestamp of the customer's last order
    - `total_spent` string

      Total amount spent by the customer
    - `subscribed_flag` int32

      Customer's marketing subscription status flag
    - `accepts_sms_marketing` boolean

      Indicates if the customer is subscribed to SMS marketing campaigns

```json
{
  "code": "string",
  "message": "string",
  "data": {
    "customer": {
      "id": "string",
      "email": "string",
      "created_at": "string",
      "updated_at": "string",
      "first_name": "string",
      "last_name": "string",
      "phone": "string",
      "tags": [
        "string"
      ],
      "name": "string",
      "phone_area_code": "string",
      "contact_type": "string",
      "sms_subscribed_flag": 0,
      "addresses": [
        {
          "id": "string",
          "customer_id": "string",
          "first_name": "string",
          "last_name": "string",
          "company": "string",
          "city": "string",
          "province": "string",
          "country": "string",
          "zip": "string",
          "province_code": "string",
          "country_code": "string",
          "gender": "string",
          "phone": "string",
          "phone_area_code": "string",
          "area": "string",
          "email": "string",
          "name": "string",
          "address1": "string",
          "address2": "string",
          "country_name": "string",
          "default": true
        }
      ],
      "accepts_marketing": true,
      "source": "string",
      "free_tax": true,
      "registered": true,
      "orders_count": 0,
      "first_order_at": "string",
      "last_order_at": "string",
      "total_spent": "string",
      "subscribed_flag": 0,
      "accepts_sms_marketing": true
    }
  }
}
```
