Payment service providers

Stablecoin payments for payment service providers

Take USDT and USDC for many merchants: hosted checkouts or your own payment screen, automatic matching, settlement sweeps and refunds under approval.

Merchants increasingly want to accept stablecoins, and their customers want to pay in them. For a payment service provider, that means taking USDT and USDC for many merchants, matching every payment to an order, and settling funds, without running a node for every network or holding keys on your servers.

What a PSP needs

  • A unique address per payment or per payer, so matching is automatic.
  • A clear outcome per order: paid, underpaid or expired, including payments that arrive late.
  • Settlement: customer payments collected into your treasury on a schedule.
  • Refunds that go out under approval, not from a script anyone can run.

Two ways to take payments

Hosted checkouts (fastest). Create a payment link for a USD amount with the order id, and send the payer to it. Valtu hosts the page: coin and network choice, exact amount, QR code, and it follows the payment to checkout.completed, checkout.underpaid or checkout.expired. Each checkout gets its own wallet, so a payment can only belong to it. Late payments within 7 days still complete. See the Next.js checkout guide.

Your own payment screen. Give each payer a permanent deposit address, show it with the network name and amount, and mark orders paid on deposit.confirmed. Good for top-ups and repeat payers. See crypto deposits with Express.

Settlement and refunds

WalletTypeRole
Per payer or per checkoutuserReceives payments
SettlementtreasuryCollects all sweeps; kept off the API for sending
RefundsoperationalA small float for refunds; also the gas wallet
  • Sweeps collect payments into settlement hourly, or daily for small volumes, above a minimum (for example $50) so you never pay more in fees than you move.
  • The gas wallet pays the network fee each token sweep needs, within a daily cap, so payers' addresses never need TRX or ETH.
  • Refunds are payouts from the refunds wallet, under your policies. A typical pair: small refunds from your API key pass automatically, and unusual refund volume in a day needs a person.

Getting the details right

  • Name the network next to every address. Most lost payments are a payer sending on the wrong network.
  • Credit only on confirmation. A payment seen on-chain isn't final yet.
  • Review queue, not guesses. Underpayments, overpayments and payments with no open order go to a person.
  • Fees by network. USDC on Base or Polygon costs cents to move; USDT on Tron costs more, depending on energy. Choose which networks to offer with that in mind.

Good to know

  • Supported coins and networks: the networks page. US dollar stablecoins are counted one-for-one in checkouts.
  • Screening with your own provider is available for deposits and refunds. See KYT.
  • The external security audit isn't done yet; see the security page. Licensing for payment services stays with you.

More in the payment acceptance guide.

Other use cases

Other ways teams use Valtu.

Tell us what you're building.

Start on testnets with free test coins, or talk to the team about your flows, networks and controls.