Merchants
Crear Factura
Crear una factura de pago para que un usuario la pague.
POST /v2/create_invoice
Crea una nueva factura de pago. La factura se crea con estado pending y genera una URL de pago que puedes compartir con tu cliente.
Autenticación
Credenciales de App (app-id + app-secret en headers).
Request
{
"amount": 25.00,
"description": "Compra de producto digital",
"remote_id": "order-12345",
"webhook": "https://mitienda.com/webhook/qvapay",
"products": [
{
"name": "Producto 1",
"price": 15.00,
"quantity": 1
},
{
"name": "Producto 2",
"price": 10.00,
"quantity": 1
}
],
"expire_at": "2024-12-31T23:59:59.000Z"
}Parámetros
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
amount | number | Si | Monto a cobrar (mayor a 0, máximo 100,000) |
description | string | Si | Descripción del pago (1-255 caracteres) |
remote_id | string | Si | Identificador externo de tu sistema (1-255 caracteres) |
webhook | string | No | URL para notificaciones de pago (debe ser URL válida) |
products | array | No | Lista de productos incluidos |
products[].name | string | Si | Nombre del producto |
products[].price | number | Si | Precio del producto |
products[].quantity | number | No | Cantidad (por defecto 1) |
expire_at | string | No | Fecha de expiración ISO 8601 (debe ser futura) |
Response
{
"app_id": "550e8400-e29b-41d4-a716-446655440000",
"amount": 25.00,
"description": "Compra de producto digital",
"remote_id": "order-12345",
"transaction_uuid": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"expire_at": "2024-12-31T23:59:59.000Z",
"url": "https://www.qvapay.com/pay/7c9e6679-7425-40de-944b-e07fc1f90ae7"
}Campos de respuesta
| Campo | Tipo | Descripción |
|---|---|---|
app_id | string | UUID de tu app |
amount | number | Monto de la factura |
description | string | Descripción del pago |
remote_id | string | Tu identificador externo |
transaction_uuid | string | UUID de la transacción en QvaPay |
expire_at | string | null | Fecha de expiración |
url | string | URL de pago para compartir con el cliente |
Errores
| Código | Descripción |
|---|---|
400 | Datos de request inválidos (monto, descripción, etc.) |