Bank payment rules

Acme Citibank Brazil Payments

This describes validations / allowed data formats for Acme payments going through Citibank Brazil (BIC: CITIBRBRXXX). These will be validated by Acme and further validated by the bank. These rules may be stricter than what the bank requires.

Field paths below match batch payloads (payments[N].… per inlined payment).

Common Definitions

  • SWIFT Character Set:

    • The 26 uppercase Latin letters A-Z
    • The 26 lowercase Latin letters a-z
    • The 10 digits 0-9
    • Forward slash /
    • Hyphen -
    • Question mark ?
    • Colon :
    • Left and right parentheses ( )
    • Full stop .
    • Comma ,
    • Single quote '
    • Plus sign +
    • Space  
  • Citi restrictions:

    • For SWIFT character set: do not start a field with any of the following characters: /, -, :

Supported payment types (Citi Brasil)

TypeDescriptionCurrencyAmount / notes
BR_BOLETOBoleto (bank slip)BRL only1–99,999,999 (minor units)
BR_UTILITYUtility bill (barcode)BRL only1–99,999,999
BR_TAX_BARCODETax payment (receiver.barCode)BRL only1–99,999,999
BR_DIPHASEDDiphased transferBRL only1–99,999,999
BR_PIXPIXBRL only1–99,999,999

BR_BOLETO

fieldpattern / charsetmax lengthmandatory/optional
customerReferenceAlphanumeric15M
paymentDetailsOptional; /PMD* / /LALx/ prefix rules if prefixed140O
receiver.barCodeNumeric, 44 - 47 digits47M
paymentAdviceEmailsValid email, max 150 per emailO
receiver.nameSWIFT70M
receiver.taxIdAlphanumeric20M
receiver.branchIdNumeric8O
receiver.address.line1SWIFT35O
receiver.address.line2SWIFT35O
receiver.address.citySWIFT35O
receiver.address.stateSWIFT35O
receiver.address.postalCodeSWIFT16O
receiver.address.countryISO 3166-1 alpha-22O

BR_UTILITY

fieldpattern / charsetmax lengthmandatory/optional
customerReferenceAlphanumeric15M
paymentDetailsOptional; /PMD* / /LALx/ prefix rules if prefixed140O
receiver.barCodeNumeric, 44 - 48 digits, starts with 848M
receiver.nameSWIFT70M
receiver.bankAlphanumeric (BIC)11O
receiver.branchIdNumeric, 4 digits4O
receiver.address.line1SWIFT35O
receiver.address.line2SWIFT35O
receiver.address.citySWIFT35O
receiver.address.stateSWIFT35O
receiver.address.postalCodeSWIFT16O
receiver.address.countryISO 3166-1 alpha-22O

BR_TAX_BARCODE

fieldpattern / charsetmax lengthmandatory/optional
customerReferenceAlphanumeric15M
taxDateyyyy-MM-dd (optional)10O
paymentDetailsOptional remittance140O
receiver.barCodeNumeric50M
receiver.nameSWIFT70M
receiver.bankAlphanumeric (BIC)11O
receiver.branchIdNumeric, 4 digits4O
receiver.address.line1SWIFT35O
receiver.address.line2SWIFT35O
receiver.address.citySWIFT35O
receiver.address.stateSWIFT35O
receiver.address.postalCodeSWIFT16O
receiver.address.countryISO 3166-1 alpha-22O

BR_DIPHASED

fieldpattern / charsetmax lengthmandatory/optional
customerReferenceAlphanumeric15M
paymentDetailsOptional; /PMD* / /LALx/ prefix rules if prefixed140O
instructionForSenderBankForbidden (omit)——
paymentAdviceEmailsValid email, max 150 per emailO
receiver.nameSWIFT70M
receiver.bankAccountNumberNumeric, 6–10 digits10M
receiver.localRoutingIdentifierNumeric (bank code)8O
receiver.taxIdAlphanumeric20M
receiver.branchIdNumeric8M
receiver.address.line1SWIFT35M

BR_PIX

fieldpattern / charsetmax lengthmandatory/optional
customerReferenceAlphanumeric32M
paymentDetailsOptional; /PMD* / /LALx/ prefix rules if prefixed140O
instructionForSenderBankForbidden (omit)——
paymentAdviceEmailsValid email, max 150 per emailO
receiver.nameSWIFT80M
receiver.bankAccountNumberAlphanumeric34M
receiver.localRoutingIdentifierNumeric (bank code)8M
receiver.taxIdAlphanumeric20M
receiver.branchIdNumeric8M
receiver.address.line1SWIFT35M

Bank references

bankReference is AcctSvcrRef, else ClrSysRef, from Citi's status report on the payment. bankReferences lists every reference Citi sent, keyed by Citi's field name: AcctSvcrRef, ClrSysRef and StsId, as Citi sends them.

On your Citi statement: the line shows a different Citi reference. Find the payment by your customerReference.

What the names mean:

  • AcctSvcrRef: Citi's own reference for the transaction.
  • ClrSysRef: the clearing system's reference.
  • StsId: the id of Citi's status entry.

A rejected payment keeps the references from the report that rejected it.

A completed payment sent as a file returns:

{
  "bankReference": "01720322200000001",
  "bankReferences": {
    "AcctSvcrRef": "01720322200000001"
  }
}

On this page