PIX
PIX, Banco Central do Brasil (BACEN) tarafından işletilen Brezilya'nın anlık ödeme şemasıdır. BR Code QR formatı, tag 26'daki Merchant Account Information'da PIX anahtarı, CPF, CNPJ, e-posta, telefon numarası veya rastgele EVP, taşıyan EMVCo MPM'nin bir alt kümesidir. PIX, lansmanından (2020 → 2022) iki yıldan kısa sürede ilk bir trilyon reali işledi ve Brezilya'nın hâkim perakende ödeme altyapısı hâline geldi.
Üst şartname:EMVCo MPM v1.1. PIX, satıcı hesabı tag
26'yı rezerv eder; geri kalanı EMVCo'dan devralınır. Kodlama: 2 haneli tag'lar, 2 haneli uzunluklar ve CRC16-CCITT trailer'lı TLV (Tag-Length-Value).
BR Code yapısı, tag 26 (PIX Merchant Account Information)
PIX'e özgü içerik tag 26'da yer alır. Bu tag'ın kendisi şu alt tag'lardan oluşan iç içe geçmiş bir TLV yapısıdır:
| Alt tag | Ad | Uzunluk | Notlar |
|---|---|---|---|
00 | GUI, Küresel Benzersiz Tanımlayıcı | 14 | Sabit değer br.gov.bcb.pix. Şemayı PIX olarak tanımlar. |
01 | PIX anahtarı | değişken | CPF (11 hane), CNPJ (14 hane), e-posta, telefon (+55DDPHONE) veya EVP (UUID benzeri rastgele anahtar). |
02 | Ek bilgi | değişken, ≤72 | Ödeyici için serbest metin mesajı. Ödeyicinin bankacılık uygulamasında gösterilir. |
25 | URL, dinamik PIX | değişken | Yalnızca dinamik PIX için kullanılır: tarama sırasında ödeyicinin uygulaması bu URL'den tam yükü getirir (tutar, vade tarihi, son kullanma, indirim/ceza). Statik PIX tag 25'i tamamen atlar. |
PIX anahtar türleri
| Anahtar türü | Format | Doğrulama |
|---|---|---|
| CPF (bireysel vergi kimliği) | 11 hane, QR yükünde noktalama yok | Son 2 hanede Mod-11 sağlama toplamı. Maske 123.456.789-09 → ham 12345678909. |
| CNPJ (kurumsal vergi kimliği) | 14 hane, noktalama yok | İki mod-11 sağlama toplamı. Maske 12.345.678/0001-95 → ham 12345678000195. |
| E-posta | RFC 5321 uyumlu, maks 77 karakter | BACEN kayıt sırasında küçük harfe dönüştürür; QR yükü kayıtlı büyük/küçük harf durumunu eşleştirmelidir. |
| Telefon | Ülke kodu +55 ile E.164, maks 14 karakter | Format: +55DDNNNNNNNNN burada DD 2 haneli alan kodudur. Boşluk veya tire yoktur. |
| EVP (rastgele anahtar) | UUID v4 formatı, 36 karakter | Kayıt sırasında ödeyicinin bankası tarafından sunucu tarafında oluşturulur. CPF/CNPJ/e-posta/telefonu açığa çıkarmak istemeyen satıcılar için tercih edilir. |
Statik ve dinamik PIX
- Statik PIX (Point of Initiation
11). QR'da her şey kodlanmış: PIX anahtarı, satıcı adı, satıcı şehri, isteğe bağlı sabit tutar, isteğe bağlı referans. Ödeyicinin uygulaması doğrudan okur ve yetkilendirir. Basılı çıkartmalar, faturalar, vitrin afişleri için en iyisi. Tutar atlanabilir (ödeyici yazar) veya sabitlenebilir (kesin ücret). - Dinamik PIX (Point of Initiation
12). QR bir URL taşır (alt tag25). Ödeyicinin uygulaması tarama sırasında o URL'den JWS imzalı JSON yükünü getirir; içinde tutar, vade tarihi, son kullanma penceresi ve isteğe bağlı geç ödeme ücreti/indirim kuralları bulunur. Vade tarihi olan fatura ödemeleri için gereklidir (boletos híbridos). PIX Cobrança (faturalama) için de kullanılır.
Kanonik test vektörü, CPF anahtarlı ve sabit tutarlı statik PIX
CPF 12345678909, satıcı LOJA TESTE (SAO PAULO), sabit tutar R$10.00, işlem referansı yok:
00020126360014br.gov.bcb.pix0114123456789095204000053039865406010.005802BR5910LOJA TESTE6009SAO PAULO62070503***6304XXXX| Tag | Değer | Anlam |
|---|---|---|
00 | 01 | Yük format göstergesi (her zaman 01) |
01 | 11 | Statik başlangıç noktası |
26 | 36 bayt iç içe TLV | PIX Merchant Account Information |
├─ 00 | br.gov.bcb.pix | GUI |
├─ 01 | 12345678909 | CPF anahtarı (11 hane) |
52 | 0000 | MCC, bilinmiyor / kişisel |
53 | 986 | BRL için ISO 4217 para birimi kodu |
54 | 10.00 | Sabit işlem tutarı |
58 | BR | Ülke kodu |
59 | LOJA TESTE | Satıcı adı (EMVCo'ya göre maks 25 karakter) |
60 | SAO PAULO | Satıcı şehri (maks 15 karakter) |
62 | 7 bayt iç içe | Ek veri şablonu |
├─ 05 | *** | Referans etiketi (referans yokken yer tutucu) |
63 | XXXX | Önceki her şey üzerinde CRC16-CCITT (kodlama sırasında yeniden hesaplayın) |
Yaygın tuzaklar
- CPF/CNPJ maskeleme. QR yükü yalnızca maskelenmemiş haneleri kullanır (
12345678909,123.456.789-09değil). Bazı kod oluşturucular yanlışlıkla nokta ve tireleri bırakır, ortaya çıkan QR her bankacılık uygulamasında "chave PIX inválida" ile başarısız olur. - Karakter seti önemlidir. BACEN şartnamesi, satıcı adı ve şehir için ISO/IEC 8859-1 (Latin-1) belirtir. Aksanlı karakterler (
São Paulo), TLV uzunluğu hesaplanmadan önce Latin-1 ile kodlanmalıdır, UTF-8 ile değil. UTF-8 kodlaması bayt sayısını artırır ve uzunluk alanını bozar. - CRC hesaplama. CRC16-CCITT (polinom
0x1021, init0xFFFF, son XOR yok) tag00'dan6304'e kadar her şeyi kapsar, CRC alanının literal tag+uzunluğu dahil. Yaygın hata: yanlış aralıkta hesaplanan CRC, QR bazı uygulamalarda doğru ayrıştırılır ve diğerlerinde başarısız olur. - Tutar formatı string'dir, sayı değil. Tag
54bir string'dir:10.00,1000değil. İki ondalık basamak gereklidir. Maks iki ondalık, BRL'nin sent altı değerleri yoktur. - Statik PIX'in yerleşik iade özelliği yoktur. Ödendikten sonra statik PIX anlık ve kesindir. Satıcılar iadeleri bant dışında ele almalıdır (satıcıdan ödeyiciye geri PIX). Bunu basılı materyallerde açıkça gösterin.
- Çıkartma kaplama dolandırıcılığı. Kasa tezgâhlarındaki fiziksel PIX QR çıkartmaları kaplama dolandırıcılığına maruz kaldı, saldırganlar satıcının QR'ının üzerine kendi QR'larını yapıştırır. Statik QR çıkartmalarını periyodik olarak değiştirin, lamine edin ve ödeyicinin doğrulayabilmesi için çıkartmanın yanına beklenen PIX anahtarını düz metin olarak gösterin.
- Yatırım/menkul kıymet kısıtlaması. Comissão de Valores Mobiliários (CVM), kayıt dışı yatırım teklifleri için PIX'i yasaklar. Token'lar, "garantili getiri" ürünleri veya MLM şemaları için açılış sayfalarındaki PIX QR, CVM yaptırım işlemlerini tetikler.
- Dinamik PIX canlı bir uç nokta gerektirir. Tag
25URL'si çalışmıyorsa, ödeme tarama sırasında başarısız olur. Kontrol ettiğiniz bir ana bilgisayar kullanın ve en azından QR'ın basılı ömrü boyunca çalışır durumda tutun.
Bankacılık uygulaması uyumluluğu
Lisanslı her PIX katılımcısı (banka veya ödeme kurumu) tüketici uygulamasında BR Code'u destekler. Öne çıkan uygulamalar:
| Uygulama | Statik | Dinamik | Notlar |
|---|---|---|---|
| Itaú, Bradesco, Santander, BB, Caixa | Evet | Evet | İlk 5 banka. Cobrança, agendado ve devolução dahil tam PIX desteği. |
| Nubank | Evet | Evet | Brezilya'nın en popüler neobank'ı. Temiz PIX UX'i. |
| Inter, C6 Bank, PicPay | Evet | Evet | Tam PIX desteği. |
| Mercado Pago | Evet | Evet | Ödeme kurumu; PIX aynı uygulamadaki birkaç ödeme altyapısından biridir. |
| Genel iOS/Android kamera | Hayır | Hayır | Yerel kamera uygulamaları BR Code'u ödeme niyeti olarak ayrıştırmaz. Kullanıcı önce bankacılık uygulamasını açmalıdır. |
Ayrıca bakın
- /pix-qr-code/, CPF/CNPJ doğrulaması ve canlı BR Code kodlaması ile PIX üreteci.
- /standards/emvco/, üst EMVCo MPM şartnamesi.
- /standards/upi/, UPI Hindistan, tag 26'lı başka bir EMVCo türevi şema.
- /standards/, standartlar dizinine geri dön.