---
title: "Update customer"
method: PUT
path: "/v3/customer/{customerId}"
---

# Update customer

`PUT /v3/customer/{customerId}`

Create a new customer

## Path parameters

- `customerId` integer, required

## Request body

- object
  - `merchantId` integer — Merchant id
  - `name` string — Customer's full name (display name)
  - `firstName` string — Customer's first name
  - `lastName` string — Customer's last name
  - `address1` string — Street address
  - `address2` string — Apartment, suite, department
  - `city` string — City
  - `state` string — State
  - `zip` string — Zip code
  - `addressName` string — Name for address, i.e. home, work
  - `customerType` string — Type of customer: Business or Person
  - `email` string — Customer's email address
  - `mobile` string — Customer's cell phone number
  - `phone` string — Customer's phone number
  - `number` string — Client provided customer number
  - `isTaxExempt` boolean — Is this customer tax exempt?
  - `taxId` string — Customer's SSN or EIN (9 digits) (Required for tax exempt customers)
  - `spendProfile` string — Customer's spend profile
  - `customFields` object[] — Client-defined custom fields. Must be set up prior to use
    - `fieldDataType` string — Field Data type of your custom Field. Values: String, Integer, Boolean, Decimal, or List
    - `fieldDefinitionId` integer — Id of field
    - `isRequired` boolean — Is this field Required
    - `name` string — Field Name
    - `value` string — Value for field
  - `activeStatus` boolean — Is the customer active?
  - `selectedSpendProfile` string — Spend profile selected for customer
  - `spendProfileOverride` boolean — If the spend profile was selected or sent manually, this would be true.

## Response `201`

201

- object
  - `id` integer
  - `created` string
  - `name` string
  - `firstName` string
  - `lastName` string
  - `number` string
  - `taxId` string
  - `visits` integer
  - `transactionCount` integer
  - `spend` string
  - `sales` string
  - `refunds` string
  - `lastActivity` string
  - `allowPromotions` boolean
  - `loyaltyStatus` string
  - `loyaltyEnrolled` string
  - `isVip` boolean
  - `spendProfile` string
  - `spendProfileIcon` string
  - `addressName` string
  - `address1` string
  - `address2` string
  - `city` string
  - `state` string
  - `zip` string
  - `customerType` string
  - `spendProfileOverride` boolean
  - `isTaxExempt` boolean
  - `hasPayments` boolean
  - `hasContracts` boolean
  - `hasInvoices` boolean
  - `displayColor` string
  - `activeStatus` boolean

## Other responses

- `400` — 400

---

[API](https://skmtc.net/mxmerchant/apis/checkout-api.md) · [All operations](https://skmtc.net/mxmerchant/apis/checkout-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/mxmerchant/checkout-api/versions/6807b698abcb/schema)
