KintsugiKintsugi

Update an exemption

PATCH/exemptions/{exemption_id}

Update an exemption in the resolved organization. Only the fields you send are applied; send endDate as null to remove an expiry. customerId, exemptionType, countryCode and jurisdiction cannot be changed, since they define which exemption this is: create a new exemption instead. An exemption that is or becomes ACTIVE has the transactions it covers requeued for tax recalculation, which happens after this call returns.

Authorization

Api-KeystringRequired

Your secret API key. Include it with every request.

Headers

Api-Versiondate

Release date, as YYYY-MM-DD. Defaults to 2026-07-21.

Organization-Idstring

Target organization id (Organization-Id selector).

Connection-Idstring

Target connection id; resolves to its organization.

Entity-Idstring

Platform entity id; resolves to a connection's organization.

Entity-Sourcestring

Optional source to disambiguate an Entity-Id.

Path parameters

exemption_idstringRequired

The unique identifier of the exemption.

Body

startDatestring

First day the exemption is in force, as YYYY-MM-DD. Omit or send null to leave unchanged.

endDatestring

Last day the exemption is in force, as YYYY-MM-DD. Omit to leave unchanged. Send null to remove the expiry. Must not precede the exemption's startDate.

resellerboolean

Whether the exemption is claimed on the basis of resale. Omit or send null to leave unchanged; send true or false to replace.

feinstring

Federal Employer Identification Number to record. Omit or send null to leave unchanged; send a value to replace. This PATCH cannot clear a stored FEIN.

salesTaxIdstring

Sales tax registration number to record. Omit or send null to leave unchanged; send a value to replace. This PATCH cannot clear a stored sales tax id.

statusPublicExemptionWriteStatusEnum

Lifecycle status to move the exemption to. Only ACTIVE exemptions are applied by tax calculation. Omit or send null to leave unchanged.

Available options:ACTIVEINACTIVEEXPIREDDEACTIVATED
requestIdstring

Optional client-minted id for this confirm attempt. When present, duplicate submits of the same gesture can be grouped.

Response

idstringRequired

Kintsugi's unique identifier for the exemption.

organizationIdstringRequired

Organization the exemption belongs to. Send it as Organization-Id to scope a request to this exemption.

customerIdstring

Customer the exemption is held against. null for an exemption recorded against a transaction alone.

customerNamestring

Display name of the customer the exemption is held against, resolved when you list or fetch an exemption. null for an exemption recorded against a transaction alone (no customer). Sort a list by it with sort=customerName.

transactionIdstring

Transaction the exemption applies to. null when it applies to the customer's transactions generally rather than to one of them.

exemptionTypePublicExemptionTypeEnumRequired

What the exemption applies to.

Available options:customerwholesaletransactionreverse_chargepartial
certificateTypestring

Partial-exemption form code, such as CDTFA-230-M. Required when exemptionType is partial. Null for every other exemption type.

statusPublicExemptionStatusEnumRequired

Lifecycle status. Only ACTIVE exemptions are applied by tax calculation; the others are retained for reporting.

Available options:ACTIVEINACTIVEEXPIREDDEACTIVATEDARCHIVED
countryCodestring

ISO 3166-1 alpha-2 country the exemption is scoped to. null when it is not scoped to one country.

jurisdictionstring

State or province code the exemption is scoped to, within countryCode. null when it covers the whole country.

startDatestringRequired

First day the exemption is in force, as YYYY-MM-DD.

endDatestring

Last day the exemption is in force, as YYYY-MM-DD. null when it does not expire.

resellerbooleanRequired

Whether the exemption is claimed on the basis of resale.

feinstring

Federal Employer Identification Number recorded on the exemption. An empty string when none was recorded.

salesTaxIdstring

Sales tax registration number recorded on the exemption. An empty string when none was recorded.

sourcePublicExemptionSourceEnum

Origin system the exemption was recorded from. null for an exemption recorded before origins were tracked.

Available options:NETSUITEQUICKBOOKSINTUIT_ENTERPRISE_SUITESAGE_INTACCTSHOPIFYXEROSTRIPEBIGCOMMERCEMAGENTOMAXIOCHARGEBEEZUORAMICROSOFT_DYNAMICS_365DUALENTRYRECURLYSHOPLINEORBZENSKARHYPERLINEODOOMANUALBULK_UPLOADEMAILCHECKOUTAPIMISSING_CERTIFICATE
hasCertificatebooleanRequired

Whether any certificate document is on file for the exemption. Equivalent to certificates being non-empty, published so a list view does not have to walk the array.

certificatesExemptionCertificate[]

Certificate documents on file, most recent first. An empty list when there are none.

customerExemptionCustomer

The owning customer's display fields. Absent unless the request passes expand=customer; when expanded it is always an object (never null), though customerName and companyName may each be null.

200

Successful Response

400

The request was invalid.

401

Authentication failed or was missing.

403

The credential is not permitted for this request.

404

The requested resource was not found.

409

The request conflicts with existing state.

422

The request failed validation.

cURL
PATCH /exemptions/{exemption_id}
-H "Api-Key: ***"
-H "Api-Version: 2026-07-21"
{
"startDate": "2026-01-01",
"endDate": "2026-12-31",
"reseller": false,
"fein": "12-3456789",
"salesTaxId": "ST-98765",
"status": "ACTIVE",
"requestId": "req_2mNpQr7Ls8f3k"
}
Example request
https://api.trykintsugi.com/exemptions/{exemption_id}
Response
{
"id": "exmp_2mNpQr7Ls8f3k",
"organizationId": "orgn_2mNpQr7Ls8f3k",
"customerId": "cust_2mNpQr7Ls8f3k",
"customerName": "Acme Wholesale",
"transactionId": "tran_2mNpQr7Ls8f3k",
"exemptionType": "customer",
"certificateType": "certificate type",
"status": "ACTIVE",
"countryCode": "US",
"jurisdiction": "CA",
"startDate": "2026-01-01",
"endDate": "2026-12-31",
"reseller": false,
"fein": "12-3456789",
"salesTaxId": "ST-98765",
"source": "NETSUITE",
"hasCertificate": false,
"certificates": [
{
"id": "excr_2mNpQr7Ls8f3k",
"fileName": "resale-certificate.pdf",
"mimeType": "application/pdf",
"fileSizeBytes": 20481
}
],
"customer": {
"customerName": "Acme Wholesale",
"companyName": "Acme Holdings LLC"
}
}
Update an exemption (2026-07-21) | Kintsugi API Reference