IOSOR База знаний

Correlation ID между debit и DLR

Свяжите prepaid debit и событие доставки одним стабильным correlation ID — finance и product смотрят один intent без археологии в чатах.

Когда деньги и доставка живут в разных инструментах, закрытие месяца превращается в археологию чатов. Correlation ID — стабильный ключ стыка: prepaid debit и DLR (или signed status) для одного intent. Без него finance видит spend, product — status, и никто не докажет, что это один send.

Эта страница — контракт join, не playbook Verify-session export и не полный primer debit-vs-status. Связанные: debit и delivery status в одном ledger, корреляция сессии Verify для finance export, Общий язык статусов для product и finance, Отсутствие сигнала — это не Delivered, Ops signal board, когда volume уже live.

IOSOR — white-label prepaid. USD 20 оплачивает пилот стыка; soft review около USD 1 000/мес делает дыры join долгом recon. Клиент видит только white-label outcomes.

Correlation — это не тред в чате

Ссылки Slack и заголовки тикетов — не ключи стыка. ID создаётся при hold/intent, пишется в debit и повторяется на каждом terminal DLR/status. Retry под тем же idempotency key несут тот же ID. Если support каждый час вставляет новую строку — это folklore, не correlation.

Один id на debit и на DLR

Поверхность Должна нести Провал без поля
Prepaid debit / hold Correlation + intent id Spend без стыка
DLR / signed status Тот же correlation id Сирота доставки
Ops export Оба + terminal word Recon по памяти

Product и finance открывают один id за одно UTC-окно. Delivered DLR без debit — или settled debit без terminal status — инцидент, не мягкий жёлтый. См. Отсутствие сигнала — это не Delivered.

Join для finance без археологии

Month-end фильтрует одну колонку, а не собирает скриншоты. Export: correlation id, сумма debit (USD), hold→settle, terminal status, timestamps. Soft USD 1 000/мес открывает unmatched joins как recon; USD 20 доказывает стык на узком коридоре. Сосед Verify: корреляция сессии Verify для finance export — другая форма debit, та же дисциплина join.

Дыра join — это инцидент

Не мапьте orphan DLR в «delivered spend» и не settle debit без id как «наверное ок». Откройте recon, держите status честным (missing/unknown до стыка или named closure) и блокируйте язык Live volume, пока join health red на Ops signal board, когда volume уже live. Словарь: Общий язык статусов для product и finance.

Чеклист покупателя по correlation ID

  1. Correlation id появляется при hold/intent — не в чате?
  2. Debit и DLR/status несут один id на retry?
  3. Finance фильтрует month-end по этому id без археологии?
  4. Unmatched join открывает recon — без auto-success?
  5. Ops board показывает join health отдельной строкой?
  6. Override именован, ограничен по времени, закрыт joined export?

Любое «нет» оставляет контракт join в draft.

Начните с IOSOR

Создайте correlation ID в момент hold, запишите его на строку предоплаченного списания и потребуйте ту же строку на конечном DLR. Выгрузите один соединённый ряд: id hold, сумма списания, статус DLR, метки. Любое списание без парного DLR — или DLR без списания — остаётся инцидентом. Это склейка денег и квитанции, не трасса запроса.

Итог IOSOR

Списание и DLR делят один ID, иначе финансы не аудитят отправку.

Делайте: рождайте ID на hold и отвергайте непарные склейки как инциденты.

Не делайте: выдумывать новую строку в момент webhook или собирать закрытие месяца из чатов.

Был ли материал полезен?

Связанные гайды