Skip to content

Kassa tranzaksiyalari ​

Kassalardagi barcha pul harakatlari: moddalar bo‘yicha daromad va xarajatlar, yetkazib beruvchilarga to‘lovlar, kassalar orasidagi o‘tkazmalar, konvertatsiyalar, inkassatsiyalar, shuningdek sotuv va qarz o‘tkazmalari. Har bir tranzaksiya kassa qoldig‘ini o‘z to‘lov turi va valyutasi bo‘yicha o‘zgartiradi.

MetodManzilVazifasi
POST/company/cashbox/transaction/cashboxKassalar orasida o‘tkazma
POST/company/cashbox/transaction/conversionKassa ichida konvertatsiya
PATCH/company/cashbox/transaction/{model}/completeTranzaksiyani tasdiqlash
PATCH/company/cashbox/transaction/{model}/cancelTranzaksiyani bekor qilish
GET/company/cashbox/transactionTranzaksiyalar ro‘yxati
GET/company/cashbox/transaction/{model}Tranzaksiya
POST/company/cashbox/transactionTranzaksiya yaratish

Kassalar orasida o‘tkazma ​

POST/company/cashbox/transaction/cashbox

Summani cashbox_id kassadan source_id kassaga o‘tkazadi; faqat asosiy va savdo kassasi orasida ruxsat etiladi. Asosiy kassadan o‘tkazma darhol o‘tadi (completed), savdo kassasidan — qabul qiluvchi tasdiqlashini kutadi (on_hold), pul esa allaqachon yechilgan.

Sarlavhalar (headers) ​

SarlavhaQiymatTavsif
AuthorizationBearer {token}POST /common/auth/login dan olingan token
Acceptapplication/jsonJavob JSON da
Accept-LanguageruXabarlar va nomlar tili: ru, uz, oz

So‘rov tanasi ​

MaydonTuriMajburiyTavsif
cashbox_idintegerHaYuboruvchi kassa. Foydalanuvchiga ochiq mavjud yozuv ID si
payment_typestringHaTo'lov turi. Mumkin qiymatlar: bank, card, cash, system
currencystringHaValyuta. Mumkin qiymatlar: uzs, usd, eur, rub
amountnumberHaSumma. Verguldan keyin 2 tagacha raqam. Kamida 0.01. 999999999999.99 dan oshmasin
commentstringYo‘qIzoh. Maks. 1000 belgi
source_idintegerHaQabul qiluvchi kassa. Foydalanuvchiga ochiq mavjud yozuv ID si
json
{
    "payment_type": "cash",
    "currency": "uzs",
    "amount": 1000,
    "comment": "Comment 3",
    "cashbox_id": 1,
    "source_id": 2
}
bash
curl -X POST "https://api.wasyt.uz/company/cashbox/transaction/cashbox" \
  -H "Accept: application/json" \
  -H "Accept-Language: ru" \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{"payment_type":"cash","currency":"uzs","amount":1000,"comment":"Comment 3","cashbox_id":1,"source_id":2}'

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
additionalobject
additional.balances_afterobject
additional.balances_after.cashobject
additional.balances_after.cash.uzsstring
additional.on_hold_afterarray
source_dataarray
cashbox_idintegerKassa
payment_typestringTo'lov turi
currencystringValyuta
amountintegerSumma
commentstringIzoh
source_idintegerManba
typestringTuri
source_typestringManba
statusstringStatus
updated_atstringYangilangan
created_atstringYaratilgan
company_idintegerKompaniya
creator_idintegerYaratuvchi
idintegerID
sourcenull
contract_numbernullShartnoma raqami
json
{
    "additional": {
        "balances_after": {
            "cash": {
                "uzs": "0.00"
            }
        },
        "on_hold_after": []
    },
    "source_data": [],
    "cashbox_id": 1,
    "payment_type": "cash",
    "currency": "uzs",
    "amount": 1000,
    "comment": "Comment 3",
    "source_id": 2,
    "type": "outcome",
    "source_type": "cashbox",
    "status": "completed",
    "updated_at": "2026-09-30 12:51:24",
    "created_at": "2026-09-30 12:51:24",
    "company_id": 1,
    "creator_id": 2,
    "id": 34,
    "source": null,
    "contract_number": null
}

