Төлбөр
Нэхэмжлэл төлөх болон төлбөрийн статус шалгах
Төлбөр хийх
POST /api/v1/paymentsЭхлээд GET /invoices/...-аар нэхэмжлэлийг авч id (UUID)-г нь олж байж төлнө.
Төлбөрийн бие нь нэг нэхэмжлэл — invoiceId (заавал) ба amount (сонголттой). amount өгөхгүй бол нэхэмжлэлийн бүтэн дүнгээр, өгвөл тэр дүнгээр (custom/хэсэгчилсэн) төлнө. source болон төлөгчийн мэдээлэл бүгд хадгалсан нэхэмжлэлээс автоматаар авагдана.
{ "invoiceId": "5f8d0a3e-1b2c-4d6e-8a9f-0c1d2e3f4a5b" }Custom (хэсэгчилсэн) дүнгээр:
{ "invoiceId": "5f8d0a3e-1b2c-4d6e-8a9f-0c1d2e3f4a5b", "amount": 10000 }Нэг хүсэлтэд нэг нэхэмжлэл төлнө. Хариунд буцах invoiceIds[] нь дотоод
боловсруулалтын төлөө массив хэлбэртэй ч public API одоогоор нэг нэхэмжлэл авна.
Хариу (амжилттай): 201 Created
qpay дотор төлбөр төлөх QR (qrText, base64 qrImage), нэг товчийн deeplink (shortUrl), мөн банк/wallet апп тус бүрийн deeplink (urls[]) ирнэ — эдгээрийг хэрэглэгчдээ харуулна.
{
"success": true,
"id": "9c0e7b21-3f4a-4d5e-8b6c-1a2d3e4f5a6b",
"status": "submitted",
"amount": 150000,
"invoiceId": "5f8d0a3e-1b2c-4d6e-8a9f-0c1d2e3f4a5b",
"invoiceIds": ["5f8d0a3e-1b2c-4d6e-8a9f-0c1d2e3f4a5b"],
"qpay": {
"qrText": "0002010102121531...F2",
"qrImage": "iVBORw0KGgoAAAANSUhEUg...",
"shortUrl": "https://s.qpay.mn/ZUj7oWhecy",
"urls": [
{
"name": "qPay wallet",
"description": "qPay хэтэвч",
"logo": "https://s3.qpay.mn/.../launcher-icon-ios.jpg",
"link": "qpaywallet://q?qPay_QRcode=0002010102121531...F2"
}
]
}
}
idнь төлбөрийн дотоод UUID — статус шалгах болон цуцлахад үүнийг ашиглана. Амжилтгүй бол422+{ "success": false, "refNum", "message" }.
qpayнь GovPay системээс үргэлж үүсгэгддэг. Аль стандартаар үүсгэхийг партнерийнqrStandardтохиргоо тодорхойлно:
qrStandard=qpay— QPay стандарт (EMVCo tag 27, AID +QPP_QR).qrStandard=govstd— Төрийн стандарт (EMVCo tag 26, MN scheme).
qrImagebase64 PNG (data:image/png;base64,<qrImage>болгож харуулна).qrStandard-ийг солихыг хүсвэл GovPay-тэй холбогдоно уу.
Идемпотент хүсэлт
Давхар төлбөрөөс сэргийлэхийн тулд X-Idempotency-Key header ашиглана. Ижил key-тэй давтан хүсэлт өмнөх үр дүнг ("message": "idempotent"-тэйгээр) буцаана:
curl -X POST \
-H "X-API-Key: YOUR_KEY" \
-H "X-Idempotency-Key: unique-request-id-123" \
-H "Content-Type: application/json" \
-d '{"invoiceId":"5f8d0a3e-1b2c-4d6e-8a9f-0c1d2e3f4a5b"}' \
"https://sandbox-tts.qpay.mn/api/v1/payments"Статус шалгах
Төлбөрийн id (UUID)-аар шалгана — refNum биш:
GET /api/v1/payments/{id}Хариу:
{
"id": "9c0e7b21-3f4a-4d5e-8b6c-1a2d3e4f5a6b",
"status": "confirmed",
"amount": 150000,
"invoiceId": "5f8d0a3e-1b2c-4d6e-8a9f-0c1d2e3f4a5b",
"invoiceIds": ["5f8d0a3e-1b2c-4d6e-8a9f-0c1d2e3f4a5b"],
"paidAt": "2026-05-27T10:30:00.000Z"
}Төлбөр цуцлах
DELETE /api/v1/payments/{id}{ "id": "9c0e7b21-...", "canceled": true }Төлбөрийн статус
| Статус | Утга |
|---|---|
pending | Боловсруулж байна |
submitted | Засгийн газарт илгээгдсэн |
confirmed | Баталгаажсан |
failed | Амжилтгүй |
canceled | Цуцлагдсан |