P2P
Editar Oferta P2P
Modificar los parámetros de una oferta P2P existente en estado abierto.
POST /p2p/:uuid/edit
Edita una oferta P2P existente. Solo el creador puede editarla y la oferta debe estar en estado open. Para ofertas de venta, si se modifica el monto se ajusta automáticamente el saldo del usuario.
Autenticación
Bearer Token (Authorization: Bearer <token> en headers).
Request
curl -X POST "https://api.qvapay.com/p2p/7c9e6679-7425-40de-944b-e07fc1f90ae7/edit" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"amount": 60,
"receive": 15000,
"only_vip": 0,
"message": "Nuevo mensaje",
"webhook": "https://example.com/webhook",
"tags": ["transferencia"],
"private": false
}'Parámetros (URL)
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
uuid | string | Sí | UUID de la oferta P2P |
Parámetros (body JSON)
Todos los parámetros son opcionales. Solo se actualizan los campos proporcionados.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
amount | number | No | Nueva cantidad en QUSD (0.1 - 100,000). En ofertas sell, ajusta el saldo |
receive | number | No | Nueva cantidad a recibir (0.1 - 1,000,000) |
only_vip | boolean | number | No | Restringir a usuarios VIP |
message | string | No | Nuevo mensaje público (máx. 79 caracteres) |
webhook | string | No | Nueva URL de webhook |
tags | array | No | Nuevas etiquetas (reemplaza las existentes, máx. 10) |
private | boolean | No | Solo se permite cambiar de privada a pública (false), no al revés |
Response (200)
{
"msg": "Oferta P2P editada correctamente",
"p2p": {
"uuid": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"type": "buy",
"coin": "BANK_CUP",
"amount": 60.00,
"receive": 15000.00,
"only_kyc": 0,
"private": 0,
"only_vip": 0,
"status": "open",
"details": { "cuenta": "1234567890" },
"message": "Nuevo mensaje",
"webhook": "https://example.com/webhook",
"created_at": "2024-06-20T14:30:00.000Z",
"updated_at": "2024-06-20T15:00:00.000Z"
}
}Webhook
Si la oferta tiene un webhook configurado, se enviará un POST con:
{
"operation": "updated",
"p2p": { ... }
}Errores
| Código | Descripción |
|---|---|
400 | Datos inválidos, oferta no está en estado open, saldo insuficiente, o intento de cambiar oferta pública a privada |
401 | Token de autenticación inválido o ausente |
403 | No eres el creador de esta oferta |
404 | Oferta P2P no encontrada |
409 | La oferta cambió de estado durante la operación |
429 | Demasiadas solicitudes (límite: 1 cada 20 segundos) |
500 | Error interno al ajustar el saldo |