Transferências e reconciliação de contratos
Transferências e reconciliação de contratos: Integração Agent Java SDK v0.3.0, exemplos, parâmetros e semântica de resposta.
Este guia é direcionado a Agent Java SDK v0.3.0, Java 8+ e ao contrato público marcado. Os exemplos são executados em um back-end de parceiro após a inicialização de client em Início rápido.
Pré-requisitos de exemplo
Os trechos Java compartilham essas importações. Inicialize client usando o Quick Start e obtenha platformUserId da ligação salva. Os exemplos de IDs de usuário/pedido devem ser substituídos por seus próprios valores persistentes.
Transferência de valor fixo
Use transfer para transferências de valor fixo. Direction.IN significa transferir
da plataforma do parceiro para 6MM. Direction.OUT significa transferir de 6MM
de volta à plataforma do parceiro.
Use strings ou BigDecimal para valores. Não use double ou float.
Transferir por agentUserId
Transferir por platformUserId
Forneça os dois IDs
Se ambos os IDs forem fornecidos, o serviço validará que eles apontam para o mesmo usuário vinculado.
Campos de solicitação:
Campos de resposta:
Confirmação de pedido e idempotência
Depois que transfer for chamado, o serviço do Agente chama de forma síncrona a negociação
núcleo no caminho principal. Na maioria dos casos, a resposta API já contém o
resultado do núcleo de negociação síncrono.
Requisitos de idempotência:
- Use um
agentOrderNopara uma transação comercial. - Se HTTP expirar ou a rede falhar, consulte o mesmo
agentOrderNoprimeiro. - Webhooks pode ser tentado novamente. Desduplica-os por chave de idempotência.
Transferir tudo
transferAllOut move o saldo sacável do lado 6MM do usuário de volta para o
plataforma parceira.
Por platformUserId:
amount na resposta é o valor real transferido.
Ordem inversa
O reverso é usado para compensar uma ordem de transferência bem-sucedida quando o back-end suporta o fluxo reverso. Os casos típicos incluem exceções de pedidos locais de parceiros ou reversão de reconciliação manual.
Campos:
Notas:
- A reversão não é uma operação normal de cancelamento.
- As ordens reversas também devem ser idempotentes por número de ordem.
- Depois que um pedido original for revertido, webhook poderá empurrar o pedido original
REVERSEDestado final.
Ordem de consulta
Valores orderType suportados:
TRANSFER_INTRANSFER_OUT
Campos de resposta comuns:
Listar pedidos
Recomendações de paginação:
pagecomeça em 1.- Mantenha
pageSizeigual ou inferior a 100. - Para trabalhos de reconciliação, paginar por intervalo de tempo e desduplicar até
orderNo.
Fonte e guias relacionados
- Fonte oficial v0.3.0
- Visão geral da consulta e paginação
- Carteira de financiamento
- Guia de atualização
Retornos de chamada de eventos de fundos
transfer.completed pode conter SUCCESS, FAILED ou uma atualização de pedido original de REVERSED; reverse.completed é um evento terminal de ordem de reversão. transfer.dead significa que o estado final permanece não confirmado após novas tentativas e precisa de reconciliação manual, não de uma falha confirmada. O nome do evento por si só não prova que os fundos foram creditados.
O reconhecimento bem-sucedido é diferente da movimentação bem-sucedida de fundos: após registrar uma notificação targetStatus=FAILED válida, retorne HTTP 2xx também. Persistir a desduplicação de eventos de fundos por orderType:orderId:targetStatus no escopo do comerciante e environment.
Campos de evento e exemplos JSON · Verificação de assinatura, respostas e novas tentativas