La risposta in breve

La QR-fattura conosce due riferimenti strutturati. Il riferimento QR conta sempre 27 cifre: 26 cifre libere seguite da una cifra di controllo calcolata con l'algoritmo modulo 10 ricorsivo; richiede un QR-IBAN. La Creditor Reference (ISO 11649) conta da 5 a 25 caratteri alfanumerici: «RF», due cifre di controllo mod 97-10, poi il riferimento; si usa con un IBAN ordinario. Restituzione del riferimento e dettagli delle transazioni dipendono da servizio bancario e canale. Testate QRR e SCOR nel software e prevedete la gestione delle eccezioni.

Perché il riferimento è il dato più prezioso del codice

Lo Swiss QR Code trasporta una decina di informazioni, ma una sola crea il legame tra il pagamento ricevuto e la fattura emessa: il riferimento. Chi paga lo vede solo di passaggio; la banca del creditore, invece, lo restituisce nell’avviso di accredito dettagliato (file camt.054), e il software contabile lo utilizza per abbinare automaticamente l’incasso. Senza riferimento strutturato, l’abbinamento si basa sull’importo, sul nome di chi paga o su un testo libero modificabile: tre informazioni poco affidabili.

Lo standard prevede due formati strutturati, esclusivi l’uno dell’altro, più l’assenza di riferimento:

Tipo (elemento Tp) Riferimento Conto richiesto Lunghezza
QRR Riferimento QR QR-IBAN 27 cifre, sempre
SCOR Creditor Reference ISO 11649 IBAN ordinario Da 5 a 25 caratteri alfanumerici
NON Nessuno IBAN ordinario L’elemento riferimento resta vuoto

Il riferimento QR: 27 cifre e un controllo modulo 10 ricorsivo

21 00000 00003 13947 14300 090126 cifre di riferimento7controllo mod 10 ricorsivo

Il riferimento QR è puramente numerico, lungo esattamente 27 posizioni e non può essere composto unicamente da zeri. La sua struttura interna è libera: l’emittente vi colloca ciò che gli è utile, entro il limite di 26 cifre, e completa con zeri a sinistra. La 27ª cifra è la cifra di controllo.

Il calcolo passo per passo

L’algoritmo modulo 10 ricorsivo è quello del vecchio riferimento PVR. Percorre le 26 cifre da sinistra a destra con un «riporto» iniziale di 0 e una tabella di trasposizione.

Ingresso (riporto + cifra) mod 10 0 1 2 3 4 5 6 7 8 9
Nuovo riporto 0 9 4 6 8 2 7 1 3 5

Per ogni cifra: si sommano il riporto e la cifra, si prende il resto della divisione per 10 e si legge il nuovo riporto nella tabella. Alla fine, la cifra di controllo vale (10 − riporto) mod 10.

Esempio su un riferimento breve, 1234567:

Cifra Riporto prima (riporto + cifra) mod 10 Riporto dopo
1 0 1 9
2 9 1 9
3 9 2 4
4 4 8 3
5 3 8 3
6 3 9 5
7 5 2 4

Riporto finale 4, cifra di controllo (10 − 4) mod 10 = 6. Il riferimento completo sarebbe 1234567 seguito da 6, completato con zeri a sinistra fino a 27 posizioni. Lo strumento di verifica applica questo calcolo e mostra la cifra attesa in caso di errore.

Progettare la propria numerazione

Tre domande da risolvere prima di configurare il software.

  1. La banca impone un prefisso? Alcune banche riservano le prime cifre a un identificativo del cliente (spesso sei cifre, eredità del numero di aderente PVR). Deve figurare in ogni riferimento.
  2. Cosa volete ritrovare nel riferimento? Lo schema corrente è prefisso bancario + numero cliente + numero fattura, che permette di leggere il riferimento a occhio nudo durante un controllo. Altri riprendono unicamente il numero di fattura.
  3. Un riferimento per fattura o per cliente? Per fattura per tutto ciò che deve essere abbinato automaticamente. Per cliente per i versamenti ricorrenti a importo libero (donazioni, acconti), dove viene accreditato solo il conto cliente.

