Skip to content

Kassa smenalari ​

Savdo kassasidagi kassir smenasi: maydalash puli bilan ochish, smena davomida kassadan xarajatlar va har bir to‘lov turi hamda valyuta bo‘yicha pulni sanab yopish. Kassir faqat o‘z smenalarini, direktor esa kompaniyaning barcha smenalarini ko‘radi.

MetodManzilVazifasi
GET/company/trade/cashbox-shift/currentKassirning joriy smenasi
GET/company/trade/cashbox-shift/expense-reasonsSmena xarajat turlari
POST/company/trade/cashbox-shift/expense-reasonsXarajat turini qo‘shish
PATCH/company/trade/cashbox-shift/{model}/closeSmenani yopish
POST/company/trade/cashbox-shift/{model}/expenseKassadan xarajat
GET/company/trade/cashbox-shiftSmenalar ro‘yxati
GET/company/trade/cashbox-shift/{model}Smena tafsilotlari
POST/company/trade/cashbox-shiftSmenani ochish

Kassirning joriy smenasi ​

GET/company/trade/cashbox-shift/current

Joriy foydalanuvchining ochiq smenasi datada (smena bo‘lmasa null) va kompaniyaning smena qoidalari settingsda. Smenada closes_in keladi — ish vaqti tugashiga necha soniya qolgani (tugagandan keyin manfiy, cheklov bo‘lmasa null).

Sarlavhalar (headers) ​

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

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
datanullMa'lumotlar
settingsobjectSozlamalar
settings.is_enabledbooleanYoqilgan
settings.is_working_hours_enabledbooleanSmenaning ish vaqti
settings.working_hours_fromstringIsh vaqti boshlanishi
settings.working_hours_tostringIsh vaqti tugashi
settings.is_round_the_clockboolean24 soatlik smena
settings.overdue_actionstringVaqt tugaganda
json
{
    "data": null,
    "settings": {
        "is_enabled": true,
        "is_working_hours_enabled": false,
        "working_hours_from": "09:00",
        "working_hours_to": "21:00",
        "is_round_the_clock": false,
        "overdue_action": "remind"
    }
}

Smena xarajat turlari ​

GET/company/trade/cashbox-shift/expense-reasons

Kassadan xarajat o‘tkazish mumkin bo‘lgan kompaniyaning «Xarajat» moddalari: daraxtning oxirgi moddalari va ichki moddasi yo‘q yuqori darajadagi moddalar. Har biri parent ota guruhi bilan.

Sarlavhalar (headers) ​

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

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
dataobject[]Ma'lumotlar
data[].idintegerID
data[].namestringNomlanish
data[].parentobject
data[].parent.idintegerID
data[].parent.namestringNomlanish
json
{
    "data": [
        {
            "id": 11,
            "name": "Обед",
            "parent": {
                "id": 3,
                "name": "Transaction reason 2"
            }
        },
        {
            "id": 12,
            "name": "Транспорт",
            "parent": null
        }
    ]
}

Xarajat turini qo‘shish ​

POST/company/trade/cashbox-shift/expense-reasons

«Kassadan xarajatlar» guruhida ko‘rsatilgan nomdagi «Xarajat» moddasini yaratadi (guruh kerak bo‘lsa yaratiladi). Shu nomdagi modda allaqachon bo‘lsa, o‘sha qaytariladi — takror yaratilmaydi.

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
namestringHaNomlanish. Maks. 255 belgi
json
{
    "name": "Такси"
}
bash
curl -X POST "https://api.wasyt.uz/company/trade/cashbox-shift/expense-reasons" \
  -H "Accept: application/json" \
  -H "Accept-Language: ru" \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{"name":"Такси"}'

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
idintegerID
namestringNomlanish
parentobject
parent.idintegerID
parent.namestringNomlanish
json
{
    "id": 14,
    "name": "Такси",
    "parent": {
        "id": 13,
        "name": "Расходы из кассы"
    }
}

Smenani yopish ​

PATCH/company/trade/cashbox-shift/{model}/close

Ochiq smenani actuals sanalgan summalari bo‘yicha yopadi (ko‘rsatilmagan qator kutilganiga teng deb olinadi). Istalgan qatordagi farq closing_commentni talab qiladi va kassada kirim yoki chiqim sifatida o‘tkaziladi. closing_action: keep — hammasi kassada qoladi, transfer_all — hammasi inkassatsiya bilan asosiy kassaga o‘tadi, transfer_part — kassada leave_amountsdagi naqd pul qoladi (sanalganidan ko‘p emas). Smenaning yakuniy raqamlari muzlatiladi.

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

So‘rov tanasi ​

