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");