From 7227f241b6d4ca52d7a1d9e5787da52d7bf0b7da Mon Sep 17 00:00:00 2001 From: Peng Ying Date: Tue, 31 Mar 2026 20:00:33 -0700 Subject: [PATCH] feat: adding more docs about minimum required data for external accounts --- mintlify/snippets/external-accounts.mdx | 111 ++++++++++++++++++++++++ 1 file changed, 111 insertions(+) diff --git a/mintlify/snippets/external-accounts.mdx b/mintlify/snippets/external-accounts.mdx index 8f860553..ee6c7a30 100644 --- a/mintlify/snippets/external-accounts.mdx +++ b/mintlify/snippets/external-accounts.mdx @@ -151,6 +151,79 @@ curl -X POST 'https://api.lightspark.com/grid/2025-10-13/customers/external-acco + +**PHP Bank Transfer** + +```bash cURL +curl -X POST 'https://api.lightspark.com/grid/2025-10-13/customers/external-accounts' \ + -H 'Authorization: Basic $GRID_CLIENT_ID:$GRID_CLIENT_SECRET' \ + -H 'Content-Type: application/json' \ + -d '{ + "currency": "PHP", + "platformAccountId": "ph_bank_001", + "accountInfo": { + "accountType": "PHP_ACCOUNT", + "bankName": "BDO Unibank", + "accountNumber": "001234567890", + "paymentRails": ["BANK_TRANSFER"], + "beneficiary": { + "beneficiaryType": "INDIVIDUAL", + "fullName": "Maria Santos", + "birthDate": "1995-04-10", + "nationality": "PH", + "address": { + "line1": "123 Rizal Avenue", + "city": "Manila", + "state": "Metro Manila", + "postalCode": "1000", + "country": "PH" + } + } + } + }' +``` + + + Account number must be 8-16 digits. + + + + +**GBP Faster Payments** + +```bash cURL +curl -X POST 'https://api.lightspark.com/grid/2025-10-13/customers/external-accounts' \ + -H 'Authorization: Basic $GRID_CLIENT_ID:$GRID_CLIENT_SECRET' \ + -H 'Content-Type: application/json' \ + -d '{ + "currency": "GBP", + "platformAccountId": "gb_bank_001", + "accountInfo": { + "accountType": "GBP_ACCOUNT", + "sortCode": "123456", + "accountNumber": "12345678", + "paymentRails": ["FASTER_PAYMENTS"], + "beneficiary": { + "beneficiaryType": "INDIVIDUAL", + "fullName": "James Smith", + "birthDate": "1985-09-03", + "nationality": "GB", + "address": { + "line1": "10 Downing Street", + "city": "London", + "postalCode": "SW1A 2AA", + "country": "GB" + } + } + } + }' +``` + + + Sort code must be 6 digits. Account number must be 8 digits. Address is required for GBP individual beneficiaries. + + + **UPI** @@ -521,6 +594,31 @@ For business accounts, include business information: } ``` +## Minimum required beneficiary fields + +The following table shows the minimum required fields for individual and business beneficiaries by country. All other fields are optional but recommended for faster compliance review. + +### Individual beneficiaries + +| Country | Required Fields | Required Address Fields | Notes | +| --- | --- | --- | --- | +| US (USD) | `beneficiaryType`, `fullName` | None (address optional) | | +| Mexico (MXN) | `beneficiaryType`, `fullName` | None (address optional) | | +| Brazil (BRL) | `beneficiaryType`, `fullName` | None (address optional) | `taxId` required at account level | +| Philippines (PHP) | `beneficiaryType`, `fullName` | None (address optional) | | +| United Kingdom (GBP) | `beneficiaryType`, `fullName`, `address` | `line1`, `postalCode`, `country` | Address is required | +| Europe (EUR) | `beneficiaryType`, `fullName`, `address` | `line1`, `postalCode`, `country` | Address is required | + +### Business beneficiaries + +| Country | Required Fields | Required Address Fields | Notes | +| --- | --- | --- | --- | +| All countries | `beneficiaryType`, `legalName` | None (address optional) | Same requirements across all regions | + + + While only the fields listed above are strictly required, providing additional information like `birthDate`, `nationality`, and `address` can speed up compliance review and reduce the chance of your account being held in `UNDER_REVIEW` status. + + ## Account status Beneficiary data may be reviewed for risk and compliance. Only `ACTIVE` accounts can receive payments. Updates to account data may trigger account re-review. @@ -587,6 +685,19 @@ if (!/^\d{7,12}$/.test(cadAccountNumber)) { throw new Error("Invalid Canadian account number"); } +// PHP: 8-16 digit account number +if (!/^\d{8,16}$/.test(phpAccountNumber)) { + throw new Error("Invalid Philippine account number"); +} + +// GBP: 6-digit sort code, 8-digit account number +if (!/^\d{6}$/.test(sortCode)) { + throw new Error("Invalid sort code"); +} +if (!/^\d{8}$/.test(gbpAccountNumber)) { + throw new Error("Invalid UK account number"); +} + // ZAR: 9-13 digit account number if (!/^\d{9,13}$/.test(zarAccountNumber)) { throw new Error("Invalid South African account number");