MaydonTuriMajburiyTavsif
actualsobject[]Yo‘qHaqiqiy summalar. Maks. 50 ta element
actuals[].payment_typestringHaTo'lov turi. Mumkin qiymatlar: cash, card, bank
actuals[].payment_type_idintegerYo‘q
actuals[].currencystringHaValyuta. Mumkin qiymatlar: uzs, usd, eur, rub
actuals[].amountnumberHaHaqiqatda. Verguldan keyin 2 tagacha raqam. Kamida -999999999999.99. 999999999999.99 dan oshmasin
closing_actionstringHaYopishdagi amal. Mumkin qiymatlar: keep, transfer_all, transfer_part
leave_amountsobject[]Yo‘qQoldiq summasi. Maks. 20 ta element
leave_amounts[].currencystringHaValyuta. Takrorlanmasin. Mumkin qiymatlar: uzs, usd, eur, rub
leave_amounts[].amountnumberHaQoldiq summasi. Verguldan keyin 2 tagacha raqam. Kamida 0. 999999999999.99 dan oshmasin
closing_commentstringYo‘qKassa smenasiga izoh. Maks. 1000 belgi
json
{
    "actuals": [
        {
            "payment_type": "cash",
            "currency": "uzs",
            "amount": 1000
        },
        {
            "payment_type": "card",
            "currency": "uzs",
            "amount": 3000
        },
        {
            "payment_type": "bank",
            "currency": "uzs",
            "amount": 0
        }
    ],
    "closing_action": "keep"
}
bash
curl -X PATCH "https://api.wasyt.uz/company/trade/cashbox-shift/4/close" \
  -H "Accept: application/json" \
  -H "Accept-Language: ru" \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{"actuals":[{"payment_type":"cash","currency":"uzs","amount":1000},{"payment_type":"card","currency":"uzs","amount":3000},{"payment_type":"bank","currency":"uzs","amount":0}],"closing_action":"keep"}'

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
idintegerID
creator_idintegerYaratuvchi
company_idintegerKompaniya
cashbox_idintegerKassa
stock_idintegerOmbor
closed_by_idinteger
collection_idnull
statusstringStatus
opening_balancesobject[]
opening_balances[].amountintegerSumma
opening_balances[].currencystringValyuta
opening_balances[].payment_typestringTo'lov turi
opening_amountintegerOchilish summasi
opening_currencynullOchilish valyutasi
opening_commentnullIzoh
closing_actionstringYopishdagi amal
closing_commentnullKassa smenasiga izoh
summaryobject
summary.currencystringValyuta
summary.rowsobject[]
summary.rows[].payment_typestringTo'lov turi
summary.rows[].payment_type_idnull
summary.rows[].payment_type_namenull
summary.rows[].currencystringValyuta
summary.rows[].opening_balanceinteger
summary.rows[].opening_amountintegerOchilish summasi
summary.rows[].openinginteger
summary.rows[].incomeintegerDaromad
summary.rows[].outcomeinteger
summary.rows[].expectedinteger
summary.rows[].by_sourcearray
summary.rows[].actualinteger
summary.rows[].differenceinteger
summary.rows[].transferredinteger
summary.rows[].leftinteger
summary.totalsobject[]
summary.totals[].currencystringValyuta
summary.totals[].openinginteger
summary.totals[].incomeintegerDaromad
summary.totals[].outcomeinteger
summary.totals[].expectedinteger
summary.totals[].actualinteger
summary.totals[].differenceinteger
summary.totals[].transferredinteger
summary.totals[].leftinteger
summary.totals[].cashinteger
summary.totals[].non_cashinteger
summary.checks_countinteger
summary.returns_countintegerQaytarishlar (dona)
summary.debtsarray
summary.transactionsarrayTranzaksiya
opened_atstring
closes_atnull
overdue_actionnullVaqt tugaganda
closed_atstring
created_atstringYaratilgan
updated_atstringYangilangan
companyobjectKompaniya
company.idintegerID
company.parent_idnullOta-ona
company.partner_idintegerHamkor
company.district_idintegerTuman
company.industry_idintegerFaoliyat turlari
company.namestringNomlanish
company.company_namestringKompaniya
company.logoobjectLogotip
company.logo.originalobject
company.logo.original.rawstring
company.logo.original.webpstring
company.logo.widen_25object
company.logo.widen_25.rawstring
company.logo.widen_25.webpstring
company.logo.widen_100object
company.logo.widen_100.rawstring
company.logo.widen_100.webpstring
company.logo.widen_500object
company.logo.widen_500.rawstring
company.logo.widen_500.webpstring
company.innstringINN
company.mfostringMFO
company.addressstringManzil
company.latitudenullKenglik
company.longitudenullUzunlik
company.commentstringIzoh
company.telegram_phonestringTelegramdagi telefon
company.director_full_namestringDirektorning FISH
company.bankstringBank
company.payment_accountstringTo'lov hisob raqami
company.agreement_numberstringShartnoma raqami
company.agreement_datenull
company.atmos_terminal_idintegerAtmos Terminalining ID raqami
company.uniaccess_auto_payment_credit_overdue_daysinteger
company.uniaccess_branch_idintegerUniaccess branch ID
company.field_of_activitystringFaoliyat yo‘nalishi
company.vat_percentstringQQS (%)
company.is_using_new_my_uzcard_auto_payment_by_pinflbooleanYangi MyUzcard PINFL bo'yicha avtomatik yechib olish uchun foydalanish
company.bonus_entry_periodintegerBonuslar hisob davri (oylarda)
company.abc_segment_ainteger
company.abc_segment_binteger
company.abc_segment_cinteger
company.is_pos_window_enabledboolean
company.cashbox_shift_settingsobject
company.cashbox_shift_settings.is_enabledbooleanYoqilgan
company.has_bank_payment_typeboolean
company.is_ican_turned_onbooleanICAN yoqilgan
company.is_partner_turned_onbooleanHamkor yoqilgan
company.created_atstringYaratilgan
company.updated_atstringYangilangan
company.is_deletedboolean
company.parentnull
creatorobject
creator.idintegerID
creator.typestringTuri
creator.role_idintegerRoli
creator.company_idintegerKompaniya
creator.partner_idnullHamkor
creator.usernamestringLogin
creator.pinflnullPINFL
creator.phonestringTelefon
creator.sipuni_sip_numberstringSipuni (SIP-raqam)
json
{
    "id": 4,
    "creator_id": 2,
    "company_id": 1,
    "cashbox_id": 2,
    "stock_id": 1,
    "closed_by_id": 2,
    "collection_id": null,
    "status": "closed",
    "opening_balances": [
        {
            "amount": 1000,
            "currency": "uzs",
            "payment_type": "cash"
        },
        {
            "amount": 3000,
            "currency": "uzs",
            "payment_type": "card"
        }
    ],
    "opening_amount": 0,
    "opening_currency": null,
    "opening_comment": null,
    "closing_action": "keep",
    "closing_comment": null,
    "summary": {
        "currency": "uzs",
        "rows": [
            {
                "payment_type": "cash",
                "payment_type_id": null,
                "payment_type_name": null,
                "currency": "uzs",
                "opening_balance": 1000,
                "opening_amount": 0,
                "opening": 1000,
                "income": 0,
                "outcome": 0,
                "expected": 1000,
                "by_source": [],
                "actual": 1000,
                "difference": 0,
                "transferred": 0,
                "left": 1000
            },
            {
                "payment_type": "card",
                "payment_type_id": null,
                "payment_type_name": null,
                "currency": "uzs",
                "opening_balance": 3000,
                "opening_amount": 0,
                "opening": 3000,
                "income": 0,
                "outcome": 0,
                "expected": 3000,
                "by_source": [],
                "actual": 3000,
                "difference": 0,
                "transferred": 0,
                "left": 3000
            }
        ],
        "totals": [
            {
                "currency": "uzs",
                "opening": 4000,
                "income": 0,
                "outcome": 0,
                "expected": 4000,
                "actual": 4000,
                "difference": 0,
                "transferred": 0,
                "left": 4000,
                "cash": 1000,
                "non_cash": 3000
            },
            {
                "currency": "usd",
                "opening": 0,
                "income": 0,
                "outcome": 0,
                "expected": 0,
                "actual": 0,
                "difference": 0,
                "transferred": 0,
                "left": 0,
                "cash": 0,
                "non_cash": 0
            }
        ],
        "checks_count": 0,
        "returns_count": 0,
        "debts": [],
        "transactions": []
    },
    "opened_at": "2026-09-30 12:53:52",
    "closes_at": null,
    "overdue_action": null,
    "closed_at": "2026-09-30 12:53:52",
    "created_at": "2026-09-30 12:53:52",
    "updated_at": "2026-09-30 12:53:52",
    "company": {
        "id": 1,
        "parent_id": null,
        "partner_id": 1,
        "district_id": 1,
        "industry_id": 1,
        "name": "Company 1",
        "company_name": "Company 1",
        "logo": {
            "original": {
                "raw": "https://api.wasyt.uz/test_data/images/1.png",
                "webp": "https://api.wasyt.uz/storage/thumbs/original/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.webp"
            },
            "widen_25": {
                "raw": "https://api.wasyt.uz/storage/thumbs/widen/25/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.png",
                "webp": "https://api.wasyt.uz/storage/thumbs/widen/25/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.webp"
            },
            "widen_100": {
                "raw": "https://api.wasyt.uz/storage/thumbs/widen/100/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.png",
                "webp": "https://api.wasyt.uz/storage/thumbs/widen/100/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.webp"
            },
            "widen_500": {
                "raw": "https://api.wasyt.uz/storage/thumbs/widen/500/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.png",
                "webp": "https://api.wasyt.uz/storage/thumbs/widen/500/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.webp"
            }
        },
        "inn": "000000001",
        "mfo": "00001",
        "address": "Address 1",
        "latitude": null,
        "longitude": null,
        "comment": "Comment 1",
        "telegram_phone": "998000000001",
        "director_full_name": "Director 1",
        "bank": "Bank 1",
        "payment_account": "00000000000000000001",
        "agreement_number": "001/2026",
        "agreement_date": null,
        "atmos_terminal_id": 97007302,
        "uniaccess_auto_payment_credit_overdue_days": 3,
        "uniaccess_branch_id": 1,
        "field_of_activity": "trading",
        "vat_percent": "12.00",
        "is_using_new_my_uzcard_auto_payment_by_pinfl": true,
        "bonus_entry_period": 12,
        "abc_segment_a": 75,
        "abc_segment_b": 15,
        "abc_segment_c": 10,
        "is_pos_window_enabled": true,
        "cashbox_shift_settings": {
            "is_enabled": true
        },
        "has_bank_payment_type": false,
        "is_ican_turned_on": true,
        "is_partner_turned_on": false,
        "created_at": "2026-09-30 12:47:58",
        "updated_at": "2026-09-30 12:49:04",
        "is_deleted": false,
        "parent": null
    },
    "creator": {
        "id": 2,
        "type": "director",
        "role_id": 2,
        "company_id": 1,
        "partner_id": null,
        "username": "director_1@local.host",
        "pinfl": null,
        "phone": "998020000001",
        "sipuni_sip_number": "210",
        "is_confirmed": true,
        "are_all_companies_available": false,
        "last_login_at": null,
        "created_at": "2026-09-30 12:47:59",
        "updated_at": "2026-09-30 12:47:59",
        "is_deleted": false,
        "profile": {
            "first_name": null,
            "last_name": null,
            "position": null,
            "birth_date": null,
            "gender": null,
            "full_name": " "
        }
    },
    "closed_by": {
        "id": 2,
        "type": "director",
        "role_id": 2,
        "company_id": 1,
        "partner_id": null,
        "username": "director_1@local.host",
        "pinfl": null,
        "phone": "998020000001",
        "sipuni_sip_number": "210",
        "is_confirmed": true,
        "are_all_companies_available": false,
        "last_login_at": null,
        "created_at": "2026-09-30 12:47:59",
        "updated_at": "2026-09-30 12:47:59",
        "is_deleted": false,
        "profile": {
            "first_name": null,
            "last_name": null,
            "position": null,
            "birth_date": null,
            "gender": null,
            "full_name": " "
        }
    },
    "cashbox": {
        "id": 2,
        "creator_id": 2,
        "company_id": 1,
        "name": "Cashbox 2",
        "type": "sale",
        "created_at": "2026-09-30 12:47:58",
        "updated_at": "2026-09-30 12:47:58",
        "is_deleted": false
    },
    "stock": {
        "id": 1,
        "creator_id": 2,
        "company_id": 1,
        "name": "Stock 1",
        "is_available": true,
        "created_at": "2026-09-30 12:47:59",
        "updated_at": "2026-09-30 12:47:59",
        "is_deleted": false
    }
}

