Widget VAULT IOS: Guía de Implementación

Esta guía te ayudará a implementar el SDK de VAULT en tu aplicación, enfocándose en la gestión eficiente de pagos y tarjetas.

Configuración del SDK


Para comenzar, es esencial configurar el SDK con los parámetros necesarios.

Importación e inicialización

import DeunaSDK

DeunaSDK.config(
    apiKey: apiKey,
    environment: environment, // or .production based on your need
    presentInModal: false, // Default: false , show the checkout in a pagesheet
    showCloseButton: true  // Default: true  ; Show a close button when
)

Parámetros de configuración

AtributoDescripciónTipo
apiKeyLlave pública proporcionada por DEUNA.String
environmentAmbiente de pruebas (.staging) o producción (.production).Enum:
presentInModalIndica si se muestra el SDK en un modal.Boolean
showCloseButtonIndica si se muestra el botón de cerrar.Boolean

Configuración de callbacks


Configura los callbacks para manejar los eventos del SDK de manera efectiva.

import DeunaSDK

val callbacks = DeunaSDK.Callbacks().apply {
    onSuccess = { response ->
        println("Pago exitoso")
        DeunaSDK.shared.closeCheckout()
        [email protected] = true
    }
    
    onError = { error ->
        println("Error en el pago: $error")
        DeunaSDK.shared.closeCheckout()
        [email protected] = false
    }
    
    onClose = {
        println("Proceso de pago cerrado")
        [email protected] = false
    }
    
    eventListener = { type, data ->
        println("Evento recibido: $data")
    }
}

Descripción de callbacks

CallbackDescripciónRespuesta
onSuccessSe ejecuta cuando una tarjeta se guarda exitosamente.Información detallada del pago (ver Responses 200).
onErrorSe activa en caso de error al guardar la tarjeta.Mensaje descriptivo del error.
onCloseSe llama cuando se cierra el proceso de pago.Indica el cierre del proceso de pago.
eventListenerSe dispara en cada evento emitido por el checkout.Tipo de evento y datos asociados.

Inicialización para gestión de tarjetas


Para gestionar tarjetas, sigue este proceso:

DeunaSDK.shared.initElements(element = DeunaSDK.Element.VAULT, callbacks = callbacks, userToken = "USER_TOKEN")

Parámetros para gestión de tarjetas

AtributoDescripciónTipo
elementEl elemento del SDK a inicializar (VAULT).Enum
callbacksCallbacks para gestionar los eventos del SDK.Objeto
userTokenToken de usuario para identificar la sesión.String

Demos experiencia