Obtener métodos de pago
Devuelve los métodos de pago que tu cliente puede usar para un país y un importe, agrupados por tipo de pago. Cada método trae sus comisiones, el total que paga tu cliente, lo que se te acredita y los campos exactos del cliente que debes enviar para crear un depósito con él.
POST
/api/v1/pay-in/deposit-creation/available-payment-methods| Autenticación | HTTP Basic (api_key:api_secret) |
| Mueve dinero | No |
Cuerpo de la petición
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
amount | number | Sí | Importe del depósito. Positivo, con dos decimales como máximo, de 0.01 a 99999999.99. |
country | string | Sí | Código ISO de 3 letras de Obtener países. |
currency | string | No | Código de 3 letras de la moneda de amount (por ejemplo USD). |
fee_on_payer | boolean | No | true para cotizar con las comisiones sumadas a lo que paga tu cliente. Usa el mismo valor que enviarás al crear el depósito. Por defecto false. |
curl https://sandbox-api.cashela.com/api/v1/pay-in/deposit-creation/available-payment-methods \ -u "$CASHELA_API_KEY:$CASHELA_API_SECRET" \ -H "Content-Type: application/json" -H "Accept: application/json" \ -d '{ "amount": 25.50, "country": "CHL", "currency": "USD", "fee_on_payer": true }'Respuesta 200
data es una lista de tipos de pago; cada uno lista sus option_payments. El ejemplo está abreviado y sus valores son ilustrativos.
{ "success": true, "data": [ { "payment_type": "BANK_TRANSFER", "payment_name": "Bank Transfer", "option_payments": [ { "payment_method": "BX", "name": "Bank transfer", "logo": "https://…/logo.png", "is_accredited": { "currency": "USD", "amount": 25.5, "fee": 1.02, "total": 24.48 }, "payment_info": { "country": "CHL", "currency": "CLP", "rate": 940.12, "amount": 23973.06, "fee": 0, "tax": 0, "total": 23973.06 }, "required_fields": ["first_name", "last_name", "email", "phone", "document_key", "document_number"], "document_types": [ { "id": "RUT", "label": "Tax Identification Number", "regex": "^(?:[A-Za-z0-9]{8,9}|\\d{1,2}(?:\\.?\\d{3}){2}-[0-9kK])$" } ], "mandatory_fields": [ { "fieldName": "first_name", "type": "string", "required": true, "fieldRegex": null, "fieldLabel": "First name" } ], "availability": { "executable": true, "reason": null } } ] } ], "message": "Available payment methods retrieved successfully"}Campos de cada opción
| Campo | Descripción |
|---|---|
payment_method | El código que envías como payment_method al crear el depósito. |
name, logo | Nombre visible y logo del método. |
is_accredited | Lo que se te acredita, en tu moneda de liquidación: amount, fee, total. |
payment_info | Lo que paga tu cliente, en la moneda del método: currency, rate, amount, fee, tax, total. |
required_fields | Nombres de todos los campos que exige el depósito para este método, incluidos los propios del método (por ejemplo cbu). |
mandatory_fields | Los mismos campos con su detalle: fieldName, type, required, fieldRegex (formato), fieldLabel, y options cuando solo se aceptan algunos valores (envía uno de los options[].key). |
document_types | Los documentos que acepta este método: id es el valor que envías como document_key, label su nombre, regex el formato de document_number para ese tipo (null si no se publica). Vacío si el método no pide documento. |
data_standard | Solo en algunas cuentas: descripción canónica de cada campo (fields[].v1_key es la clave de la petición, requirement, expected_format, error_code). |
charge_breakdown | Solo opciones de tarjeta que cobran en USD: lo que se cobra a la tarjeta, siempre en USD: amount, processing_fee, fx_spread, tax, total. Ver Pagos con tarjeta. |
local_estimate | Solo opciones de tarjeta que cobran en USD: una estimación informativa en la moneda local del cliente (currency, rate, total). |
availability | Cuando aparece: executable: false (con reason: ALL_ROUTES_UNHEALTHY) significa que el método no está disponible temporalmente. Muéstralo como no disponible; crear un depósito con él se rechaza con 422. Si no aparece, está disponible. |
Ejemplo: cómo puede verse un catálogo
En producción en México, en una cuenta, el catálogo devolvió los tipos de pago BANK_TRANSFER, CREDIT_CARD, MOBILE_MONEY y VOUCHER. Es una ilustración, no una lista garantizada: tu cuenta puede ver más, menos u otros métodos.
Errores
| HTTP | Cuándo |
|---|---|
401 | Faltan credenciales o no son válidas. |
404 | El país no existe en el catálogo de Cashela ("Country not found."). |
422 | Petición no válida (amount con más de dos decimales, country de más de 3 letras…), o el depósito se rechaza por motivos de cumplimiento (code: PARTNER_PAYIN_COMPLIANCE_BLOCKED). |
503 | Una tasa o un catálogo necesario para cotizar no está disponible temporalmente. Reintenta más tarde. |
Si un país no tiene métodos para tu cuenta e importe, no recibes opciones para él. Ver Errores.