Agente de Pago REST
Descubra agentes de pago y ejecute depósitos y retiros facilitados por agentes.
Descripción general
Las Payment Agent APIs permiten a las aplicaciones encontrar agentes de pago activos, recuperar el perfil completo de un agente y mover fondos — depósitos de agentes y retiros de clientes — a través de ellos. Los agentes de pago depositan fondos en el Wallet de un cliente a través del endpoint transfer, mientras que los clientes retiran a través de un agente usando un código de verificación de un solo uso. Todos los endpoints son llamadas REST estándar y requieren el alcance OAuth2 payment.
REST API
Deriv-App-ID: YOUR_APP_ID y un token Authorization: Bearer YOUR_OAUTH_TOKEN que contenga el alcance payment.Especificación OpenAPI
Vea la especificación completa de OpenAPI 3.1.0 para definiciones de esquema detalladas y ejemplos:
OpenAPI Spec →Flujo de trabajo típico
Descubriendo agentes
- Llame a
GET /payment-agents/v1/agent-statisticspara encontrar qué monedas y países se atienden. - Liste agentes para una moneda con
GET /payment-agents/v1/agents, opcionalmente filtrado por país. Los resultados están paginados; usepageyper_pagepara navegar por ellos. - Obtenga el perfil completo de un solo agente con
GET /payment-agents/v1/agents/{id}.
Retiro de cliente
- Solicite un código de un solo uso a través de
POST /payment-agents/v1/withdraw/verification_code. El código se envía al correo electrónico o teléfono registrado del cliente y es válido hasta que expire. - Envíe el retiro con el código de 6 dígitos a través de
POST /payment-agents/v1/withdraw. - Si proporcionó un
request_id, consulteGET /payment-agents/v1/withdraw/{request_id}hasta que el estado se estabilice.
Depósito de agente — un agente de pago autenticado deposita fondos directamente en el Wallet de un cliente con POST /payment-agents/v1/transfer (se completa de forma sincrónica).
Endpoints Disponibles
/payment-agents/v1/agents/payment-agents/v1/agents/{id}/payment-agents/v1/agent-statistics/payment-agents/v1/clients/me/payment-agents/v1/clients/me/payment-agents/v1/transfer/payment-agents/v1/transfer/{request_id}/payment-agents/v1/withdraw/verification_code/payment-agents/v1/withdraw/payment-agents/v1/withdraw/{request_id}Autentificación
Todos los endpoints requieren el encabezado Deriv-App-ID y un encabezado Authorization: Bearer YOUR_OAUTH_TOKEN. El token debe tener el alcance payment; de lo contrario, la API devuelve 403 Forbidden.
Alcances de OAuth2
1curl -X GET "https://api.derivws.com/payment-agents/v1/agents?currency=USD" \
2 -H "Deriv-App-ID: YOUR_APP_ID" \
3 -H "Authorization: Bearer YOUR_OAUTH_TOKEN"Códigos de estado de respuesta
La API utiliza códigos de estado HTTP estándar para indicar éxito o fallo:
paymentNo todos los códigos se aplican a cada endpoint. 404 Not Found se aplica solo a GET /payment-agents/v1/agents/{id}, y GET /payment-agents/v1/agent-statistics no devuelve 400.
Formato de respuesta de error
Todas las respuestas de error siguen un formato consistente con un objeto data vacío, un array errors y metadata:
1{
2 "data": {},
3 "errors": [
4 {
5 "status": 400,
6 "code": "WalletFundsInsufficient",
7 "detail": {
8 "message": "The agent's wallet does not hold enough funds for this transfer"
9 }
10 }
11 ],
12 "metadata": {
13 "endpoint": "/payment-agents/v1/transfer",
14 "method": "POST",
15 "timing": 38
16 }
17}Los códigos de error incluyen: AgentIDInvalid, AgentNotFound, AgentInactive, AgentSelfTransfer, AgentSelfWithdraw, AgentCurrencyUnsupported, InvalidAgentID, NicknameNotFound, NoClientWallet, ClientCountryUnsupported, WithdrawalAmountMinimum, WithdrawalAmountMaximum, WalletFundsInsufficient, InvalidOTP, OtpRateLimitExceeded, RequestIDUsed, RequestIDNotFound, InvalidRequestIDFormat, TransferFailed, WithdrawalFailed, OTPValidationFailed, OtpValidationRateLimitExceeded, VerificationCodeFormatInvalid, VerificationCodeRequestFailed, WalletLookupFailed, NicknameLookupFailed, ClientIdentityLookupFailed
¿Alguna otra pregunta? Póngase en contacto