Skip to content

Document every external account type (21/45 → 45/45) - #794

Merged
shreyav merged 2 commits into
mainfrom
claude/docs-remaining-account-types
Aug 4, 2026
Merged

Document every external account type (21/45 → 45/45)#794
shreyav merged 2 commits into
mainfrom
claude/docs-remaining-account-types

Conversation

@shreyav

@shreyav shreyav commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Summary

external-accounts.mdx documented 21 of the 45 account types in ExternalAccountType. Because the page reads as an enumeration — a tab per country or rail — a developer scanning it would reasonably conclude the other 24 aren't supported. This documents all of them.

Docs-only, one file, +927 lines. Generated bundles untouched.

Coverage is now 45/45, verified by diffing the accountType values in the page against account-types.ts.

Added Types
18 fiat tabs AED BDT BWP CNY DKK EGP GHS GTQ HKD HTG IDR JMD MYR PKR SGD THB VND XAF
Cryptocurrency tab Ethereum L1, Base, Polygon, Solana, Tron, Plasma, Lightning — it previously showed Spark alone

Scope grew during the work — worth knowing

I started from a list of 17 missing types. A mechanical diff against account-types.ts found 24: DKK, HKD, IDR, MYR, SGD, THB, VND and LIGHTNING weren't on my list. Stopping at 17 would have reproduced the same partial-coverage problem in a PR whose entire purpose is fixing it, so all 24 are here.

Where the content comes from

Nothing is inferred from existing examples — each type was read from its schema:

  • Fields and required/optional split<Ccy>AccountInfoBase.yaml
  • Beneficiary shape<Ccy>Beneficiary.yaml, which is where the real variation lives. Most need only fullName, but AED and JMD also require an address, GTQ requires countryOfResidence and phoneNumber, and JMD requires phoneNumber. Those are easy to miss and produce confusing validation failures.
  • Per-chain asset support — each Payment<Chain>WalletInfo.yaml. Ethereum carries USDC and USDT; Base and Polygon are USDC-only. Stated per chain rather than assumed uniform.
  • Dual-rail currencies (BDT, CNY, EGP, GHS, PKR) get separate bank-transfer and mobile-money examples, following the existing Colombia and El Salvador tabs.

No example sends paymentRails. It's response-only, and three separate PRs (#351, #661, and the original #359 lineage) got that wrong. The single occurrence of it in this file remains where it belongs — the GET response example.

Example people match the entries added to currencies.ts in #791, so the docs and the visualizer describe the same fictional customers.

Verification

  • All 54 curl payloads in the file parse as JSON — not just the new ones
  • Every accountType used is a valid ExternalAccountType member
  • Coverage diff is empty: no type in account-types.ts is undocumented
  • MDX component tags and code fences balance
  • All new curl examples use -u, consistent with Document external-account GET/DELETE, and fix all 85 broken curl auth examples #793
  • openapi.yaml and mintlify/openapi.yaml byte-identical to main

Not verified: no visual render. This is 927 lines of new tabs, so the Mintlify preview is the meaningful review — worth checking that the tab strip doesn't overflow badly now that it holds 32 tabs. make lint was not run; it fails on main regardless (npx spectral lint resolves to a stub spectral@0.0.0).

One thing this surfaces

SWIFT_ACCOUNT is documented here but absent from account-types.ts, so the visualizer still can't produce it. That's the known gap from closed #775 — the entry was correct but unreachable without widening FiatCurrency past a single accountType. Unchanged by this PR, but the asymmetry is now visible: the docs describe a type the visualizer can't build.

Left out deliberately

I had also listed adding SWIFT to account-model.mdx. That item doesn't hold up. My earlier check used the wrong path — the file is at platform-overview/core-concepts/account-model.mdx, not snippets/. Looking at the real file, it's an explicitly illustrative page showing 8 representative types, not an enumeration. Singling out SWIFT there would recreate the curated-list problem rather than fix one. Left alone.


Generated by Claude Code

external-accounts.mdx covered 21 of the 45 account types in
ExternalAccountType. A reader scanning the tab list would reasonably
conclude the other 24 were unsupported. This documents all of them, so
the page is now a complete enumeration rather than a sample.

