Welcome
Accept payments and send payouts in 20+ countries through one REST API
One REST API for accepting payments (pay-in) and sending payouts (pay-out). You create an order, redirect the payer to the hosted payment page, and receive a signed webhook when the money arrives.
Fast integration
Two endpoints to go live: create an order and receive a webhook.
20+ countries
Bank transfers, local wallets, cards, SBP, PIX, Apple Pay and Google Pay.
Real-time webhooks
Signed HMAC-SHA512 notifications on every status change. No polling required.
Payouts
Send funds to cards, phone numbers, wallets and PIX keys from the same account.
Quick start
Get an API token
Ask your manager for an API token. Every request is signed with it through the X-Api-Token header.
Authorization
Create an order
curl -X POST "https://api.riopay.online/v1/orders" \
-H "Content-Type: application/json" \
-H "X-Api-Token: YOUR_API_TOKEN" \
-d '{
"amount": "1000.50",
"externalId": "order_1234",
"successUrl": "https://example.com/success"
}'Redirect the payer to the paymentLink from the response.
Create payment
Receive the result
We send a signed webhook to your callbackUrl when the order status changes. Verify the signature and mark the order as paid.
Order status and webhooks
Find your integration
Payments by country
Country-specific requirements: currencies, payer fields and request examples.
Payment methods
Apple Pay, Google Pay, Trustly and card payments (H2H) that are not tied to a single country.
Payouts
Send funds to your users: request format, statuses, webhooks and destinations.
Code examples
Minimal servers in Node.js and Python that create orders and handle webhooks.
Need help?
Contact your manager for anything related to your account: enabling payment methods, webhook URLs, limits and fees. Up-to-date request and response schemas are in the Swagger documentation (link in the top navigation).