Ir al contenido
neo-pays

Desarrolladores

Primer pago en una sola llamada.

Claves de prueba que recorren el mismo código que producción, idempotencia integrada, webhooks firmados y una especificación OpenAPI pública.

Modo de prueba

Claves de prueba que atraviesan el mismo código que producción.

Las claves sk_test_ toman el mismo camino que sk_live_ para sus cobros por dinero móvil y por transferencia, sin que se mueva dinero.

Una clave API se muestra una sola vez, al crearla. Datos ilustrativos.

Contrato

Cuatro reglas, válidas en todos los lenguajes.

  • Idempotencia

    Envíe Idempotency-Key en cada creación: 201 la primera vez, 200 cuando la clave devuelve la operación existente, 409 en caso de conflicto. La clave designa la operación deseada, no el intento.

  • Versions

    v1 es una superficie de compatibilidad congelada; toda capacidad nueva llega en v2. Cada ruta lleva su propio prefijo de versión.

  • Errores

    Un error se lee por su código, estable y hecho para ser probado; el mensaje va dirigido a una persona y puede cambiar.

  • Importes

    Los importes son cadenas de caracteres, nunca números en coma flotante.

  • Corridors

    GET /v1/corridors: el enrutamiento es inspeccionable — lo que puede utilizar, lo que la plataforma elegirá, lo que puede imponer.

  • Claves API

    Una clave se muestra una sola vez, al crearla. Puede restringirla a una lista de direcciones IP.

Ejemplos

Crear un cobro.

El importe es una cadena, la clave de idempotencia designa la operación deseada — no el intento. Su panel de control genera estos fragmentos para cada endpoint, con la URL base de su cuenta.

GET https://api.neo-pays.com/v1/corridors
Authorization: Bearer $NEOPAYS_SECRET_KEY
curl https://api.neo-pays.com/v1/payments \
  -H "Authorization: Bearer $NEOPAYS_SECRET_KEY" \
  -H "Idempotency-Key: commande-1042" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": "10000",
    "currency": "XOF",
    "platform_id": "<platform_id>",
    "merchant_reference": "commande-1042"
  }'

HTTP/1.1 201 Created

Webhooks

Firmados, con marca de tiempo, reentregados.

Cada entrega lleva X-NeoPays-Signature: una marca de tiempo y un HMAC-SHA256 del cuerpo bruto. Rechace más allá de 300 s.

  • 20 tipos de eventos, hasta 10 endpoints por cuenta.
  • Un endpoint de prueba para verificar su implementación.
  • Una dirección IP de salida fija, para sus listas de direcciones permitidas; protección anti-SSRF del lado de la plataforma.
POST /webhooks/neo-pays
X-NeoPays-Signature: t=1723651200,v1=9f2c…d41a
Content-Type: application/json

v1 == HMAC-SHA256(secret, t + "." + body)
|now − t| ≤ 300 s
Entrega de un webhook y su escala de intentos: 60 s, 5 min, 30 min, 2 h. Datos ilustrativos.

Clientes de referencia

Más de diez lenguajes, ningún paquete publicado.

Un cliente de referencia por lenguaje — un centenar de líneas, sin dependencias, para copiar en su proyecto. Un script de integración alojado abre el pago en una ventana modal sobre sus páginas web.

Desde su panel de control, cada endpoint muestra su fragmento en cURL, PHP, Node.js, Python y Go, generado a partir de la definición del propio endpoint.

OpenAPI

Una especificación pública, verificada contra las rutas.

GET /v1/openapi.json: 42 operaciones, verificadas contra la tabla de rutas en cada compilación.

GET https://api.neo-pays.com/v1/openapi.json

Primer pago en una sola llamada.

La documentación primero: guías, referencia generada, webhooks. Las claves de prueba atraviesan el mismo código que producción.