Docs
Basics
API Reference
Basics
API Reference
  1. Merchant Dashboard
  • Introduction
  • Merchant Dashboard
    • Get Started
    • What is Branches
    • What is Wallet
    • What is Vault and how Settlement works
    • What is Payins
  • Pay with Woldy
    • How to Pay with Woldy
    • How to Subscribe with Woldy
  1. Merchant Dashboard

What is Payins

Payins are the money coming into your business — every stablecoin payment a customer makes to you, however you collected it.
Every payin settles in the same stablecoins, across the same networks — USDT and USDC, on Ethereum, Polygon, Arbitrum, Optimism, and Base — no matter which type collected it.
A one-off checkout link, a recurring subscription, a QR code on a counter: these are different ways of asking to be paid. Woldy treats them as one family, because once a customer actually pays, the money looks the same no matter which one they came through.

The model: sources and charges#

Every payin has two layers.
A source is the request. It's what you create and what the customer interacts with — the amount, the deadline, the terms, the page they land on. Each type of source works differently: some are paid once, some bill on a schedule, some stay up indefinitely.
A charge is what happened. One record per payment attempt: which token, which network, how much, and whether it went through. Charges look identical regardless of what created them.
LayerWhat it is
SourceWhat you asked for
ChargeWhat was actually paid
The reason this matters: you learn this model once. A new payin type adds a new kind of source, but the charge side — statuses, amounts, reconciliation, notifications — stays exactly where you already know how to find it.
Once a charge completes, the funds don't stay put — see where they go next.

Payin types#

TypeHow it's paidStatus
Payment LinksOnce. A hosted checkout page you send to a customer✅ Available
SubscriptionsRecurring. The customer authorizes once, and Woldy collects each period🔜 Coming soon
QR codesRepeatedly. A code that anyone can scan and pay🔜 Coming soon
Each type is documented on its own page. What follows is what they have in common.

One source, several charges#

A source can produce more than one charge — and the reason differs by type.

Payment links: extra charges mean retries#

A customer opens your link, connects a wallet, and something goes wrong: they close the tab, the wallet disconnects, the balance is short, they reject the transaction. That attempt is over, but the order isn't — they can open the same link again and try once more.
A $10 link for "Order #12345" might look like this:
AttemptResultWhat happened
Charge 1FailedWallet disconnected
Charge 2FailedNot enough balance
Charge 3Completed$10.00 USDC on Base
The link is paid once. It took three attempts to get there.

Subscriptions: extra charges mean billing periods#

Each cycle produces its own charge — not a retry, but a new payment on schedule.
A $29/month subscription accumulates charges as it runs:
PeriodResultAmount
JanuaryCompleted$29.00 USDC
FebruaryCompleted$29.00 USDC
MarchCompleted$29.00 USDC
The subscription stays active. Each month adds a charge.

Failed charges are normal#

They aren't errors on your side or incidents to investigate — they're the ordinary texture of taking payment, the same way a declined card retry is.
What matters is the state of the source, not of any single charge: is this order paid, is this subscription active.

Charges#

A charge is the record of one payment attempt. You never create one — Woldy creates it the moment a customer starts paying and updates it as the transaction confirms on-chain.
Only a charge that actually goes through is money — until it does, there's nothing to count yet. See Charges for the full status list and what triggers each transition.
A charge doesn't carry your business context. It doesn't know your order number, your customer's note, or what you originally asked for — all of that lives on the source. The charge points back to the source it belongs to, and the Dashboard shows them together.
That separation is deliberate: the source is what you asked for, the charge is what happened.

Reading your revenue#

Because every payin type produces the same kind of charge, your view of income doesn't fragment as you add ways to get paid.
One list holds everything. Filter it by source type to see revenue by collection method — how much came from checkout links versus subscriptions. Filter by a specific source to see every attempt against one order or one subscriber. Filter by date and status to close a period.
Adding a new payin type doesn't mean a new report to build or a new integration to reconcile. It's one more value in the filter.

Where the money goes#

A completed charge doesn't sit inside the source that created it — it moves into the Vault of the Branch that source belongs to.
Branches separate your payment operations by store, region, or brand. Each has its own wallet, vault, and settlement rules. Every source belongs to one branch, and so does every charge made against it.
Vault & Settlement covers how funds move from the vault to you — manually or on a schedule.

Staying informed#

Both layers emit events, and they answer different questions.
Source events tell you the outcome of a request: this order was paid, this subscription went past due, this link expired. These are what you act on — fulfil the order, unlock the account, chase the customer.
Charge events tell you a payment moved: an attempt opened, confirmed, or failed. These are what you reconcile against.
The rule of thumb: act on source events, reconcile on charge events. A failed charge doesn't mean the order is lost — the customer may pay on the next attempt.
See Webhooks for the full catalog.

What's next#

I want to…Go to
Take a one-off paymentPayment Links
Read and reconcile paymentsCharges
Get notified when money landsWebhooks
Create a payment link without codeDashboard
Modified at 2026-08-23 11:45:35
Previous
What is Vault and how Settlement works
Next
How to Pay with Woldy
Built with