CHECKOUT.UZ API v2
Бозгашт ба ҳуҷҷатҳои v1

Дар бораи 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, Ҳатмӣ)
To'lov summasi (so'mda). Minimal 1000, maksimal 10 000 000.
expire_time (number, Ихтиёрӣ)
Invoys qancha sekunddan keyin avtomatik bekor bo'lishi. Berilmasa - 3600 (1 soat). Minimal 60, maksimal 432000 (5 kun).
description (string, Ихтиёрӣ)
Buyurtma haqida qisqacha izoh.
webhook_url (string, Ихтиёрӣ)
Shu invoys uchun qo'shimcha webhook manzili - to'lov tasdiqlanganda, muddati tuganda yoki bekor qilinganda xabar yuboriladi.
return_url (string, Ихтиёрӣ)
To'lovdan keyin mijoz qaytariladigan manzil.

Намунаи ҷавоб

{
    "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, Ихтиёрӣ)
Invoys ID (create_payment javobidagi payment._id). uuid berilmasa shart.
uuid (string, Ихтиёрӣ)
Invoys UUID (pay_token, payment._uuid). id berilmasa shart.

Намунаи ҷавоб

{
    "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, Ҳатмӣ)
Invoys ID.
card_number (string, Ҳатмӣ)
Karta raqami (16 xonali).
card_expiry (string, Ҳатмӣ)
Kartaning amal qilish muddati, MM/YY formatida (masalan 12/28).

Намунаи ҷавоб

{
    "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, Ҳатмӣ)
pay_via_card javobidagi payment_token (5 daqiqa amal qiladi).
sms_code (string, Ҳатмӣ)
Karta egasiga SMS orqali kelgan tasdiqlash kodi.

Намунаи ҷавоб

{
    "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, Ҳатмӣ)
Qaytarilishi kerak bo'lgan invoys ID.

Намунаи ҷавоб

{
    "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, Ҳатмӣ)
Bekor qilinishi kerak bo'lgan invoys ID.

Намунаи ҷавоб

{
    "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, Ихтиёрӣ)
Nechta yozuv qaytarilishi (standart 10, maksimal 200).
offset (number, Ихтиёрӣ)
Nechta yozuvdan boshlab qaytarilishi (sahifalash uchun, standart 0).
status (string, Ихтиёрӣ)
Faqat shu holatdagi invoyslar.
pending paid canceled reversed
date_from (string, Ихтиёрӣ)
Shu sanadan (YYYY-MM-DD yoki YYYY-MM-DD HH:mm:ss) keyin yaratilganlar.
date_to (string, Ихтиёрӣ)
Shu sanagacha yaratilganlar.

Намунаи ҷавоб

{
    "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, Ихтиёрӣ)
Shu sanadan (YYYY-MM-DD yoki YYYY-MM-DD HH:mm:ss) keyin yaratilganlar.
date_to (string, Ихтиёрӣ)
Shu sanagacha yaratilganlar.

Намунаи ҷавоб

{
    "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, Ихтиёрӣ)
Faqat shu valyutadagi usullar (masalan 'UZS'). Berilmasa - barcha faol usullar.

Намунаи ҷавоб

{
    "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, Ҳатмӣ)
Tekshiriladigan karta raqami.

Намунаи ҷавоб

{
    "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, Ҳатмӣ)
Qaysi kassadan yechish - shu profilga tegishli bo'lishi shart.
method_id (number, Ҳатмӣ)
get_withdrawal_methods javobidagi usul ID.
shop_token (string, Ҳатмӣ)
shop_id'dagi kassaning o'z API kaliti (2-bosqich tasdiqlash uchun).
amount (number, Ҳатмӣ)
Yechish miqdori (usulning min/max oralig'ida).
currency (string, Ҳатмӣ)
Masalan 'UZS'. Usulning valyutasiga mos bo'lishi shart.
fields (object, Ҳатмӣ)
get_withdrawal_methods'dagi shu usul uchun e'lon qilingan BARCHA maydonlar.

Намунаи ҷавоб

{
    "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, Ихтиёрӣ)
Nechta yozuv qaytarilishi (standart 10, maksimal 200).
offset (number, Ихтиёрӣ)
Nechta yozuvdan boshlab qaytarilishi (sahifalash uchun, standart 0).
status (string, Ихтиёрӣ)
Faqat shu holatdagi arizalar.
Ariza olingan Tasdiqlandi Bekor qilindi
date_from (string, Ихтиёрӣ)
Shu sanadan (YYYY-MM-DD yoki YYYY-MM-DD HH:mm:ss) keyin yuborilganlar.
date_to (string, Ихтиёрӣ)
Shu sanagacha yuborilganlar.

Намунаи ҷавоб

{
    "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, Ҳатмӣ)
Invoys ID.

Намунаи ҷавоб

{
    "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, Ихтиёрӣ)
Shu sanadan (YYYY-MM-DD yoki YYYY-MM-DD HH:mm:ss) keyin yaratilganlar.
date_to (string, Ихтиёрӣ)
Shu sanagacha yaratilganlar.

Намунаи ҷавоб

{
    "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
            }
        ]
    }
}
Санҷиши дархост