Skip to content

Оплаты по контракту ​

Оплаты и возвраты денег по кредитной продаже: каждая оплата ICAN становится транзакцией продажи и движением кассы. Здесь же — данные для окна «Возврат денежных средств».

МетодАдресНазначение
POST/external/credit/trade-sale-transaction/createПровести оплату по контракту
POST/external/credit/trade-sale-transaction/refund-informationДанные для возврата оплаты

Провести оплату по контракту ​

POST/external/credit/trade-sale-transaction/create

Записывает оплату (income) или возврат (outcome) по кредитной продаже sale_id и двигает кассу: без cashbox_id — касса продажи, автосписания auto_payment* — главная касса компании; system/discount засчитываются в оплату без движения кассы. credit_transaction_id принимается один раз на компанию (повтор — 422). Затем статус продажи пересчитывается: completed, если оплачено не меньше sold_amount, иначе in_progress (canceled сохраняется); id ответа — это payment_id для возврата.

Заголовки ​

ЗаголовокЗначениеОписание
External-System-Secret-Key{external_system_secret_key}Секретный ключ внешней системы
Company-Wasyt-Uuid{company_wasyt_uuid}Компания по её wasyt UUID (или Company-Ican-Uuid)
Acceptapplication/jsonОтвет в JSON
Accept-LanguageruЯзык сообщений и названий: ru, uz, oz

Тело запроса ​

ПолеТипОбязательноОписание
sale_idintegerДаID кредитной продажи (id из ответа trade-sale/create)
cashbox_idintegerНетКасса; пусто — касса продажи
typestringДаТип. Допустимые значения: income, outcome
payment_typestringДаТип оплаты wasyt или ICAN (terminal, mib, blacklist, auto_payment* → bank; card_* → card; discount → system); debt запрещён. Допустимые значения: bank, card, cash, bonus, system
amountnumberДаСумма. До 2 знаков после запятой. Не меньше 0.01. Не больше 999999999999.99
credit_transaction_idintegerДаID оплаты в кредитной системе, уникален в компании
credit_statusstringДаСтатус контракта; значение не из статусов продажи заменяется на in_progress
commentstringНетКомментарий. Макс. 1000 символов
json
{
    "sale_id": 1,
    "type": "income",
    "payment_type": "auto_payment_uniaccess",
    "amount": 1000,
    "credit_transaction_id": 1,
    "credit_status": "completed"
}
bash
curl -X POST "https://api.wasyt.uz/external/credit/trade-sale-transaction/create" \
  -H "Accept: application/json" \
  -H "Accept-Language: ru" \
  -H "External-System-Secret-Key: {external_system_secret_key}" \
  -H "Company-Ican-Uuid: ican-company-1" \
  -H "Content-Type: application/json" \
  -d '{"sale_id":1,"type":"income","payment_type":"auto_payment_uniaccess","amount":1000,"credit_transaction_id":1,"credit_status":"completed"}'

Ответ · 200 ​

Поля ответа
ПолеТипОписание
sale_idintegerПродажа
typestringТип
payment_typestringТип оплаты
amountintegerСумма
credit_transaction_idinteger
cashbox_idintegerКасса
created_atstringСоздано
company_idintegerКомпания
idintegerID
saleobject
sale.idintegerID
sale.creator_idintegerСоздатель
sale.company_idintegerКомпания
sale.cashbox_idintegerКасса
sale.stock_idintegerСклад
sale.client_idintegerКлиент
sale.exchange_of_sale_idnull
sale.currencystringВалюта
sale.purchased_amountinteger
sale.sold_amountintegerСумма в продаже
sale.returned_amountintegerВозвращённая сумма
sale.statusstringСтатус
sale.source_typestringИсточник
sale.source_dataarray
sale.codestringКод
sale.created_atstringСоздано
sale.updated_atstringОбновлено
json
{
    "sale_id": 1,
    "type": "income",
    "payment_type": "bank",
    "amount": 1000,
    "credit_transaction_id": 1,
    "cashbox_id": 16,
    "created_at": "2026-09-30 12:25:54",
    "company_id": 1,
    "id": 228,
    "sale": {
        "id": 1,
        "creator_id": 2,
        "company_id": 1,
        "cashbox_id": 1,
        "stock_id": 1,
        "client_id": 1,
        "exchange_of_sale_id": null,
        "currency": "uzs",
        "purchased_amount": 500,
        "sold_amount": 4900,
        "returned_amount": 0,
        "status": "completed",
        "source_type": "wasyt",
        "source_data": [],
        "code": "w-1-1",
        "created_at": "2020-01-01 10:00:00",
        "updated_at": "2026-09-30 12:25:54"
    }
}

Данные для возврата оплаты ​

POST/external/credit/trade-sale-transaction/refund-information

Данные окна «Возврат денежных средств» по оплате payment_id кредитной продажи или внешнего кредита (другая оплата — 422): касса, на которую пришли деньги, currency, paid_amount (сумма именно этой оплаты) и balances[] — ненулевые остатки этой кассы по cash, card, bank в валюте оплаты. Ничего не меняет: сам возврат проводит кредитная система.

Заголовки ​

ЗаголовокЗначениеОписание
External-System-Secret-Key{external_system_secret_key}Секретный ключ внешней системы
Company-Wasyt-Uuid{company_wasyt_uuid}Компания по её wasyt UUID (или Company-Ican-Uuid)
Acceptapplication/jsonОтвет в JSON
Accept-LanguageruЯзык сообщений и названий: ru, uz, oz

Тело запроса ​

ПолеТипОбязательноОписание
payment_idintegerДаID приходной оплаты wasyt (id из ответа trade-sale-transaction/create или external-credit-payment/create). ID существующей записи
json
{
    "payment_id": 1
}
bash
curl -X POST "https://api.wasyt.uz/external/credit/trade-sale-transaction/refund-information" \
  -H "Accept: application/json" \
  -H "Accept-Language: ru" \
  -H "External-System-Secret-Key: {external_system_secret_key}" \
  -H "Company-Ican-Uuid: ican-company-1" \
  -H "Content-Type: application/json" \
  -d '{"payment_id":1}'

Ответ · 200 ​

Поля ответа
ПолеТипОписание
cashboxobject
cashbox.idintegerID
cashbox.namestringНазвание
cashbox.typestringТип
currencystringВалюта
paid_amountinteger
balancesobject[]
balances[].idintegerID
balances[].payment_typestringТип оплаты
balances[].labelstring
balances[].currencystringВалюта
balances[].amountintegerСумма
json
{
    "cashbox": {
        "id": 1,
        "name": "Cashbox 1",
        "type": "sale"
    },
    "currency": "uzs",
    "paid_amount": 4000,
    "balances": [
        {
            "id": 1,
            "payment_type": "cash",
            "label": "Наличные",
            "currency": "uzs",
            "amount": 1000
        },
        {
            "id": 24,
            "payment_type": "card",
            "label": "Безналичные",
            "currency": "uzs",
            "amount": 3000
        }
    ]
}