Welcome to our new developer portal! Use the "Ask" button to chat with our AI Agent.
For the complete documentation index, see llms.txt. This page is also available as Markdown.

Gestionar notificaciones push

NFC Wallet utiliza notificaciones push para notificar a tu aplicación de billetera digital. Las notificaciones son enviadas por el backend de NFC Wallet.

El manejo de notificaciones push de NFC Wallet es necesario para admitir LCM, notificaciones de transacciones y flujos de registro de tarjetas donde la tarjeta digital es activada directamente por el emisor.

Enruta las notificaciones usando remitente

Leer userInfo["sender"] y dirigir la notificación al manejador correcto:

  • CPS: operaciones de tarjeta digital (LCM)

  • TNS: notificaciones de transacciones

  • MG: reposición de claves de pago activada por el TSP

func application(
    _ application: UIApplication,
    didReceiveRemoteNotification userInfo: [AnyHashable : Any],
    fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void
) {
    let sender = userInfo["sender"] as? String

    Task {
        do {
            switch sender {
            case "CPS":
                // Operaciones de tarjeta digital (LCM).
                // Llama al manejador de notificaciones del SDK. Ver `NotificationService` en la referencia de la API.
                break

            case "TNS":
                // Notificaciones de transacciones.
                // Actualiza el historial de transacciones. Ver `TransactionHistoryService` en la referencia de la API.
                break

            case "MG":
                // Reposición de claves activada por el TSP.
                // Inicia la reposición. Ver `ReplenishmentService` en la referencia de la API.
                break

            default:
                // Notificaciones no pertenecientes al SDK.
                break
            }

            completionHandler(.newData)
        } catch {
            completionHandler(.failed)
        }
    }
}

Procesar notificaciones CPS (operaciones de tarjeta digital)

Reenviar CPS notificaciones push al SDK usando NotificationService.processNotification().

El SDK de NFC Wallet procesa el push e interactúa con el backend de NFC Wallet.

El SDK puede entonces emitir eventos de notificación a través de NotificationService.notificationEventStream. Usa estos eventos para seguir la operación de la tarjeta digital.

Eventos compatibles:

  • unsupportedPushContent: Se desencadena cuando la carga útil del push no es compatible con el SDK.

  • completed: Se desencadena cuando el procesamiento finaliza correctamente (por ejemplo, después de provisionar un perfil de tarjeta y claves de pago).

  • serverMessage: Se desencadena cuando el backend devuelve una instrucción. El SDK proporciona un serverMessage objeto y un tokenizedId.

Mensaje del servidor

Cuando reciba serverMessage, analiza el serverMessage objeto para determinar qué operación solicitó el backend.

En particular:

  • requestInstallCard: Solicitud para instalar una tarjeta.

  • requestResumeCard: Solicitud para mover una tarjeta de suspendida a activa.

  • requestSuspendCard: Solicitud para mover una tarjeta de activa a suspendida.

  • requestDeleteCard: Solicitud para eliminar una tarjeta.

Procesar notificaciones TNS (transacciones)

Las notificaciones de transacciones proporcionan detalles sobre transacciones de pago completadas. Usa TransactionHistoryService para recuperar registros de transacciones.

A través de la notificación push, el aplicación de billetera digital obtiene la siguiente información a través del userInfo del parámetro de la notificación:

  • userInfo["sender"]: TNS.

  • userInfo["action"]: TNS:PaymentTransactionNotification.

  • userInfo["digitalCardId"]: Identificador de la tarjeta digital. Úsalo con TransactionHistoryService.records(forDigitalCardID:).

  • userInfo["transactionRecordType"]: Presente solo para tarjetas con doble marca. Pásalo a TransactionHistoryService.records(forDigitalCardID:transactionRecordType:) para recuperar solo los registros relevantes (primario o auxiliar).

Procesar notificaciones MG (reposición)

El TSP puede solicitar la reposición de claves de pago. Usa ReplenishmentService para reponer claves.

A través de la notificación push, el aplicación de billetera digital obtiene la siguiente información a través del userInfo del parámetro de la notificación:

  • userInfo["sender"]: MG.

  • userInfo["action"]: MG:ReplenishmentNeededNotification.

  • userInfo["digitalCardId"]: Identificador de la tarjeta digital. Úsalo con ReplenishmentService.replenish(digitalCardID:isForced:).

Última actualización

¿Te fue útil?