The buy button
A few lines of HTML. The fast path: drop it on a page and you are taking payments. Most sites never need anything else.
Skip the button. Underneath, Coin Moebius is a rented webhook plus a few JSON endpoints. Point every payment rail at one URL, get back one normalized event shape, and build whatever you want on top. The SDK is open source, so you can run the whole thing yourself.
How the plumbing runs
Every rail speaks its own dialect: different signatures, different payloads, different webhook shapes. We verify each one, normalize it, and hand your server a single event format. You write the handler once.
Every rail, every status, collapses to this:
status is one of a fixed set: succeeded, pending, failed, refunded, disputed, and the pay-by-mail states. Same enum whether the money came from a card, a coin, or an envelope.
{
"id": "tx_8f2a…",
"projectId": "proj_xY…",
"provider": "stripe",
"status": "succeeded",
"amount": 29.99,
"currency": "USD",
"metadata": { "customerRef": "user_42" },
"isTest": false,
"createdAt": "2026-05-14T01:04:21.000Z"
}A few lines of HTML. The fast path: drop it on a page and you are taking payments. Most sites never need anything else.
Call checkout, status, and the customer-portal endpoints from your own server. Build your own UI, your own flow, your own mobile app. The button is only our client; the API is the product.
Every provider, every signature check, every status code, published. Run it on your own server with no Cloud at all, or self-host the exact contract we run today.
All the parts that are the same for every merchant, and a common source of subtle bugs, are handled. You write the part that is actually yours.
The SDK on GitHub is the same code our Cloud runs. Clone it, point your providers at your own server, and your integration keeps working with no change to the contract. There is no proprietary format to escape and no data of yours we hold hostage. The exit ramp is not a promise. It is the repository.
Start with the button or go straight to the API. Free to start, no card.