Swiss QR-bill

O Swiss QR-bill substituiu os boletos de pagamento suíços laranja e vermelho em julho de 2020. É um payload ISO 20022 Customer Credit Transfer Initiation (pain.001) renderizado como QR com uma sobreposição obrigatória de cruz suíça no centro. Todo banco suíço o aceita; nenhum banco suíço aceita nada diferente.

Especificação canônica:SIX Swiss Implementation Guidelines for the QR-bill v2.3 (2024-04).
Base ISO: ISO 20022 pain.001 Customer Credit Transfer Initiation.
Obrigatório desde: 1º de julho de 2020. Os boletos laranja/vermelho legados foram eliminados em 30 de setembro de 2022.

O que é

O payload é uma lista de 32 campos separados por quebras de linha (CRLF) organizados em sete blocos:

QRType         → Sempre "SPC"
Version        → 0200 (v2.3)
Coding         → 1 (Latin-1)
[Informações do credor]            ← 7 campos (IBAN + endereço)
[Credor final]                     ← 7 campos (opcional, geralmente vazio)
[Informações do valor de pagamento]← 3 campos (valor, moeda, data de vencimento)
[Devedor final]                    ← 7 campos (opcional)
[Referência de pagamento]          ← 2 campos (tipo de referência + referência)
[Informações adicionais]           ← 2 campos (mensagem não estruturada + bill info)
[Procedimentos alternativos]       ← 2 campos (opcional, raramente usado)

O QR resultante fica dentro de um bloco de "Payment part" no terço inferior da fatura. Todos os apps bancários suíços (UBS, ZKB, PostFinance, Raiffeisen, Neon, Yuh, Revolut CH) o leem nativamente.

QR-IBAN vs IBAN regular

Um "QR-IBAN" é um IBAN suíço especial onde o intervalo do código bancário de 5 dígitos é 30000–31999. QR-IBANs requerem uma referência QR estruturada (QRR, 27 dígitos, verificação mod-10). IBANs suíços regulares aceitam referência de credor (SCOR, RFC 8905) ou sem referência.

Tipo de IBAN do credorTipos de referência válidosNotas
QR-IBAN (código bancário 30000–31999)QRR (27 dígitos, mod-10)Obrigatório. SCOR e NON são inválidos.
IBAN regular (CH ou LI)SCOR ou NONQRR é inválido, somente QR-IBAN.

Vetores de teste canônicos

CasoEntradasTipo de referência
Mínimo (IBAN regular, sem valor, sem referência)iban=CH9300762011623852957
name=Acme AG
street=Bahnhofstrasse 1
postal=8001
city=Zürich
country=CH
NON
IBAN regular com valor + mensagem não estruturada(igual ao acima)
amount=100.00
message=Invoice 1234
NON
QR-IBAN com referência QRRiban=CH4431999123000889012
name=Acme AG
street=Bahnhofstrasse 1
postal=8001
city=Zürich
country=CH
amount=250.00
reference=210000000003139471430009017
QRR
IBAN do Liechtensteiniban=LI0508800000021904015
name=Beispiel AG
city=Vaduz
country=LI
NON

Validador de IBAN suíço ao vivo

O validador abaixo verifica as três regras específicas da Suíça: (1) o código de país é CH ou LI, (2) o comprimento é exatamente 21, (3) o checksum ISO 7064 mod-97 é aprovado. A entrada colada é normalizada (maiúsculas, espaços removidos).

Insira um IBAN CH ou LI para validar.

Armadilhas comuns

Compatibilidade de scanners

LeitorSuporteNotas
UBS Mobile / PostFinance / ZKB appNativoTodos os apps bancários suíços leem QR-bills nativamente.
Neon / Yuh / Revolut CHNativoNeobancos lidam com o payload pain.001 completo.
Câmera iOSNãoiOS trata um QR-bill como uma string bruta, sem análise. O usuário deve abrir um app bancário.
Câmera Android / Google LensNãoIgual, sem análise nativa.
OCR comercial (ex. serviços de pagamento de faturas)SimFerramentas de OCR de nível bancário leem QR-bills em pipelines de AP/AR.

Veja também

Versão da especificação verificada em 2026-04-18 (SIX v2.3, publicado 2024-04). Próxima revisão: 2026-07-18.