Xato misoli · 422 ​

json
{
    "message": "Есть расхождение — укажите причину в комментарии",
    "errors": {
        "closing_comment": [
            "Есть расхождение — укажите причину в комментарии"
        ]
    }
}

Kassadan xarajat ​

POST/company/trade/cashbox-shift/{model}/expense

Ochiq smena kassasidan mavjud transaction_reason_id moddasi yoki reason_name nomi bilan berilgan yangi modda bo‘yicha xarajat o‘tkazadi (yangi «Xarajat» moddasi yaratiladi). Yaratilgan kassa operatsiyasini qaytaradi; yopiq smenada — 400 xato.

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

So‘rov tanasi ​

MaydonTuriMajburiyTavsif
transaction_reason_idintegerreason_name yuborilmasaXarajat turi. Foydalanuvchiga ochiq mavjud yozuv ID si
reason_namestringtransaction_reason_id yuborilmasaXarajat nomi. Maks. 255 belgi
reason_parent_idintegerYo‘qXarajat guruhi. Foydalanuvchiga ochiq mavjud yozuv ID si
payment_typestringHaTo'lov turi. Mumkin qiymatlar: cash, card, bank
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
json
{
    "transaction_reason_id": 6,
    "payment_type": "cash",
    "currency": "uzs",
    "amount": 200,
    "comment": "Обед сотрудникам"
}
bash
curl -X POST "https://api.wasyt.uz/company/trade/cashbox-shift/27/expense" \
  -H "Accept: application/json" \
  -H "Accept-Language: ru" \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{"transaction_reason_id":6,"payment_type":"cash","currency":"uzs","amount":200,"comment":"Обед сотрудникам"}'

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
additionalobject
additional.balances_afterobject
additional.balances_after.cardobject
additional.balances_after.card.uzsstring
additional.balances_after.cashobject
additional.balances_after.cash.uzsstring
additional.on_hold_afterarray
source_dataobject
source_data.cashbox_shift_idinteger
cashbox_idintegerKassa
typestringTuri
payment_typestringTo'lov turi
currencystringValyuta
amountintegerSumma
statusstringStatus
source_typestringManba
source_idintegerManba
commentstringIzoh
updated_atstringYangilangan
created_atstringYaratilgan
company_idintegerKompaniya
creator_idintegerYaratuvchi
idintegerID
cashboxobject
cashbox.idintegerID
cashbox.creator_idintegerYaratuvchi
cashbox.company_idintegerKompaniya
cashbox.namestringNomlanish
cashbox.typestringTuri
cashbox.created_atstringYaratilgan
cashbox.updated_atstringYangilangan
cashbox.is_deletedboolean
sourcenull
contract_numbernullShartnoma raqami
json
{
    "additional": {
        "balances_after": {
            "card": {
                "uzs": "3000.00"
            },
            "cash": {
                "uzs": "800.00"
            }
        },
        "on_hold_after": []
    },
    "source_data": {
        "cashbox_shift_id": 27
    },
    "cashbox_id": 2,
    "type": "outcome",
    "payment_type": "cash",
    "currency": "uzs",
    "amount": 200,
    "status": "completed",
    "source_type": "reason",
    "source_id": 6,
    "comment": "Обед сотрудникам",
    "updated_at": "2026-09-30 12:54:00",
    "created_at": "2026-09-30 12:54:00",
    "company_id": 1,
    "creator_id": 2,
    "id": 147,
    "cashbox": {
        "id": 2,
        "creator_id": 2,
        "company_id": 1,
        "name": "Cashbox 2",
        "type": "sale",
        "created_at": "2026-09-30 12:47:58",
        "updated_at": "2026-09-30 12:47:58",
        "is_deleted": false
    },
    "source": null,
    "contract_number": null
}

