Skip to content

Conversation

@JasonCWang
Copy link
Contributor

No description provided.

@coderabbitai
Copy link

coderabbitai bot commented Jan 14, 2026

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

@JasonCWang JasonCWang force-pushed the 01-14-add_tazapay_bank_account_types_to_grid_api_surface branch from 5087c68 to 76f371d Compare January 22, 2026 23:13
@JasonCWang JasonCWang marked this pull request as ready for review January 23, 2026 00:29
@greptile-apps
Copy link

greptile-apps bot commented Jan 23, 2026

Greptile Summary

This PR adds support for 10 new Tazapay bank account types across multiple currencies: GBP (UK), CAD (Canada), HKD (Hong Kong), IDR (Indonesia), MYR (Malaysia), PHP (Philippines), SGD (Singapore), THB (Thailand), VND (Vietnam), and BWP (Botswana).

The implementation follows the existing pattern for bank account types:

  • Created *AccountInfo.yaml schemas with currency-specific validation rules (account numbers, bank codes, routing identifiers)
  • Created Payment*AccountInfo.yaml schemas extending the base with required reference fields for payment tracking
  • Created *AccountExternalAccountInfo.yaml schemas adding beneficiary information for external accounts
  • Updated enum lists and discriminator mappings in BankAccountOrWalletType.yaml, PaymentAccountOrWalletInfo.yaml, and ExternalAccountInfo.yaml
  • Rebuilt bundled openapi.yaml files for both root and mintlify directories

Each account type includes appropriate validation constraints matching local banking standards (e.g., Canadian accounts require 5-digit transit numbers and 3-digit institution numbers, UK accounts require 8-digit account numbers with 6-digit sort codes).

Confidence Score: 5/5

  • Safe to merge with no identified issues
  • The PR is a straightforward schema addition that follows established patterns perfectly. All 10 new account types are implemented consistently with existing ones, include appropriate validation constraints, and are properly integrated into all discriminator mappings. The bundled OpenAPI files were correctly generated and are identical across both locations.
  • No files require special attention

Important Files Changed

Filename Overview
openapi/components/schemas/common/BankAccountOrWalletType.yaml Added 10 new Tazapay bank account type enums (GBP, CAD, HKD, IDR, MYR, PHP, SGD, THB, VND, BWP)
openapi/components/schemas/common/PaymentAccountOrWalletInfo.yaml Updated discriminator mappings to include all 10 new Payment* account info schemas
openapi/components/schemas/external_accounts/ExternalAccountInfo.yaml Updated oneOf union and discriminator mappings to include all 10 new external account types
openapi.yaml Bundled OpenAPI spec with all new account types properly integrated (664 line addition)
mintlify/openapi.yaml Bundled OpenAPI spec copy for Mintlify documentation with identical changes

Sequence Diagram

sequenceDiagram
    participant Client
    participant GridAPI
    participant Tazapay
    
    Note over Client,Tazapay: External Account Creation Flow
    Client->>GridAPI: POST /customers/{id}/external-accounts
    Note right of Client: accountType: GBP_ACCOUNT, CAD_ACCOUNT,<br/>HKD_ACCOUNT, IDR_ACCOUNT, MYR_ACCOUNT,<br/>PHP_ACCOUNT, SGD_ACCOUNT, THB_ACCOUNT,<br/>VND_ACCOUNT, or BWP_ACCOUNT
    GridAPI->>GridAPI: Validate account schema<br/>(account number, bank code, etc.)
    GridAPI->>Tazapay: Register bank account
    Tazapay-->>GridAPI: Account registered
    GridAPI-->>Client: ExternalAccountInfo with accountType
    
    Note over Client,Tazapay: Payment Deposit Flow
    Client->>GridAPI: GET /customers/{id}/external-accounts/{accountId}
    GridAPI-->>Client: PaymentAccountInfo with reference
    Note right of Client: Client sends funds to provided<br/>bank details with reference code
    Client->>Tazapay: Bank transfer to account<br/>(via local banking rails)
    Tazapay->>GridAPI: Webhook: Incoming transaction
    GridAPI->>Client: Webhook: Payment received
Loading

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.

2 participants