chore: Sync account schemas#583
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. 1 Skipped Deployment
|
✱ Stainless preview builds for gridThis PR will update the cli csharp go kotlin openapi php python ruby typescript Edit this comment to update them. They will appear in their respective SDK's changelogs. ✅ grid-openapi studio · code · diff
✅ grid-ruby studio · code · diff
✅ grid-typescript studio · code · diff
✅ grid-go studio · code · diff
✅ grid-python studio · code · diff
✅ grid-csharp studio · code · diff
✅ grid-php studio · code · diff
✅ grid-cli studio · code · diff
|
Greptile SummaryThis PR syncs the
Confidence Score: 4/5Safe to merge with a minor description fix — no API contract or validation logic changes. The schema sync is otherwise clean: field types, constraints, and required lists are unchanged. The one concern is the
|
| Filename | Overview |
|---|---|
| openapi/components/schemas/common/CnyAccountInfoBase.yaml | Field descriptions simplified — bankName loses "or mobile-wallet provider" (misleads MOBILE_MONEY users), accountNumber and phoneNumber lose their rail-specific context; property order changed (bankName before phoneNumber); example values updated. |
| openapi/components/schemas/common/CnyAccountInfo.yaml | Only change is enum ordering: BANK_TRANSFER now listed before MOBILE_MONEY. Cosmetic, no behavioral impact. |
| openapi.yaml | Flattened copy of the schema changes from CnyAccountInfoBase.yaml and CnyAccountInfo.yaml — same description regressions and enum reordering apply. |
| mintlify/openapi.yaml | Mintlify copy of openapi.yaml with identical changes — same issues present as in openapi.yaml. |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[CnyAccountInfoBase] --> B{paymentRails}
B -->|BANK_TRANSFER| C["Required: accountNumber + bankName"]
B -->|MOBILE_MONEY| D["Required: bankName + phoneNumber"]
C --> E["accountNumber: account number of the bank\nbankName: name of the bank ⚠️ was 'bank or mobile-wallet provider'"]
D --> F["bankName: name of the bank ⚠️ misleading for wallet providers\nphoneNumber: phone in international format"]
Prompt To Fix All With AI
Fix the following 2 code review issues. Work through them one at a time, proposing concise fixes.
---
### Issue 1 of 2
openapi/components/schemas/common/CnyAccountInfoBase.yaml:20-24
The `bankName` description was simplified from "The name of the bank or mobile-wallet provider" to "The name of the bank", dropping the MOBILE_MONEY use case. For the MOBILE_MONEY rail, this field holds the **mobile-wallet provider name**, not a bank name — the narrower description is actively misleading for developers integrating that rail.
```suggestion
bankName:
type: string
description: The name of the bank or mobile-wallet provider
minLength: 1
maxLength: 255
```
### Issue 2 of 2
openapi/components/schemas/common/CnyAccountInfoBase.yaml:15-27
The `accountNumber` description was simplified from "The destination bank account number (BANK_TRANSFER rail)" to "The account number of the bank", and `phoneNumber` from "The phone number in international format (MOBILE_MONEY rail)" to just "The phone number in international format". Both descriptions previously told users which payment rail each field applies to, which is important because the `required` set is rail-dependent. Developers now have to re-read the top-level schema description to understand when to supply each field.
```suggestion
accountNumber:
type: string
description: The destination bank account number (BANK_TRANSFER rail)
minLength: 1
maxLength: 34
bankName:
type: string
description: The name of the bank or mobile-wallet provider
minLength: 1
maxLength: 255
phoneNumber:
type: string
description: The phone number in international format (MOBILE_MONEY rail)
```
Reviews (1): Last reviewed commit: "chore: Sync account schemas" | Re-trigger Greptile
| bankName: | ||
| type: string | ||
| description: The name of the bank | ||
| minLength: 1 | ||
| maxLength: 255 |
There was a problem hiding this comment.
The
bankName description was simplified from "The name of the bank or mobile-wallet provider" to "The name of the bank", dropping the MOBILE_MONEY use case. For the MOBILE_MONEY rail, this field holds the mobile-wallet provider name, not a bank name — the narrower description is actively misleading for developers integrating that rail.
| bankName: | |
| type: string | |
| description: The name of the bank | |
| minLength: 1 | |
| maxLength: 255 | |
| bankName: | |
| type: string | |
| description: The name of the bank or mobile-wallet provider | |
| minLength: 1 | |
| maxLength: 255 |
Prompt To Fix With AI
This is a comment left during a code review.
Path: openapi/components/schemas/common/CnyAccountInfoBase.yaml
Line: 20-24
Comment:
The `bankName` description was simplified from "The name of the bank or mobile-wallet provider" to "The name of the bank", dropping the MOBILE_MONEY use case. For the MOBILE_MONEY rail, this field holds the **mobile-wallet provider name**, not a bank name — the narrower description is actively misleading for developers integrating that rail.
```suggestion
bankName:
type: string
description: The name of the bank or mobile-wallet provider
minLength: 1
maxLength: 255
```
How can I resolve this? If you propose a fix, please make it concise.| accountNumber: | ||
| type: string | ||
| description: The destination bank account number (BANK_TRANSFER rail) | ||
| description: The account number of the bank | ||
| minLength: 1 | ||
| maxLength: 34 | ||
| bankName: | ||
| type: string | ||
| description: The name of the bank | ||
| minLength: 1 | ||
| maxLength: 255 | ||
| phoneNumber: | ||
| type: string | ||
| description: The phone number in international format (MOBILE_MONEY rail) | ||
| description: The phone number in international format |
There was a problem hiding this comment.
The
accountNumber description was simplified from "The destination bank account number (BANK_TRANSFER rail)" to "The account number of the bank", and phoneNumber from "The phone number in international format (MOBILE_MONEY rail)" to just "The phone number in international format". Both descriptions previously told users which payment rail each field applies to, which is important because the required set is rail-dependent. Developers now have to re-read the top-level schema description to understand when to supply each field.
| accountNumber: | |
| type: string | |
| description: The destination bank account number (BANK_TRANSFER rail) | |
| description: The account number of the bank | |
| minLength: 1 | |
| maxLength: 34 | |
| bankName: | |
| type: string | |
| description: The name of the bank | |
| minLength: 1 | |
| maxLength: 255 | |
| phoneNumber: | |
| type: string | |
| description: The phone number in international format (MOBILE_MONEY rail) | |
| description: The phone number in international format | |
| accountNumber: | |
| type: string | |
| description: The destination bank account number (BANK_TRANSFER rail) | |
| minLength: 1 | |
| maxLength: 34 | |
| bankName: | |
| type: string | |
| description: The name of the bank or mobile-wallet provider | |
| minLength: 1 | |
| maxLength: 255 | |
| phoneNumber: | |
| type: string | |
| description: The phone number in international format (MOBILE_MONEY rail) |
Prompt To Fix With AI
This is a comment left during a code review.
Path: openapi/components/schemas/common/CnyAccountInfoBase.yaml
Line: 15-27
Comment:
The `accountNumber` description was simplified from "The destination bank account number (BANK_TRANSFER rail)" to "The account number of the bank", and `phoneNumber` from "The phone number in international format (MOBILE_MONEY rail)" to just "The phone number in international format". Both descriptions previously told users which payment rail each field applies to, which is important because the `required` set is rail-dependent. Developers now have to re-read the top-level schema description to understand when to supply each field.
```suggestion
accountNumber:
type: string
description: The destination bank account number (BANK_TRANSFER rail)
minLength: 1
maxLength: 34
bankName:
type: string
description: The name of the bank or mobile-wallet provider
minLength: 1
maxLength: 255
phoneNumber:
type: string
description: The phone number in international format (MOBILE_MONEY rail)
```
How can I resolve this? If you propose a fix, please make it concise.Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
Auto-synced account schemas.
These schemas are generated from VASP adapter field definitions in sparkcore.
Synced schemas:
common/— per-currency account info, beneficiary, and payment account schemascommon/PaymentInstructions.yaml— payment instructions oneOf (new currencies added)external_accounts/— per-currency external account schemas (reference common/)Please review the changes before merging.