Stablecoin at Lithic

How Lithic offers stablecoin-backed cards to our clients

Lithic supports stablecoin-backed cards: your customers fund a Financial Account by sending stablecoin on-chain, and the resulting balance is spendable on Lithic-issued cards like any other prepaid balance.

If you are new to stablecoin, start with Intro to Stablecoin for the underlying concepts.

🚧

Stablecoin funding is currently in a pilot and is enabled per program. To learn more, contact your customer success manager.

The key features are:

  • On-chain funding of Financial Accounts: each stablecoin-enabled Financial Account is provisioned its own blockchain deposit address on every network configured for your program. The account is funded by sending stablecoin to that address

  • Reusable deposit addresses: an address is provisioned once and stays the same for the life of the Financial Account, so you can display it to your customer, save it, or render it as a QR code without having to request a new one per deposit

  • Multiple networks, one balance: if your program is configured for more than one network, a deposit on any of them credits the same Financial Account. Your customer sends funds using whichever networks is most convenient for them

  • Credited at par: stablecoin pay-ins are pegged to the US dollar and are credited to the Financial Account at par, in cents, in the same USD amounts you would see for ACH or wire

  • Immediate availability: blockchain payments settle on-chain in seconds to minutes, and Lithic credits the available balance as soon as the deposit is confirmed. There is no multi-day hold period like the one that applies to ACH debits

  • No change to card spending: once the balance lands, authorization, clearing, and card transaction reporting are identical to any other prepaid ISSUING account

How stablecoin funding works

sequenceDiagram
    autonumber
    actor Customer
    participant You as Your application
    participant Lithic
    participant Chain as Blockchain

    You->>Lithic: GET /v1/financial_accounts/{token}
    Lithic-->>You: blockchain_addresses
    You->>Customer: Display deposit address for chosen network
    Customer->>Chain: Send stablecoin to deposit address
    Chain-->>Lithic: Deposit confirmed
    Lithic->>Lithic: STABLECOIN_RECEIVED
    Lithic->>Lithic: STABLECOIN_REVIEWED
    Lithic->>Lithic: STABLECOIN_SETTLED
    Lithic-->>You: payment_transaction webhooks

Retrieving deposit addresses

Deposit addresses are returned on the Financial Account itself, in the blockchain_addresses parameter, by Get Financial Account and List Financial Accounts. It is an object keyed by the network each address belongs to:

{
  "token": "b68b7424-aa69-4cbc-a946-30d90181b621",
  "type": "ISSUING",
  "routing_number": null,
  "account_number": null,
  "blockchain_addresses": {
    "ETHEREUM": "0x5f2b9e8a1c4d7f0e3a6b9c2d5e8f1a4b7c0d3e6f"
  },
  "status": "OPEN"
}

Addresses are provisioned as part of setting up the Financial Account. Provisioning involves a call out to Lithic's stablecoin partner, so read blockchain_addresses rather than assuming an address exists, and re-read the account if it is not yet populated. blockchain_addresses is not populated on Financial Accounts belonging to programs that are not configured for stablecoin.

Which networks appear as keys is set during onboarding — see Supported networks below.

A transfer of a digital asset your program is not configured for will not be credited and is generally unrecoverable — blockchain payments cannot be reversed.

Stablecoin Financial Accounts are not routable

A Financial Account that is funded by stablecoin only is not routable for ACH or wire: its routing_number and account_number are null and it cannot receive fiat payments. blockchain_addresses is the stablecoin equivalent of that routing and account number pair — it is how funds are directed to the account.

Programs that support both fiat and stablecoin funding will see both populated on the same Financial Account. See Financial Accounts for the full schema.

Supported networks

The set of blockchain networks available to your program is configured by Lithic during onboarding and is reflected in the keys of blockchain_addresses. Each key is the full name of the network, so an address is never confused with a token that shares the network's ticker symbol. The pilot supports Ethereum (keyed as ETHEREUM), Solana (SOLANA), and Base (BASE).

Adding a network to an existing program requires provisioning new addresses for your Financial Accounts, so treat the configured set as fixed for a given program and work with your implementation manager if you need to change it.

Review

Every stablecoin payment, in either direction, passes through a review step, reflected as a STABLECOIN_REVIEWED event on the payment. Today this step completes automatically and requires no action from you. See Stablecoin Payments Lifecycle.

Spending the balance

A stablecoin-funded ISSUING account behaves like any other prepaid ISSUING account. Cards created against it authorize and clear through the normal card flow, balances are reported by the same endpoints, and no stablecoin-specific handling is needed on the card side. Lithic settles with the card network on your behalf; that settlement is not surfaced as a client-facing event.

This means the main stablecoin-specific work in a card program is funding: provisioning the deposit address to your customer, and reacting to the pay-in events described in Stablecoin Payments Lifecycle.

Withdrawals

Stablecoin can also be withdrawn from a Financial Account back out to an external wallet on-chain. Withdrawals are initiated through the same Payments API used for ACH originations, and follow the same validation pattern: the Financial Account must have sufficient available balance, and the destination wallet must be verified.

A withdrawal can only be sent to a destination wallet registered with Lithic in advance. Registration is not instant: a newly registered wallet starts in a PENDING verification state while its address is screened against blockchain analytics data, then becomes ENABLED if it passes or FAILED_VERIFICATION if it does not. Screening is automated and resolves asynchronously — there is no manual review step — and only an ENABLED wallet can receive a withdrawal.

Withdrawals are submitted on-chain as they are approved rather than drained on a batch schedule, and cannot be cancelled once submitted. The event lifecycle, including how a failed withdrawal returns the funds to the Financial Account, is documented in Stablecoin Payments Lifecycle.

Gas Fees

Lithic abstracts away gas fees on all stablecoin transactions you originate from accounts on our platform. This means you can withdraw deposited stablecoin (eg USDC) without any need to deposit additional digital assets (such as ETH). Note though, that when funding your Lithic accounts with stablecoin sent from external wallets, blockchain rules will still require these sending wallets to pay gas fees.

Notifications

Stablecoin pay-ins are reported through the existing payment_transaction.created and payment_transaction.updated webhooks, with category set to STABLECOIN. No new subscription type is required — if you already consume payment transaction webhooks for ACH or wire, stablecoin payments arrive on the same subscription. See Types of Events.


Did this page help you?