# How Soca works

> The Soca settlement model in plain English: USDC moves wallet to wallet in a single transaction, gas is sponsored, and subscriptions run on capped, revocable on-chain authorizations.

Part of the Soca documentation (https://soca.finance/docs). Human version: https://soca.finance/docs/how-it-works
When someone pays through Soca, digital dollars move directly from their wallet to the business's wallet in one transaction. There is no processor holding the money, no settlement batch, and no payout day. This page explains that model, and the few pieces that make it work, in plain English.

## What happens when a customer pays?

1. **The customer approves the payment**: They open a checkout, such as a payment link, an invoice, a subscription page, or a QR code shown at a counter, and confirm the amount with one approval from their wallet.
2. **USDC moves wallet to wallet**: A single transaction moves the money from the customer's wallet to the business's wallet on Solana. The platform fee (1.5%) is split out inside that same transaction: there is no separate billing step.
3. **The business has the money, immediately**: Funds settle wallet-to-wallet inside the payment transaction itself: there is no pooled balance, no payout schedule, and no withdrawal step. The dashboard, receipts, and webhooks all reflect the payment within seconds.

## What is USDC?

USDC is a digital dollar: one USDC is designed to stay worth one US dollar, and each one is backed by an equivalent dollar held in reserve by its issuer, Circle. It behaves like the dollars in a checking account, a stable unit you price in, get paid in, and spend, except it moves over the internet directly between accounts, in seconds, at any hour. Soca prices, settles, and reports everything in USDC, so a $9.00 sale is 9.00 USDC on the receipt and 9.00 USDC (less the fee) in the wallet.

## Who pays the network fee?

Every network charges a small fee to process a transaction: on Solana it is a fraction of a cent. Customers never pay network fees; Soca sponsors gas on every transaction. Customers never need to hold anything besides the dollars they are spending, and they never see a "gas" line item.

## What is test mode?

Every business account has two parallel environments. **Test mode** lets you create plans, invoices, and checkouts and walk through the entire flow without real money moving. **Live mode** is the real thing. For developers, the mode is set by the API key you use (keys start with `sk_test_` or `sk_live_`), and everything a key creates and reads stays inside its own mode, so test data can never leak into live reports.

## How does Soca compare to card payments?

|  | Card rails | Soca |
| --- | --- | --- |
| Typical cost | 2.9% + 30¢ per transaction, settling in days | 1.5% per successful payment |
| Settlement | Batched payouts, typically days later | In the payment transaction itself, seconds |
| Chargebacks | Possible for months after a sale, with fees | None, payments are push-based transfers |
| Customer price | Full listed price | 1% off with a Soca account |
| Where funds sit | Processor's pooled balance until payout | The business's own wallet |

The comparison is structural, not a promotion: card payments pass through an issuing bank, a card network, and a processor, and each takes a share. A Soca payment has no intermediaries to pay, which is why the fee can be lower on both sides.

## How do subscriptions work without a card on file?

Cards handle recurring billing by letting the merchant charge a stored card whenever they choose. Soca replaces that with something narrower and safer: when a customer subscribes, they approve a **capped, revocable on-chain authorization**, a standing permission recorded on the network itself, with hard limits no one can change after the fact:

- **Capped amount:** the plan can never charge more than the approved price per billing period.
- **Fixed destination:** the authorization pays one merchant wallet; it cannot be redirected.
- **One charge per period:** a renewal can execute once per billing period, never twice.
- **Revocation is final:** the customer can cancel at any time, and once revocation confirms, no future charge can execute.

Each renewal, Soca executes one charge inside those limits and the merchant is paid the same way as any other payment: wallet to wallet, immediately. The customer sees every subscription in one place and can cancel without asking anyone's permission.

> All settlement happens on Solana. (Other networks may appear as identity only, never as a settlement path.)
