Android 13 (con retrocompatibilidad para Android 12) admite flujos de pago de UPI agregando un escáner de códigos QR al que los usuarios pueden acceder directamente desde el mosaico de Configuración rápida correspondiente. Los usuarios pueden iniciar un flujo de pago de UPI escaneando un código QR desde la cámara en vivo o desde una imagen estática.
Cuando se instalan varias apps de UPI en un dispositivo, se muestra un diálogo de desambiguación al usuario. Luego, el flujo de pago continuará en la app seleccionada por el usuario.
Ten en cuenta que el orden de las apps no se modifica de ninguna manera. El SO prioriza las apps que más usan los usuarios y se muestran primero, de manera similar al diálogo del intent de UPI existente.
Admite intents de UPI desde el escáner de códigos QR de Android
Cuando se inicia una app de pagos a través de este flujo, el ID del paquete de llamada se establece como com.google.android.gms. Este valor no se puede modificar.
Las apps de pagos deben verificar esta fuente y controlar todos los flujos de pago iniciados desde este ID de paquete para que se traten como se inician mediante QR y configurar el modo de inicio en QR cuando se envían datos al PSP del beneficiario.
Para distinguir entre los pagos que se inician a partir del escaneo de un código QR en tiempo real (con la cámara) y el escaneo de una imagen de código QR (foto en el dispositivo), el escáner de códigos QR pasa un intent adicional que ayuda a identificar la fuente del código QR.
Las apps de pagos deben recuperar el valor de "intent extra" con la clave com.google.android.gms.UPI_QR_SOURCE
y, luego, compararlo con lo siguiente:
- La string
STATIC_IMAGE
indica que el origen es una imagen estática. - La string
LIVE_CAMERA
indica que la fuente es la cámara.
Clave |
Valor |
Explicación |
com.google.android.gms.UPI_QR_SOURCE |
|
Imagen de código QR almacenada en el dispositivo. |
|
Imagen de código QR capturada en vivo con la cámara |