Documentation
These guides cover the payment scenarios end to end. For per-type signatures, see the API reference on docs.rs.
Every code sample here is compiled and tested as part of the crate’s own suite, so nothing on this site drifts away from the released version.
- Getting startedInstall the sepa crate, validate an IBAN, and build your first SEPA credit transfer and direct debit file in Rust. Feature flags and message shape.
- IBAN, BIC & identifiersValidate IBANs, BICs, SEPA Creditor Identifiers and ISO 11649 RF references in Rust — structure and check digits, not just mod-97.
- Credit transfersBuild credit transfer files (pain.001) in Rust: SCT, SCT Instant, OCT Inst one-leg-out, scheduled instant, structured references and purpose codes.
- Direct debitsBuild SEPA Direct Debit files (pain.008) in Rust: CORE and B2B, FRST and RCUR in one file, mandate references, amendments and the SMNDA marker.
- ReversalsSend a settled SEPA direct debit back with pain.007 in Rust: reversal versus refund versus reject, partial reversals and the mandatory OrgnlTxRef.
- Recalls & cancellationsStop a SEPA payment before it settles with camt.055 in Rust, and read the bank's camt.029 answer: the three cancellation scopes, why a reason is mandatory, and why PDCR is not an outcome.
- Status reports & Verification of PayeeParse pain.002 status reports in Rust: Verification of Payee outcomes, and why a rejection explains itself at only one of three levels.
- Bank statementsParse camt.052, camt.053 and camt.054 statements in Rust: batch bookings, matching a collection run back to your file, returns and return fees.
- Postal addressesThe library's structured and hybrid postal-address scope and applicable EPC guidance.
- Validation & character setThe EPC rules that decide whether a bank accepts a SEPA file — amount ranges, name lengths, identifiers — and the EPC217-08 conversion table.
- Schema versionsSupported ISO 20022 versions and per-message schema selection.
- Reader contractsStrict identity, finite intake limits and faithful monetary observations.