Requirements for XML Files per Rail

This section describes the XML file requirements for the following payment methods (rails):

  • Book transfers

  • ACH Push CCD

  • ACH Push PPD

  • Fedwire

  • ACH Direct debits

  • RTP send (push) funds

For more information on the code structure for each payment method, see the corresponding topic in the XML Examples section.

See Preparing Your Transaction XML File for more details on the blocks and tags used in the XML examples below.

Book Transfers

For book transfers (among 2 accounts within CR):

Both the DbtrAgt block and the CdtrAgt block must contain CR's routing number (021214891) in the MmbId element.

When sending funds from one of your COS Partner bank accounts to another of your COS Partner bank accounts, Unicorn will transfer the funds with an internal book transfer.

ACH Push CCD

For ACH Push CCD transfers, the PmtTpInf block must be according to the following example:

Copy

XML

<PmtTpInf>
        <InstrPrty>NORM</InstrPrty>
        <SvcLvl>
               <Cd>NURG</Cd>
        </SvcLvl>
        <LclInstrm>
               <Prtry>CCD</Prtry>
        </LclInstrm>
</PmtTpInf>

All the above fields are required. Unicorn looks for these fields in order to know what type of transaction you are requesting. If it can’t find any of these, it will cause an error.

ACH Push PPD

For ACH Push PPD transfers, the PmtTpInf block must be according to the following example:

Copy

XML

<PmtTpInf>
        <InstrPrty>NORM</InstrPrty>
        <SvcLvl>
               <Cd>NURG</Cd>
        </SvcLvl>
        <LclInstrm>
               <Prtry>PPD</Prtry>
        </LclInstrm>
</PmtTpInf>

All the above fields are required. Unicorn looks for these fields in order to know what type of transaction you are requesting. If it can’t find any of these, it will cause an error.

Fedwire

For Fedwire payments:

  • The CdtrAgt's MmbId value must be different than CR's routing number (021214891).

Copy

XML

<CdtrAgt>
          <FinInstnId>
              <ClrSysMmbId>
                  <ClrSysId>
                      <Cd>USABA</Cd>
                  </ClrSysId>
                  <MmbId>123456789</MmbId>
              </ClrSysMmbId>
              <Nm>THE BANK OF NEW YORK MELLON</Nm>
              <PstlAdr>
                 <Ctry>US</Ctry>
              </PstlAdr>
          </FinInstnId>
</CdtrAgt>
  • The PmtTpInf's Cd value must be "URGP".

Copy

XML

<PmtTpInf>
         <InstrPrty>NORM</InstrPrty>
         <SvcLvl>
             <Cd>URGP</Cd>
         </SvcLvl>
</PmtTpInf>

ACH Direct Debits (ACH Pull)

For ACH direct debits:

  • The file type must be: XML pain.008.001.02 ISO 20022.

Copy

XML

<?xml version="1.0" encoding="UTF-8" ?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.008.001.02">
  • The Payment Method (PmtMtd) value must be “DD”.

Copy

XML

<PmtInf>
    ...
    <PmtMtd>DD</PmtMtd>
    ...
<PmtInf>
  • The Creditor Agent (CdtrAgt)'s Member ID (MmbId) value must always be CR's routing number (021214891).

Copy

XML

<CdtrAgt>
        <FinInstnId>
            <ClrSysMmbId>
                <MmbId>021214891</MmbId>
            </ClrSysMmbId> 
            ...
        </FinInstnId>
</CdtrAgt>
  • The Payment Type Information must include the Service Level Code of “NURG” and the Local Instrument Proprietary value, which is the ACH Pull type (“CCD” or “PPD”).

Copy

XML

<PmtTpInf> 
    <SvcLvl>
        <Cd>NURG</Cd>
  </SvcLvl> 
  <LclInstrm>
    <Prtry>CCD</Prtry>
  </LclInstrm> 
</PmtTpInf>

For example:

Copy

XML

<PmtInf>
    ...
    <PmtMtd>DD</PmtMtd>
    ...
    <PmtTpInf>
    <SvcLvl>
        <Cd>NURG</Cd>
    </SvcLvl>
    <LclInstrm>
        <Prtry>CCD</Prtry>
    </LclInstrm>
    </PmtTpInf>
    ...
    <CdtrAgt>
    ...
    <MmbId>021214891</MmbId>
    ...
    </CdtrAgt>
    ...
</PmtInf>

All the fields shown above for Direct Debit are required so that Unicorn can identify the payment type and details.

RTP send (push) funds

This is how you should structure your XML for sending funds using RTP.

Copy

XML

<PmtTpInf>

<InstrPrty>NORM</InstrPrty> 

<SvcLvl> 

<Cd>URNS</Cd> 

</SvcLvl>

<LclInstrm> 

<Prtry>rtp</Prtry> 

</LclInstrm>

</PmtTpInf>