Overview
An external account is a customer’s account at another financial institution — checking, savings, credit card, or investment. To use one, you must verify ownership. Synctera has partnered with Plaid and Finicity to verify ownership and retrieve balance and transaction information. Verifying an external account unlocks capabilities such as balance checks before issuing ACH debits (to reduce overdrafts) and account-owner validation. You can originate ACH credits without verifying the owner, but ACH debits require the customer to have verified that they own the external account. Key characteristics:- Ownership-verified — accounts are linked through Plaid Link or Finicity Connect, which confirm the customer controls the account.
- Vendor-backed — link through
PLAIDorFINICITY; each has slightly different flows. - Actionable — once added, you can list transactions and fetch balances (except for micro-deposit links).
- Manageable — accounts can be listed, viewed, updated (for manual accounts), synced, and deleted.
If you use another provider such as MX, you can create external accounts directly by posting to the
/v0/external_accounts API. Synctera confirms that customers validate ownership of the external account as part of the launch process.Prerequisites
This guide assumes you have:- Created a personal customer or business customer
customer_id for personal customers or business_id for business customers. If you have not created a customer yet, do so first via the Customer API.
Plaid vs Finicity. Both provide similar services; the main difference is account linking. Plaid Link requires you to integrate Plaid’s SDKs directly. Finicity Connect is a web interface hosted by Finicity where users enter their account credentials. Note that micro-deposits are only supported by Plaid.
Verification steps (Plaid)
1
Request a link token and launch Plaid Link
A link token is the first step to verifying an external account; it grants access to Plaid Link, the UI where customers provide their bank details. Integrate Plaid Link (Android, iOS, WebView, React Native, web), or use our test page to try calls before integrating.Request a link token with Create Link Token:The Use the
type of link token determines what kind of account can be verified:link_token to launch Plaid Link. When the customer confirms their account, Plaid sends an onSuccess callback with account metadata and a public_token — the input for the next step. (On the test page, enter the link_token, click Link Account, and the public_token appears at the top.)2
Request an access token
The access token holds the details Plaid retrieved and lets you manage the account through Synctera. Create one with Access Token. For all link token types except The response returns the
MICRO_DEPOSIT, Plaid’s success response includes vendor_public_token and vendor_institution_id, which must be included here.vendor_access_token; verification is complete. For the micro-deposit variant, see Micro-deposits flow.3
Add the verified external accounts
Persist the The response lists both added and failed accounts, so check which succeeded:You can also retrieve all linked accounts with List External Accounts.
vendor_access_token and add the accounts the customer selected with Add External Accounts. Include:customer_idorbusiness_id— the customer associated with these accounts.customer_type—PERSONALorBUSINESS.vendor—PLAIDfor this flow.vendor_access_token— from the previous step.vendor_account_ids— the vendor account IDs the customer chose to link (Plaidaccount_ids).verify_owner— whether to verify account-owner info against Synctera records. Not supported for business customers or the micro-deposit flow.
Micro-deposits flow
Micro-deposits verify a depository account by depositing $0.01 whose transaction description contains a code the customer must confirm. This flow assumes you have already created aMICRO_DEPOSIT link token and launched Plaid Link (choosing Manual, or Link With Account Numbers), entered the account information, and received a public_token.
1
Request an access token
Create an access token as usual, but because institution information is not returned in the micro-deposit flow, set The response returns the
vendor_institution_id to "-":vendor_access_token. Wait up to 48 hours for the micro-deposit to arrive (or use the test data to proceed immediately).2
Create a second link token
Create another link token, this time including the Launch Plaid Link with this token and prompt the customer to submit the 3-letter code from the micro-deposit description.
vendor_access_token. This secondary token lets the customer enter the code from the micro-deposit’s transaction description via Plaid Link.3
Add the verified account
Once the code is submitted, verification is complete. Add the account as in the standard Add the verified external accounts step.
Update mode
Update mode lets you re-authenticate a disconnected account or link additional accounts at the same bank. Create a new link token that includes bothvendor_institution_id and vendor_access_token:
Verification steps (Finicity)
1
Request a Connect URL from Finicity
The Connect URL opens Finicity’s hosted web interface where customers link their accounts. Request it with Create Link Token:Finicity supports Save the vendor customer ID for later — it is the
DEPOSITORY, CREDIT, and INVESTMENT link tokens (no micro-deposits).customerId query parameter in the URL (here, 6003202401).2
Link the accounts
Load the returned URL so the customer can search for their financial institution, provide credentials, and link their accounts.
3
Add the external accounts
Persist the linked accounts with Sync External Accounts. Include:All accounts selected in Finicity Connect are added as verified external accounts. Re-run the call after linking or unlinking accounts to add or remove them.
customer_idorbusiness_id— the customer associated with these accounts.customer_type—PERSONALorBUSINESS.vendor—FINICITYfor this flow.vendor_customer_id— the customer ID returned by the vendor.verify_owner— not supported for business customers.
Operations
Once an account is linked and added, you can list transactions and fetch balances. These operations are not available for micro-deposit links, since Plaid does not allow Auth on micro-deposits.List transactions
Retrieve transactions for an external account with List Transactions.start_date is inclusive and end_date is exclusive — for all transactions on 2022-01-01, use start_date=2022-01-01&end_date=2022-01-02.
Get balance
Fetch an account balance byexternal_account_id. The response reports available and current balances in cents (1000 = $10.00), the ISO 4217 currency, and the balance limit.
Account management
List external accounts
View all external accounts, optionally filtered bycustomer_id or business_id, with List External Accounts:
View a specific external account
Fetch a single account by ID with Get External Account:Sync vendor accounts
After running Plaid Link in update mode, persist the changes (adds the newly linked accounts and deletes the unlinked ones) with Sync Vendor Accounts. Owner-identity verification is not supported for business customers — omitverify_owner or set it to false.
added_accounts, deleted_accounts, and failed_accounts.
Unlink an external account
Create a link token in update mode (includevendor_institution_id), launch Plaid Link, uncheck the accounts to unlink, and click Continue. The unlinked accounts can then be deleted from Synctera. If you linked new accounts, persist them with Sync Vendor Accounts.
Delete an external account
Delete an account from Synctera with Delete External Account. If it is still linked at Plaid, you can add it back.Create an external account manually
If you verify account ownership outside Synctera’s API, create the external account manually with Add an External Account:Update an external account
Update details of a manually created account with Update External Account. Do not use this for accounts whose details came directly from a vendor.Troubleshooting
Common errors when using the External Accounts API:Best practices
- Verify before debiting — ACH debits require a verified external account; only ACH credits can be originated without owner verification.
- Check balances first — call the balance endpoint before ACH debits to reduce the chance of overdrafts (not available for micro-deposit links).
- Handle failed accounts — always inspect
failed_accountsin add/sync responses rather than assuming every account linked. - Unlink before deleting — deleting in Synctera does not unlink at Plaid; follow the unlink flow first.
- Use update mode to re-auth — resolve
ITEM_LOGIN_REQUIREDby re-running Plaid Link in update mode instead of recreating the account.
Related guides
Create a Personal Customer
Create the customer an external account belongs to.
Create a Business Customer
Link external accounts to a business customer.
Sandbox Test Cases
Test data for micro-deposit and linking scenarios.

