Skip to main content
POST
/
customers
/
external-accounts
curl --request POST \
  --url https://api.lightspark.com/grid/2025-10-13/customers/external-accounts \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '{
  "customerId": "Customer:019542f5-b3e7-1d02-0000-000000000001",
  "currency": "USD",
  "accountInfo": {
    "accountType": "US_ACCOUNT",
    "accountNumber": "12345678901",
    "routingNumber": "123456789",
    "accountCategory": "CHECKING",
    "bankName": "Chase Bank",
    "platformAccountId": "ext_acc_123456",
    "beneficiary": {
      "beneficiaryType": "INDIVIDUAL",
      "fullName": "John Doe",
      "birthDate": "1990-01-15",
      "nationality": "US",
      "address": {
        "line1": "123 Main Street",
        "city": "San Francisco",
        "state": "CA",
        "postalCode": "94105",
        "country": "US"
      }
    }
  }
}'
{
  "id": "ExternalAccount:e85dcbd6-dced-4ec4-b756-3c3a9ea3d965",
  "customerId": "Customer:da459a29-1fb7-41ce-a4cb-eb3a3c9fd7a7",
  "status": "ACTIVE",
  "platformAccountId": "acc_123456789",
  "currency": "USD",
  "defaultUmaDepositAccount": false,
  "accountInfo": {
    "accountType": "US_ACCOUNT",
    "accountNumber": "123456789",
    "routingNumber": "987654321",
    "accountCategory": "CHECKING",
    "bankName": "Chase Bank",
    "beneficiary": {
      "beneficiaryType": "INDIVIDUAL",
      "fullName": "John Michael Doe",
      "birthDate": "1990-01-15",
      "nationality": "US",
      "address": {
        "line1": "123 Main Street",
        "line2": "Apt 4B",
        "city": "San Francisco",
        "state": "CA",
        "postalCode": "94105",
        "country": "US"
      }
    }
  }
}

Authorizations

Authorization
string
header
required

API token authentication using format <api token id>:<api client secret>

Body

application/json
currency
string
required

The ISO 4217 currency code

Example:

"USD"

accountInfo
object
required
  • US Account
  • CLABE Account
  • PIX Account
  • IBAN Account
  • UPI Account
  • Spark Wallet
  • Lightning Invoice
  • Lightning - Bolt12 Offer
  • Lightning Address
  • Solana Wallet
  • Tron Wallet
  • Polygon Wallet
  • Base Wallet
customerId
string

The ID of the customer for whom to create the external account. If not provided, the external account will be created on behalf of the platform.

Example:

"Customer:019542f5-b3e7-1d02-0000-000000000001"

platformAccountId
string

Your platform's identifier for the account in your system. This can be used to reference the account by your own identifier.

Example:

"ext_acc_123456"

defaultUmaDepositAccount
boolean
default:false

Whether to set the external account as the default UMA deposit account. When set to true, incoming payments to this customer's UMA address will be automatically deposited into this external account. False if not provided. Note that only one external account can be set as the default UMA deposit account for a customer, so if there is already a default UMA deposit account, this will override the existing default UMA deposit account. If there is no default UMA deposit account, incoming UMA payments will be deposited into the primary internal account for the customer.

Response

External account created successfully

id
string
required

The system generated identifier of this account

Example:

"ExternalAccount:e85dcbd6-dced-4ec4-b756-3c3a9ea3d965"

status
enum<string>
required

Status of the external account

Available options:
PENDING,
ACTIVE,
UNDER_REVIEW,
INACTIVE
currency
string
required

The ISO 4217 currency code

Example:

"USD"

accountInfo
object
required
  • US Account
  • CLABE Account
  • PIX Account
  • IBAN Account
  • UPI Account
  • Spark Wallet
  • Lightning Invoice
  • Lightning - Bolt12 Offer
  • Lightning Address
  • Solana Wallet
  • Tron Wallet
  • Polygon Wallet
  • Base Wallet
customerId
string

The customer this account is tied to, or null if the account is on behalf of the platform.

Example:

"Customer:da459a29-1fb7-41ce-a4cb-eb3a3c9fd7a7"

platformAccountId
string

Optional platform-specific identifier for this account

Example:

"acc_123456789"

defaultUmaDepositAccount
boolean

Whether this account is the default UMA deposit account for the customer. If true, incoming UMA payments to this customer's UMA address will be automatically deposited into this account instead of the primary internal account. False if not provided. Note that at most, one external account can be set as the default UMA deposit account for a customer. If there is no default UMA deposit account, incoming UMA payments will be deposited into the primary internal account for the customer.

Example:

false