Расщепление при возврате начисления за услугу
Возвратом за услугу будем называть отрицательную сумму к оплате, как в примере ниже:

Такая ситуация может возникнуть, если, например, делается возврат услуги, от которой собственник отказался несколько месяцев назад, либо производится возврат норматива коммунального ресурса при сданном маленьком расходе.
I. В простом случае, когда возврат делается за неоплаченные периоды, закрытие задолженности выполняется по общей логике расщепления *: от самого старого долга к самому новому (пункты 1, 2, 3). Аванс по статье перетекает в следующий период и будет закрыт при следующем начислении (пункт 4).

Напомним, что расщепление возвратов и оплат не перетекает между статьями, т. е. аванс по Холодному водоснабжению не может быть распределен для погашения долгов по другим статьям.
Исключением из этой логики является только статья с признаком платежа «Ручная корректировка/Начальное сальдо».
При оплате или возврате по Начальному сальдо будет распределена для погашения долгов по другим статьям.
II. В более сложном случае период, за который делается возврат, частично оплачен.

Алгоритм расщепления отработает в следующем порядке *:
- Будут погашены остатки задолженности по статье, начиная с самой старой (пункты 1, 2, 3). Задолженность за 09.2021 и 10.2021 будет определена как разница между начислено и оплачено.
- Сумма возврата не будет полностью распределена. Поэтому алгоритм найдет и сторнирует сделанные ранее платежи за данную услугу (пункты 4 и 7), пропорционально распределив эти оплаты на погашение долгов по другим услугам соответствующих начислений (пункты 5, 6, 8 и 9). В отличие от задолженности, платежи сторнируются, начиная с ближайшего по дате.
- После сторно платежей за 09.2021 и 10.2021 снова возникнет остаточная задолженность и алгоритм погашения задолженности, начиная с самой старой, отработает повторно (пункты 10, 11, 12).
- Поскольку сумма возврата после всех вышеописанных действий все равно не будет полностью распределена, ее остаток уйдет в аванс и будет расщеплен при последующих начислениях (пункт 13).
III. В третьем случае возврат делается за период, по которому долгов нет и всё оплачено.

Алгоритм расщепления отработает в следующем порядке *:
- Поскольку задолженности нет, алгоритм найдет и сторнирует сделанные ранее платежи за возвращаемую услугу (пункты 1 и 4), пропорционально распределив эти оплаты на погашение услуг текущих начислений, которые присутствовали в документах вместе с возвращаемой и оплаченной услугой (пункты 2, 3, 5 и 6). В отличие от задолженности, платежи сторнируются, начиная с ближайшего по дате.
- После сторно платежей за 09.2021 и 10.2021 возникнет задолженность и отработает алгоритм ее погашения, начиная с самой старой (пункты 7, 8).
- Поскольку сумма возврата после всех вышеописанных действий все равно не будет полностью распределена, ее остаток уйдет в аванс и будет расщеплен при последующих начислениях (пункт 9).
* - На любом шаге алгоритм остановится при полном расщеплении возврата