Kassa ichida konvertatsiya ​

POST/company/cashbox/transaction/conversion

Pulni kassaning source_id hisobidan (boshqa to‘lov turi yoki valyutadagi qoldiq) xuddi shu kassaning payment_type + currency hisobiga o‘tkazadi. Valyuta faqat UZS orqali almashtiriladi; currency_rate kursi kompaniya kursidan ±20% oralig‘ida bo‘lishi kerak (UZS hisoblari orasida kurs 1 ga teng). Darhol o‘tkaziladi (completed).

Sarlavhalar (headers) ​

SarlavhaQiymatTavsif
AuthorizationBearer {token}POST /common/auth/login dan olingan token
Acceptapplication/jsonJavob JSON da
Accept-LanguageruXabarlar va nomlar tili: ru, uz, oz

So‘rov tanasi ​

MaydonTuriMajburiyTavsif
cashbox_idintegerHaKassa. Foydalanuvchiga ochiq mavjud yozuv ID si
payment_typestringHaTo'lov turi. Mumkin qiymatlar: bank, card, cash, system
currencystringHaValyuta. Mumkin qiymatlar: uzs, usd, eur, rub
amountnumberHaYechiladigan qoldiq valyutasidagi summa. Verguldan keyin 2 tagacha raqam. Kamida 0.01. 999999999999.99 dan oshmasin
commentstringYo‘qIzoh. Maks. 1000 belgi
source_idintegerHaPul yechiladigan kassa qoldig‘i ID si. Foydalanuvchiga ochiq mavjud yozuv ID si
currency_ratenumberHaKurs. Verguldan keyin 2 tagacha raqam. Kamida 1. 999999999999.99 dan oshmasin
json
{
    "cashbox_id": 1,
    "payment_type": "card",
    "amount": 1000,
    "comment": "Comment 3",
    "source_id": 1,
    "currency_rate": 1000,
    "currency": "uzs"
}
bash
curl -X POST "https://api.wasyt.uz/company/cashbox/transaction/conversion" \
  -H "Accept: application/json" \
  -H "Accept-Language: ru" \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{"cashbox_id":1,"payment_type":"card","amount":1000,"comment":"Comment 3","source_id":1,"currency_rate":1000,"currency":"uzs"}'

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
additionalobject
additional.balances_afterobject
additional.balances_after.cashobject
additional.balances_after.cash.uzsstring
additional.balances_after.cardobject
additional.balances_after.card.uzsstring
additional.on_hold_afterarray
source_dataobject
source_data.original_amountinteger
source_data.currency_rateintegerKurs
cashbox_idintegerKassa
payment_typestringTo'lov turi
currencystringValyuta
amountintegerSumma
commentstringIzoh
source_idintegerManba
typestringTuri
statusstringStatus
source_typestringManba
updated_atstringYangilangan
created_atstringYaratilgan
company_idintegerKompaniya
creator_idintegerYaratuvchi
idintegerID
sourcenull
contract_numbernullShartnoma raqami
json
{
    "additional": {
        "balances_after": {
            "cash": {
                "uzs": "1000.00"
            },
            "card": {
                "uzs": "1000.00"
            }
        },
        "on_hold_after": []
    },
    "source_data": {
        "original_amount": 1000,
        "currency_rate": 1
    },
    "cashbox_id": 1,
    "payment_type": "card",
    "currency": "uzs",
    "amount": 1000,
    "comment": "Comment 3",
    "source_id": 1,
    "type": "income",
    "status": "completed",
    "source_type": "conversion",
    "updated_at": "2026-09-30 12:51:26",
    "created_at": "2026-09-30 12:51:26",
    "company_id": 1,
    "creator_id": 2,
    "id": 41,
    "source": null,
    "contract_number": null
}

