> For the complete documentation index, see [llms.txt](https://docs.esimpay.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.esimpay.net/api/istoriya-tranzakcii.md).

# История транзакций

Постраничная история с фильтром по типу и датам.

Единая история заказов и операций по балансу.

## История транзакций мерчанта

> \
> Возвращает единую историю транзакций, отсортированную по \`date\` по убыванию.  \
> Используйте \*\*\`transactionType\`\*\* для различения объектов в списке результатов.\
> \
> \| \`transactionType\` | Описание |\
> \|-------------------|-------------|\
> \| \`orders\` | Заказы на покупку eSIM |\
> \| \`balance\` | Операции по балансу: \`write\_off\`, \`enrollment\`, \`refund\` |\
> \
> \---\
> \
> \*\*Фильтр по \`type\`\*\* (одно значение):\
> \- \`orders\` — только заказы eSIM  \
> \- \`balance\` — только движения по балансу  \
> \- \*(не указывайте — вернутся оба типа)\*\
> \
> \*\*Фильтр по дате\*\* — формат \`dateFrom\` / \`dateTo\`: \`YYYY-MM-DD\`\
> \
> \---\
> \
> \*\*Примеры:\*\*\
> \`\`\`\
> GET /api/v1/customer/history?dateFrom=2025-02-01\&dateTo=2025-02-28\
> \`\`\`<br>

````json
{"openapi":"3.1.1","info":{"title":"API","version":"v1"},"tags":[{"name":"History","description":"Единая история заказов и операций по балансу."}],"servers":[{"url":"https://api.esimpay.net/api/v1"}],"paths":{"/customer/history":{"get":{"operationId":"get_all_transactions_history","summary":"История транзакций мерчанта","description":"\nВозвращает единую историю транзакций, отсортированную по `date` по убыванию.  \nИспользуйте **`transactionType`** для различения объектов в списке результатов.\n\n| `transactionType` | Описание |\n|-------------------|-------------|\n| `orders` | Заказы на покупку eSIM |\n| `balance` | Операции по балансу: `write_off`, `enrollment`, `refund` |\n\n---\n\n**Фильтр по `type`** (одно значение):\n- `orders` — только заказы eSIM  \n- `balance` — только движения по балансу  \n- *(не указывайте — вернутся оба типа)*\n\n**Фильтр по дате** — формат `dateFrom` / `dateTo`: `YYYY-MM-DD`\n\n---\n\n**Примеры:**\n```\nGET /api/v1/customer/history?dateFrom=2025-02-01&dateTo=2025-02-28\n```\n","parameters":[{"schema":{"type":"string","enum":["orders","balance"]},"name":"type","in":"query","description":"Фильтр по типу транзакции (по умолчанию: оба)","required":false},{"schema":{"type":"string","format":"date"},"name":"dateFrom","in":"query","description":"Дата начала (YYYY-MM-DD)","required":false},{"schema":{"type":"string","format":"date"},"name":"dateTo","in":"query","description":"Дата окончания (YYYY-MM-DD)","required":false},{"schema":{"type":"integer","default":1,"minimum":1},"name":"page","in":"query","description":"Номер страницы"},{"schema":{"type":"integer","default":5,"maximum":10,"minimum":1},"name":"pageSize","in":"query","description":"Записей на странице"}],"responses":{"200":{"description":"Постраничная история транзакций","content":{"application/json":{"schema":{"type":"object","properties":{"count":{"type":"integer"},"totalPages":{"type":"integer"},"currentPage":{"type":"integer"},"itemsOnPage":{"type":"integer"},"next":{"type":["string","null"],"format":"uri"},"previous":{"type":["string","null"],"format":"uri"},"results":{"description":"Смешанный список, отсортированный по `date` по убыванию. Различайте по `transactionType`: `orders` или `balance`.","type":"array","items":{"type":"object","oneOf":[{"title":"UnifiedTransactionOrders","type":"object","properties":{"transactionType":{"type":"string","enum":["orders"]},"uidCustomer":{"type":"string"},"orderId":{"type":["string","null"]},"status":{"type":["string","null"]},"date":{"type":"string"},"esimProfile":{"type":["object","null"],"properties":{"iccid":{"type":["string","null"]},"imsi":{"type":["string","null"]},"activationCode":{"type":["string","null"]},"appleUniversalLink":{"type":["string","null"]},"androidUniversalLink":{"type":["string","null"]},"installationUrl":{"type":["string","null"]},"state":{"type":["string","null"]},"active":{"type":["boolean","null"]},"activatedAt":{"type":["string","null"]}}},"customer":{"type":["object","null"],"properties":{"uidCustomer":{"type":["string","null"]},"profileUrl":{"type":["string","null"]}}},"activatedItems":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer"},"name":{"type":["string","null"]},"activationMode":{"type":["string","null"]},"activatedAt":{"type":["string","null"]},"expiresAt":{"type":["string","null"]},"countrySet":{"type":["string","null"]},"availableBalance":{"type":"object","properties":{"sizeUnit":{"type":["string","null"]},"sizeValue":{"type":["integer","null"]}}},"size":{"type":"object","properties":{"sizeUnit":{"type":["string","null"]},"sizeValue":{"type":["integer","null"]}}},"validity":{"type":"object","properties":{"size":{"type":["integer","null"]},"unit":{"type":["string","null"]}}},"salePrice":{"type":["number","null"]},"reward":{"description":"Вознаграждение мерчанта в USD","type":["number","null"]},"rewardPercent":{"description":"Процент наценки вознаграждения","type":["number","null"]},"salesDate":{"type":["string","null"]},"orderId":{"type":["string","null"]}}}}}},{"title":"UnifiedTransactionBalanceHistory","type":"object","properties":{"transactionType":{"description":"Дискриминатор: всегда `balance` для этого объекта","type":"string","enum":["balance"]},"referenceId":{"description":"Ссылка на исходную операцию (`uuid_order`)","type":["string","null"]},"amount":{"description":"Отрицательное = списание, положительное = пополнение","type":["number","null"]},"balanceBefore":{"description":"Баланс до транзакции","type":["number","null"]},"balanceAfter":{"description":"Баланс после транзакции","type":["number","null"]},"type":{"description":"Тип транзакции","type":["string","null"],"enum":["write_off","enrollment","refund","reward","overdraft"]},"date":{"description":"Дата и время транзакции (ISO 8601)","type":"string"}}}]}}}}}}},"400":{"description":"Некорректные параметры","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Ошибка аутентификации","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["History"]}}}}
````
