About BankLint
BankLint checks ISO 20022 pain.001 payment files before they reach the bank. It answers two questions: will the bank accept this file, and did a change in SAP, a treasury system or a payment configuration alter anything compared with a file the bank already accepted?
BankLint is built and run by Tan Gravam. It is in beta and free to use. Questions and feedback: tan.gravam@gravam.com.
Why it exists
Payment files are generated by ERP and treasury systems from configuration: payment methods, house banks, format mappings and character conversion. A small change there can produce a file the bank rejects, or one it accepts but processes differently. The problem usually shows up only after the file has been sent.
BankLint moves that check before the upload: validate the file against the schema and the SEPA rules, and compare its configuration with the last file the bank accepted.
How results are decided
- Deterministic rules decide. PASS, REVIEW and FAIL come from 54 published rules: XML, the official ISO 20022 schema and the EPC SEPA Credit Transfer guidelines. Every rule has its own page in the rule reference.
- Rules come from primary sources. Each rule cites the document, version and section it comes from. Rule packs are versioned with effective dates, so an old result keeps the rules it was checked against. See Standards and sources.
- AI explains, it never decides. Where Ask BankLint is enabled, it explains results in plain language. It cannot change a verdict and never sees the payment file.
- Files are not stored. A file is processed in memory. Signed-in runs keep only a sanitized result without the file's names, accounts or amounts. Details on Security and Privacy.
What BankLint is not
- Not a bank or payment service: it never sends, holds or moves money.
- Not a treasury management system: no FX, investments, loans or accounting.
- Not your bank's file specification: banks may publish their own variants of the SEPA guidelines, and those take precedence.