Skip to main content
POST
https://api.onepay.la/v1
/
webhooks
Crear webhook
curl --request POST \
  --url https://api.onepay.la/v1/webhooks \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "description": "<string>",
  "url": "<string>",
  "events": [
    {}
  ]
}
'
{
  "data": {
    "id": "9e5ccd4a-d2f0-49dd-87fc-a0da752bd166",
    "name": "Notificaciones de Pagos",
    "description": "Webhook para recibir eventos de pagos aprobados y rechazados",
    "url": "https://mi-servidor.com/webhooks/onepay",
    "events": [
      "payment.approved",
      "payment.rejected",
      "payment.expired"
    ],
    "secret": "wh_tok_j8K3mN9pQ2rS5tU7vX0yZ1aB4cD6eF8gH0iJ2kL4mN6",
    "header": "wh_hdr_A1bC3dE5fG7hI9jK1lM3nO5pQ7rS9tU1vW3xY5zA7",
    "is_test": false,
    "created_at": "2025-02-09T16:30:00.000000Z",
    "updated_at": "2025-02-09T16:30:00.000000Z"
  }
}
Crea un nuevo webhook para recibir notificaciones en tiempo real sobre eventos en tu cuenta.

Body

name
string
required
Nombre descriptivo del webhook (máximo 255 caracteres)
description
string
Descripción opcional del webhook (máximo 500 caracteres)
url
string
required
URL HTTPS donde OnePay enviará las notificaciones (máximo 500 caracteres)
events
array
required
Lista de eventos que deseas recibir. Debes incluir al menos un evento. Solo se aceptan eventos válidos definidos en el sistema.Eventos de Pagos (Cobros):
  • payment.created - Cobro creado
  • payment.approved - Cobro aprobado
  • payment.rejected - Cobro rechazado
  • payment.expired - Cobro expirado
Eventos de Cargos:
  • charge.created - Cargo creado
  • charge.succeeded - Cargo exitoso
  • charge.failed - Cargo fallido
Eventos de Dispersiones:
  • cashout.created - Dispersión creada
  • cashout.approved - Dispersión aprobada
  • cashout.rejected - Dispersión rechazada
Eventos de Suscripciones:
  • subscription.created - Suscripción creada
  • subscription.active - Suscripción activa
  • subscription.cancelled - Suscripción cancelada
Eventos de Cuentas:
  • account.validated - Cuenta validada
  • account.failed - Validación de cuenta fallida
Si envías un evento que no está en la lista anterior, recibirás un error de validación 422.

Ejemplos de uso

curl https://api.onepay.la/v1/webhooks \
  -X POST \
  -H "Authorization: Bearer sk_test_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Notificaciones de Pagos",
    "description": "Webhook para recibir eventos de pagos aprobados y rechazados",
    "url": "https://mi-servidor.com/webhooks/onepay",
    "events": [
      "payment.approved",
      "payment.rejected",
      "payment.expired"
    ]
  }'

Response

data
object
Datos del webhook creado

Ejemplo de respuesta

{
  "data": {
    "id": "9e5ccd4a-d2f0-49dd-87fc-a0da752bd166",
    "name": "Notificaciones de Pagos",
    "description": "Webhook para recibir eventos de pagos aprobados y rechazados",
    "url": "https://mi-servidor.com/webhooks/onepay",
    "events": [
      "payment.approved",
      "payment.rejected",
      "payment.expired"
    ],
    "secret": "wh_tok_j8K3mN9pQ2rS5tU7vX0yZ1aB4cD6eF8gH0iJ2kL4mN6",
    "header": "wh_hdr_A1bC3dE5fG7hI9jK1lM3nO5pQ7rS9tU1vW3xY5zA7",
    "is_test": false,
    "created_at": "2025-02-09T16:30:00.000000Z",
    "updated_at": "2025-02-09T16:30:00.000000Z"
  }
}
Importante sobre el secret: El token secret se genera automáticamente y solo se muestra una vez al crear el webhook. Úsalo para validar la firma HMAC-SHA256 en el header x-signature de cada notificación y así verificar que proviene de OnePay.
Una vez creado el webhook, OnePay comenzará a enviar notificaciones a la URL configurada cuando ocurran los eventos seleccionados. Asegúrate de implementar la validación de firma para garantizar la seguridad de tu integración.