XooCode(){

BankAccount

BankAccount is the FinancialProduct subtype for depository accounts: checking, savings, money-market, CD. It carries 3 direct properties on top of the FinancialProduct interest / APR / fees set.

Full example of schema.org/BankAccount json-ld markup

The markup is verified as valid with Rich Results Test from Google.

Highlight legend:Required by GoogleRecommendedOptional
schema.org/BankAccount
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "BankAccount",
  "name": "XooSaver High-Yield Savings",
  "bankAccountType": "Savings",
  "provider": {
    "@type": "BankOrCreditUnion",
    "name": "Dunmore Savings & Loan"
  },
  "interestRate": {
    "@type": "QuantitativeValue",
    "value": 4.75,
    "unitText": "percent APY"
  },
  "annualPercentageRate": 4.75,
  "accountMinimumInflow": {
    "@type": "MonetaryAmount",
    "value": 500,
    "currency": "USD"
  },
  "accountOverdraftLimit": {
    "@type": "MonetaryAmount",
    "value": 2500,
    "currency": "USD"
  },
  "feesAndCommissionsSpecification": "$5 monthly fee waived with $500 monthly direct deposit. No ATM fees at network locations."
}
</script>

Direct properties (3)

  • bankAccountType: Text or URL; schema.org provides well-known values at https://schema.org/DepositAccount and https://schema.org/CurrencyConversionService, but most publishers use free text like "Checking", "Savings", "Money Market", or "Certificate of Deposit".
  • accountMinimumInflow: MonetaryAmount required as a monthly deposit to avoid fees (common on premium checking).
  • accountOverdraftLimit: MonetaryAmount the account can go negative to (overdraft line credit).

Inherited from FinancialProduct: interestRate, annualPercentageRate, feesAndCommissionsSpecification. From Service: provider, areaServed, serviceType.

Minimal valid version

The smallest markup that still produces a valid BankAccount entity. Use it as the floor. Reach for the advanced example above when you want search engines and AI agents to understand more about your content.

schema.org/BankAccount (minimal)
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "BankAccount",
  "name": "XooSaver High-Yield Savings",
  "bankAccountType": "Savings",
  "annualPercentageRate": 4.75
}
</script>

Google rich results this unlocks

Markup matching this example makes your page eligible for the following Google Search rich results. The primary target drives the required / recommended property classification in the advanced code block above.

  • No dedicated rich result (feeds financial knowledge panels + AI citations)
    Google docs

Common BankAccount mistakes

Mistakes that pass validation but silently fail to earn rich results or mislead consumers walking the graph. Avoid these and your markup will be ahead of most sites in the wild.

  1. 01

    accountOverdraftLimit as a bare number

    Wrong
    "accountOverdraftLimit": 2500
    Right
    MonetaryAmount with value and currency

    Without currency the limit is unreadable internationally.

  2. 02

    Interest rate and APY mislabelled

    Wrong
    interestRate: 4.75 for a compounded APY figure
    Right
    interestRate for nominal rate; annualPercentageRate for APY on savings

    APY includes compounding; listing a compound rate under interestRate understates deposit returns to comparison engines.

  3. 03

    bankAccountType as a schema URL that doesn't exist

    Wrong
    "bankAccountType": "https://schema.org/SavingsAccount"
    Right
    "bankAccountType": "Savings"

    Free text is the common form; unrecognised schema URLs are ignored by consumers.

Also mentioned in 1 other example

BankAccount also appears in DepositAccount. See the full BankAccount schema page for every reference.

About the example data

XooSaver high-yield savings from Dunmore Savings & Loan — 4.75% APY, no minimum balance, $500 monthly inflow waives the $5 monthly fee, $2,500 overdraft protection.

Comments

Loading comments...

Leave a comment