Update customer (partial)
Update specific fields on a customer. Send only the fields you want to change. Anything you don’t send stays as it is. To clear a nullable field, send null.
Set is_taxable to false to mark the customer as tax-exempt, or true to make them taxable. Omit the field to leave the current value unchanged.
To rename a customer, send:
To update phone and website together, send:
Custom fields
Set custom fields by name:
Each item is a one-key object where the key is the custom field’s name and the value is whatever you want to set. Use null to clear a field. If the name doesn’t match a custom field in your organization, the API returns a 422 instead of silently ignoring it. If you happen to have two custom fields with the same name, use the id-based shape:
Omitting custom_fields from the request leaves existing values untouched.
Side effects
- When you send
attachmentson an update, DualEntry replaces the stored attachment set with the list you send. - If an approval workflow matches this request, DualEntry can set
record_statusback todraft.
Additional validations
- Fails with
422when you setallowed_company_idson a child customer, or when you create a child customer with its own company access. - Fails with
422when you set a default AR account on an intercompany customer. - Fails with
422when the default AR account is not an accounts receivable account in your organization. - Fails with
422whenparent_idwould create a circular parent relationship. - Fails with
422when you create a customer withcustomer_typeintercompany, or when you changecustomer_typeto or fromintercompany. - Fails with
422when you changecustomer_typefromcompanywhile the customer has VAT or GST registrations. To clear them, sendvat_registration_numbersandgst_registration_numbersas empty lists in the same request. - Fails with
422when the request archives the customer while a recurring template that is not archived uses it.
Authorizations
Headers
Optional. A unique value (a UUID works well) identifying this operation. If the request is repeated with the same key, the original response is replayed instead of the operation running again, so a retry cannot create a duplicate record. Results are replayable for 48 hours. Reusing a key with a different request body returns 422.
255Path Parameters
Body
Partial update payload for PATCH /public/customers/{id}/.
Every field is optional: send only the fields you want to change. Unset fields are left untouched on the existing record.
Business identifier. Spaces at the ends are removed. An empty value clears the stored identifier.
100Date display style: short, medium, long, or custom. Null means the organization default applies.
short, medium, long, custom Day.js / Moment-style date pattern (max 16 chars). Tokens: YYYY, YY, MMMM, MMM, MM, M, DD, D. Separators: / . - , and space. Examples: DD.MM.YYYY, MM/DD/YYYY, YYYY-MM-DD. Not ICU or raw Intl.
161 - 6464(?i)^(?:[0-9\s+\-.\(\)]*|[0-9\s+\-.\(\)]+(?:\s*(?:x|ext\.?|extension)\s*\d+))$draft, posted, archived Whether tax is calculated for this customer. Set to false to mark the customer as tax-exempt.
Company IDs allowed to use this customer. Empty list means global (all companies). Omit or send null to leave unchanged.
AED, AFN, ALL, AMD, ANG, AOA, ARS, AUD, AWG, AZN, BAM, BBD, BDT, BGN, BHD, BIF, BMD, BND, BOB, BRL, BSD, BTN, BWP, BYN, BZD, CAD, CDF, CHF, CLF, CLP, CNY, COP, CRC, CUP, CVE, CZK, DJF, DKK, DOP, DZD, EGP, ERN, ETB, EUR, FJD, FKP, GBP, GEL, GHS, GIP, GMD, GNF, GTQ, GYD, HKD, HNL, HTG, HUF, IDR, ILS, INR, IQD, IRR, ISK, JMD, JOD, JPY, KES, KGS, KHR, KMF, KPW, KRW, KWD, KYD, KZT, LAK, LBP, LKR, LRD, LSL, LYD, MAD, MDL, MGA, MKD, MMK, MNT, MOP, MRU, MUR, MVR, MWK, MXN, MYR, MZN, NAD, NGN, NIO, NOK, NPR, NZD, OMR, PAB, PEN, PGK, PHP, PKR, PLN, PYG, QAR, RON, RSD, RUB, RWF, SAR, SBD, SCR, SDG, SEK, SGD, SHP, SLL, SOS, SRD, STN, SVC, SYP, SZL, THB, TJS, TMT, TND, TOP, TRY, TTD, TWD, TZS, UAH, UGX, USD, UYU, UZS, VES, VND, VUV, WST, XAF, XAG, XAU, XCD, XDR, XOF, XPD, XPF, XPT, YER, ZAR, ZMW, ZWL individual, company, intercompany AVALARA Tax identification number. Set it together with tin_type. Format by type: ein 12-3456789, ssn 123-45-6789, rfc 3 or 4 uppercase letters, a YYMMDD date, 2 uppercase letters or digits, then a digit or A, for example ABC010203XY9. On an update, send an empty string or null to clear it.
13Type of tax identification number: ein, ssn, utr, or rfc (Mexico). Set it together with tin. On an update, send an empty string or null to clear it.
""by_line, consolidated Classification lines stored on this record.
Response
OK
Date and time the record was created
Date and time the record was last updated
AED, AFN, ALL, AMD, ANG, AOA, ARS, AUD, AWG, AZN, BAM, BBD, BDT, BGN, BHD, BIF, BMD, BND, BOB, BRL, BSD, BTN, BWP, BYN, BZD, CAD, CDF, CHF, CLF, CLP, CNY, COP, CRC, CUP, CVE, CZK, DJF, DKK, DOP, DZD, EGP, ERN, ETB, EUR, FJD, FKP, GBP, GEL, GHS, GIP, GMD, GNF, GTQ, GYD, HKD, HNL, HTG, HUF, IDR, ILS, INR, IQD, IRR, ISK, JMD, JOD, JPY, KES, KGS, KHR, KMF, KPW, KRW, KWD, KYD, KZT, LAK, LBP, LKR, LRD, LSL, LYD, MAD, MDL, MGA, MKD, MMK, MNT, MOP, MRU, MUR, MVR, MWK, MXN, MYR, MZN, NAD, NGN, NIO, NOK, NPR, NZD, OMR, PAB, PEN, PGK, PHP, PKR, PLN, PYG, QAR, RON, RSD, RUB, RWF, SAR, SBD, SCR, SDG, SEK, SGD, SHP, SLL, SOS, SRD, STN, SVC, SYP, SZL, THB, TJS, TMT, TND, TOP, TRY, TTD, TWD, TZS, UAH, UGX, USD, UYU, UZS, VES, VND, VUV, WST, XAF, XAG, XAU, XCD, XDR, XOF, XPD, XPF, XPT, YER, ZAR, ZMW, ZWL Schema for audit actor information.
Schema for audit actor information.
Schema for rejector information including rejection reason.
Date display style: short, medium, long, or custom. Null means the organization default applies.
short, medium, long, custom Day.js / Moment-style date pattern (max 16 chars). Tokens: YYYY, YY, MMMM, MMM, MM, M, DD, D. Separators: / . - , and space. Examples: DD.MM.YYYY, MM/DD/YYYY, YYYY-MM-DD. Not ICU or raw Intl.
16Tax identification number. The value is an empty string when the number is not set.
Type of tax identification number: ein, ssn, utr, or rfc (Mexico). The value is an empty string when the type is not set.
AVALARA ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$by_line, consolidated When you merge this customer into another customer, the ID of that customer.