Tokenized Account Numbers in US Institutions — What to Expect

Modified on Thu, 2 Apr at 10:08 AM

Topic: How Flinks handles tokenized account numbers from US open banking institutions  |  Product: Flinks API (Connect)  |  Effort: Reference — no integration changes required

Overview: Several US financial institutions return a Tokenized Account Number (TAN) instead of the customer's real account number when data is aggregated via open banking . This is institution-enforced — not a Flinks limitation. The TAN is fully functional for ACH and RTP payment processing when paired with the routing number. This article explains which institutions are affected, how the data appears in Flinks API responses, and how to handle it in your integration.

In this article

#SectionWhat you'll find
1Which Institutions Return a TANChase, PNC, and other TCH-connected institutions
2How Flinks Maps the DataAccountNumber, TransitNumber, LastFourDigits field mapping
3Using TANs for Payment ProcessingACH and RTP compatibility
4FAQCommon questions from clients and TAMs
5Quick ReferenceKey values and availability at a glance
6Related ResourcesDocs, Chase developer guide, internal runbooks

1. Which Institutions Return a TAN

The following institutions are confirmed to return a tokenized account number instead of the real account number when aggregated via open banking:

InstitutionAggregation PathTokenization ProviderNotes
ChaseOAuthChase (proprietary TAN)TAN is 17 digits long
PNCOAuthThe Clearing HouseReal account number is not returned
OthersOAuthThe Clearing HouseAny institution routing through TCH tokenization
Note: Tokenization applies only to OAuth/open banking connections. Credential-based connections may behave differently depending on what the institution exposes.

Chase — TAN Details

Chase defines the TAN as:

"The Tokenized Account Number (TAN) is a secure method for our partners to share an account number that can be used for ACH or RTP transactions instead of the actual account number. Using a TAN reduces the risk of a customer's account number being compromised."

Chase issues TANs for these deposit account types:

  • CHK — Checking
  • SAV — Savings
  • PPG — Starbucks Account
  • PPX — Prepaid Liquid Debit Account
  • MMA — Money Market Account

Chase TANs are 17 digits in length — longer than a standard account number. This is the clearest signal that tokenization is in effect.

PNC — TAN via The Clearing House

PNC, uses The Clearing House to generate its tokenized account number. The API behavior is the same: a surrogate account number is returned in place of the real account number, and the routing number is provided alongside it.


2. How Flinks Maps the Data

When Flinks aggregates an account that returns a TAN, the /GetAccountsDetail and /GetAccountsSummary response fields map as follows:

Flinks FieldValue ReturnedDescription
AccountNumberTokenized Account NumberDisplayed masked (e.g., xxxxxxxxxxxx). This is the TAN — not the real account number.
TransitNumberRouting Number (ABA)The institution's ABA routing number. Use with AccountNumber for payment processing.
InstitutionNumbernullNot applicable for US institutions.
LastFourDigitsLast 4 digits of real accountAvailable for Chase. Added July 19, 2023. Use for account identification and verification.

Example Response Snippet

{
  "TransitNumber": "021000021",
  "InstitutionNumber": null,
  "AccountNumber": "xxxxxxxxxxxx",
  "LastFourDigits": "2044"
}
Note: The AccountNumber field is masked in the response for display purposes. The underlying TAN (e.g., 17 digits for Chase) is what gets used for payment processing. Do not validate account number length against standard formats — the TAN will not match.

LastFourDigits Availability

The LastFourDigits field was added on July 19, 2023 for Chase. It contains the last 4 digits of the customer's actual account number (not the TAN).

  • Available on both /GetAccountsDetail and /GetAccountsSummary
  • Only populated for OAuth connections where the institution returns this data
  • Can be used with TransitNumber to uniquely identify an account across sessions
Important: If a connection was made before July 19, 2023, LastFourDigits may not be present in the response. Ask the end user to re-authenticate once to refresh the data.

3. Using TANs for Payment Processing

The TAN and routing number together are sufficient for ACH and RTP payment transactions. No additional data is required.

Payment RailSupported with TANWhat to Use
ACH DebitYesAccountNumber (TAN) + TransitNumber (ABA)
ACH CreditYesAccountNumber (TAN) + TransitNumber (ABA)
RTPYesAccountNumber (TAN) + TransitNumber (ABA)
Note: You do not need the real account number to initiate payments. The TAN + routing number combination is the intended and complete input for payment processing at these institutions.

4. FAQ

Can Flinks retrieve the real account number?

No. The real account number is never transmitted to aggregators by these institutions. This is enforced at the bank's API level. Flinks returns exactly what the institution provides — there is no workaround.

Will the TAN ever change?

This is not fully confirmed for all institutions. For Chase, the TAN is issued per aggregator relationship and is intended to be stable. If TAN stability is a concern, use LastFourDigits + TransitNumber as the stable identifier for account matching on your side.

Does the real account number match the TAN?

No. The TAN is a completely different number. The only connection to the real account is the LastFourDigits field (where available).

Do all US institutions return a TAN?

No. Only institutions that have adopted open banking tokenization policies return a TAN. Many US institutions still return their real account number. TANs are currently confirmed for Chase and PNC.

How do I uniquely identify an account if the TAN might change?

Use the combination of LastFourDigits + TransitNumber. The LastFourDigits value represents the last 4 digits of the customer's actual account number and should remain stable for the same account across sessions.

Is the TAN masked in the Flinks response?

The AccountNumber field is shown as xxxxxxxxxxxx in the API response. This is a Flinks-side display decision. The underlying TAN is stored and available for payment processing use.


5. Quick Reference

ItemValue
TAN length (Chase)17 digits
Flinks field for TANAccountNumber
Flinks field for routing numberTransitNumber
Flinks field for real account last 4LastFourDigits
InstitutionNumbernull (US institutions)
Payment rails supportedACH Debit, ACH Credit, RTP
LastFourDigits available sinceJuly 19, 2023
Institutions confirmedChase, PNC, TCH-connected institutions

6. Related Resources

Last updated: 2026-03-16  |  Owner: Walter Jr — wrgiannetti@flinks.com

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article