Tranzaksiyani tasdiqlash ​

PATCH/company/cashbox/transaction/{model}/complete

pending yoki on_hold holatidagi o‘tkazma olinganini tasdiqlaydi: tranzaksiya completed bo‘ladi, pul qabul qiluvchi kassaga kirim qilinadi. Inkassatsiyalar alohida tasdiqlanadi; xodim faqat o‘z kassasiga kelgan o‘tkazmani tasdiqlay oladi, aks holda 400.

Formadan (multipart/form-data) PATCH metodi POST + ?_method=PATCH parametri bilan yuboriladi.

Sarlavhalar (headers) ​

SarlavhaQiymatTavsif
AuthorizationBearer {token}POST /common/auth/login dan olingan token
Acceptapplication/jsonJavob JSON da
Accept-LanguageruXabarlar va nomlar tili: ru, uz, oz

Yo‘l parametrlari ​

ParametrTavsif
modelYozuv ID si

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
messagestringXabar
json
{
    "message": "Success"
}

Tranzaksiyani bekor qilish ​

PATCH/company/cashbox/transaction/{model}/cancel

Tranzaksiyani bekor qiladi (canceled) va uning qoldiqlarga, bog‘liq o‘tkazmaga va yetkazib beruvchi to‘loviga ta’sirini qaytaradi. Allaqachon bekor qilingan, bog‘liq (javob) tranzaksiyani, sotuv, smena, qarz, kredit va inkassatsiya o‘tkazmalarini hamda konvertatsiyaning kirim qismini bekor qilib bo‘lmaydi — 400.

Formadan (multipart/form-data) PATCH metodi POST + ?_method=PATCH parametri bilan yuboriladi.

Sarlavhalar (headers) ​

SarlavhaQiymatTavsif
AuthorizationBearer {token}POST /common/auth/login dan olingan token
Acceptapplication/jsonJavob JSON da
Accept-LanguageruXabarlar va nomlar tili: ru, uz, oz

Yo‘l parametrlari ​

ParametrTavsif
modelYozuv ID si

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
messagestringXabar
json
{
    "message": "Success"
}

Tranzaksiyalar ro‘yxati ​

GET/company/cashbox/transaction

Foydalanuvchiga ochiq kassalar bo‘yicha tranzaksiyalar; filter[contract_number] ICAN shartnoma raqami bo‘yicha qidiradi. show[]=total filter[total_date_from] va filter[total_date_to] (Y-m-d H:i:s) bilan birga total ni qo‘shadi — yakunlangan tranzaksiyalarning tur, to‘lov turi, manba va valyuta bo‘yicha summalari. ?format=excel ro‘yxatni yuklab beradi.

Sarlavhalar (headers) ​

SarlavhaQiymatTavsif
AuthorizationBearer {token}POST /common/auth/login dan olingan token
Acceptapplication/jsonJavob JSON da
Accept-LanguageruXabarlar va nomlar tili: ru, uz, oz

So‘rov parametrlari ​

ParametrTavsif
filter[id]ID — aniq qiymat
filter[company_id]Kompaniya — bitta qiymat yoki ro‘yxat filter[company_id][]
filter[creator_id]Yaratuvchi — aniq qiymat
filter[cashbox_id]Kassa — aniq qiymat
filter[type]Turi — aniq qiymat
filter[payment_type]To'lov turi — aniq qiymat
filter[currency]Valyuta — aniq qiymat
filter[status]Status — aniq qiymat
filter[source_type]Manba — bitta qiymat yoki ro‘yxat filter[source_type][]
filter[source_id]Manba — aniq qiymat
filter[created_at]Yaratilgan — davr: [0] — dan, [1] — gacha (Y-m-d)
sort[]Saralash, - — kamayish bo‘yicha: id, -id
with[]Bog‘liq ma’lumotlarni qo‘shish: creator.profile, cashbox, source
pageSahifa raqami, 1 dan
page-sizeSahifadagi yozuvlar soni, ko‘pi bilan 20
http
GET /company/cashbox/transaction?filter[id]=1&filter[company_id][0]=1&filter[company_id][1]=2&filter[creator_id]=2&filter[cashbox_id]=1&filter[type]=income&filter[payment_type]=cash&filter[currency]=uzs&filter[status]=completed&filter[source_type][0]=cashbox&filter[source_type][1]=reason&filter[source_id]=1&filter[created_at][0]=2026-09-29&filter[created_at][1]=2026-09-30

