curl --request POST \
--url https://api.lightspark.com/grid/2025-10-13/sandbox/internal-accounts/{accountId}/fund \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"amount": 100000
}
'{
"id": "InternalAccount:12dcbd6-dced-4ec4-b756-3c3a9ea3d123",
"status": "ACTIVE",
"balance": {
"amount": 12550,
"currency": {
"code": "USD",
"name": "United States Dollar",
"symbol": "$",
"decimals": 2
}
},
"fundingPaymentInstructions": [
{
"accountOrWalletInfo": {
"accountType": "USD_ACCOUNT",
"accountNumber": "1234567890",
"routingNumber": "021000021"
},
"instructionsNotes": "Please ensure the reference code is included in the payment memo/description field",
"isPlatformAccount": true
}
],
"createdAt": "2025-10-03T12:30:00Z",
"updatedAt": "2025-10-03T12:30:00Z",
"customerId": "Customer:019542f5-b3e7-1d02-0000-000000000001",
"privateEnabled": true
}Simulate receiving funds into an internal account in the sandbox environment. This is useful for testing scenarios where you need to add funds to a customer’s or platform’s internal account without going through a real bank transfer or following payment instructions. This endpoint is only for the sandbox environment and will fail for production platforms/keys.
curl --request POST \
--url https://api.lightspark.com/grid/2025-10-13/sandbox/internal-accounts/{accountId}/fund \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"amount": 100000
}
'{
"id": "InternalAccount:12dcbd6-dced-4ec4-b756-3c3a9ea3d123",
"status": "ACTIVE",
"balance": {
"amount": 12550,
"currency": {
"code": "USD",
"name": "United States Dollar",
"symbol": "$",
"decimals": 2
}
},
"fundingPaymentInstructions": [
{
"accountOrWalletInfo": {
"accountType": "USD_ACCOUNT",
"accountNumber": "1234567890",
"routingNumber": "021000021"
},
"instructionsNotes": "Please ensure the reference code is included in the payment memo/description field",
"isPlatformAccount": true
}
],
"createdAt": "2025-10-03T12:30:00Z",
"updatedAt": "2025-10-03T12:30:00Z",
"customerId": "Customer:019542f5-b3e7-1d02-0000-000000000001",
"privateEnabled": true
}Documentation Index
Fetch the complete documentation index at: https://ramps-docs-auth-email-account-ids.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
API token authentication using format <api token id>:<api client secret>
The ID of the internal account to fund
Amount to add in the smallest unit of the account's currency (e.g., cents for USD/EUR, satoshis for BTC)
x <= 100000000000100000
Internal account funded successfully
The ID of the internal account
"InternalAccount:12dcbd6-dced-4ec4-b756-3c3a9ea3d123"
Classification of an internal account.
INTERNAL_FIAT: A Grid-managed fiat holding account (for example, the USD holding account used as the source for Payouts flows).INTERNAL_CRYPTO: A Grid-managed crypto holding account denominated in a stablecoin such as USDC.EMBEDDED_WALLET: A self-custodial Embedded Wallet provisioned for the customer. Outbound transfers require a session signature produced by the customer's device — see the Embedded Wallets guide.INTERNAL_FIAT, INTERNAL_CRYPTO, EMBEDDED_WALLET Status of a Grid internal account. The status determines whether the account can send or receive payments.
PENDING: The account is under review and is being provisioned. The account cannot send or receive payments until provisioning completes.ACTIVE: The account is ready to send and receive payments.CLOSED: The account cannot send or receive payments. A customer can initiate the closing of an internal account, after which the account transitions to this status.FROZEN: The account cannot send or receive payments. Grid may freeze an account in response to compliance or fraud signals; payments are blocked while the account remains frozen.PENDING, ACTIVE, CLOSED, FROZEN "ACTIVE"
Show child attributes
Payment instructions for funding the account
Show child attributes
Timestamp when the internal account was created
"2025-10-03T12:30:00Z"
Timestamp when the internal account was last updated
"2025-10-03T12:30:00Z"
The ID of the customer associated with the internal account. If this field is empty, the internal account belongs to the platform.
"Customer:019542f5-b3e7-1d02-0000-000000000001"
Whether wallet privacy is enabled for the Embedded Wallet. Only present for EMBEDDED_WALLET internal accounts.
true
Was this page helpful?