Курсы валют
Курсы валют компании и её филиалов, по которым пересчитываются цены, продажи и конвертации, а также валюта продажи компании. Курс UZS всегда равен 1 и не меняется.
| Метод | Адрес | Назначение |
|---|---|---|
| GET | /company/cashbox/currency-rate/show-main | Курсы головной компании |
| PATCH | /company/cashbox/currency-rate/sync-with-main | Синхронизировать с головной |
| GET | /company/cashbox/currency-rate/settings | Настройки валют |
| PATCH | /company/cashbox/currency-rate/settings | Изменить валюту продажи |
| GET | /company/cashbox/currency-rate | Список курсов |
| GET | /company/cashbox/currency-rate/{model} | Курс валюты |
| PUT | /company/cashbox/currency-rate/{model} | Изменить курс |
Курсы головной компании
/company/cashbox/currency-rate/show-mainКурсы валют головной компании (без parent_id) — образец, с которым филиалы сверяют свои курсы.
Заголовки
| Заголовок | Значение | Описание |
|---|---|---|
Authorization | Bearer {token} | Токен из POST /common/auth/login |
Accept | application/json | Ответ в JSON |
Accept-Language | ru | Язык сообщений и названий: ru, uz, oz |
Ответ · 200
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
[].id | integer | ID |
[].company_id | integer | Компания |
[].currency | string | Валюта |
[].rate | integer | |
[].is_sale | boolean | |
[].created_at | string | Создано |
[].updated_at | string | Обновлено |
[
{
"id": 1,
"company_id": 1,
"currency": "uzs",
"rate": 1,
"is_sale": true,
"created_at": "2026-09-30 12:47:58",
"updated_at": "2026-09-30 12:47:58"
},
{
"id": 2,
"company_id": 1,
"currency": "usd",
"rate": 1000,
"is_sale": false,
"created_at": "2026-09-30 12:47:58",
"updated_at": "2026-09-30 12:47:58"
}
]Синхронизировать с головной
/company/cashbox/currency-rate/sync-with-mainКопирует курсы головной компании на все доступные пользователю компании. Меняется только курс (rate); выбранная филиалом валюта продажи не затрагивается. Каждое изменение курса пишется в историю.
Из формы (
multipart/form-data) методPATCHотправляется какPOSTс параметром?_method=PATCH.
Заголовки
| Заголовок | Значение | Описание |
|---|---|---|
Authorization | Bearer {token} | Токен из POST /common/auth/login |
Accept | application/json | Ответ в JSON |
Accept-Language | ru | Язык сообщений и названий: ru, uz, oz |
Ответ · 200
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
message | string | Сообщение |
{
"message": "Success"
}Настройки валют
/company/cashbox/currency-rate/settingsДанные страницы «Настройки валют» текущей компании: курсы (rows), валюта продажи (sale_currency) и время последнего изменения курсов (last_updated_at). Доступно и с правом на эту страницу, и с правом создавать продажи (касса применяет валюту продажи); иначе 403.
Заголовки
| Заголовок | Значение | Описание |
|---|---|---|
Authorization | Bearer {token} | Токен из POST /common/auth/login |
Accept | application/json | Ответ в JSON |
Accept-Language | ru | Язык сообщений и названий: ru, uz, oz |
Ответ · 200
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
rows | object[] | |
rows[].id | integer | ID |
rows[].company_id | integer | Компания |
rows[].currency | string | Валюта |
rows[].rate | integer | |
rows[].is_sale | boolean | |
rows[].created_at | string | Создано |
rows[].updated_at | string | Обновлено |
sale_currency | string | Валюта при продаже |
last_updated_at | null |
{
"rows": [
{
"id": 1,
"company_id": 1,
"currency": "uzs",
"rate": 1,
"is_sale": true,
"created_at": "2026-09-30 12:47:58",
"updated_at": "2026-09-30 12:47:58"
},
{
"id": 2,
"company_id": 1,
"currency": "usd",
"rate": 1000,
"is_sale": false,
"created_at": "2026-09-30 12:47:58",
"updated_at": "2026-09-30 12:47:58"
}
],
"sale_currency": "uzs",
"last_updated_at": null
}Изменить валюту продажи
/company/cashbox/currency-rate/settingsЗадаёт валюту продажи компании. Допустима только валюта, для которой у компании есть курс; по ней проверяются все продажи и корзины кассы.
Из формы (
multipart/form-data) методPATCHотправляется какPOSTс параметром?_method=PATCH.
Заголовки
| Заголовок | Значение | Описание |
|---|---|---|
Authorization | Bearer {token} | Токен из POST /common/auth/login |
Accept | application/json | Ответ в JSON |
Accept-Language | ru | Язык сообщений и названий: ru, uz, oz |
Тело запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
sale_currency | string | Да | Валюта продажи. Допустимые значения: uzs, usd, eur, rub |
{
"sale_currency": "usd"
}curl -X PATCH "https://api.wasyt.uz/company/cashbox/currency-rate/settings" \
-H "Accept: application/json" \
-H "Accept-Language: ru" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{"sale_currency":"usd"}'Ответ · 200
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
message | string | Сообщение |
{
"message": "Success"
}Пример ошибки · 422
{
"message": "Допустимые значения для Валюта при продаже: uzs, usd, eur, rub.",
"errors": {
"sale_currency": [
"Допустимые значения для Валюта при продаже: uzs, usd, eur, rub."
]
}
}Список курсов
/company/cashbox/currency-rateКурсы валют доступных компаний, по умолчанию отсортированные по company_id по убыванию.
Заголовки
| Заголовок | Значение | Описание |
|---|---|---|
Authorization | Bearer {token} | Токен из POST /common/auth/login |
Accept | application/json | Ответ в JSON |
Accept-Language | ru | Язык сообщений и названий: ru, uz, oz |
Параметры запроса
| Параметр | Описание |
|---|---|
filter[company_id] | Компания — точное значение |
sort[] | Сортировка, - — по убыванию: company_id, -company_id |
with[] | Подгрузить связи: company |
page | Номер страницы, с 1 |
page-size | Записей на странице, не больше 20 |
GET /company/cashbox/currency-rate?filter[company_id]=1Ответ · 200
Постраничный ответ: записи в data[], пагинация в links и meta.
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
data | object[] | Данные |
data[].id | integer | ID |
data[].company_id | integer | Компания |
data[].currency | string | Валюта |
data[].rate | integer | |
data[].is_sale | boolean | |
data[].created_at | string | Создано |
data[].updated_at | string | Обновлено |
{
"data": [
{
"id": 1,
"company_id": 1,
"currency": "uzs",
"rate": 1,
"is_sale": true,
"created_at": "2026-09-30 12:47:58",
"updated_at": "2026-09-30 12:47:58"
},
{
"id": 2,
"company_id": 1,
"currency": "usd",
"rate": 1000,
"is_sale": false,
"created_at": "2026-09-30 12:47:58",
"updated_at": "2026-09-30 12:47:58"
}
],
"links": {
"first": "https://api.wasyt.uz/company/cashbox/currency-rate?page=1",
"last": "https://api.wasyt.uz/company/cashbox/currency-rate?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [],
"path": "https://api.wasyt.uz/company/cashbox/currency-rate",
"per_page": 20,
"to": 4,
"total": 4
}
}Курс валюты
/company/cashbox/currency-rate/{model}Одна запись курса (валюта компании) по id.
Заголовки
| Заголовок | Значение | Описание |
|---|---|---|
Authorization | Bearer {token} | Токен из POST /common/auth/login |
Accept | application/json | Ответ в JSON |
Accept-Language | ru | Язык сообщений и названий: ru, uz, oz |
Параметры пути
| Параметр | Описание |
|---|---|
model | ID записи |
Ответ · 200
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
rows | object[] | |
rows[].id | integer | ID |
rows[].company_id | integer | Компания |
rows[].currency | string | Валюта |
rows[].rate | integer | |
rows[].is_sale | boolean | |
rows[].created_at | string | Создано |
rows[].updated_at | string | Обновлено |
sale_currency | string | Валюта при продаже |
last_updated_at | null |
{
"rows": [
{
"id": 1,
"company_id": 1,
"currency": "uzs",
"rate": 1,
"is_sale": true,
"created_at": "2026-09-30 12:47:58",
"updated_at": "2026-09-30 12:47:58"
},
{
"id": 2,
"company_id": 1,
"currency": "usd",
"rate": 1000,
"is_sale": false,
"created_at": "2026-09-30 12:47:58",
"updated_at": "2026-09-30 12:47:58"
}
],
"sale_currency": "uzs",
"last_updated_at": null
}Изменить курс
/company/cashbox/currency-rate/{model}Задаёт новый курс валюты; прежнее значение сохраняется в истории курсов. Курс UZS изменить нельзя — ошибка валидации.
Из формы (
multipart/form-data) методPUTотправляется какPOSTс параметром?_method=PUT.
Заголовки
| Заголовок | Значение | Описание |
|---|---|---|
Authorization | Bearer {token} | Токен из POST /common/auth/login |
Accept | application/json | Ответ в JSON |
Accept-Language | ru | Язык сообщений и названий: ru, uz, oz |
Параметры пути
| Параметр | Описание |
|---|---|
model | ID записи |
Тело запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
rate | number | Да | До 2 знаков после запятой. Не меньше 0. Не больше 999999999999.99 |
Ответ · 200
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
message | string | Сообщение |
{
"message": "Success"
}Пример ошибки · 422
{
"message": "Допустимые значения для Валюта при продаже: uzs, usd, eur, rub.",
"errors": {
"sale_currency": [
"Допустимые значения для Валюта при продаже: uzs, usd, eur, rub."
]
}
}