Javob · 200 ​

Sahifalangan javob: yozuvlar data[] ichida, sahifalash links va meta da.

Javob maydonlari
MaydonTuriTavsif
dataobject[]Ma'lumotlar
data[].idintegerID
data[].company_idintegerKompaniya
data[].creator_idintegerYaratuvchi
data[].cashbox_idintegerKassa
data[].typestringTuri
data[].payment_typestringTo'lov turi
data[].currencystringValyuta
data[].amountintegerSumma
data[].commentstringIzoh
data[].statusstringStatus
data[].source_typestringManba
data[].source_idintegerManba
data[].source_dataarray
data[].related_to_idnull
data[].reversal_of_idnull
data[].cancel_commentnullO‘chirish sababi
data[].additionalobject
data[].additional.on_hold_afterarray
data[].additional.balances_afterarray
data[].created_atstringYaratilgan
data[].updated_atstringYangilangan
data[].sourcenull
data[].contract_numbernullShartnoma raqami
json
{
    "data": [
        {
            "id": 1,
            "company_id": 1,
            "creator_id": 2,
            "cashbox_id": 1,
            "type": "income",
            "payment_type": "cash",
            "currency": "uzs",
            "amount": 1000,
            "comment": "Comment 1",
            "status": "completed",
            "source_type": "reason",
            "source_id": 1,
            "source_data": [],
            "related_to_id": null,
            "reversal_of_id": null,
            "cancel_comment": null,
            "additional": {
                "on_hold_after": [],
                "balances_after": []
            },
            "created_at": "2026-09-30 12:47:58",
            "updated_at": "2026-09-30 12:47:58",
            "source": null,
            "contract_number": null
        }
    ],
    "links": {
        "first": "https://api.wasyt.uz/company/cashbox/transaction?page=1",
        "last": "https://api.wasyt.uz/company/cashbox/transaction?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [],
        "path": "https://api.wasyt.uz/company/cashbox/transaction",
        "per_page": 20,
        "to": 1,
        "total": 1
    }
}

Tranzaksiya ​

GET/company/cashbox/transaction/{model}

Bitta kassa tranzaksiyasi; with[]=source uning manbasini (kassa, inkassatsiya, modda yoki yetkazib beruvchi) qo‘shadi.

Sarlavhalar (headers) ​

SarlavhaQiymatTavsif
AuthorizationBearer {token}POST /common/auth/login dan olingan token
Acceptapplication/jsonJavob JSON da
Accept-LanguageruXabarlar va nomlar tili: ru, uz, oz

Yo‘l parametrlari ​

ParametrTavsif
modelYozuv ID si

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
idintegerID
company_idintegerKompaniya
creator_idintegerYaratuvchi
cashbox_idintegerKassa
typestringTuri
payment_typestringTo'lov turi
currencystringValyuta
amountintegerSumma
commentstringIzoh
statusstringStatus
source_typestringManba
source_idintegerManba
source_dataarray
related_to_idnull
reversal_of_idnull
cancel_commentnullO‘chirish sababi
additionalobject
additional.on_hold_afterarray
additional.balances_afterarray
created_atstringYaratilgan
updated_atstringYangilangan
sourcenull
contract_numbernullShartnoma raqami
json
{
    "id": 1,
    "company_id": 1,
    "creator_id": 2,
    "cashbox_id": 1,
    "type": "income",
    "payment_type": "cash",
    "currency": "uzs",
    "amount": 1000,
    "comment": "Comment 1",
    "status": "completed",
    "source_type": "reason",
    "source_id": 1,
    "source_data": [],
    "related_to_id": null,
    "reversal_of_id": null,
    "cancel_comment": null,
    "additional": {
        "on_hold_after": [],
        "balances_after": []
    },
    "created_at": "2026-09-30 12:47:58",
    "updated_at": "2026-09-30 12:47:58",
    "source": null,
    "contract_number": null
}

