Generar Retiro en Efectivo vía Direct API

Crear Customer

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 el dinero.

-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
}

Parámetros del Customer

Parámetro

Descripción

Tipo

Requerido

name

Nombre del cliente.

string

email

Una 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

phone

Número de teléfono del cliente.

string

No

❗️

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. Caso contrario, puedes exponer la referencia en tu front con las medidas de seguridad adecuadas y poner una dirección genérica en el parámetro email.

Crear 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 la solicitud podrá definir monto a retirar 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": 3000,
        "customer_info": {
           "customer_id": "cus_2oAokFrKM7CyVxGJm"
        },
        "allowed_payout_methods": ["cashout"],
        "reason": "Referencia de retiro en efectivo",
        "payout": { "payout_method": { "type": "cashout" } },
        "metadata": { "custom_client_id": "12345" }
}' https://api.conekta.io/payout_orders
{
    "id": "9a67e7ef-784b-468f-be54-06bc9c1834fb",
    "amount": 3000,
    "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:

🚧

Monto de retiro

El parámetro amount debe siempre tener la terminación 00, es decir, el monto de retiro debe ser un número cerrado.

Parámetro

Descripción

Tipo

Requerido

currency

Moneda con la que se realizará el pago. Utiliza el código de 3 letras de la Norma Internacional ISO 4217.

string

amount

Monto del retiro en centavos.

int ($30.00 = 3000)

customer_info.customer_id

Identificador del cliente.

string

reason

Motivo del retiro.

string(40)

metadata

Clave/valor que puede mantener campos personalizados.

Hash

No

reference

ID con el que el cliente retira el dinero en Oxxo

String

👍

¡Listo!

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