Skip to main content

Overview

Liquidity Settlement enables real-time stablecoin transfers from your prefunded Superbank account to any destination wallet. This is ideal for payouts, settlements, and treasury operations.
TL;DR
  1. Superbank pre-positions liquidity in your prefunded account
  2. You create a payment and notify when fiat is sent
  3. Superbank instantly settles stablecoins to the destination wallet
  4. When fiat arrives, Superbank reconciles the utilized liquidity

How It Works

The Liquidity Settlement flow decouples user payment finality from blockchain settlement, allowing instant transfers while underlying fiat transfers complete asynchronously.

Prerequisites

Before you begin, ensure you have:
  • A Superbank developer account with API access
  • A prefunded account with sufficient USDC balance
  • Your API key from the Dashboard

Quick Start

1

Create a Payment

Create a LIQUIDITY payment specifying the destination wallet and amount.
curl -X POST https://api-sandbox.superbank.com/v1/payments \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: your-api-key" \
  -d '{
    "type": "LIQUIDITY",
    "amount": 100.00,
    "currency_code": "USDC",
    "chain": "SOLANA",
    "destination_wallet": "7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU",
    "account_holder": {
      "type": "INDIVIDUAL",
      "first_name": "John",
      "last_name": "Doe",
      "email": "[email protected]"
    }
  }'
Response:
{
  "id": "pay_abc123def456",
  "reference_id": "ref_xyz789",
  "type": "LIQUIDITY",
  "status": "CREATED",
  "amount": "100.00",
  "currency_code": "USDC",
  "chain": "SOLANA",
  "destination_wallet": "7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU",
  "expires_at": "2026-01-20T12:00:00.000Z",
  "created_at": "2026-01-20T10:00:00.000Z"
}
2

Notify Incoming Payment

Once fiat transfer has been intialized from your end user, notify Superbank to trigger the stablecoin transfer.
cURL
curl -X POST https://api-sandbox.superbank.com/v1/payments/notifications \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: your-api-key" \
  -d '{
    "reference_id": "ref_xyz789"
  }'
This triggers the instant settlement from your prefunded wallet to the destination wallet.
3

Monitor Payment Status

Check the payment status or wait for the webhook.
cURL
curl -X GET https://api-sandbox.superbank.com/v1/payments/pay_abc123def456 \
  -H "X-Api-Key: your-api-key"
Response (completed):
{
  "id": "pay_abc123def456",
  "status": "COMPLETED",
  "transaction_hash": "5wHu1qwD7q4bJCRrA...",
  "completed_at": "2026-01-20T10:00:15.000Z"
}
4

Handle Webhooks

Set up a webhook endpoint to receive real-time payment updates.
cURL
curl -X POST https://api-sandbox.superbank.com/v1/webhooks \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: your-api-key" \
  -d '{
    "url": "https://your-app.com/webhooks/superbank",
    "events": ["payment.completed", "payment.failed"]
  }'
Webhook payload:
{
  "id": "evt_abc123",
  "type": "payment.completed",
  "data": {
    "id": "pay_abc123def456",
    "status": "COMPLETED",
    "transaction_hash": "5wHu1qwD7q4bJCRrA..."
  }
}

Payment Lifecycle

StatusDescription
CREATEDPayment created, awaiting notification
PROCESSINGNotification received, blockchain transfer in progress
COMPLETEDTransfer confirmed on-chain
FAILEDTransfer failed
EXPIREDPayment not notified within time limit

Supported Chains

ChainCurrencySettlement Time
SolanaUSDCReal-time
EthereumUSDCReal-time
PolygonUSDCReal-time
BaseUSDCReal-time
TronUSDTReal-time

Account Holder Information

For compliance purposes, you must provide account holder information for new destination wallets:

Individual

{
  "account_holder": {
    "type": "INDIVIDUAL",
    "first_name": "John",
    "last_name": "Doe",
    "email": "[email protected]"
  }
}

Business

{
  "account_holder": {
    "type": "BUSINESS",
    "business_name": "Acme Corporation",
    "email": "[email protected]"
  }
}

Next Steps