Casos de uso

Cada uno de estos casos de uso se gestiona directamente desde la primera etapa del pago. Es decir, al enviar la solicitudCharge/createPayment.

Cómo ofrecer al comprador que guarde su tarjeta

Si desea ofrecer al comprador que registre su tarjeta, es necesario:

  • Indique el e-mail del comprador en elCharge/createPayment
  • Ingresar la referencia del comprador (se recomienda encarecidamente ya que se puede utilizar más adelante para el pago un clic)
  • Enviar el parámetroformAction : ASK_RESGISTER_PAY.

Es responsabilidad del comerciante garantizar que la referencia del comprador sea única.

Ejemplo de solicitud:

{
    "amount": ...,
    "currency": ...,
    "orderId": "myOrderId",
    "formAction" : "ASK_REGISTER_PAY",
    "customer": {
        "reference": "cust-25634",
        "email": "joh.doe@mail.com"
    }
}

Cuando el comprador ingrese su tarjeta en el formulario de pago, si la tarjeta se puede guardar, podrá hacerlo automáticamente marcando la casilla correspondiente. Si el comprador marca la casilla y que el pago es exitoso, la respuesta contendrá el identificador del token que se usará para rellenar el formulario de pago.

Cómo hacer un registro de tarjeta sin pago

Si desea guardar una tarjeta sin hacer un pago, debe:

  • Llamar al WSCharge/createTokenen lugar deCharge/createPayment
  • Indicar el e-mail del comprador en la solicitudCharge/createToken
  • Ingresar la referencia del comprador (se recomienda encarecidamente ya que se puede utilizar más adelante para el pago un clic)

En tal caso, el usuario puede registrar su tarjeta sin realizar un pago. El control de errores sigue siendo el mismo.

Pago en un solo clic: mostrar la lista de tarjetas guardadas

Si desea ofrecer la lista de tarjetas guardadas al comprador, es necesario:

  • Asegurarse de que las tarjetas que registre estén asociadas a la referencia del comprador, es decir, al parámetrocustomer.reference.
  • Definir el parámetrocustomer.referenceen el WSCharge/createPayment
  • Durante los pagos, asignar al campo formAction el valorCUSTOMER_WALLETen la solicitudCharge/createPayment.
{
    "amount": ...,
    "currency": ...,
    "orderId": "myOrderId",
    "formAction": "CUSTOMER_WALLET", 
    "customer": {
        "reference": "cust-25634",
        "email": "joh.doe@mail.com"
    }
}

Si en su empresa se han registrado una o más tarjetas con la referencia del comprador transferida como parámetro, se ofrecerán automáticamente al comprador en el formulario de pago.

El comprador también tiene la posibilidad de pagar con otra tarjeta. Gracias al parámetroformAction : CUSTOMER_WALLET, podrá guardar esta nueva tarjeta.

Nota:

No se ofrecen los medios de pago expirados.

Pago en un solo clic: rellenar previamente el formulario con una tarjeta guardada

Esto significa que, al registrar una tarjeta, obtiene el identificador del token de la tarjeta en la respuesta del SDK. El identificador del token se indica en el parámetrotransaction.paymentMethodToken.

Es entonces cuando se puede pasar en la solicitudCharge/createPaymenten el parámetro:paymentMethodToken.

{
    "amount": ...,
    "currency": ...,
    "orderId": "myOrderId",
	"paymentMethodToken": "268431681321684321681"
}

El SDK mostrará un formulario de pago de solo lectura previamente completado, el comprador solo deberá ingresar el CVV de ser necesario.