Fee, conversion and payouts: what accepting payments through a gateway costs
· 7 min read
How the amount on your balance follows from the amount paid: an 18% fee on gross, who pays it, conversion at the central bank rate plus a markup, the payout threshold and the transfer fee.
The figure “18%” says very little on its own: what matters is which amount it is taken from, what happens to the money afterwards, and how long it takes before you can reach it. Let’s follow a payment from the pay button to the transfer to your wallet — with numbers.
This is about accepting payments through a gateway, that is, the case where there is no direct contract with a bank. Why there might not be one, and what to do about it, is covered separately in why banks refuse.
What makes up the price
One rate across every payment method — 18% of the payment amount. No subscription, no setup charge, no minimum turnover, no charge for test mode.
The key phrase is of the payment amount, that is, of what is charged to the payer (gross), not of what reaches you. A ₽1,000 payment produces a ₽180 fee and ₽820 credited.
Working out “18% of the amount credited” is a common planning error: it yields an understated rate and disagrees with what is actually charged on every payment.
Who pays the fee
One setting per account, two values.
The merchant pays the fee (the default). The amount you pass when creating the payment is what the payer sees. The fee is deducted from it and the rest goes to your balance: pass ₽1,000 — the payer paid ₽1,000 and you received ₽820.
The payer pays the fee. The amount passed is what you want to receive, and the payer is shown more: ₽1,000 credited becomes ₽1,219.51 on the checkout page. The rate stays the same — 18% of the final amount, not 18% on top.
The difference between “18% on top” and “18% of the total” on a thousand roubles is ₽39.51; across turnover that is a noticeable sum, and confusing the two is usually where a mismatch with your own report comes from.
How roubles become dollars
Payments are accepted in roubles; the balance is kept in dollars. Conversion happens at the moment of a successful payment — not when the payment is created and not when you withdraw.
The rate is the official Central Bank of Russia rate for the day plus a 7% markup. The applied rate is written into the payment and never recomputed: the sum credited to your balance does not change because the rate moved tomorrow.
The order is exactly that: the fee in roubles first, conversion of the remainder second. At a rate of ₽80 to the dollar, a ₽1,000 payment yields ₽820 and, at 80 × 1.07 = 85.6, about $9.58 on the balance. The full breakdown with a calculator is on the pricing page.
takemypay accepts SBP, Mir cards, Visa/Mastercard and USDT behind one REST API. A 18% fee, balance in dollars, payouts in USDT TRC20 from $100. Sign up with a magic link — no document marathon.
Get an API key →When the money can be withdrawn
Payouts go out in USDT on TRC20, to the wallet set in the dashboard. The default threshold is $100; for individual merchants it can be raised, but not lowered. A $3 fee is withheld per transfer.
How fast money appears on the balance depends on the payment method, not on the payout: an SBP QR payment, for example, settles almost instantly, whereas a card operation is held first. The balance is credited at the moment of confirmation — that is, when the webhook about a successful payment arrives.
How much a single payment can be
The ceiling for rouble methods is ₽199,999, and it is measured against the amount charged to the payer. In “the payer pays the fee” mode that matters: ₽170,000 credited means ₽207,317.07 charged to the payer, which is already above the ceiling.
Crypto is exempt from the ceiling: it has no equivalent limit. This is why a payment above the ceiling is not refused at creation — it is created, and on the checkout page the rouble methods are disabled while crypto remains. A refusal at creation happens in one case only: the amount is above the ceiling and crypto is not configured for the project, so there would be nothing to pay with.
Lower bounds are per method: SBP has no minimum, Mir cards are around ₽10, international cards around ₽50, and crypto around $20 in rouble equivalent. A method below its own minimum does not reject the payment — it is switched off on the checkout page.
What it takes to get started
There is no document pack up front: sign-up goes through a link in an email, without a password, and the API key is issued immediately and works in test mode. The whole integration is built and verified on it — payments are simulated, the webhook is real.
To take real money the account has to be activated. That is a five-item form: what you sell, your minimum and maximum ticket, expected monthly turnover, a description of the project and a contact. Plus one condition: by the time you apply, at least one payment must have been created — a test one counts. A human reviews the application, a refusal comes with a reason, and after changes it can be submitted again.
None of which means there are no checks. The industry and the nature of the operations are looked at, and under the terms of service the gateway may request information about them — but that is a conversation, not a folder of certificates at the door. The difference from a bank is not the absence of review but its cost: a gateway needs to review the project, not to open a merchant outlet.
The technical side is one create-payment request and one webhook handler; the fields are described in the documentation.
Frequently asked questions
Is the fee taken per payment or monthly?
Per payment, at the moment it is confirmed: what lands on the balance is already net of the fee. There is no invoice at the end of the month, just as there is no subscription charge.
Who pays the fee — me or the payer?
Whichever you configure. By default it is deducted from the payment amount, meaning the merchant pays it; in the other mode the payer is shown an increased amount and you receive exactly what you passed at creation.
Why does the rate differ from the central bank rate?
A 7% markup is added to the official rate of the day — that is what the conversion itself costs. The rate is taken at the moment of payment and frozen into it, so no retroactive recalculation is possible, in your favour or against it.
What happens to an amount above ₽199,999?
The payment will be created, but the rouble methods on the checkout page will be disabled — it will be payable in crypto. If crypto is not configured for the project, such a payment is rejected at creation.
Do I need a company to start accepting payments?
Not for sign-up and test mode: an email address is enough. The legal form comes up at activation together with the line of business, and the requirements here are softer than a bank’s — but they are not absent.
What documents are requested at activation?
Uploading documents is not part of the process — an application consists of the form and a human decision. That said, the gateway may request information about the nature of your operations if they raise questions, so it is worth describing the project as it is.
When does the money reach my wallet?
Once the balance reaches the $100 threshold and you request a payout; the transfer goes out in USDT TRC20 with $3 withheld. The balance itself is credited at the moment each payment is confirmed, not at the end of a period.
takemypay is a payment gateway for the merchant account you never got. SBP, Mir cards, Visa/Mastercard and USDT behind one API, a 18% fee, payouts in USDT TRC20 from $100. Sign up with a magic link and get a test key immediately. Questions — ask support.
Get an API key →Read next
· 6min read
The bank refused your acquiring application: why it happens and what to do next
The reasons acquirers turn down online payment applications, and the working ways to keep taking money while the conversation with the bank is still going.
· 6min read
Accepting payments over SBP: how it works and what to allow for in the integration
How an SBP QR payment goes through, why confirmation arrives with a delay, how it differs from cards, and what all of that means for your integration.
· 6min read
How to verify a webhook signature: HMAC-SHA256 in practice
Why payment notifications are signed, how an HMAC-SHA256 signature is built, the four mistakes that stop it from matching, and defence against replays.