ValidateFin

pain.008.001.08 — valid B2B direct debit, RCUR sequence

A valid SEPA B2B direct debit in pain.008.001.08: LclInstrm/Cd = B2B, sequence type RCUR, two recurring collections totalling 4 650.00 EUR. The B2B scheme is the business-to-business variant — the debtor must be a non-consumer and has NO right to a refund after settlement, which is why the debtor bank checks the mandate before debiting and why B2B collections are presented earlier than CORE ones.

pain.008.001.08 — Valid

A valid SEPA B2B direct debit in pain.008.001.08: LclInstrm/Cd = B2B, sequence type RCUR, two recurring collections totalling 4 650.00 EUR. The B2B scheme is the business-to-business variant — the debtor must be a non-consumer and has NO right to a refund after settlement, which is why the debtor bank checks the mandate before debiting and why B2B collections are presented earlier than CORE ones.

SEPA Direct Debit (pain.008) pain.008.001.08 ISO 20022 / SDD B2BExpected result: Valid

What this file shows

A valid SEPA B2B direct debit in pain.008.001.08: LclInstrm/Cd = B2B, sequence type RCUR, two recurring collections totalling 4 650.00 EUR. The B2B scheme is the business-to-business variant — the debtor must be a non-consumer and has NO right to a refund after settlement, which is why the debtor bank checks the mandate before debiting and why B2B collections are presented earlier than CORE ones.

Transactions2
Total€4,650.00
SchemeB2B
Date in the file2026-05-20
Last verified: License: CC-BY-4.0

Every party, IBAN and amount below is fictitious. The IBANs are structurally valid — they pass the mod-97 check — but they belong to no real account.

File content

<?xml version="1.0" encoding="UTF-8"?>
<!--
  ValidateFin sample file — SEPA Direct Debit, pain.008.001.08, B2B scheme.
  Expected validation result: VALID — 2 collections, 4 650.00 EUR, 0 warnings.

  The B2B scheme (LclInstrm/Cd = B2B) is the business-to-business variant of the SEPA
  Direct Debit: the debtor must be a non-consumer, and — unlike CORE — has NO right to
  a no-questions-asked refund after settlement. The debtor's bank checks the mandate
  before debiting, which is why B2B collections are presented far earlier than CORE.
  Sequence type is RCUR: a recurring collection under a mandate already in force.

  The Creditor Scheme Identifier (ICS) passes the ISO 7064 MOD 97-10 check and every
  IBAN passes mod-97. All parties are fictitious.
  Reference page: https://validatefin.com/en/resources/samples/sepa-pain008-b2b-rcur
  License: CC-BY-4.0
-->
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.008.001.08"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <CstmrDrctDbtInitn>
    <GrpHdr>
      <MsgId>SDD-B2B-20260515-001</MsgId>
      <CreDtTm>2026-05-15T07:30:00</CreDtTm>
      <NbOfTxs>2</NbOfTxs>
      <CtrlSum>4650.00</CtrlSum>
      <InitgPty>
        <Nm>Nordwind Software GmbH</Nm>
      </InitgPty>
    </GrpHdr>
    <PmtInf>
      <PmtInfId>PMT-SDD-B2B-20260515</PmtInfId>
      <PmtMtd>DD</PmtMtd>
      <NbOfTxs>2</NbOfTxs>
      <CtrlSum>4650.00</CtrlSum>
      <PmtTpInf>
        <SvcLvl>
          <Cd>SEPA</Cd>
        </SvcLvl>
        <LclInstrm>
          <Cd>B2B</Cd>
        </LclInstrm>
        <SeqTp>RCUR</SeqTp>
      </PmtTpInf>
      <ReqdColltnDt>2026-05-20</ReqdColltnDt>
      <Cdtr>
        <Nm>Nordwind Software GmbH</Nm>
        <PstlAdr>
          <TwnNm>Hamburg</TwnNm>
          <Ctry>DE</Ctry>
        </PstlAdr>
      </Cdtr>
      <CdtrAcct>
        <Id>
          <IBAN>DE89370400440532013000</IBAN>
        </Id>
        <Ccy>EUR</Ccy>
      </CdtrAcct>
      <CdtrAgt>
        <FinInstnId>
          <BICFI>COBADEFF</BICFI>
        </FinInstnId>
      </CdtrAgt>
      <ChrgBr>SLEV</ChrgBr>
      <CdtrSchmeId>
        <Id>
          <PrvtId>
            <Othr>
              <Id>DE52ZZZ12345678</Id>
              <SchmeNm>
                <Prtry>SEPA</Prtry>
              </SchmeNm>
            </Othr>
          </PrvtId>
        </Id>
      </CdtrSchmeId>
      <DrctDbtTxInf>
        <PmtId>
          <EndToEndId>E2E-B2B-2026-0501</EndToEndId>
        </PmtId>
        <InstdAmt Ccy="EUR">1250.00</InstdAmt>
        <DrctDbtTx>
          <MndtRltdInf>
            <MndtId>MNDT-B2B-2025-0117</MndtId>
            <DtOfSgntr>2025-01-17</DtOfSgntr>
            <AmdmntInd>false</AmdmntInd>
          </MndtRltdInf>
        </DrctDbtTx>
        <DbtrAgt>
          <FinInstnId>
            <BICFI>BYLADEM1001</BICFI>
          </FinInstnId>
        </DbtrAgt>
        <Dbtr>
          <Nm>Keller Logistik GmbH</Nm>
          <PstlAdr>
            <TwnNm>Muenchen</TwnNm>
            <Ctry>DE</Ctry>
          </PstlAdr>
        </Dbtr>
        <DbtrAcct>
          <Id>
            <IBAN>DE02120300000000202051</IBAN>
          </Id>
        </DbtrAcct>
        <RmtInf>
          <Ustrd>Enterprise Lizenz Q2-2026 - Rechnung NW-2026-0501</Ustrd>
        </RmtInf>
      </DrctDbtTxInf>
      <DrctDbtTxInf>
        <PmtId>
          <EndToEndId>E2E-B2B-2026-0502</EndToEndId>
        </PmtId>
        <InstdAmt Ccy="EUR">3400.00</InstdAmt>
        <DrctDbtTx>
          <MndtRltdInf>
            <MndtId>MNDT-B2B-2024-0903</MndtId>
            <DtOfSgntr>2024-09-03</DtOfSgntr>
            <AmdmntInd>false</AmdmntInd>
          </MndtRltdInf>
        </DrctDbtTx>
        <DbtrAgt>
          <FinInstnId>
            <BICFI>ABNANL2A</BICFI>
          </FinInstnId>
        </DbtrAgt>
        <Dbtr>
          <Nm>De Vries Advies BV</Nm>
          <PstlAdr>
            <TwnNm>Amsterdam</TwnNm>
            <Ctry>NL</Ctry>
          </PstlAdr>
        </Dbtr>
        <DbtrAcct>
          <Id>
            <IBAN>NL91ABNA0417164300</IBAN>
          </Id>
        </DbtrAcct>
        <RmtInf>
          <Ustrd>Enterprise Lizenz Q2-2026 - Rechnung NW-2026-0502</Ustrd>
        </RmtInf>
      </DrctDbtTxInf>
    </PmtInf>
  </CstmrDrctDbtInitn>
</Document>

How we know these results hold

Every file in this library is run through the site's own validator on each build. The expected result stated above is asserted by an automated test — if a file stopped matching what this page claims, the build would fail. Two inherited fixtures were repaired this way before publication: three IBANs failed the mod-97 check and several names used characters outside the basic SEPA character set.

SEPA Direct Debit (pain.008)