Skip to main content

Overview

Grid supports sending Bitcoin via Lightning Network to self-custody wallets using Spark wallet addresses. This enables users to maintain full control of their crypto while benefiting from Grid’s fiat-to-crypto conversion and payment rails.
Spark wallets use the Lightning Network for instant, low-cost Bitcoin transactions. Users can receive payments directly to their self-custody wallets without Grid holding their funds.

How it works

  1. User provides wallet address - Get Spark wallet address from user
  2. Create quote - Generate quote for fiat-to-crypto or crypto-to-crypto transfer
  3. Execute transfer - Send crypto directly to user’s wallet
  4. Instant settlement - Lightning Network provides near-instant confirmation

Prerequisites

  • Customer created in Grid
  • Valid Spark wallet address from user
  • Webhook endpoint for payment notifications (optional, for status updates)

Sending crypto to self-custody wallets

Step 1: Collect wallet address

Request the user’s Spark wallet address. Spark addresses start with spark1:
Always validate wallet addresses before creating quotes. Invalid addresses will cause transaction failures and potential fund loss.

Step 2: Create external account for the wallet

Register the Spark wallet as an external account:
Store the external account ID for future transfers. Users can reuse the same wallet address for multiple transactions.

Step 3: Create and execute a quote

Option A: From fiat to self-custody wallet

Convert fiat directly to crypto in user’s wallet:

Option B: From internal account to self-custody wallet

Transfer crypto from internal account to user’s wallet:

Step 4: Monitor transfer completion

Track the transfer status via OUTGOING_PAYMENT.<STATUS> webhooks:
See the Transaction Lifecycle guide for all status transitions and refund handling.

Best practices

Always validate Spark addresses before processing:
Lightning Network has unique characteristics:
Help users understand the process:
Implement retry logic for common failures:

Testing in sandbox

Test self-custody wallet flows in sandbox mode:
In sandbox mode, transfers to Spark wallets complete instantly without requiring actual Lightning Network transactions.

Next steps