Smenalar ro‘yxati ​

GET/company/trade/cashbox-shift

Kassir smenalari sahifalab. Kassir faqat o‘z smenalarini, direktor — kompaniyaning barcha smenalarini ko‘radi.

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[creator_id]Yaratuvchi — aniq qiymat
filter[company_id]Kompaniya — aniq qiymat
filter[cashbox_id]Kassa — aniq qiymat
filter[stock_id]Ombor — aniq qiymat
filter[status]Status — bitta qiymat yoki ro‘yxat filter[status][]
filter[opened_at]davr: [0] — dan, [1] — gacha (Y-m-d)
filter[closed_at]davr: [0] — dan, [1] — gacha (Y-m-d)
sort[]Saralash, - — kamayish bo‘yicha: id, -id, opened_at, -opened_at, closed_at, -closed_at
with[]Bog‘liq ma’lumotlarni qo‘shish: creator.profile, closed_by.profile, company, cashbox, stock
pageSahifa raqami, 1 dan
page-sizeSahifadagi yozuvlar soni, ko‘pi bilan 20

Javob ​

Javob misoli hali testlar tomonidan yozib olinmagan.

Smena tafsilotlari ​

GET/company/trade/cashbox-shift/{model}

summarydagi yakunlar bilan smena: har bir to‘lov turi va valyuta bo‘yicha harakatlar, cheklar va qaytarishlar soni, berilgan va to‘langan qarzlar. Ochiq smenada raqamlar har so‘rovda qayta hisoblanadi, yopiqda — yopilgan paytdagi holatda qotirilgan.

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
creator_idintegerYaratuvchi
company_idintegerKompaniya
cashbox_idintegerKassa
stock_idintegerOmbor
closed_by_idnull
collection_idnull
statusstringStatus
opening_balancesobject[]
opening_balances[].amountintegerSumma
opening_balances[].currencystringValyuta
opening_balances[].payment_typestringTo'lov turi
opening_amountintegerOchilish summasi
opening_currencystringOchilish valyutasi
opening_commentnullIzoh
closing_actionnullYopishdagi amal
closing_commentnullKassa smenasiga izoh
summaryobject
summary.currencystringValyuta
summary.rowsobject[]
summary.rows[].payment_typestringTo'lov turi
summary.rows[].payment_type_idnull
summary.rows[].payment_type_namenull
summary.rows[].currencystringValyuta
summary.rows[].opening_balanceinteger
summary.rows[].opening_amountintegerOchilish summasi
summary.rows[].openinginteger
summary.rows[].incomeintegerDaromad
summary.rows[].outcomeinteger
summary.rows[].expectedinteger
summary.rows[].by_sourceobject
summary.rows[].by_source.saleobject
summary.rows[].by_source.sale.incomeintegerDaromad
summary.rows[].by_source.sale.outcomeinteger
summary.rows[].by_source.client_debtobject
summary.rows[].by_source.client_debt.incomeintegerDaromad
summary.rows[].by_source.client_debt.outcomeinteger
summary.rows[].by_source.reasonobjectSabab
summary.rows[].by_source.reason.incomeintegerDaromad
summary.rows[].by_source.reason.outcomeinteger
summary.totalsobject[]
summary.totals[].currencystringValyuta
summary.totals[].openinginteger
summary.totals[].incomeintegerDaromad
summary.totals[].outcomeinteger
summary.totals[].expectedinteger
summary.totals[].cashinteger
summary.totals[].non_cashinteger
summary.checks_countinteger
summary.returns_countintegerQaytarishlar (dona)
summary.debtsarray
summary.transactionsobject[]Tranzaksiya
summary.transactions[].idintegerID
summary.transactions[].typestringTuri
summary.transactions[].payment_typestringTo'lov turi
summary.transactions[].payment_type_idnull
summary.transactions[].currencystringValyuta
summary.transactions[].amountintegerSumma
summary.transactions[].statusstringStatus
summary.transactions[].source_typestringManba
summary.transactions[].source_idintegerManba
summary.transactions[].sale_idnullSotish
summary.transactions[].reasonnullSabab
summary.transactions[].commentnullIzoh
summary.transactions[].created_atstringYaratilgan
opened_atstring
closes_atnull
overdue_actionnullVaqt tugaganda
closed_atnull
created_atstringYaratilgan
updated_atstringYangilangan
closes_innull
companyobjectKompaniya
company.idintegerID
company.parent_idnullOta-ona
company.partner_idintegerHamkor
company.district_idintegerTuman
company.industry_idintegerFaoliyat turlari
company.namestringNomlanish
company.company_namestringKompaniya
company.logoobjectLogotip
company.logo.originalobject
company.logo.original.rawstring
company.logo.original.webpstring
company.logo.widen_25object
company.logo.widen_25.rawstring
company.logo.widen_25.webpstring
company.logo.widen_100object
company.logo.widen_100.rawstring
company.logo.widen_100.webpstring
company.logo.widen_500object
company.logo.widen_500.rawstring
company.logo.widen_500.webpstring
company.innstringINN
company.mfostringMFO
company.addressstringManzil
company.latitudenullKenglik
company.longitudenullUzunlik
company.commentstringIzoh
company.telegram_phonestringTelegramdagi telefon
company.director_full_namestringDirektorning FISH
company.bankstringBank
company.payment_accountstringTo'lov hisob raqami
company.agreement_numberstringShartnoma raqami
company.agreement_datenull
company.atmos_terminal_idintegerAtmos Terminalining ID raqami
company.uniaccess_auto_payment_credit_overdue_daysinteger
company.uniaccess_branch_idintegerUniaccess branch ID
company.field_of_activitystringFaoliyat yo‘nalishi
company.vat_percentstringQQS (%)
company.is_using_new_my_uzcard_auto_payment_by_pinflbooleanYangi MyUzcard PINFL bo'yicha avtomatik yechib olish uchun foydalanish
company.bonus_entry_periodintegerBonuslar hisob davri (oylarda)
company.abc_segment_ainteger
company.abc_segment_binteger
company.abc_segment_cinteger
company.is_pos_window_enabledboolean
company.cashbox_shift_settingsobject
company.cashbox_shift_settings.is_enabledbooleanYoqilgan
company.has_bank_payment_typeboolean
company.is_ican_turned_onbooleanICAN yoqilgan
json
{
    "id": 31,
    "creator_id": 2,
    "company_id": 1,
    "cashbox_id": 2,
    "stock_id": 1,
    "closed_by_id": null,
    "collection_id": null,
    "status": "open",
    "opening_balances": [
        {
            "amount": 1000,
            "currency": "uzs",
            "payment_type": "cash"
        },
        {
            "amount": 3000,
            "currency": "uzs",
            "payment_type": "card"
        }
    ],
    "opening_amount": 500,
    "opening_currency": "uzs",
    "opening_comment": null,
    "closing_action": null,
    "closing_comment": null,
    "summary": {
        "currency": "uzs",
        "rows": [
            {
                "payment_type": "cash",
                "payment_type_id": null,
                "payment_type_name": null,
                "currency": "uzs",
                "opening_balance": 1000,
                "opening_amount": 500,
                "opening": 1500,
                "income": 950,
                "outcome": 150,
                "expected": 2300,
                "by_source": {
                    "sale": {
                        "income": 700,
                        "outcome": 100
                    },
                    "client_debt": {
                        "income": 250,
                        "outcome": 0
                    },
                    "reason": {
                        "income": 0,
                        "outcome": 50
                    }
                }
            },
            {
                "payment_type": "card",
                "payment_type_id": null,
                "payment_type_name": null,
                "currency": "uzs",
                "opening_balance": 3000,
                "opening_amount": 0,
                "opening": 3000,
                "income": 300,
                "outcome": 0,
                "expected": 3300,
                "by_source": {
                    "sale": {
                        "income": 300,
                        "outcome": 0
                    }
                }
            }
        ],
        "totals": [
            {
                "currency": "uzs",
                "opening": 4500,
                "income": 1250,
                "outcome": 150,
                "expected": 5600,
                "cash": 2300,
                "non_cash": 3300
            },
            {
                "currency": "usd",
                "opening": 0,
                "income": 0,
                "outcome": 0,
                "expected": 0,
                "cash": 0,
                "non_cash": 0
            }
        ],
        "checks_count": 0,
        "returns_count": 0,
        "debts": [],
        "transactions": [
            {
                "id": 151,
                "type": "income",
                "payment_type": "cash",
                "payment_type_id": null,
                "currency": "uzs",
                "amount": 700,
                "status": "completed",
                "source_type": "sale",
                "source_id": 1,
                "sale_id": null,
                "reason": null,
                "comment": null,
                "created_at": "2026-09-30 12:54:02"
            },
            {
                "id": 152,
                "type": "income",
                "payment_type": "card",
                "payment_type_id": null,
                "currency": "uzs",
                "amount": 300,
                "status": "completed",
                "source_type": "sale",
                "source_id": 1,
                "sale_id": null,
                "reason": null,
                "comment": null,
                "created_at": "2026-09-30 12:54:02"
            }
        ]
    },
    "opened_at": "2026-09-30 12:54:02",
    "closes_at": null,
    "overdue_action": null,
    "closed_at": null,
    "created_at": "2026-09-30 12:54:02",
    "updated_at": "2026-09-30 12:54:02",
    "closes_in": null,
    "company": {
        "id": 1,
        "parent_id": null,
        "partner_id": 1,
        "district_id": 1,
        "industry_id": 1,
        "name": "Company 1",
        "company_name": "Company 1",
        "logo": {
            "original": {
                "raw": "https://api.wasyt.uz/test_data/images/1.png",
                "webp": "https://api.wasyt.uz/storage/thumbs/original/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.webp"
            },
            "widen_25": {
                "raw": "https://api.wasyt.uz/storage/thumbs/widen/25/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.png",
                "webp": "https://api.wasyt.uz/storage/thumbs/widen/25/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.webp"
            },
            "widen_100": {
                "raw": "https://api.wasyt.uz/storage/thumbs/widen/100/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.png",
                "webp": "https://api.wasyt.uz/storage/thumbs/widen/100/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.webp"
            },
            "widen_500": {
                "raw": "https://api.wasyt.uz/storage/thumbs/widen/500/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.png",
                "webp": "https://api.wasyt.uz/storage/thumbs/widen/500/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.webp"
            }
        },
        "inn": "000000001",
        "mfo": "00001",
        "address": "Address 1",
        "latitude": null,
        "longitude": null,
        "comment": "Comment 1",
        "telegram_phone": "998000000001",
        "director_full_name": "Director 1",
        "bank": "Bank 1",
        "payment_account": "00000000000000000001",
        "agreement_number": "001/2026",
        "agreement_date": null,
        "atmos_terminal_id": 97007302,
        "uniaccess_auto_payment_credit_overdue_days": 3,
        "uniaccess_branch_id": 1,
        "field_of_activity": "trading",
        "vat_percent": "12.00",
        "is_using_new_my_uzcard_auto_payment_by_pinfl": true,
        "bonus_entry_period": 12,
        "abc_segment_a": 75,
        "abc_segment_b": 15,
        "abc_segment_c": 10,
        "is_pos_window_enabled": true,
        "cashbox_shift_settings": {
            "is_enabled": true
        },
        "has_bank_payment_type": false,
        "is_ican_turned_on": true,
        "is_partner_turned_on": false,
        "created_at": "2026-09-30 12:47:58",
        "updated_at": "2026-09-30 12:49:04",
        "is_deleted": false,
        "parent": null
    },
    "creator": {
        "id": 2,
        "type": "director",
        "role_id": 2,
        "company_id": 1,
        "partner_id": null,
        "username": "director_1@local.host",
        "pinfl": null,
        "phone": "998020000001",
        "sipuni_sip_number": "210",
        "is_confirmed": true,
        "are_all_companies_available": false,
        "last_login_at": null,
        "created_at": "2026-09-30 12:47:59",
        "updated_at": "2026-09-30 12:47:59",
        "is_deleted": false,
        "profile": {
            "first_name": null,
            "last_name": null,
            "position": null,
            "birth_date": null,
            "gender": null,
            "full_name": " "
        }
    },
    "closed_by": null,
    "cashbox": {
        "id": 2,
        "creator_id": 2,
        "company_id": 1,
        "name": "Cashbox 2",
        "type": "sale",
        "created_at": "2026-09-30 12:47:58",
        "updated_at": "2026-09-30 12:47:58",
        "is_deleted": false
    },
    "stock": {
        "id": 1,
        "creator_id": 2,
        "company_id": 1,
        "name": "Stock 1",
        "is_available": true,
        "created_at": "2026-09-30 12:47:59",
        "updated_at": "2026-09-30 12:47:59",
        "is_deleted": false
    }
}