Tranzaksiya yaratish ​

POST/company/cashbox/transaction

Modda bo‘yicha kassa daromadi yoki xarajati (source_type = reason, faqat shu turdagi ichki modda) yoki yetkazib beruvchiga to‘lov (source_type = supplier, faqat xarajat). Daromad faqat asosiy kassaga kiritiladi, xarajat — istalgan ochiq kassadan. Darhol o‘tkaziladi (completed); yetkazib beruvchiga to‘lov undan bo‘lgan qarzni kamaytiradi.

Sarlavhalar (headers) ​

SarlavhaQiymatTavsif
AuthorizationBearer {token}POST /common/auth/login dan olingan token
Acceptapplication/jsonJavob JSON da
Accept-LanguageruXabarlar va nomlar tili: ru, uz, oz

So‘rov tanasi ​

MaydonTuriMajburiyTavsif
cashbox_idintegerHaKassa. Foydalanuvchiga ochiq mavjud yozuv ID si
typestringHaTuri. Mumkin qiymatlar: income, outcome
payment_typestringHaTo'lov turi. Mumkin qiymatlar: bank, card, cash, system
currencystringHaValyuta. Mumkin qiymatlar: uzs, usd, eur, rub
amountnumberHaSumma. Verguldan keyin 2 tagacha raqam. Kamida 0.01. 999999999999.99 dan oshmasin
commentstringHaIzoh. Maks. 1000 belgi
source_typestringHaManba. Mumkin qiymatlar: reason, supplier
source_idintegerHaModda (reason) yoki yetkazib beruvchi (supplier) ID si. Foydalanuvchiga ochiq mavjud yozuv ID si
json
{
    "cashbox_id": 1,
    "payment_type": "cash",
    "currency": "uzs",
    "amount": 1000,
    "comment": "Comment 3",
    "type": "income",
    "source_type": "reason",
    "source_id": 2
}
bash
curl -X POST "https://api.wasyt.uz/company/cashbox/transaction" \
  -H "Accept: application/json" \
  -H "Accept-Language: ru" \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{"cashbox_id":1,"payment_type":"cash","currency":"uzs","amount":1000,"comment":"Comment 3","type":"income","source_type":"reason","source_id":2}'

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
additionalobject
additional.balances_afterobject
additional.balances_after.cashobject
additional.balances_after.cash.uzsstring
additional.on_hold_afterarray
source_dataarray
cashbox_idintegerKassa
typestringTuri
payment_typestringTo'lov turi
currencystringValyuta
amountintegerSumma
commentstringIzoh
source_typestringManba
source_idintegerManba
statusstringStatus
updated_atstringYangilangan
created_atstringYaratilgan
company_idintegerKompaniya
creator_idintegerYaratuvchi
idintegerID
sourcenull
contract_numbernullShartnoma raqami
json
{
    "additional": {
        "balances_after": {
            "cash": {
                "uzs": "2000.00"
            }
        },
        "on_hold_after": []
    },
    "source_data": [],
    "cashbox_id": 1,
    "type": "income",
    "payment_type": "cash",
    "currency": "uzs",
    "amount": 1000,
    "comment": "Comment 3",
    "source_type": "reason",
    "source_id": 2,
    "status": "completed",
    "updated_at": "2026-09-30 12:51:27",
    "created_at": "2026-09-30 12:51:27",
    "company_id": 1,
    "creator_id": 2,
    "id": 49,
    "source": null,
    "contract_number": null
}