Sub Merchants
1. Sub Merchant Create API
Description:
Sub-merchant yaratish uchun API.
Agar merchant child merchant yaratmoqchi bo‘lsa, ushbu API ishlatiladi.
💡 Note: yaratilgan sub-merchant staff a’zolari tomonidan aktivlashtiriladi.
💡 Note: merchantda sub-merchant yaratish ruxsati bo‘lishi kerak. Aks holda
permission_deniedxatosi qaytadi.
Endpoint details
Method:
POST
URL: BASE_URL/merchant/subMerchant/merchant-create/
Header:
Authorization: Bearer <ACCESS_TOKEN>Request body
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Sub-merchant nomi. 1–128 belgi |
tin | string | Shartli | Tashkilot STIR (INN) raqami. Aniq 9 ta raqam |
pinfl | string | Shartli | Jismoniy shaxsning PINFL (JSHSHIR) raqami. Aniq 14 ta raqam |
external_id | string | No | Sizning tizimingizdagi sub-merchant ID'si. 1–64 belgi |
create_new_organization | bool | No | Default false. true bo‘lsa, organization ma’lumotlari asosida sub-merchant uchun yangi tashkilot yaratiladi. false bo‘lsa, parent merchant tashkiloti ishlatiladi |
organization | object | Shartli | Tashkilot ma’lumotlari. create_new_organization true bo‘lsa majburiy |
self_employee_service | bool | No | Default false. O‘zini o‘zi band qilgan shaxs xizmati (OFD) |
ofd_vat_percent | int | No | OFD uchun QQS foizi. 0 dan 100 gacha |
SPIC | string | No | IKPU (SPIC) kodi. 64 belgigacha. Maydon nomi katta harflarda yoziladi |
spic_package_code | string | No | IKPU qadoq (package) kodi. 20 belgigacha |
💡 Note:
tinyokipinfldan kamida bittasi yuborilishi kerak. Ikkalasini birga yuborish ham mumkin.
💡 Note:
create_new_organizationtruebo‘lsa,tinvaorganizationmajburiy.
organization obyekti
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Tashkilot nomi. 256 belgigacha |
director_pinfl | string | Yes | Direktor PINFL raqami. Aniq 14 ta raqam |
account_number | string | Yes | Hisob raqami. Faqat raqamlar, 32 belgigacha |
oked | string | Yes | OKED kodi. Aniq 5 ta raqam |
legal_name | string | No | Yuridik nomi. 256 belgigacha |
director_fio | string | No | Direktor F.I.Sh. 256 belgigacha |
director_passport | string | No | Direktor pasport seriyasi va raqami. 9 belgigacha |
director_passport_valid_to | date | No | Pasport amal qilish muddati. YYYY-MM-DD |
director_birth_date | date | No | Direktor tug‘ilgan sanasi. YYYY-MM-DD |
director_nationality | string | No | Direktor fuqaroligi. 2 belgigacha |
dr_nationality_for_uzcard | string | No | Uzcard uchun direktor fuqarolik kodi. 3 belgigacha |
dr_nationality_for_humo | string | No | Humo uchun direktor fuqarolik kodi. 3 belgigacha |
mfo | string | No | Bank MFO kodi. 10 belgigacha |
Request example
Parent merchant tashkiloti bilan:
{
"name": "MrBeast",
"tin": "123654987",
"pinfl": "12345678901234",
"external_id": "Someone External Id",
"self_employee_service": false,
"ofd_vat_percent": 12,
"SPIC": "10305008003000000",
"spic_package_code": "1500988"
}Yangi tashkilot yaratish bilan:
{
"name": "MrBeast",
"tin": "123654987",
"external_id": "Someone External Id",
"create_new_organization": true,
"organization": {
"name": "MrBeast LLC",
"legal_name": "\"MRBEAST\" MChJ",
"director_fio": "Ivanov Ivan Ivanovich",
"director_passport": "AA1234567",
"director_pinfl": "12345678901234",
"director_passport_valid_to": "2030-01-01",
"director_birth_date": "1990-01-01",
"director_nationality": "UZ",
"account_number": "20208000900000000001",
"mfo": "00000",
"oked": "47190"
}
}Response example
HTTP status: 201
{
"result": {
"id": "c467b929-b850-40ae-9e38-fb2827684bda",
"name": "MrBeast"
}
}Error response
| Code | HTTP | Description |
|---|---|---|
validation_error | 400 | Request body noto‘g‘ri |
permission_denied | 400 | Merchantda sub-merchant yaratish ruxsati yo‘q |
sub_merchant_already_created | 400 | Shu merchant ostida name, tin, pinfl yoki external_id bir xil bo‘lgan sub-merchant allaqachon mavjud |
rate_limit_exceeded | 429 | 60 soniyada 100 tadan ko‘p so‘rov yuborilgan. Retry-After headerda ko‘rsatilgan soniyadan keyin qayta urinib ko‘ring |
💡 Note: dublikat faqat bitta parent merchantning sub-merchantlari orasida tekshiriladi.
name,tin,pinflyokiexternal_iddan birortasi mavjud sub-merchant bilan mos kelsa, yangisi yaratilmaydi.
{
"result": null,
"error": {
"code": "sub_merchant_already_created",
"message": "Sub Merchant Already Created..."
}
}Validation xatosi namunasi. tin / pinfl va create_new_organization qoidalari bo‘yicha xatolar data.non_field_errors da, organization maydonlari xatolari esa data.organization.<field> da qaytadi:
{
"result": null,
"error": {
"code": "validation_error",
"message": "validation_error",
"data": {
"non_field_errors": [
"At least one of TIN or PINFL must be provided"
]
}
}
}