Smenani ochish ​

POST/company/trade/cashbox-shift

Joriy kassirning savdo kassasi va omborda smenasini ochadi. Kassaning joriy balansi kiruvchi sifatida qayd etiladi, opening_amount maydalash puli esa kassaga naqd kirim qilinadi. Sozlamalarda smenalar o‘chirilgan bo‘lsa, kassirda ochiq smena bo‘lsa yoki kassada boshqa kassir ishlayotgan bo‘lsa — 400 xato.

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
stock_idintegerHaOmbor. Foydalanuvchiga ochiq mavjud yozuv ID si
opening_amountnumberYo‘qOchilish summasi. Verguldan keyin 2 tagacha raqam. Kamida 0. 999999999999.99 dan oshmasin
opening_currencystringHaOchilish valyutasi. Mumkin qiymatlar: uzs, usd, eur, rub
opening_commentstringYo‘qIzoh. Maks. 1000 belgi
json
{
    "cashbox_id": 2,
    "stock_id": 1,
    "opening_amount": 500,
    "opening_currency": "uzs",
    "opening_comment": "Размен"
}
bash
curl -X POST "https://api.wasyt.uz/company/trade/cashbox-shift" \
  -H "Accept: application/json" \
  -H "Accept-Language: ru" \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{"cashbox_id":2,"stock_id":1,"opening_amount":500,"opening_currency":"uzs","opening_comment":"Размен"}'

