chore: sync account schemas, including the create side - #880
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. 2 Skipped Deployments
|
|
Preview deployment for your docs. Learn more about Mintlify Previews.
|
|
✱ Stainless preview builds for gridThis PR will update the cli go kotlin openapi php python ruby typescript ⏳ grid-openapi studio⏳ grid-ruby studio⏳ grid-kotlin studio⏳ grid-go studio⏳ grid-typescript studio⏳ grid-python studio⏳ grid-php studio⏳ grid-cli studio⏳ These are partial results; builds are still running. This comment is auto-generated by GitHub Actions and is automatically kept up to date as you push. |
|
@greptile review |
Greptile SummaryThe PR synchronizes generated external-account create and response schemas, adds complete ILS account support, and replaces shared business-beneficiary definitions with corridor-specific contracts.
Confidence Score: 5/5The PR appears safe to merge. No blocking failure remains.
|
| Filename | Overview |
|---|---|
| openapi/components/schemas/external_accounts/ExternalAccountCreateInfoOneOf.yaml | Extends the create union and discriminator mapping with the generated currency variants, including ILS. |
| openapi/components/schemas/external_accounts/ExternalAccountInfoOneOf.yaml | Synchronizes response variants and discriminator mappings with the supported currency account schemas. |
| openapi/components/schemas/external_accounts/IlsExternalAccountCreateInfo.yaml | Introduces the ILS external-account creation contract using base account and ILS beneficiary schemas. |
| openapi/components/schemas/external_accounts/IlsExternalAccountInfo.yaml | Introduces the corresponding ILS response contract with payment-rail information. |
| openapi/components/schemas/common/PaymentInstructions.yaml | Adds ILS payment-account information to the payment-instruction union and discriminator. |
| openapi.yaml | Regenerates the assembled API contract with the synchronized account schemas. |
| mintlify/openapi.yaml | Updates the documentation contract with the generated schema changes. |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart LR
S[Modular currency schemas] --> C[External-account create union]
S --> R[External-account response union]
I[ILS account schemas] --> C
I --> R
I --> P[Payment instructions]
C --> O[Assembled OpenAPI contract]
R --> O
P --> O
O --> M[Mintlify API contract]
Reviews (2): Last reviewed commit: "chore: sync account schemas, including t..." | Re-trigger Greptile
Regenerated from the schema generator, which now emits the create variant alongside the response variant for every currency. - ILS is complete: account, beneficiary, business beneficiary, payment account, and both external account variants, plus its entries in the two unions and the account type enum. Creating an ILS external account was not expressible before this. - Every currency now references its own business beneficiary schema where one exists, on both variants, so a corridor states the fields it actually requires. The Yellowcard corridors require a registration number and tax ID; EUR also requires a country of residence; AED, CNY and ILS require an address. The shared schema asked only for a legal name, so those requests were accepted and failed later at payout. - Corridors whose partners serve no business payee keep the shared business schema. They are unimplemented rather than impossible, and the payout refuses them when attempted. No schema loses a property or a beneficiary option. CAD, SLV and SWIFT are unchanged: they have no generated counterpart and stay hand-maintained.
1b94950 to
effd247
Compare
|
@greptile review |
#893) ## Summary The Grid Switch Corridor List marks `LSP US → Israel / ILS / Thunes` as **Live** on 2026-09-02 after successful B2C and B2B production tests (settlement ~10 min). The ILS schemas landed in #880 and already appear in the API reference and the generated required-fields page. This PR adds the hand-maintained guide content that the schema sync does not cover, following the same steps #472 and #471 took for Colombia. ### Country coverage (`mintlify/snippets/country-support.mdx`) - Add 🇮🇱 Israel (IL) with `Bank Transfer` and `SWIFT`, between Ireland and Italy. - Bump the country count from 62 to 63 in both feature cards. - Bump the Middle East and Africa regional summary from 15 to 16. ### External accounts (`mintlify/snippets/external-accounts.mdx`) - Add an Israel tab, after United Arab Emirates, with an `ILS_ACCOUNT` curl example. Fields follow `IlsAccountInfoBase.yaml`: a 23-character IBAN starting with `IL` and a required `bankName`. There is no `swiftCode` field on this account type. - Add ILS to the business beneficiary row that requires `legalName` and `address`, and to the note about business originators providing `registrationNumber`. `IlsBusinessBeneficiary.yaml` requires `beneficiaryType`, `legalName`, and `address`, matching the AED group. ### Grid Visualizer - `account-types.ts`: add the `ILS_ACCOUNT` field spec (`iban`, `bankName`). - `currencies.ts`: add the ILS entry with `BANK_TRANSFER` as the only rail, matching the `paymentRails` enum in `IlsAccountInfo.yaml`. - `RegionPicker.tsx`: add `ILS: 'Israel'` so the picker shows the country name rather than the currency name. - `public/flags/il.svg`: copied from the `circle-flags` package, the same source as the existing 48 flags. ## Reviewer notes - `SWIFT` on the Israel row follows the rule from #883: every country gets `SWIFT` unless it is on Tazapay's prohibited list. Israel is not on that list. This was not independently confirmed for the Israel corridor. - The `bankName` example (`Bank Leumi`) is illustrative. Point readers at the Discoveries API for accepted values if a specific list is required. ## Test plan - [x] `markdownlint` reports no findings on the edited lines (pre-existing findings elsewhere in `external-accounts.mdx` are unchanged). - [x] `tsc --noEmit` in `components/grid-visualizer` produces the same 26 pre-existing errors as `main`, none new. - [x] `mint dev`: the Israel row renders between Ireland and Italy on `global-p2p/country-support`, the counts read 63 and 16, and the Israel tab renders on `payouts-and-b2b/depositing-funds/external-accounts`. - [ ] Confirm the corridor is live with the payments team before merging. No OpenAPI changes, so no rebundle needed. Made with [Cursor](https://cursor.com) Co-authored-by: Cursor <cursoragent@cursor.com>
Regenerated from the schema generator, which now emits the create variant alongside the response variant for every currency.
CAD, SLV and SWIFT are unchanged: they have no generated counterpart and stay hand-maintained.
Supersedes #876.