Skip to main content
This walks the exact loop we recommend for verifying an integration: take a real ₮100 payment, confirm it, then give it straight back. It takes about ten minutes and costs nothing.
There is no sandbox. Vibepay charges real wallets holding real employer money, so a fake environment would be a fake test. Use a small amount and reverse it — see Environments for why.
1

Create a terminal in the merchant dashboard

Sign in to merchant.vibepay.mn, open Terminals, and create one. Name it after the till it belongs to.You will get back a username and a password:
The password is shown once and is never retrievable again. Copy it now. If you lose it, rotate the terminal — that issues a new password and kills the old one immediately.
2

Check the credentials work

There is no ping endpoint, so ask for one transaction instead. A 200 means you are authenticated.
A 401 means the pair is wrong, unknown, or the terminal is suspended — the response is identical in all three cases, on purpose.
3

Scan the cardholder's QR code

Ask the customer to open their Vibepay pass in Apple Wallet or Google Wallet. Scan the QR code with whatever scanner your POS already uses and take the decoded string exactly as it comes off the scanner. It looks like this:
Do not trim it, parse it, or store it. It is single-use and it is about to be spent.
4

Charge ₮100

201 Created
Save the id. It is the only handle you will ever have for refunding this payment.vatStatus: "pending" is normal and expected — the receipt is being minted in the background.
5

Refund it

204 No Content and an empty body. The ₮100 is back in the customer’s wallet.Call it a second time and you get 409 — the charge is already reversed. That is not a failure; it means the refund landed.

Try the same thing wrong

Two failures worth causing on purpose before you ship, because both will happen in production:

Next

Handle declines properly

The full status and code map, and which failures are worth retrying.

Never double-charge

How to make a timeout safe to retry.