Etiqueta 01, Punto de Iniciación
11 = QR estático (reutilizable; tú introduces el monto).12 = QR dinámico (de un solo uso; el monto lo rellena el TPV del comerciante).
Standards · EMVCo merchant payment QR
El QR en la mesa de un restaurante, en un parquímetro o en un puesto de mercado casi siempre utiliza el formato TLV de EMVCo. Contiene el nombre del comerciante, ciudad, país, moneda, monto opcional y una suma de verificación CRC-16 que falla si el payload fue alterado. El ataque de intercambio de pegatinas —cubrir el QR real del comerciante con el del atacante— es el fraude QR más común del mundo. Decodificar el QR antes de pagar te muestra a quién estás pagando realmente.
El estándar es la Especificación de Código QR de EMVCo, publicada por el mismo consorcio EMVCo que definió las tarjetas con chip y PIN. Dos variantes comparten la mayor parte del formato:
Casi todos los esquemas de pago instantáneo de cada país están construidos sobre EMVCo MPM con algunas etiquetas específicas del país añadidas:
El formato es texto Tag-Length-Value, sin cifrado y decodificable por cualquier escáner QR. La identidad del comerciante está codificada en texto plano y es lo que muestra tu aplicación de cartera.
Cada payload de EMVCo comienza con 000201 (Indicador de Formato de Payload). Lo que sigue es una secuencia de registros TLV: etiqueta de dos caracteres, longitud de dos dígitos, valor de esa longitud, repetido.
11 = QR estático (reutilizable; tú introduces el monto).12 = QR dinámico (de un solo uso; el monto lo rellena el TPV del comerciante).
Identificador del destinatario específico del país. Clave Pix (CPF / CNPJ / correo electrónico / teléfono / UUID EVP), Dirección de Pago Virtual UPI, teléfono o ID nacional PromptPay, etc.
Categoría ISO 18245 de 4 dígitos. 5812 = restaurante, 5411 = supermercado, 7011 = alojamiento, 5541 = gasolinera, etc.
Código numérico ISO 4217. 840 = USD, 978 = EUR, 826 = GBP, 986 = BRL (real brasileño), 356 = INR (rupia india).
Opcional. Presente en QR dinámicos (el comerciante lo rellenó previamente), ausente en QR estáticos (tú lo introduces).
Opcional. 55 indica si debe aparecer un cuadro de propina; 56 / 57 llevan un recargo fijo o porcentual.
Código de país ISO 3166-1 alfa-2. Útil cuando las aplicaciones de pago admiten transferencias transfronterizas.
Hasta 25 caracteres. Este es el campo que tu aplicación de cartera muestra como «estás pagando a ___». El comerciante controla completamente lo que va aquí. Un atacante que crea una pegatina de intercambio pone la cadena que quiera.
Hasta 15 caracteres. Dónde está ubicado el comerciante.
Opcional pero útil para detectar fraude: un comerciante de EE. UU. cuyo código postal no coincide con la ciudad es una señal de alerta.
Sub-TLV. Incluye: número de factura, número de móvil, etiqueta de tienda, número de fidelización, etiqueta de referencia, etiqueta de cliente, etiqueta de terminal, propósito de la transacción.
CRC-16/CCITT-FALSE sobre todo lo precedente (incluido el encabezado «6304» del propio TLV CRC). Si no coincide, el QR fue alterado o corrompido.
La técnica es deprimente en su simplicidad:
El comerciante no lo nota hasta que la conciliación del día muestra que los ingresos son escasos. El cliente no lo nota porque su cartera dice «pagaste a», y el atacante puede poner el nombre real del comerciante en la etiqueta 59. O algo muy parecido («Pizzería Joe 2», «Pizzería de Joe»), variaciones leves que un cliente ocupado no detecta.
El fraude ha sido documentado en todos los países donde los pagos móviles son prevalentes: Brasil (intercambio de pegatinas Pix en parquímetros), India (intercambio UPI en estaciones de gasolina), China (intercambio WeChat Pay en escaparates), Singapur (PayNow en mercados), Reino Unido (intercambio de QR en cajas de donaciones), EE. UU. (parquímetros en Austin, San Francisco y Los Ángeles).
Lo que nuestro escáner te muestra:
Señales físicas que inspeccionar antes de escanear:
Nuestro analizador reconoce la etiqueta del país y etiqueta el veredicto con el nombre del esquema local cuando corresponde. Actualmente cubre 54 países, incluidos todos los principales sistemas de pago instantáneo. Consulta el centro de estándares para la lista completa con detalles por esquema.
Sube el QR a nuestro escáner. El veredicto muestra comerciante, ciudad, país, monto, moneda y si la suma de verificación CRC es válida. Tarda unos segundos. Podría ahorrarte el costo de una cena o el presupuesto de estacionamiento de todo un mes.