Adds 18 fiat tabs - AED, BDT, BWP, CNY, DKK, EGP, GHS, GTQ, HKD, HTG,
IDR, JMD, MYR, PKR, SGD, THB, VND, XAF - and extends the Cryptocurrency
tab with Ethereum L1, Base, Polygon, Solana, Tron, Plasma and Lightning,
which previously showed Spark alone.

Required and optional fields come from each <Ccy>AccountInfoBase.yaml,
and the beneficiary shape from each <Ccy>Beneficiary.yaml, which is
where the variation lives: most need only fullName, but AED and JMD
also require an address, GTQ requires countryOfResidence and
phoneNumber, and JMD requires phoneNumber. Per-chain asset support is
read from each Payment<Chain>WalletInfo.yaml rather than assumed, since
Ethereum carries USDC and USDT while Base and Polygon are USDC-only.

No example sends paymentRails. It is response-only, and three earlier
PRs got that wrong.

Example people match the entries added to currencies.ts in #791 so the
docs and the visualizer describe the same fictional customers.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MMnjJ8yWJsui7jLqqrDrL4
@mintlify

mintlify Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
Grid 🟢 Ready View Preview Aug 4, 2026, 3:51 PM

@vercel

vercel Bot commented Aug 4, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

2 Skipped Deployments
Project Deployment Actions Updated (UTC)
grid-flow-builder Ignored Ignored Preview Aug 4, 2026 3:59pm
grid-wallet-demo Ignored Ignored Preview Aug 4, 2026 3:59pm

Request Review

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MMnjJ8yWJsui7jLqqrDrL4
@shreyav
shreyav merged commit fbb9c6f into main Aug 4, 2026
8 checks passed
@shreyav
shreyav deleted the claude/docs-remaining-account-types branch August 4, 2026 16:01
@greptile-apps

greptile-apps Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR expands the shared external-account documentation to cover every external account type, adding fiat, mobile-money, cryptocurrency, and Lightning examples.

  • Adds examples and field guidance for 18 fiat account types.
  • Expands cryptocurrency coverage across Ethereum, Base, Polygon, Solana, Tron, Plasma, and Lightning.
  • Preserves the existing generated OpenAPI bundles while updating the shared Mintlify snippet.

Confidence Score: 4/5

The Solana asset documentation should be corrected before merging because it excludes the currently supported USDT path.

The new Solana section states that only USDC is supported, while the authoritative payment schema permits both USDC and USDT.

Files Needing Attention: mintlify/snippets/external-accounts.mdx

Important Files Changed

Filename Overview
mintlify/snippets/external-accounts.mdx Adds comprehensive external-account examples, but understates Solana support by omitting USDT from its supported-assets statement.
Prompt To Fix All With AI
### Issue 1
mintlify/snippets/external-accounts.mdx:1752
**Solana USDT support omitted**

When developers use this section to determine Solana asset support, it lists only USDC even though `PaymentSolanaWalletInfo` also permits USDT, causing a valid Solana-USDT integration path to be incorrectly excluded.

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Reviews (1): Last reviewed commit: "Document every external account type" | Re-trigger Greptile


**Solana**

Supported assets: USDC.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Solana USDT support omitted

When developers use this section to determine Solana asset support, it lists only USDC even though PaymentSolanaWalletInfo also permits USDT, causing a valid Solana-USDT integration path to be incorrectly excluded.

Context Used: mintlify/AGENTS.md (source)

Knowledge Base Used: Mintlify Documentation Site

Prompt To Fix With AI
This is a comment left during a code review.
Path: mintlify/snippets/external-accounts.mdx
Line: 1752

Comment:
**Solana USDT support omitted**

When developers use this section to determine Solana asset support, it lists only USDC even though `PaymentSolanaWalletInfo` also permits USDT, causing a valid Solana-USDT integration path to be incorrectly excluded.

**Context Used:** mintlify/AGENTS.md ([source](https://github.com/lightsparkdev/grid-api/blob/main/mintlify/AGENTS.md))

**Knowledge Base Used:** [Mintlify Documentation Site](https://app.greptile.com/lightspark/-/custom-context/knowledge-base/lightsparkdev/grid-api/-/docs/mintlify-docs-site.md)

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants