Skip to content

Bank Adapter Contract ​

Each bank/format implements IBankAdapter:

  • BankCode, FormatCode
  • CanParse(fileName, headerBytes, textPreview)
  • ParseAsync(stream, importId) → NormalizedBankTransaction[]

Detection is handled by IBankStatementFormatDetector, which selects the first matching adapter.

Rules for new adapters ​

  1. Add adapter in MyHoreca.Pay.BankStatements
  2. Register in DI
  3. Add unit tests for parse + detection
  4. Document CSV/format spec in docs/bank-adapters/
  5. Never break the shared pipeline — only add adapter-specific parsing