﻿---
title: Работа с просроченной дебиторской задолженностью
description: "Дашборд на Laravel + Filament: ежедневный список взыскания, корзины просрочки, разнесение оплат, споры и нагрузка сотрудников."
---

## Что это за сервис

Рабочее место сотрудников, которые добиваются оплаты просроченных счетов от клиентов, и их руководителя. Сервис каждое утро формирует список, с кем связаться, показывает всю историю по клиенту и следит, чтобы долги не уходили в дальние корзины просрочки.

Без него сотрудник открывает три системы, чтобы составить список звонков на день. Счета незаметно переваливают за 60 дней, потому что динамику просрочки видят только в конце месяца. Поступившие оплаты днями не разнесены: данные о назначении платежа лежат в другой системе. Руководитель не знает, кто из сотрудников перегружен и какие клиенты вообще никто не ведёт, а спор по счёту тянется, потому что переписка, счета и кредит-ноты разбросаны.

Сервис нужен B2B-компаниям, которые выставляют счета с отсрочкой платежа и где просроченная задолженность заметно влияет на денежный поток. Для компаний с оплатой картой по подписке ближе другой сценарий — работа с неуспешными списаниями.

## Что он делает

- **Формирует список на день.** Просроченные счета из ERP и биллинга ранжируются по сумме и сроку просрочки, у каждой строки есть ответственный и следующий шаг.
- **Показывает корзины просрочки.** Суммы по интервалам 0–30, 31–60, 61–90 и свыше 90 дней видны сразу, вместе с тем, как они менялись.
- **Разносит поступления по счетам.** Платежи автоматически сопоставляются с открытыми счетами, а несопоставленные попадают в очередь ручной проверки.
- **Собирает историю клиента в одну ленту.** Счета, оплаты, заметки о звонках, обещания оплатить и статус спора видны в одной карточке.
- **Даёт руководителю картину нагрузки.** Видно, сколько открытых позиций у каждого сотрудника, сколько контактов сделано и какие клиенты остались без внимания.

## Нюансы и особенности

- **Список на день строит система.** Ручная расстановка приоритетов устаревает к обеду. Список пересобирается автоматически по сумме, сроку и дате последнего контакта.
- **Частичные оплаты и кредит-ноты — отдельные записи.** Они привязаны к счёту, остаток считается по ним. Счета с неприменёнными кредит-нотами выносятся в отдельный фильтр.
- **Спор — отдельный статус, а не заметка.** У спора есть причина, подтверждающие документы и срок решения. Пока спор открыт, клиенту не отправляют напоминания о долге по этому счёту.
- **Правила эскалации зависят от сегмента.** Крупные клиенты могут переходить к руководителю на 45-й день, небольшие — на 30-й. Сроки — пример, их хранят в настройках, а не в коде.
- **Свежесть данных об оплатах.** Если корзины считаются по вчерашней выгрузке, сотрудник звонит клиенту, который уже заплатил. Время последней синхронизации должно быть видно на экране.
- **Учётная система остаётся главной.** Сервис читает счета и оплаты из ERP через API или отдельное подключение на чтение, а изменения статуса и заметки хранит у себя или отправляет обратно через API. Если модуль дебиторской задолженности в ERP уже закрывает задачу, достаточно отчёта.
- **Доступ ограничивают на сервере.** Сотрудник видит своих клиентов, руководитель — весь портфель. Ограничение распространяется на виджеты и выгрузки.

## Как сгенерировать через ИИ-агентов

Промпты рассчитаны на AI-агента (Claude Code, Cursor и аналоги) в Laravel-проекте с установленным **Filament 4.x**. Отправляйте их по одному: каждый шаг даёт результат, который можно проверить до перехода к следующему.

### 1. Данные и модели

```text
Создай модели и миграции для работы с просроченной задолженностью:
Customer (сегмент, ответственный сотрудник), Invoice (номер, сумма,
срок оплаты, остаток, внешний id), Payment и CreditNote (сумма, дата,
ссылка на счёт или без неё), Dispute (счёт, причина, документы, срок
решения, статус), CollectionActivity (клиент, сотрудник, тип контакта,
результат, обещанная дата оплаты). Добавь фабрики с демо-данными.
```

### 2. Синхронизация и разнесение оплат

```text
Сделай фоновую задачу по расписанию, которая загружает счета и оплаты
из ERP через API, пересчитывает остаток счёта с учётом частичных оплат
и кредит-нот и сопоставляет платежи со счетами по номеру и сумме.
Несопоставленные платежи помещай в очередь ручной проверки. Сохраняй
время последней успешной синхронизации.
```

### 3. Список на день и корзины просрочки

```text
Сгенерируй Filament-ресурс для Invoice с вкладками по корзинам
просрочки и фильтром «Мой список на сегодня»: просроченные счета без
открытого спора, отсортированные по сумме и сроку. Добавь действие
«Записать контакт» с результатом и обещанной датой оплаты и действие
«Открыть спор» с обязательными причиной и сроком.
```

Проверьте, что счёт с открытым спором не попадает в список на день.

### 4. Карточка клиента

```text
Сделай ресурс Customer с лентой событий в карточке: счета, оплаты,
кредит-ноты, контакты и споры в хронологическом порядке через relation
managers. Вверху выведи общий долг, долг по корзинам и дату последнего
контакта.
```

### 5. Эскалация, доступ и нагрузка

```text
Добавь правила эскалации по сегменту клиента с числом дней в конфиге и
уведомление руководителю при переходе порога. Настрой доступ: сотрудник
видит только своих клиентов, руководитель — всех. Добавь виджеты
нагрузки по сотрудникам и суммы по корзинам, экспорт списка в CSV.
```

## Похожие сценарии

- [Реестр счетов и статусов оплаты](https://wpcraft.ru/kb/stacks/filament/use-cases/finance/invoice-manager.md) — жизненный цикл счёта до просрочки.
- [Неуспешные платежи и возврат выручки](https://wpcraft.ru/kb/stacks/filament/use-cases/finance/payment-failure-dashboard.md) — отказы автоматических списаний по подпискам.
- [Состояние клиентской базы и риск оттока](https://wpcraft.ru/kb/stacks/filament/use-cases/sales/account-health-dashboard.md) — просрочка как сигнал риска продления.

## Материалы и источники

- [Refine: Collections Dashboard](https://refine.dev/use-cases/finance/collections-dashboard/)
- [Filament 4.x: ресурсы](https://filamentphp.com/docs/4.x/resources/overview)
- [Filament 4.x: связи и relation managers](https://filamentphp.com/docs/4.x/resources/managing-relationships)
- [Filament 4.x: фильтры таблиц](https://filamentphp.com/docs/4.x/tables/filters/overview)
- [Filament 4.x: экспорт](https://filamentphp.com/docs/4.x/actions/export)