Nickel Palladium Manganese

    esr-code-line
    TypeScript icon, indicating that this package has built-in type declarations

    1.0.2 • Public • Published

    Code Line Generator for Orange Payment Slips used in Switzerland

    This package contains utility functions for generating the code line on the orange payment slips used in Switzerland. The code is shown on the bottom right of the slip inside the white area:

    Swiss orange inpayment slip with code line example

    Statements Branches Functions Lines
    Statements Branches Functions Lines

    Specification

    The slip is known under these different names and abbreviations depending on the language:

    • English: Orange inpayment slip with reference number (ISR)
    • German: Oranger Einzahlungsschein mit Referenznummer (ESR)
    • French: Bulletin de versement orange avec numéro de référence (BVR)
    • Italian: Polizza di versamento arancione con numero di riferimento (PVR)

    The technical specification is from chapter 5 of the Postfinance manual.

    Please note that the QR-Bill replaces this standard (see paymentstandards.ch). Depending on the project it may be viable to skip ahead to this newer one.

    Installation

    npm install esr-code-line

    Usage

    The code line consists of information already on the payment slip, except for the slip type:

    Code line parameters example

    The parameters are:

    • Orange slipType a code defining the type of the slip. E.g. "01" for a ISR in CHF. See section 5.1 of the manual.
    • Red amountFrancsOrEuros the main currency unit in either CHF or EUR.
    • Red amountRappenOrCents the fractional currency unit in Rappen or Cents.
    • Green referenceNumber the reference number with or without spaces.
    • Blue customerNumber the ISR customer number in CHF or EUR. Formatted VV-XXX-C. See section 5.1 of the manual.
    const { codeLine } = require("esr-code-line");
    
    const code = codeLine({
      slipType: "01",
      amountFrancsOrEuros: "3949",
      amountRappenOrCents: "75",
      referenceNumber: "12 00000 00000 23447 89432 16899",
      customerNumber: "01-162-8",
    }); // returns "0100003949753>120000000000234478943216899+ 010001628>"

    The codeLine function does not add check digits to the reference or customer numbers. They can however be added using the attachCheckDigit function included in the module.

    const { attachCheckDigit } = require("esr-code-line");
    
    attachCheckDigit("04"); // returns "042"

    Install

    npm i esr-code-line

    DownloadsWeekly Downloads

    38

    Version

    1.0.2

    License

    MIT

    Unpacked Size

    35.4 kB

    Total Files

    8

    Last publish

    Collaborators

    • nicolaszanotti