Javob · 200 ​

Javob maydonlari
MaydonTuriTavsif
opening_balancesobject[]
opening_balances[].payment_typestringTo'lov turi
opening_balances[].currencystringValyuta
opening_balances[].amountintegerSumma
company_idintegerKompaniya
cashbox_idintegerKassa
stock_idintegerOmbor
statusstringStatus
opening_amountintegerOchilish summasi
opening_currencystringOchilish valyutasi
opening_commentstringIzoh
opened_atstring
closes_atnull
overdue_actionnullVaqt tugaganda
updated_atstringYangilangan
created_atstringYaratilgan
creator_idintegerYaratuvchi
idintegerID
summaryobject
summary.currencystringValyuta
summary.rowsobject[]
summary.rows[].payment_typestringTo'lov turi
summary.rows[].payment_type_idnull
summary.rows[].payment_type_namenull
summary.rows[].currencystringValyuta
summary.rows[].opening_balanceinteger
summary.rows[].opening_amountintegerOchilish summasi
summary.rows[].openinginteger
summary.rows[].incomeintegerDaromad
summary.rows[].outcomeinteger
summary.rows[].expectedinteger
summary.rows[].by_sourcearray
summary.totalsobject[]
summary.totals[].currencystringValyuta
summary.totals[].openinginteger
summary.totals[].incomeintegerDaromad
summary.totals[].outcomeinteger
summary.totals[].expectedinteger
summary.totals[].cashinteger
summary.totals[].non_cashinteger
summary.checks_countinteger
summary.returns_countintegerQaytarishlar (dona)
summary.debtsarray
summary.transactionsarrayTranzaksiya
closes_innull
companyobjectKompaniya
company.idintegerID
company.parent_idnullOta-ona
company.partner_idintegerHamkor
company.district_idintegerTuman
company.industry_idintegerFaoliyat turlari
company.namestringNomlanish
company.company_namestringKompaniya
company.logoobjectLogotip
company.logo.originalobject
company.logo.original.rawstring
company.logo.original.webpstring
company.logo.widen_25object
company.logo.widen_25.rawstring
company.logo.widen_25.webpstring
company.logo.widen_100object
company.logo.widen_100.rawstring
company.logo.widen_100.webpstring
company.logo.widen_500object
company.logo.widen_500.rawstring
company.logo.widen_500.webpstring
company.innstringINN
company.mfostringMFO
company.addressstringManzil
company.latitudenullKenglik
company.longitudenullUzunlik
company.commentstringIzoh
company.telegram_phonestringTelegramdagi telefon
company.director_full_namestringDirektorning FISH
company.bankstringBank
company.payment_accountstringTo'lov hisob raqami
company.agreement_numberstringShartnoma raqami
company.agreement_datenull
company.atmos_terminal_idintegerAtmos Terminalining ID raqami
company.uniaccess_auto_payment_credit_overdue_daysinteger
company.uniaccess_branch_idintegerUniaccess branch ID
company.field_of_activitystringFaoliyat yo‘nalishi
company.vat_percentstringQQS (%)
company.is_using_new_my_uzcard_auto_payment_by_pinflbooleanYangi MyUzcard PINFL bo'yicha avtomatik yechib olish uchun foydalanish
company.bonus_entry_periodintegerBonuslar hisob davri (oylarda)
company.abc_segment_ainteger
company.abc_segment_binteger
company.abc_segment_cinteger
company.is_pos_window_enabledboolean
company.cashbox_shift_settingsobject
company.cashbox_shift_settings.is_enabledbooleanYoqilgan
company.has_bank_payment_typeboolean
company.is_ican_turned_onbooleanICAN yoqilgan
company.is_partner_turned_onbooleanHamkor yoqilgan
company.created_atstringYaratilgan
company.updated_atstringYangilangan
company.is_deletedboolean
company.parentnull
creatorobject
creator.idintegerID
creator.typestringTuri
creator.role_idintegerRoli
creator.company_idintegerKompaniya
creator.partner_idnullHamkor
creator.usernamestringLogin
creator.pinflnullPINFL
creator.phonestringTelefon
creator.sipuni_sip_numberstringSipuni (SIP-raqam)
creator.is_confirmedboolean
creator.are_all_companies_availableboolean
creator.last_login_atnull
creator.created_atstringYaratilgan
creator.updated_atstringYangilangan
creator.is_deletedboolean
creator.profileobject
creator.profile.first_namenullIsm
creator.profile.last_namenullFamiliya
creator.profile.positionnullLavozim
creator.profile.birth_datenullTug'ilgan kuni
creator.profile.gendernullJinsi
json
{
    "opening_balances": [
        {
            "payment_type": "cash",
            "currency": "uzs",
            "amount": 1000
        },
        {
            "payment_type": "card",
            "currency": "uzs",
            "amount": 3000
        }
    ],
    "company_id": 1,
    "cashbox_id": 2,
    "stock_id": 1,
    "status": "open",
    "opening_amount": 500,
    "opening_currency": "uzs",
    "opening_comment": "Размен",
    "opened_at": "2026-09-30 12:53:56",
    "closes_at": null,
    "overdue_action": null,
    "updated_at": "2026-09-30 12:53:56",
    "created_at": "2026-09-30 12:53:56",
    "creator_id": 2,
    "id": 17,
    "summary": {
        "currency": "uzs",
        "rows": [
            {
                "payment_type": "cash",
                "payment_type_id": null,
                "payment_type_name": null,
                "currency": "uzs",
                "opening_balance": 1000,
                "opening_amount": 500,
                "opening": 1500,
                "income": 0,
                "outcome": 0,
                "expected": 1500,
                "by_source": []
            },
            {
                "payment_type": "card",
                "payment_type_id": null,
                "payment_type_name": null,
                "currency": "uzs",
                "opening_balance": 3000,
                "opening_amount": 0,
                "opening": 3000,
                "income": 0,
                "outcome": 0,
                "expected": 3000,
                "by_source": []
            }
        ],
        "totals": [
            {
                "currency": "uzs",
                "opening": 4500,
                "income": 0,
                "outcome": 0,
                "expected": 4500,
                "cash": 1500,
                "non_cash": 3000
            },
            {
                "currency": "usd",
                "opening": 0,
                "income": 0,
                "outcome": 0,
                "expected": 0,
                "cash": 0,
                "non_cash": 0
            }
        ],
        "checks_count": 0,
        "returns_count": 0,
        "debts": [],
        "transactions": []
    },
    "closes_in": null,
    "company": {
        "id": 1,
        "parent_id": null,
        "partner_id": 1,
        "district_id": 1,
        "industry_id": 1,
        "name": "Company 1",
        "company_name": "Company 1",
        "logo": {
            "original": {
                "raw": "https://api.wasyt.uz/test_data/images/1.png",
                "webp": "https://api.wasyt.uz/storage/thumbs/original/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.webp"
            },
            "widen_25": {
                "raw": "https://api.wasyt.uz/storage/thumbs/widen/25/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.png",
                "webp": "https://api.wasyt.uz/storage/thumbs/widen/25/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.webp"
            },
            "widen_100": {
                "raw": "https://api.wasyt.uz/storage/thumbs/widen/100/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.png",
                "webp": "https://api.wasyt.uz/storage/thumbs/widen/100/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.webp"
            },
            "widen_500": {
                "raw": "https://api.wasyt.uz/storage/thumbs/widen/500/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.png",
                "webp": "https://api.wasyt.uz/storage/thumbs/widen/500/6a21a10b2d2ed8f4573f3842b10dc1df1778568717.webp"
            }
        },
        "inn": "000000001",
        "mfo": "00001",
        "address": "Address 1",
        "latitude": null,
        "longitude": null,
        "comment": "Comment 1",
        "telegram_phone": "998000000001",
        "director_full_name": "Director 1",
        "bank": "Bank 1",
        "payment_account": "00000000000000000001",
        "agreement_number": "001/2026",
        "agreement_date": null,
        "atmos_terminal_id": 97007302,
        "uniaccess_auto_payment_credit_overdue_days": 3,
        "uniaccess_branch_id": 1,
        "field_of_activity": "trading",
        "vat_percent": "12.00",
        "is_using_new_my_uzcard_auto_payment_by_pinfl": true,
        "bonus_entry_period": 12,
        "abc_segment_a": 75,
        "abc_segment_b": 15,
        "abc_segment_c": 10,
        "is_pos_window_enabled": true,
        "cashbox_shift_settings": {
            "is_enabled": true
        },
        "has_bank_payment_type": false,
        "is_ican_turned_on": true,
        "is_partner_turned_on": false,
        "created_at": "2026-09-30 12:47:58",
        "updated_at": "2026-09-30 12:49:04",
        "is_deleted": false,
        "parent": null
    },
    "creator": {
        "id": 2,
        "type": "director",
        "role_id": 2,
        "company_id": 1,
        "partner_id": null,
        "username": "director_1@local.host",
        "pinfl": null,
        "phone": "998020000001",
        "sipuni_sip_number": "210",
        "is_confirmed": true,
        "are_all_companies_available": false,
        "last_login_at": null,
        "created_at": "2026-09-30 12:47:59",
        "updated_at": "2026-09-30 12:47:59",
        "is_deleted": false,
        "profile": {
            "first_name": null,
            "last_name": null,
            "position": null,
            "birth_date": null,
            "gender": null,
            "full_name": " "
        }
    },
    "closed_by": null,
    "cashbox": {
        "id": 2,
        "creator_id": 2,
        "company_id": 1,
        "name": "Cashbox 2",
        "type": "sale",
        "created_at": "2026-09-30 12:47:58",
        "updated_at": "2026-09-30 12:47:58",
        "is_deleted": false
    },
    "stock": {
        "id": 1,
        "creator_id": 2,
        "company_id": 1,
        "name": "Stock 1",
        "is_available": true,
        "created_at": "2026-09-30 12:47:59",
        "updated_at": "2026-09-30 12:47:59",
        "is_deleted": false
    }
}

Xato misoli · 422 ​

json
{
    "message": "Выбранная запись не существует или была удалена (and 1 more error)",
    "errors": {
        "cashbox_id": [
            "Выбранная запись не существует или была удалена"
        ],
        "stock_id": [
            "Выбранная запись не существует или была удалена"
        ]
    }
}