Evitate di cambiare schema dopo la messa in produzione: i riferimenti già inviati continueranno ad arrivare per mesi.

La Creditor Reference: RF e controllo mod 97-10

RFprefisso fisso18controllo mod 97-105390 0754 7034riferimento, da 1 a 21 car. alfanumerici

La Creditor Reference è definita dalla norma internazionale ISO 11649 e si usa anche nei bonifici SEPA. Inizia con le lettere RF, seguite da due cifre di controllo e poi da 1 a 21 caratteri alfanumerici: in totale da 5 a 25 caratteri. Si associa esclusivamente a un IBAN ordinario e, dalla versione 2.4 delle Implementation Guidelines, è l’unico riferimento strutturato ammesso per una fatturazione in EUR.

Il calcolo passo per passo

Il controllo segue l’algoritmo ISO 7064 mod 97-10, lo stesso dell’IBAN.

  1. Prendere il riferimento senza i primi quattro caratteri e aggiungervi in coda RF00.
  2. Sostituire ogni lettera con il suo valore numerico: A = 10, B = 11 … Z = 35 (R = 27, F = 15).
  3. Calcolare il resto della divisione del numero ottenuto per 97.
  4. Le cifre di controllo valgono 98 − resto, su due posizioni.

Per verificare un riferimento esistente: spostare i primi quattro caratteri alla fine, convertire le lettere e assicurarsi che il resto modulo 97 valga 1. Su RF18 5390 0754 7034, la stringa 539007547034 + RF18 diventa 539007547034271518, il cui resto per 97 è 1: il riferimento è valido.

Stampa sulla sezione pagamento

Lo standard fissa la presentazione visibile di ogni riferimento, sotto il titolo «Riferimento»:

  • riferimento QR: a blocchi, iniziando con 2 cifre e poi 5 gruppi di 5: 21 00000 00003 13947 14300 09017;
  • Creditor Reference: a blocchi di 4, l’ultimo dei quali può essere più corto: RF18 5390 0754 7034. Gli zeri iniziali possono essere omessi nella parte visibile.

Nello Swiss QR Code il riferimento è codificato senza spazi.

Cosa restituisce la banca

Al momento del pagamento, il riferimento viaggia con l’ordine (messaggio pain.001 emesso dalla banca di chi paga) e torna al creditore nell’avviso di accredito dettagliato camt.054, elemento RmtInf/Strd/CdtrRefInf/Ref. Il software di fatturazione lo legge, ritrova la fattura aperta e la salda. In caso di pagamento parziale o multiplo, il riferimento permette di raggruppare gli incassi sulla stessa fattura.

Il tipo NON non trasporta nulla di strutturato: la comunicazione non strutturata (140 caratteri) torna così come l’ha lasciata chi paga, spesso modificata o vuota. Per questo motivo questa variante si limita ai volumi ridotti.

Errori frequenti

  1. Riferimento troncato a 26 cifre: manca la cifra di controllo, il codice viene rifiutato.
  2. Zeri iniziali eliminati nel codice: il riferimento deve essere codificato su 27 posizioni, solo la visualizzazione può ometterli.
  3. Riferimento QR con un IBAN ordinario, o Creditor Reference con un QR-IBAN: coppie vietate.
  4. Prefisso bancario dimenticato: il pagamento arriva, ma la banca può rifiutarlo o trattarlo come eccezione.
  5. Spazi codificati nel codice: il riferimento leggibile è raggruppato, quello codificato no.
  6. Riferimento riutilizzato da una fattura all’altra: abbinamento impossibile da automatizzare.

Prima di qualsiasi messa in produzione, fate passare una serie di fatture di prova nel portale di validazione di SIX e controllate qualche riferimento nel nostro strumento di verifica.

Fonti e riferimenti