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