Partially update a customer
Updates only the fields included in the body, identified by customer number; everything else is kept. This is the call to use for India GST details (gstin, gstRegistrationType), which the full update does not touch. Unknown keys are ignored.
How to use it
- Get the customer number from List customers.
- Send only the keys to change, e.g. {"status": "INACTIVE"} or {"gstin": "...", "gstRegistrationType": "REGULAR"}.
- Other fields are left as they were; an invalid gstRegistrationType is rejected.
BearerAuthAuthorizationBearer <JWT>customerId*stringCustomer number, e.g. CUS-000-2026-00042, as returned by Create a customer or List customers.
application/json- body
[key: string]?OK
*/*- response
id?|Internal numeric ID. Set by the server. Customers are addressed by customerNumber in URLs, not by this ID.
int64customerNumber*stringUnique customer number, e.g. CUS-000-2026-00042. Set by the server on create; used in the URL of every single-customer call.
email*stringCustomer's email address. Required, must be a valid email and unique across customers.
mobileNumber?|Mobile number, up to 20 characters. Must be unique across customers when set.
countryCode?|Dialling or country code that goes with the phone numbers, up to 10 characters, e.g. +971.
landPhoneNumber?|Landline number, up to 20 characters.
firstName*stringFirst name. Required, up to 255 characters.
lastName?|Last name, up to 255 characters.
city?|City of the customer's address.
state?|State, province or emirate of the customer's address, as free text.
country?|Country of the customer's address, as free text.
zipCode?|Postal or ZIP code, up to 20 characters.
profileImageUrl?|URL of the customer's photo or avatar, up to 1024 characters.
status*stringACTIVE, INACTIVE, ARCHIVED or DELETED. Defaults to ACTIVE. List customers returns only ACTIVE by default when any filter is used.
"ACTIVE""INACTIVE""ARCHIVED""DELETED"dob?|Date of birth, YYYY-MM-DD.
datecategory?|Merchant-defined customer group, e.g. "Wholesale", up to 64 characters. Filterable by exact match.
modifiedTime*stringWhen the profile was last changed, ISO 8601 date-time. Defaults to the current time if not sent.
date-timecreatedTime*stringWhen the profile was created, ISO 8601 date-time. Defaults to the current time if not sent.
date-timegstin?|India: the customer's 15-character GST identification number. Set via Partially update a customer.
panNumber?|India: the customer's 10-character PAN (tax ID).
gstRegistrationType?|India: GST status - REGULAR, COMPOSITION, UNREGISTERED, CONSUMER (B2C), SEZ or OVERSEAS. Null means not stated. Set via Partially update a customer.
"REGULAR""COMPOSITION""UNREGISTERED""CONSUMER""SEZ""OVERSEAS"nullgstStateCode?|India: two-character GST state code of the buyer, used to work out the place of supply.
vatRegistrationNumber?|The customer's VAT registration number, up to 20 characters; shown on VAT reports and the EC Sales List.
vatCountryCode?|Two-letter country code of the customer's VAT registration, e.g. DE.
euVatValidated*booleantrue when the customer's EU VAT number has been validated. Only validated customers appear on the EC Sales List.
euVatExempt*booleanMarks the customer as exempt from EU VAT. Stored for reference only; it does not currently change how VAT is charged or reported.
taxExemptionNumber?|US: sales-tax exemption certificate number, shown on Americas tax reports.
taxExemptionState?|US: state that issued the tax exemption certificate.
rfcNumber?|Mexico: the customer's RFC tax ID, up to 13 characters.
createdViaAi*booleantrue when the customer was created through the AI assistant or an AI data import. Set by the server.
aiSessionId?|ID of the AI assistant or AI import session that created or last changed the customer, if any. Set by the server.
curl -X PATCH 'https://beta.iotoms.com/api/v1/crm/customers/string' \ -H 'Content-Type: application/json' \ -d '{ "property1": {}, "property2": {}}'{ "id": 0, "customerNumber": "string", "email": "string", "mobileNumber": "string", "countryCode": "string", "landPhoneNumber": "string", "firstName": "string", "lastName": "string", "city": "string", "state": "string", "country": "string", "zipCode": "string", "profileImageUrl": "string", "status": "ACTIVE", "dob": "2019-08-24", "category": "string", "modifiedTime": "2019-08-24T14:15:22Z", "createdTime": "2019-08-24T14:15:22Z", "gstin": "string", "panNumber": "string", "gstRegistrationType": "REGULAR", "gstStateCode": "string", "vatRegistrationNumber": "string", "vatCountryCode": "string", "euVatValidated": true, "euVatExempt": true, "taxExemptionNumber": "string", "taxExemptionState": "string", "rfcNumber": "string", "createdViaAi": true, "aiSessionId": "string"}