A Payments API You Can Read in an Afternoon
Create a payment, read it back, and let a webhook tell you when it settles. Prefixed ids, scoped keys and errors written for the person debugging at midnight.
Get StartedOne checkout, and it takes major card brands, quick checkout methods and buy now, pay later — with nothing else to integrate.
Features
Ids You Can Read
Every id says what it is. pay_, plink_, cs_, cus_ — you can tell a payment from a session at a glance in a log, without cross-referencing a table.
Keys That Do One Job
Scope a key to exactly what it needs. A reporting script gets read access and nothing more, so a key that leaks out of a CI log cannot create a payment.
Your first payment in three calls
There is no SDK to install and no client to generate. It is HTTP and JSON, and you can drive the whole thing from curl while you are still deciding whether to use it.
01. Key
Make one, scope it, keep it. The full key is shown once. We keep a hash and the first eight characters — enough to tell you which key made a call, not enough to make one.
02. Create
One POST, either way in. Ask for a session and get a URL to send them to. Ask for a payment and get one coin and its own address. Your reference rides along on both.
03. Follow
Read it, or be told. GET the payment whenever you like — or subscribe a webhook and never poll it at all.
Card payouts land in your own Stripe account. Coins land at addresses derived from a key we have never held. Blockra is the part in the middle — it builds the checkout, watches the chain and tells you when the money arrived, and at no point is the money ours to hold, freeze or lose.
There is no balance page here because there is no balance of yours on our side.
Built for whoever is debugging it at midnight
Most of an API is the parts you meet when something goes wrong. These are the ones that decide whether integrating is an afternoon or a fortnight.
Learn moreA stable code to branch on and a sentence in plain English beside it. You can log the first and show the second to a human without translating anything.
Rate limits are per plan and per minute, and every response tells you how much of the window you have left — so a backfill can slow itself down instead of getting cut off.
Filter by status, search, and page through with a total you can trust. The same query shape works on payments, links and customers, so you learn it once.
- Bearer keys, hashed at rest
- Scoped per key
- No internal UUIDs in responses
- No SDK to install
The API is small on purpose. There is one resource that matters — a payment — and links, sessions and customers are all ways of making or finding one. Learn that and you have learned the API.
A surface small enough to hold in your head
Five endpoints cover almost every integration anyone builds. The rest of the API is reading back things you already made.
One resource to learn
A payment is the thing. A link makes payments, a session makes one payment, a customer groups payments by the email that paid them. Everything you can list, filter or subscribe to is a view onto the same record.
- Create a payment or a checkout session
- Read one back, or list and filter many
- Subscribe instead of polling
Signed Webhooks
Be told when it settles instead of asking.
Plain HTTP
Drivable from curl before you commit to it.
Rate Headers
Every response says what you have left.
Key Expiry
Give a key an end date when you make it.
Start Taking Payments
Cards and crypto in one checkout, settling straight to accounts and wallets you control. No platform fees, and nothing to deploy.
Get Started