Generar devolución en efectivo vía API

1. Crear al cliente

Después de configurar las claves de prueba y la versión de la API, se deberá crear un objeto: Customer, el cual contendrá la información del cliente que podrá cobrar la devolución.

-H "Accept: application/vnd.conekta-v2.0.0+json" \
-H "Content-type: application/json" \
-u key_YOUR_PRIVATE_API_KEY: \
-X POST -d '{
       "name": "User",
       "email": "[email protected]",
       "phone": "5566982096"
}' https://api.conekta.io/customers
{
    "livemode": false,
    "name": "User",
    "email": "[email protected]",
    "phone": "5566982096",
    "id": "cus_2pwMQPxiLJ8WzzqZJ",
    "object": "customer",
    "created_at": 1623858787,
    "corporate": false,
    "custom_reference": ""
}

Parámetros del cliente:

ParámetroDescripciónTipoRequerido
nameNombre del cliente.string
emailUna dirección de correo electrónico es una serie de caracteres personalizables seguidos de un símbolo universal de Internet, la arroba (@), el nombre de un servidor host y de una terminación de un dominio web (.mx, .com, .org, .net, etc.).string
phoneNúmero de teléfono del cliente.stringNo

❗️

IMPORTANTE:

Respecto al parámetro email: Asegurarse que es un email válido, ya que por este medio se enviarán las notificaciones y la referencia de cobro.
Si vas a reutilizar los emails de tu base de customers asegúrate que tus clientes pueden recibir correos en esa cuenta.

2. Creación de referencia

Una vez realizado el paso anterior el comercio tiene la posibilidad de generar referencias a los clientes dados de alta dentro de su compañía. En solicitud podrá definir monto de devolución así como el motivo de la misma.

-H "Accept: application/vnd.conekta-v2.0.0+json" \
-H "Content-type: application/json" \
-u key_YOUR_PRIVATE_API_KEY: \
-X POST -d '{
        "currency": "MXN",
        "amount": 2000,
        "customer_info": {
           "customer_id": "cus_2oAokFrKM7CyVxGJm"
        },
        "allowed_payout_methods": ["cashout"],
        "reason": "Referencia de devolución",
        "payout": { "payout_method": { "type": "cashout" } },
        "metadata": { "custom_client_id": "12345" }
}' https://api.conekta.io/payout_orders
{
    "id": "9a67e7ef-784b-468f-be54-06bc9c1834fb",
    "amount": 5000,
    "currency": "MXN",
    "allowed_payout_methods": [
        "cashout"
    ],
    "reference": "1025292250000330",
    "reason": "Prueba",
    "livemode": true,
    "created_at": 1668117996,
    "updated_at": 1668117998,
    "customer_info": {
        "id": "cus_2snrLE3jZ2hzi8quw",
        "name": "Cliente cashout",
        "email": "[email protected]",
        "phone": "525566778899"
    },
    "object": "payout_order",
    "expires_at": 1668290795,
    "metadata": {
        "client": "client 1"
    },
    "status": "pending",
    "payouts": [
        {
            "id": "payout_2sppYGEBPkxrM8rM7",
            "amount": 5000,
            "currency": "MXN",
            "payout_order_id": "9a67e7ef-784b-468f-be54-06bc9c1834fb",
            "object": "payout",
            "expires_at": 1668290795
        }
    ]
}

Parámetros de la referencia:

ParámetroDescripciónTipoRequerido
currencyMoneda con la que se realizará el pago. Utiliza el código de 3 letras de la Norma Internacional ISO 4217.string
amountMonto de devolución en centavos.int ($20.00 = 2000)
customer_info.customer_idIdentificador del cliente.string
reasonMotivo de devolución.string(40)
metadataClave/valor que puede mantener campos personalizados.HashNo
referenceID con el que el cliente retira el dinero en OxxoString

👍

¡Listo!

Has generado una referencia de devolución, consulta nuestros tutoriales para conocer cómo cancelar, consultar balance, resolver errores, etc.