Saltar al contenido

Guías

Integración v1

Las cuentas que venían de la plataforma anterior pueden seguir usando su integración de v1 sin tocar nada mientras e-Payouts la mantenga habilitada. Para todo lo nuevo, usá la API v2.

Solo para cuentas migradas de v1. Las cuentas nuevas no tienen la integración v1 y no se les habilita: tienen que integrar con v2 (URL del paymentbox con modulo o POST /v2/payments y avisos JSON firmados). A las cuentas migradas les vamos a avisar una fecha límite para pasar a v2; ese día se desactiva la integración v1 y todo lo de esta página deja de funcionar para esa cuenta.

Qué sigue funcionando igual

PiezaCómo se usa (igual que en v1)
Paymentboxhttps://paymentbox.e-payouts.com/?uid=…&mid=…&price=…&ucode=… con los mismos parámetros de siempre (uid, mid, price, ucode, pm, email/cemail, name/cname, cc, y localprice/lp para el precio en moneda local).
createCodePOST https://api.e-payouts.com/createCode.php con formulario (uid, mid, apikey, type, email, price, ucode, cc, name, lastname, direct). La apikey de v1 es obligatoria. Devuelve code, price, error y url.
getDataGET https://api.e-payouts.com/getData.php?uid=…&mid=…&cc=…&apikey=…&price=… con tu apikey de v1 y solo desde las IP cargadas en el módulo.
Aviso a tu servidorGET a la URL de notificación del módulo con uid, mid, country, price, code, email, currency, result, ucode, type. result=ok cuando el pago se completa. Respondé HTTP 200.
Vuelta a tu sitioA la URL de éxito del módulo con code y ucode (además de pago y estado).

Ejemplo: createCode

HTTP
POST https://api.e-payouts.com/createCode.php
Content-Type: application/x-www-form-urlencoded

uid=1001&mid=5001&apikey=TU_APIKEY_V1&type=ppal&email=cliente%40example.com&price=15.50&cc=ES&ucode=PEDIDO-1001
Respuesta
{"code":"K7Q2ZP9XW4RM","price":"15.50","error":0,"url":"https://paymentbox.e-payouts.com/pagar?t=…"}

Con direct=1 responde directamente con la redirección al paymentbox. El code es el que después llega en el aviso y en la vuelta a tu sitio.

Ejemplo: aviso a tu servidor

HTTP
GET https://tu-sitio.com/notificacion.php?uid=1001&mid=5001&country=ES&price=15.500&code=K7Q2ZP9XW4RM&email=cliente%40example.com&currency=EUR&result=ok&ucode=PEDIDO-1001&type=ppal

Igual que en v1, el aviso no viene firmado en la URL. Además llega la cabecera X-Epayouts-Signature (HMAC de la URL completa con tu clave de firma de webhooks): si podés, verificala. Si tu servidor no responde 200, se reintenta.

Códigos de error

Como en v1: siempre HTTP 200 con {"error": …}.

createCodeSignificado
1falta type (método)
2falta email
3uid inválido
4mid inválido
5mid inexistente o de otro comercio
6uid inexistente
7cuenta deshabilitada o integración v1 no habilitada
8precio inválido
10método no disponible para ese módulo, país o monto
17demasiados intentos, probá en un minuto
18falta apikey
19sitio o módulo no habilitado
20apikey incorrecta
getDataSignificado
5mid inexistente o de otro comercio
6uid inexistente o cuenta deshabilitada
19sitio no habilitado
22apikey incorrecta
30IP no permitida en el módulo, o integración v1 no habilitada
31sin métodos disponibles para ese país y monto
32cc (país) inválido o faltante

Igual que v1, createCode devuelve algunos errores como texto con cero adelante ("01", "05", "17") y otros como número (18, 20): compará el valor como número, no como texto.

getData sin uid, mid o apikey responde vacío, como v1.

Pasar a v2

  • Paymentbox: cambiá uid+mid por modulo (el id del módulo que ves en tu panel de comercio → Código de integración). Paymentbox →
  • API: POST /v2/payments con las cabeceras firmadas, en lugar de createCode y getData. Autenticación →
  • Avisos: tu servidor pasa a recibir POST JSON firmado. Webhooks →
  • Paso intermedio opcional: las rutas https://api.e-payouts.com/v1/createCode y /v1/getData aceptan los parámetros de v1 con las cabeceras firmadas de v2. También dejan de funcionar cuando se desactiva la integración v1.