Flow Unified API
API ReferenceAccounting

Customer · customer

Portable accounting customer / contact contract. name is the stable cross-system anchor; currencyCode matters for Cin7 Core writes, and address fields matter most for QuickBooks writes.

Entity type: customer · Methods: GET · POST

Portable accounting customer / contact contract. name is the stable cross-system anchor; currencyCode matters for Cin7 Core writes, and address fields matter most for QuickBooks writes.

Endpoints

GET  /unified/{accountId}/customer   # List normalized customer records
POST /unified/{accountId}/customer   # Create / push one customer

Schema

FieldTypeRequiredDescription
externalIdstringYesStable source customer identifier. Used as the idempotency key on writes.
namestringYesBest available display / contact name for the customer.
firstNamestringGiven name for person-style contacts.
lastNamestringFamily name for person-style contacts.
emailstring · emailPrimary email address.
phonestringPrimary phone number.
companyNamestringCompany or business name when distinct from display name.
notesstringCustomer note or memo.
addressobjectPrimary billing or mailing address.
address.line1stringStreet address, first line.
address.line2stringStreet address, second line.
address.citystringCity or locality.
address.statestringState, province, or region.
address.postalCodestringZIP or postal code.
address.countrystringCountry name or code.
activebooleanWhether the customer / contact is active.
currencyCodestring · ISO 4217Preferred 3-letter currency code when available.

Example object

{
  "externalId": "cus_8Kz2n41",
  "name": "Harvest Market Ltd.",
  "firstName": "Elena",
  "lastName": "Chen",
  "email": "elena@harvestmarket.com",
  "phone": "+1 415 555 0134",
  "companyName": "Harvest Market Ltd.",
  "notes": "Wholesale account, NET-30 terms.",
  "address": {
    "line1": "210 Mission St",
    "city": "San Francisco",
    "state": "CA",
    "postalCode": "94105",
    "country": "US"
  },
  "active": true,
  "currencyCode": "USD"
}

The same shape is used as the POST request body and returned by GET reads — reads from every connected system are normalized to it.

Requests

read customer
curl "https://dev.flow.staging.linktoany.com/api/1.0/standalone-link-engine-service/unified/{accountId}/customer?mappingKey={readKey}&pageSize=50" \
  -H "authorization: Bearer <token>"
write customer
curl -X POST "https://dev.flow.staging.linktoany.com/api/1.0/standalone-link-engine-service/unified/{accountId}/customer?mappingKey={writeKey}" \
  -H "authorization: Bearer <token>" \
  -H "content-type: application/json" \
  -d '{"externalId":"cus_8Kz2n41","name":"Harvest Market Ltd.","firstName":"Elena","lastName":"Chen","email":"elena@harvestmarket.com","phone":"+1 415 555 0134","companyName":"Harvest Market Ltd.","notes":"Wholesale account, NET-30 terms.","address":{"line1":"210 Mission St","city":"San Francisco","state":"CA","postalCode":"94105","country":"US"},"active":true,"currencyCode":"USD"}'

Supported systems

SystemReadWriteAuthRate limit
XeroYesYesOAuth 2.01 req / s
QuickBooks OnlineYesYesOAuth 2.010 req / s · 100 req / min
Cin7 CoreYesAPI key10 req / s · 100 req / min

On this page