Architektura integracji
Model async: co jest synchroniczne, co jest eventual i jak planować integrację
Model odpowiedzialności
- Integrator:
- wysyła XML
- odbiera webhooki (albo polluje)
- utrzymuje stan biznesowy i deduplikację eventów
- KSeFCore:
- przyjmuje submission
- wykonuje przetworzenie asynchronicznie
- emituje webhooki o zmianach stanu
Co jest synchroniczne
POST /api/v1/submissions:
- walidacje requestu
- zapis zgłoszenia i zwrot
submission_id
Co jest eventual (asynchroniczne)
- przejścia statusów wysyłki
- finalizacja (accepted/rejected/failed)
- synchronizacja dokumentów przychodzących
SLA ≠ gwarancja natychmiastowa
KSeFCore wykonuje pracę asynchronicznie. Oznacza to, że:
- czas od
queued do finalnego statusu może być różny,
- webhooki są at-least-once (mogą się powtórzyć),
- nie ma globalnej gwarancji kolejności między różnymi zasobami.