Дар бораи API v2
Ин версия ҳанӯз оммавӣ эълон нашудааст (бета). v1 бетағйир кор мекунад - v2 танҳо имкониятҳои нав (баргардонидан, бекоркунӣ, мониторинги webhook, калидҳои маҳдуд, маълумоти сатҳи профил) илова мекунад.
https://checkout.uz/api/v2
"Калиди касса" - калиди API аз танзимоти касса (Authorization: Bearer). "Калиди профил" - калиди алоҳида аз саҳифаи Профил, барои маълумоти сатҳи ҳисоб.
Калид дар браузери шумо нигоҳ дошта мешавад ва ба мо фиристода намешавад - танҳо барои ҳамин дархост истифода мешавад.
To'lovlar
Ixtiyoriy expire_time (soniyada) qo'shish mumkin, standart 1 soat. Takroriy so'rovning oldini olish uchun "Idempotency-Key" sarlavhasi (header) qo'shish mumkin - shu kalit bilan 24 soat ichida qayta so'ralsa, yangisi ochilmaydi, eski invoys qaytariladi.
Параметрҳо
amount
(number, Ҳатмӣ)
expire_time
(number, Ихтиёрӣ)
description
(string, Ихтиёрӣ)
webhook_url
(string, Ихтиёрӣ)
return_url
(string, Ихтиёрӣ)
Намунаи ҷавоб
{
"status": "success",
"idempotent_replay": false,
"payment": {
"_id": 12345,
"_uuid": "78144b2f-95be-4c1a-9c2e-abcdef123456",
"_url": "https://checkout.uz/pay/78144b2f-95be-4c1a-9c2e-abcdef123456",
"_amount": 50000,
"_status": "pending",
"_pay_via": {
"payme": "https://checkout.uz/pay/78144b2f.../payme",
"click": "https://checkout.uz/pay/78144b2f.../click"
},
"_return_url": null,
"_lifteme": {
"_second": 86400,
"_hour": 24
}
}
}
Ҳолатҳои хатогӣ
400
amount chegaradan tashqarida YOKI expire_time 60-432000 oralig'ida emas
Javobda qo'shimcha "provider" (qaysi tizim orqali to'langani) va "description" maydonlari bor. id yoki uuid'dan bittasi yetarli.
Параметрҳо
id
(number, Ихтиёрӣ)
uuid
(string, Ихтиёрӣ)
Намунаи ҷавоб
{
"status": "success",
"data": {
"id": 12345,
"amount": 50000,
"description": "Buyurtma #123",
"status": "paid",
"created_at": "2026-09-27 10:00:00",
"paid_at": "2026-09-27 10:05:12",
"provider": "payme"
}
}
Muvaffaqiyatli bo'lsa karta egasiga SMS-kod yuboriladi, javobdagi payment_token 5 daqiqa amal qiladi.
Параметрҳо
order_id
(number, Ҳатмӣ)
card_number
(string, Ҳатмӣ)
card_expiry
(string, Ҳатмӣ)
Намунаи ҷавоб
{
"status": "success",
"message": "Tasdiqlash kodi yuborildi",
"payment_token": "9f1c2e3a-...-payment"
}
pay_via_card'dan olingan payment_token va SMS kodni yuborib, to'lovni yakunlaydi.
Параметрҳо
payment_token
(string, Ҳатмӣ)
sms_code
(string, Ҳатмӣ)
Намунаи ҷавоб
{
"status": "success",
"type": "success"
}
Qaytarish va bekor qilish
Faqat Plum, Payme yoki Click orqali to'langan, hali 22 soat o'tmagan to'lovlar uchun ishlaydi.
Параметрҳо
order_id
(number, Ҳатмӣ)
Намунаи ҷавоб
{
"status": "success",
"order_id": 12345,
"amount": 50000,
"provider": "click"
}
Ҳолатҳои хатогӣ
404
To'lov topilmadi yoki allaqachon qaytarilgan
409
22 soatlik oyna o'tib ketgan
502
Provayder qaytarishni rad etdi
Pul hali harakatlanmagan (pending) invoysni bekor qiladi, holatni 'canceled'ga o'zgartiradi.
Параметрҳо
order_id
(number, Ҳатмӣ)
Намунаи ҷавоб
{
"status": "success",
"order_id": 12345,
"order_status": "canceled"
}
Ҳолатҳои хатогӣ
404
Invoys topilmadi
409
Invoys 'pending' holatida emas
Hisobot
Valyuta kalitlari katta harfda qaytadi (masalan "UZS").
Параметр талаб карда намешавад
Намунаи ҷавоб
{
"status": "success",
"balance": {
"UZS": 125000
}
}
Sana/holat bo'yicha filtrlash va sahifalash qo'shilgan, javobda has_more keyingi sahifa bor-yo'qligini bildiradi.
Параметрҳо
limit
(number, Ихтиёрӣ)
offset
(number, Ихтиёрӣ)
status
(string, Ихтиёрӣ)
pending
paid
canceled
reversed
date_from
(string, Ихтиёрӣ)
date_to
(string, Ихтиёрӣ)
Намунаи ҷавоб
{
"status": "success",
"has_more": true,
"data": [
{
"id": 12345,
"uuid": "78144b2f-95be-4c1a-9c2e-abcdef123456",
"amount": 50000,
"description": "Buyurtma #123",
"status": "paid",
"created_at": "2026-09-27 10:00:00",
"paid_at": "2026-09-27 10:05:12",
"webhook_url": null,
"return_url": null,
"expire_seconds": 3600
}
]
}
Sana oralig'i bo'yicha filtrlash mumkin, javobda by_provider (tizim bo'yicha taqsimot) va unattributed_amount bor.
Параметрҳо
date_from
(string, Ихтиёрӣ)
date_to
(string, Ихтиёрӣ)
Намунаи ҷавоб
{
"status": "success",
"stats": {
"total_orders": 42,
"total_amount": 2500000,
"by_provider": {
"click": {
"count": 15,
"amount": 900000
},
"payme": {
"count": 20,
"amount": 1300000
},
"plum": {
"count": 7,
"amount": 300000
}
},
"unattributed_amount": 0
}
}
Har bir usul uchun min/max summa va fiskal chek qo'llab-quvvatlanishi (fiscal_supported) ko'rsatiladi.
Параметр талаб карда намешавад
Намунаи ҷавоб
{
"status": "success",
"data": [
{
"key": "click",
"name": "Click - O'zbekiston",
"logo_light": "https://...click-light.png",
"logo_dark": "https://...click-dark.png",
"min_amount": 1000,
"max_amount": 10000000,
"fiscal_supported": true
},
{
"key": "paynet",
"name": "Paynet - O'zbekiston",
"logo_light": "",
"logo_dark": "",
"min_amount": 1000,
"max_amount": 1000000,
"fiscal_supported": false
}
]
}
Pul yechish
Kassa api_key yoki profil profile_api_key bilan ishlaydi.
Параметрҳо
currency
(string, Ихтиёрӣ)
Намунаи ҷавоб
{
"status": "success",
"data": [
{
"id": 1,
"method_name": "Bank karta (O'zbekiston)",
"currency": "UZS",
"min_amount": 40000,
"max_amount": 13000000,
"fee_percent": 7.5,
"fields": [
{
"name": "card_number",
"label": "Karta raqami",
"placeholder": "8600 ..."
},
{
"name": "card_name",
"label": "Karta egasi",
"placeholder": "F.I.Sh"
}
]
}
]
}
Pul yechish so'rovidan oldin karta egasini alohida tekshirish imkonini beradi. Faqat profil kaliti bilan ishlaydi.
Параметрҳо
card_number
(string, Ҳатмӣ)
Намунаи ҷавоб
{
"status": "success",
"name": "ISMOIL KARIMOV"
}
Ҳолатҳои хатогӣ
400
card_number kiritilmagan
422
Karta topilmadi yoki identifikatsiya ma'lumotlariga mos kelmadi
Xavfsizlik uchun ikki kalit kerak: profil kaliti (header) va kassaning o'z api_key'i (shop_token, tanada). Balans darhol ayiriladi, so'rov admin tasdig'ini kutadi.
Параметрҳо
shop_id
(number, Ҳатмӣ)
method_id
(number, Ҳатмӣ)
shop_token
(string, Ҳатмӣ)
amount
(number, Ҳатмӣ)
currency
(string, Ҳатмӣ)
fields
(object, Ҳатмӣ)
Намунаи ҷавоб
{
"status": "success",
"message": "Ariza qabul qilindi",
"withdrawal_id": 546
}
Ҳолатҳои хатогӣ
400
Majburiy maydon yo'q yoki miqdor min/max dan tashqarida
403
shop_id bu profilga tegishli emas YOKI shop_token noto'g'ri
404
Usul topilmadi yoki valyuta mos kelmadi
422
Karta egasining ismi identifikatsiya ma'lumotlariga mos kelmadi
429
So'nggi 1 soat ichida xuddi shu summa+valyutada ariza yuborilgan
Faqat kassa api_key'i bilan ishlaydi, natija shu kassaning o'z arizalari bilan cheklanadi.
Параметрҳо
limit
(number, Ихтиёрӣ)
offset
(number, Ихтиёрӣ)
status
(string, Ихтиёрӣ)
Ariza olingan
Tasdiqlandi
Bekor qilindi
date_from
(string, Ихтиёрӣ)
date_to
(string, Ихтиёрӣ)
Намунаи ҷавоб
{
"status": "success",
"has_more": false,
"data": [
{
"id": 546,
"amount": 100000,
"currency": "UZS",
"status": "Ariza olingan",
"method_id": 1,
"fields": {
"card_number": "8600123412345678",
"card_name": "ISMOIL KARIMOV"
},
"created_at": "2026-10-01 10:00:00"
}
]
}
Fiscal chek
Hozircha faqat Payme va Click orqali to'langan invoyslar uchun ishlaydi.
Параметрҳо
order_id
(number, Ҳатмӣ)
Намунаи ҷавоб
{
"status": "success",
"fiscal_url": "https://..."
}
Ҳолатҳои хатогӣ
501
Bu to'lov tizimi uchun fiscal chek hali qo'llab-quvvatlanmaydi
Profil (hisob darajasida)
Kassa api_key'i EMAS - Profil sahifasidagi ALOHIDA profile_api_key bilan ishlaydi. Faqat o'qish, moliyaviy amal yo'q.
Параметр талаб карда намешавад
Намунаи ҷавоб
{
"status": "success",
"id": 5,
"login": "otabekhde",
"email": "user@example.com",
"email_verified": true
}
Profil kalitiga tegishli barcha kassalarning asosiy ma'lumotini qaytaradi.
Параметр талаб карда намешавад
Намунаи ҷавоб
{
"status": "success",
"count": 2,
"shops": [
{
"id": 3,
"shop_name": "CHECKOUT.UZ",
"status": "Faol",
"balance_uzs": 9889
}
]
}
Har bir kassa uchun alohida so'rov yubormasdan, barcha kassalar bo'yicha birlashtirilgan statistikani qaytaradi.
Параметрҳо
date_from
(string, Ихтиёрӣ)
date_to
(string, Ихтиёрӣ)
Намунаи ҷавоб
{
"status": "success",
"stats": {
"total_orders": 1109,
"total_amount": 3727845,
"by_provider": {
"click": {
"count": 114,
"amount": 1122149
},
"payme": {
"count": 99,
"amount": 2014529
}
},
"unattributed_amount": 25000,
"by_shop": [
{
"shop_id": 59,
"shop_name": "LiveSMSBot",
"total_orders": 659,
"total_amount": 3378000
},
{
"shop_id": 3,
"shop_name": "CHECKOUT.UZ",
"total_orders": 376,
"total_amount": 165345
}
]
}
}