You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: updating claude skill for latest grid api changes (#278)
### TL;DR
Updated Grid API skill documentation to reflect new API version with standardized account types, authentication credentials, and enhanced features like exchange rate checking and crypto withdrawal fee estimation.
### What changed?
- **Authentication**: Changed from `GRID_API_TOKEN_ID` to `GRID_CLIENT_ID` and `GRID_API_CLIENT_SECRET` to `GRID_CLIENT_SECRET` with backward compatibility
- **Account Types**: Standardized all fiat account types to use currency-specific naming (e.g., `CLABE` → `MXN_ACCOUNT`, `PIX` → `BRL_ACCOUNT`, `IBAN` → `EUR_ACCOUNT`) and added required `paymentRails` field
- **New Features**: Added exchange rates endpoint (`GET /exchange-rates`) for pre-quote FX rate checking and crypto withdrawal fee estimation endpoint (`POST /crypto/estimate-withdrawal-fee`)
- **Expanded Coverage**: Added support for 24 fiat account types across 28 countries including mobile money accounts for African markets
- **Enhanced Documentation**: Updated all curl examples, added new workflow for FX rate checking, and improved account type reference with validation patterns
### How to test?
1. Verify authentication works with both old and new credential formats
2. Test creating external accounts with new account types and `paymentRails` field
3. Query exchange rates endpoint for various currency corridors
4. Test crypto withdrawal fee estimation for supported networks
5. Validate account creation examples for all 24 fiat account types
### Why make this change?
The Grid API has evolved to support more payment corridors and provide better rate transparency. The standardized account types and payment rails make the API more consistent, while the new exchange rates endpoint allows integrators to show indicative pricing before committing to quotes. The expanded geographic coverage enables payments to more markets globally.
"what currencies does Grid support", "how do I use the Grid API", "send money to [country]",
7
7
"pay [UMA address]", "send to CLABE", "send to PIX", "send to IBAN", "send to UPI",
8
8
"fund sandbox account", "test a payment", "on-ramp", "off-ramp", "convert crypto to fiat",
9
-
"convert fiat to crypto", "look up UMA", "real-time quote", "JIT funding", or any payment
10
-
operations using the Grid API CLI.
9
+
"convert fiat to crypto", "look up UMA", "real-time quote", "JIT funding", "check exchange rate",
10
+
"FX rate", "payment corridor", "what rate will I get", "estimate withdrawal fee",
11
+
"crypto withdrawal fee", or any payment operations using the Grid API CLI.
11
12
allowed-tools:
12
13
- Bash
13
14
- Read
@@ -28,7 +29,7 @@ Assist users with global payment operations via the Grid API. Core capabilities:
28
29
29
30
For detailed information, read these reference files in the `references/` directory:
30
31
31
-
-**`references/account-types.md`** - Country-specific external account requirements (CLABE, PIX, IBAN, UPI, etc.) with field requirements and curl examples. Read this when creating external accounts for international payments.
32
+
-**`references/account-types.md`** - Country-specific external account requirements (MXN, BRL, EUR, INR, GBP, NGN, and 18 more) with field requirements and curl examples. Read this when creating external accounts for international payments.
32
33
-**`references/endpoints.md`** - Complete API endpoint reference with methods, paths, and response codes. Read this when answering questions about specific API capabilities.
33
34
-**`references/workflows.md`** - Step-by-step payment workflow guides for common scenarios (UMA payments, international transfers, on-ramp, off-ramp). Read this when guiding users through multi-step payment flows.
34
35
@@ -46,7 +47,7 @@ For detailed information, read these reference files in the `references/` direct
46
47
47
48
-**Platform internal accounts**: For pooled funds, rewards distribution, treasury
48
49
-**Customer internal accounts**: Per-currency holding accounts created automatically for each customer
49
-
-**External accounts**: Traditional bank accounts (CLABE, IBAN, UPI, etc.) or crypto wallets
50
+
-**External accounts**: Traditional bank accounts (MXN_ACCOUNT, EUR_ACCOUNT, USD_ACCOUNT, etc.) or crypto wallets
50
51
51
52
### Account Status Lifecycle
52
53
@@ -62,15 +63,15 @@ For detailed information, read these reference files in the `references/` direct
62
63
63
64
The Grid API uses HTTP Basic Auth. Before making any API calls, ensure credentials and base URL are set as environment variables:
For all supported account types (PIX, IBAN, UPI, NGN, US, crypto wallets) and their field requirements, read `references/account-types.md`.
203
+
For all 24 supported fiat account types and 6 crypto wallet types with their field requirements, read `references/account-types.md`.
204
+
205
+
### Exchange Rates (Pre-Quote FX Rates)
206
+
207
+
Use this to check indicative FX rates for a payment corridor **before** creating a receiving account or a quote. Rates are cached ~5 minutes and include platform-specific fees.
-**On-Ramp (Fiat to Crypto)**: Verify KYC -> Deposit fiat -> Create crypto external account -> Quote with `immediatelyExecute`
@@ -416,7 +478,7 @@ Use this flow when the user asks for a "realtime quote" or "just in time" funded
416
478
417
479
1. Create a quote with `sourceType: "REALTIME_FUNDING"`. Destination can be an internal account, external account, or UMA address.
418
480
2. The response includes `paymentInstructions` with **multiple funding options simultaneously** (e.g., Lightning + Spark for BTC, Solana + Base + Polygon for USDC). Show all options to the user.
419
-
3.**Auto-execution**: Once the user sends funds to ANY of the provided addresses, Grid automatically detects the deposit and executes at the locked rate. Do NOT call the execute endpoint for JIT quotes. Webhooks sent: `ACCOUNT_STATUS` on deposit, `OUTGOING_PAYMENT` on completion.
481
+
3.**Auto-execution**: Once the user sends funds to ANY of the provided addresses, Grid automatically detects the deposit and executes at the locked rate. Do NOT call the execute endpoint for JIT quotes. Webhooks sent: `internal-account-status` on deposit, `outgoing-payment` on completion.
420
482
4.**Quote expiration**: Quotes expire in 1-5 minutes. If expired, create a new quote.
421
483
422
484
## Best Practices and Common Pitfalls
@@ -428,9 +490,9 @@ Use this flow when the user asks for a "realtime quote" or "just in time" funded
428
490
5.**Pipe through jq**: Always append `| jq .` for readable output, or `| jq -r .field` to extract specific values
429
491
6.**URL-encode special characters**: UMA addresses contain `$` — encode as `%24` in URL paths
430
492
7.**Always include destination currency in quotes**: When specifying a destination account, you MUST include `currency` in the destination object even though the external account already has a currency
431
-
8.**Individual beneficiary fields are all required**: For `beneficiaryType: "INDIVIDUAL"`, you MUST include `fullName`, `birthDate` (YYYY-MM-DD), and `nationality` (2-letter code) in the `beneficiary` object
493
+
8.**Individual beneficiary requires fullName**: For `beneficiaryType: "INDIVIDUAL"`, `fullName` is required. `birthDate` (YYYY-MM-DD) and `nationality` (2-letter code) are optional but recommended
432
494
9.**Use correct Nigerian field names**: Use `bankName` (NOT `bankCode`) and include `purposeOfPayment`
433
-
10.**Don't forget country-specific required fields**: Brazil (PIX) requires `pixKey`, `pixKeyType`, and `taxId`; Europe (IBAN) requires `swiftBic`
495
+
10.**Don't forget country-specific required fields**: Brazil (BRL_ACCOUNT) requires `pixKey`, `pixKeyType`, and `taxId`; Europe (EUR_ACCOUNT) requires `iban`; all fiat accounts require `paymentRails`
0 commit comments