MÓDULOS
Checkout

Wallet

12min

Este tipo de procesamiento permite generar una operacion via API permitiendo personalizar al máximo la experiencia de pago.. Siempre se deben tener en cuenta las medidas de seguridad adecuadas para este tipo de Operatoria donde se manipulara el PAN del Cliente.



Generales

Nuestro checkout transparente le permitirá generar operaciones desde su sitio siempre y cuando las mismas sean de Tipo Tarjeta de Crédito o Débito. Además como parte de la creación del checkout también se le brindará un Checkout standard para el procesamiento de medios de pago NO tarjeta. En este tipo de Checkout hay algunos datos como Customer que son Obligatorios y deben enviarse siempre, de lo contrario la operación no podrá realizarse.

Requerimientos

  • Llave publica
  • Llave privada

Sitios Web

  • Calificación **A** o mayor en https://www.ssllabs.com/ssltest . Si el sitio web arroja menor a A las credenciales serán desactivadas automáticamente. Todos los sitios que utilicen esta operatoria serán monitoreados a diario.
  • Para Web se recomienda utilizar MobbexJS cuya función es simplificar el proceso.

Utilizando Script

SDK Actual: https://res.mobbex.com/js/sdk/[email protected]

Utilizando NPM: Web y React Native

npm i -S -E @mobbex/sdk

Creación de Checkout



Sólo desde el lado Servidor, este método NO puede ejecutarse desde el cliente

1) Crear Intencion de Cobro

POST: https://api.mobbex.com/p/checkout

Cabeceras:

  • api-key: Llave Privada

Parámetros:

Admite todos los parámetros de Checkout ( https://mobbex.dev/docs/checkout ), pero además se establecen los siguientes:

  • customer: Objeto de tipo JSON con los datos del cliente. Obligatorios:
    • uid: Identificador único e interno del cliente.
    • name: Nombre del Cliente.
    • identification: DNI.
    • phone: Número de Celular.
    • email: Email del Cliente
  • wallet: Habilita la opción de billetera virtual para el almacenado de Tarjetas (Opcional). En este caso debe estar en true.
  • options: Objeto con opciones.
    • domain: Dominio desde el que se procesará el Checkout (Obligatorio).

Ejemplo:

Shell


Respuesta: Para procesar en modo transparente se debe obtener data.wallet.it ya que será el parámetro necesario para el resto de las APIs.

JSON






JSON


Procesamiento con Wallet via API

La metogología via API no valida riesgo ni corre el servicio Anti-Fraude. Para esto debe usarse el SDK.



1) Generar un nuevo Checkout desde el lado Servidor utilizando Llave Privada. 2) Obtener desde el Objeto wallet.it ( intent_token ) y wallet.installments.reference 3) Procesar la Operación como en el Punto 4. Se debe enviar securityCode como parametro adicional en Body.

POST: https://api.mobbex.com/p/operations/{{intent_token}}

Cabeceras:



api-key: Llave **Pública** #### Parámetros (Body): - ```installment```: Reference Obtenido desde las cuotas calculadas para la tarjeta elegida en wallet. - ```securityCode```: Código de Seguridad de la tarjeta elegida. #### Respuesta Referencia: https://mobbex.dev/docs/statuses

```json { "id": "kS6D18unD", "status": { "code": "200", "text": "Aprobado", "message": "Transacción Aprobada" } } ``` --- # Uso del SDK > Tenga en cuenta que integrity ( SRI ) es obligatorio, de lo contrario sus credenciales pueden ser canceladas. {.is-warning} --- ```html <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" /> <title>Mobbex SDK</title> <script src="https://res.mobbex.com/js/sdk/[email protected]" integrity="sha384-INuoL0CSX9x+vgy/B2db2lIABc/zHYHFP0KR8gma14xjQBwLBT5k5Xt9kIiXMrF2" crossorigin="anonymous"></script> </head> <body> <noscript> You need to enable JavaScript to run this app. </noscript> <div id="root"> <ul> <li>Tarjeta 1</li> </ul> <input id="card_security_code" type="password" placeholder="Codigo de Seguridad" /> <br /> <!-- The button must not be in the FORM!! --> <button id="mobbex-pay" type="button">Pagar</button> </div> <script> document.getElementById("mobbex-pay").onclick = function() { window.MobbexJS.operation.process({ intentToken: "{{ intentToken }}", installment: "{{ cuota elegida }}" securityCode: document.getElementById("card_security_code").value }); }; </script> </body> </html> ```