Decodificar Código QR

Visión General

Este endpoint permite decodificar la cadena extraída de un Código QR y devolver la información estructurada necesaria para iniciar un pago (monto, clave destino, comercio, impuestos, canal, etc.).

Tipos de QR

Los tipos de QR soportados son: Dinámicos (DYNAMIC) y Estáticos (STATIC).

Detalles del Endpoint

Parámetro

Descripción

Endpoint

https://api.paas.sandbox.co.passportfintech.com/v1/qrcodes/decode

Método

POST

Encabezados

Content-Type: application/json, Authorization

Autenticación

Token de Acceso (Bearer Token)

Cuerpo de la Solicitud

Parámetro

Tipo

Requerido

Descripción

customer_id

String

Identificador del cliente que solicita la decodificación.

qr_code_data

String

Cadena EMVCo extraída del QR a decodificar.

Ejemplo de Solicitud

curl --location --request POST 'https://api.paas.sandbox.co.passportfintech.com/v1/qrcodes/decode' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \ --data '{ "customer_id": "050e8ba8-e079-46bd-a052-427a38f35ef0", "qr_code_data": "00020101021226330015CO.COM.VISI.LLA0210370222232949270015CO.COM.VISI.RED0104VISI52040412530317054130000014907.005802CO5914Merchant OW3BX6011Bucaramanga610610101062250808PURCHASE100911414310480290017CO.COM.VISI.CANAL0104MPOS81260016CO.COM.VISI.CIVA01020282240015CO.COM.VISI.IVA0101083250016CO.COM.VISI.BASE0101084260016CO.COM.VISI.CINC01020285240015CO.COM.VISI.INC0101090310017CO.COM.VISI.TRXID0106P1490791870015CO.COM.VISI.SEC0164474ba16e2433a928a69b7a6eb54efbabecba7c0aef862d39fca7b379d057ba1b63045B27" }'

Cuerpo de la Respuesta

  • Código HTTP: 200 OK.

Ejemplo de Respuesta

{ "amount": { "currency": "COP", "value": "14907" }, "additional_info": { "transaction_purpose": "PURCHASE" }, "inc": { "inc_type": "FIXED", "inc_value": "0" }, "key": { "key_value": "3702222329", "key_type": "PHONE" }, "qr_code_data": "00020101021226330015CO.COM.VISI.LLA0210370222232949270015CO.COM.VISI.RED0104VISI52040412530317054130000014907.005802CO5914Merchant OW3BX6011Bucaramanga610610101062250808PURCHASE100911414310480290017CO.COM.VISI.CANAL0104MPOS81260016CO.COM.VISI.CIVA01020282240015CO.COM.VISI.IVA0101083250016CO.COM.VISI.BASE0101084260016CO.COM.VISI.CINC01020285240015CO.COM.VISI.INC0101090310017CO.COM.VISI.TRXID0106P1490791870015CO.COM.VISI.SEC0164474ba16e2433a928a69b7a6eb54efbabecba7c0aef862d39fca7b379d057ba1b63045B27", "status": "ACTIVE", "acquirer_network_identifier": "VISI", "merchant": { "merchant_category_code": "0412", "merchant_country": "CO", "merchant_name": "Merchant OW3BX", "merchant_city": "Bucaramanga", "merchant_post_code": "101010" }, "channel": "MPOS", "vat": { "vat_type": "FIXED", "vat_value": "0", "vat_base_value": "0" }, "qr_code_reference": "14907", "type": "DYNAMIC" }
Importante

La respuesta de Códigos QR no incluye la imagen en formato Base64 (qr_code_data).

Errores Comunes y Manejo

Código HTTP

Significado

Descripción

400 Bad Request

Datos inválidos

customer_id o qr_code_data ausentes/malformados; cadena EMVCo inválida.

401 Unauthorized

Token inválido

El token de acceso ha expirado o es inválido.

403 Forbidden

Acceso denegado

La solicitud no está autorizada para validar la entidad.

500 Server Error

Error del servidor

Se produjo un error inesperado al procesar la validación.

Buenas Prácticas

**

  • ** Validación previa: verifica que qr_code_data no esté vacía y cumpla con el formato esperado antes de llamar al endpoint. **

**