Checkout page
We host the checkout page. Creating a payment gives you a checkout_url shaped like
https://infotechresources.online/c/<token>; send the customer there by
redirect or by link, whichever suits you.
The checkout host differs from the API host on purpose, and it is not a typo: the customer
sees a neutral address. Take checkout_url from the API response rather than
assembling it yourself, and a change of that address will never reach you.
What the customer sees
The available payment methods, the amount and your order description. The customer picks the method, not you: which methods are offered is configured gateway-side and can change without touching your integration.
- SBP — an NSPK QR code scanned in a banking app.
- Mir and international Visa/Mastercard — a card form, with 3-D Secure where the bank asks for it.
- Crypto — an address for a USDT transfer on TRC20.
When it is over the customer lands on return_url or fail_url if you
supplied them. That redirect is not proof of payment. Proof is the
webhook: a customer can close the tab before the redirect and the
payment will still go through.
How long a payment lives
30 minutes from creation, or 60 minutes for crypto counted from the moment that method is
picked. The current value always sits in expires_at. After it passes the payment
becomes expired and cannot be paid — create a new one.
The test-mode simulator
While the account is not activated, the checkout page shows a simulator with "succeed" and "decline" buttons instead of real methods. The same outcome can be driven by a request, which is how you exercise the integration in automated tests with nobody at a browser:
curl -X POST https://takemypay.net/api/v1/checkout/PUBLIC_TOKEN/test/complete \
-H "Content-Type: application/json" \
-d '{"outcome": "succeeded"}' outcome accepts succeeded or declined. Both fire a real
webhook, so the whole chain can be verified end to end — including signature checking on your
side.
The request errors if the payment is not a test one, is no longer pending, or has
expired.
Polling state
The checkout page polls the payment while the customer is on it:
curl https://takemypay.net/api/v1/checkout/PUBLIC_TOKEN/status
This address needs no authentication and works off the public token from
checkout_url. It is not meant for server-side reconciliation — use
GET /api/v1/payments/{id} with your key for that.
The rest of the checkout addresses
A few more addresses live under /api/v1/checkout/{token} — fetching
payment info, starting payment with the chosen method (/initiate), refreshing
(/refresh), submitting card data (/card/submit) and the 3-D Secure form
(/card/3ds-form). Our checkout page calls them; your integration does not need
them, and we do not guarantee their shape between releases.
Of the whole checkout, the stable contract for you ischeckout_urland/test/complete. The rest serves the page.