Transferencias y conciliación de contratos
Transferencias y conciliación de contratos: Agent Java SDK v0.3.0 integración, ejemplos, parámetros y semántica de respuesta.
Esta guía está dirigida a Agent Java SDK v0.3.0, Java 8+ y el contrato público etiquetado. Los ejemplos se ejecutan en un backend asociado después de inicializar client en Inicio rápido.
Requisitos previos de ejemplo
Los fragmentos Java comparten estas importaciones. Inicialice client usando el Inicio rápido y obtenga platformUserId del enlace guardado. Los ID de usuario/pedido de ejemplo deben reemplazarse con sus propios valores persistentes.
Transferencia de cantidad fija
Utilice transfer para transferencias de monto fijo. Direction.IN significa transferir
desde la plataforma de socios a 6MM. Direction.OUT significa transferir desde 6MM
volver a la plataforma de socios.
Utilice cadenas o BigDecimal para cantidades. No utilice double o float.
Transferir por agentUserId
Transferir por platformUserId
Proporcionar ambas identificaciones
Si se proporcionan ambos ID, el servicio valida que apunten al mismo usuario vinculado.
Campos de solicitud:
Campos de respuesta:
Confirmación de pedido e idempotencia
Después de llamar a transfer, el servicio del Agente llama sincrónicamente a la plataforma comercial.
núcleo en el camino principal. En la mayoría de los casos, la respuesta API ya contiene el
resultado central comercial sincrónico.
Requisitos de idempotencia:
- Utilice un
agentOrderNopara una transacción comercial. - Si HTTP se agota el tiempo de espera o la red falla, consulta el mismo
agentOrderNoprimero. - Webhooks se puede volver a intentar. Deduplicarlos por clave de idempotencia.
Transferir todo hacia afuera
transferAllOut mueve el saldo del lado retirable 6MM del usuario de regreso al
plataforma de socios.
Por platformUserId:
amount en la respuesta es el monto real transferido.
Orden inverso
La inversión se utiliza para compensar una orden de transferencia exitosa cuando el backend apoya el flujo inverso. Los casos típicos incluyen excepciones de pedidos locales de socios o reversión manual de la conciliación.
Campos:
Notas:
- La marcha atrás no es una operación de cancelación normal.
- Las órdenes inversas también deben ser idempotentes por número de orden.
- Después de revertir una orden original, webhook puede empujar la orden original
REVERSEDestado final.
Orden de consulta
Valores orderType admitidos:
TRANSFER_INTRANSFER_OUT
Campos de respuesta comunes:
Listar pedidos
Recomendaciones de paginación:
pagecomienza desde 1.- Mantenga
pageSizeen 100 o menos. - Para trabajos de conciliación, página por ventana de tiempo y deduplicación por
orderNo.
Guías fuente y relacionadas
- Fuente oficial v0.3.0
- Descripción general de consultas y paginación
- Cartera de financiación
- Guía de actualización
Devoluciones de llamadas de eventos de fondos
transfer.completed puede llevar SUCCESS, FAILED, o una actualización del pedido original de REVERSED; reverse.completed es un evento terminal de orden de reversión. transfer.dead significa que el estado final permanece sin confirmar después de los reintentos y necesita una conciliación manual, no un error confirmado. El nombre del evento por sí solo no prueba que se hayan acreditado los fondos.
El reconocimiento exitoso es distinto del movimiento de fondos exitoso: después de registrar una notificación targetStatus=FAILED válida, devuelve también HTTP 2xx. Persistir en la deduplicación de eventos de fondos por parte de orderType:orderId:targetStatus dentro del alcance del comerciante y environment.
Campos de eventos y JSON ejemplos · Verificación de firma, respuestas y reintentos