Get Customer
GET /accounting/customers/{id}
Group: Accounting › Customers · Operation ID: getCustomer
Fetch a single customer by its id (a UUID), bound from the :id path segment. Returns the full customer record, including its default bill-to / sold-to addresses and external identifiers — the same item schema as POST accounting/customers/search. Read-only. Raises NOT_FOUND when no customer has that id (should map to 404). Every request must carry the Api-Version header.
Open in the interactive reference
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
Api-Version |
header | "v1" |
yes | The API version this request targets, named by its public identifier. Required on every request; omitting it, or naming a version this company does not have, is answered with 400. This document describes version v1. |
id |
path | string | yes | Id of the customer to fetch (a UUID); bound from the :id path segment. |
Response
200 Success
Under data (getCustomerOutput):
| Field | Type | Required | Description |
|---|---|---|---|
id |
string | yes | Id of the customer (a UUID) — the public identifier used by this route. |
name |
string | yes | Customer display name, as it appears on invoices and official documents. |
customerNumber |
string | yes | System-generated customer number, unique per tenant. Absent until one has been assigned. |
customerType |
string | no | Customer type. One of 'default', 'partner', 'endCustomer'. |
partnerType |
string | no | Partner type, set when customerType is 'partner'. One of 'reseller', 'thirdPartyPayer'. |
businessType |
string | no | Whether the customer is a registered company or an individual. One of 'company', 'individual'. |
entityId |
string | yes | Id of the legal entity that owns this customer (a UUID). A customer belongs to exactly one entity. |
entityName |
string | no | Name of the owning legal entity. |
lastModifiedDate |
string (date-time) | yes | Instant the customer record last changed, as ISO 8601 UTC (YYYY-MM-DDTHH:mm:ss.sssZ). Poll on this to sync incrementally rather than re-reading the whole collection. |
invoiceEmail |
string | no | Email address that receives invoices and billing statements. |
mainEmail |
string | no | Primary business contact email for general correspondence. |
taxExempt |
boolean | no | True when the customer is exempt from tax on all transactions. |
defaultCurrency |
string | no | Default transaction currency as a 3-letter ISO 4217 code (e.g. USD, EUR, GBP), when set. |
segment |
string | no | Market segment classification. One of 'SMB', 'MidMarket', 'Enterprise'. |
paymentTermLabel |
string | no | Label of the payment term applied to this customer's invoices, denormalised from the linked payment term. |
exemptionNumber |
string | no | Government-issued tax-exemption certificate number, when the customer is exempt. |
addresses |
array of object | no | The customer's default addresses, at most one per type: the default bill-to (where invoices are sent) first, then the default sold-to (used for tax determination). A type with no address flagged default contributes no entry, so this is empty when the customer has neither. Each entry names its own type, so read the list rather than assuming positions. |
addresses[].type |
string | yes | Which address this is. One of 'billTo', 'soldTo'. |
addresses[].isDefault |
boolean | yes | Whether this is the customer's default address of that type. Always true today — only default addresses are returned — and carried so each entry is self-describing. |
addresses[].addressId |
string | no | Id of the address record (a UUID). |
addresses[].attention |
string | no | Person or department correspondence at this address is directed to. |
addresses[].line1 |
string | no | Street address line 1: number, street name, or PO box. |
addresses[].line2 |
string | no | Apartment, suite, unit, building, floor, etc. |
addresses[].city |
string | no | City or locality. |
addresses[].stateProvince |
string | no | State, province, or region. |
addresses[].country |
string | no | Country, as a name or ISO 3166-1 code. |
addresses[].zipCode |
string | no | Postal or ZIP code. |
taxExemptCode |
string | no | Code behind the tax exemption, as the authority categorises it. |
salesChannel |
string | no | Channel the customer was won through. A SalesChannel member. |
additionalContactEmail |
string | no | Further contact addresses, beyond the invoice and main contacts. |
mainContactName |
string | no | Name of the customer's main contact person. |
preferredLanguage |
string | no | Language the customer prefers correspondence in. A PreferredLanguage member. |
crmCustomerId |
string | no | The customer's identifier in the CRM system it was sourced from. |
businessIdentificationNumber |
string | no | Government-issued business registration number. |
invoiceConsolidation |
string | no | How invoices are consolidated for this customer. An InvoiceConsolidation member. |
invoiceDeliveryMode |
string | no | How invoices reach the customer. An InvoiceDeliveryMode member. |
isExemptFromCreditCardFee |
boolean | no | Whether the customer is exempt from credit-card surcharges. |
billableTravelExpenseInvoiceDetail |
string | no | Whether billable travel and expense items appear itemised or consolidated. An InvoiceDetail member. |
status |
string | no | Lifecycle status of the customer record. A CustomerStatus member. |
paymentTerm |
string | no | Code of the payment term applied to this customer's invoices; paymentTermLabel carries its display name. |
taxRegistrations |
array of object | no | Tax registrations on file for this customer, across jurisdictions and tax types. Empty when the customer has none. |
taxRegistrations[].country |
string | yes | ISO 3166-1 country code the registration applies in. |
taxRegistrations[].taxNumber |
string | yes | Official tax identification number issued by the tax authority. |
taxRegistrations[].type |
string | yes | Kind of tax identification number. One of 'tax', 'salesTax', 'VAT', 'GST', 'EIN', 'TIN'. |
taxRegistrations[].effectiveDate |
string | no | Date the registration becomes valid for tax calculations (YYYY-MM-DD). |
taxRegistrations[].isActive |
boolean | no | Whether the registration is currently used for tax calculations. |
taxRegistrations[].note |
string | no | Free-text internal note recorded against the registration. |
taxRegistrations[].validationStatus |
string | no | Validation state assigned by the tax engine, not by the caller. |
taxRegistrations[].validationMessages |
string | no | Detail behind the validation state, when the engine recorded any. |
payment |
object | no | The customer's payment-provider link, when one is registered: the provider and the customer / default-payment-method identifiers in that provider's system. Absent when the customer has none. |
payment.provider |
string | no | Payment provider name, e.g. 'Stripe'. |
payment.externalCustomerId |
string | no | The customer's identifier in the payment provider's system. |
payment.externalPaymentMethodId |
string | no | The customer's default payment-method identifier in the provider's system. |
externalIdentifiers |
array of object | no | External identifiers owned by other systems. At most one entry per fieldName. Absent when the customer has none; an omitted field and [] are equivalent. |
externalIdentifiers[].fieldName |
string | yes | Configured key of the external identifier — a stable camelCase slug such as 'netsuiteSoNumber', not the human-readable label. Must match an active CustomerExternalIdentifierConfiguration. |
externalIdentifiers[].value |
string | yes | The identifier as the source system holds it. |
externalIdentifiers[].externalUrl |
string | no | Absolute http(s) link to the object in the originating system, when one is stored. |
Errors
| Code | Status |
|---|---|
NOT_FOUND |
400 |
Statuses
400— Invalid request or business failure. Codes: NOT_FOUND401— Missing or invalid access token403— Not authorized404— Not found429— Too many requests500— Internal server error