Get the QuickBooks customer linked to a customer
AI agents: read /llms.txt; add .md to any page URL. This page as Markdown: /reference/customers/v1-customer-external-id-get.md. Index of every page and the rules for every call: /llms.txt. Guides and concepts in one file: /llms-full.txt. OpenAPI: /openapi.json.
GET/
Reads the QuickBooks Online customer linked to this YoPrint customer, for the QuickBooks connection {id}. Returns id and name (its QuickBooks Id and DisplayName), override (the override lock), attached_by_user and customer_id, or an empty data when nothing is linked.
This calls QuickBooks Online each time. {id} is the QuickBooks connection's id from List integrations.
Business rules
- Customers synced from Shopify can't be linked to QuickBooks (422 "Shopify customers cannot be mapped to QuickBooks.").
Side effects
- Calls the QuickBooks Online API with the team's connection.
Path parameters
Your team slug, shown as Team ID next to your API key in Profile.
- Example
your-team
- Example
The customer's id (
idfrom List customers or Create a customer). A hash id from an earlier answer; unique keys and document numbers (such asPO0042) don't work here.- Example
EDhVUaC6jbLbed
- Example
The QuickBooks Online connection's id (
idfrom List integrations), not the QuickBooks record's Id. A hash id from an earlier answer; unique keys and document numbers (such asPO0042) don't work here.- Example
uAu3dAKIaHyAYk
- Example
Request body
This operation takes no request body.
Response
200Successful response.
The linked QuickBooks record, or an empty list
[]when nothing is linked.Child fields (5)
attached_by_userbooleanTrue when someone linked it by hand.
customer_idstringidstringThe QuickBooks Id.
namestring | nullIts DisplayName in QuickBooks.
overrideboolean | integer | stringThe override lock: true means YoPrint never overwrites it. Returned exactly as
override_lockwas sent when linking (a JSON boolean when you sent one), and false when it was never set.
Errors
401The API key is missing or wrong (
unauthenticated).403You are not allowed to do this.
api_access_not_in_plan: your team's plan doesn't include API access (Pro and above, with an active subscription or trial), so every request answers this until the team upgrades. When your role lacks the permission the operation needs, the body is only{"message": "Insufficient Permission"}. Other refusals use the error envelope, withunauthorizedoruser_is_not_authorized.404Not found.
page_not_found: the team slug is unknown, you are not a member of the team, or an id in the path is not one of this team's.code: null, with a message that starts "No query results for": there is no record with that id.422The request was refused and changed nothing.
validation_failedlists what to fix inerror.fields; other codes name a business rule, explained inerror.message. A few checks answer with only{"message": "..."}. An operation that calls another service (a payment provider, a carrier, an accounting app) can answerconnect_timeout("Please retry again") when that service does not answer in time: the change may or may not have happened there, so read the record back before you retry.- When
{id}is not a QuickBooks Online connection of the team (error.codeexternal_integration_not_found,error.messagenull).- Fix
- Use the id of the QuickBooks connection from List integrations.
- When
- The customer is synced from Shopify (
validation_error, "Shopify customers cannot be mapped to QuickBooks."). - Fix
- None: Shopify customers are not linked to QuickBooks.
- When
- The QuickBooks Online connection can't be used: it is waiting to be reconnected (
error.codeauth_error), or its sign-in expired, QuickBooks refused it or QuickBooks could not be reached (bootstrap_error, with the reason inerror.message). - Fix
- Reconnect QuickBooks Online under Apps, or retry later.
Notes
- Deleted customers can be read too.
- A link whose QuickBooks customer no longer exists also answers an empty
data.
Related
- PUTLink a customer to a QuickBooks customer
/v1/ api/ store/ {team_slug}/ customer/ {hash_id}/ external_id/ {id} - DELETEUnlink a customer from QuickBooks
/v1/ api/ store/ {team_slug}/ customer/ {hash_id}/ external_id/ {id} - GETList integrations
/v1/ api/ store/ {team_slug}/ setting/ external_integration
