Em resumo
Uma ordem de pagamento representa um único recebimento de fiat esperado. Quando você usa a via de conta virtual de uso único, cada ordem é lastreada por uma conta bancária dedicada, válida para apenas um pagamento. Os endpoints de Ordens de Pagamento permitem listar e acompanhar cada ordem no nível da master wallet ou restritas a um endereço filho específico.
Uma ordem de pagamento representa um único recebimento de fiat esperado. Quando você usa a via de conta virtual de uso único, cada ordem é lastreada por uma conta bancária dedicada, válida para apenas um pagamento. Os endpoints de Ordens de Pagamento permitem listar e acompanhar cada ordem no nível da master wallet ou restritas a um endereço filho específico.
Pré-requisitos
Antes de usar a API de Ordens de Pagamento, garanta que você tenha:1
API Key
Obtenha sua API key no Painel da Blockradar. Acesse Developers para gerar uma.
2
Wallet criada
Crie uma wallet pelo painel (consulte Criar uma Carteira Principal). Você precisará do
walletId para as operações de ordens de pagamento.3
Conformidade aprovada
Conclua o processo de due diligence no Painel: My wallets > Settings > Compliance
4
Recurso habilitado
Solicite a ativação do recurso de contas virtuais após a aprovação de conformidade. Entre em contato com [email protected] ou use o chat ao vivo no painel.
5
Ambiente mainnet
As contas virtuais estão disponíveis apenas na MAINNET. Ambientes testnet não oferecem suporte a operações com contas virtuais.
6
Suporte a stablecoin
Depositar fiat e convertê-lo em stablecoin é um recurso pago. Garanta que seu plano inclua acesso a stablecoins. Faça upgrade em Painel → Settings → Subscription.
Como funciona
Uma ordem de pagamento é criada sempre que um cliente inicia um depósito em fiat. Para a viaone_time_virtual_account, a Blockradar emite uma nova conta bancária virtual vinculada a essa ordem e ao seu conjunto de valores. Assim que o cliente paga, a ordem avança por seu ciclo de vida e a stablecoin correspondente é emitida e liquidada na wallet ou endereço vinculado.
Ordem criada
Uma ordem é gerada com uma referência, um valor esperado e sua via de cobrança.
Conta emitida
Para a via de conta virtual de uso único, uma conta bancária de uso único é anexada em
paymentInstructions.Pagamento recebido
O cliente paga a conta antes de
expiresAt; a ordem passa para processing e depois para paid.Liquidação
A stablecoin equivalente é emitida e liquidada na wallet ou endereço filho vinculado.
Status da ordem
Cada ordem informa seu status atual no ciclo de vida. Use o parâmetro de consultastatus para filtrar os resultados.
Vias de cobrança
O camporail identifica como a ordem é cobrada. As contas virtuais de uso único utilizam a via one_time_virtual_account.
Fluxo de criação vinculado à sessão
Comece a criação da ordem de pagamento solicitando uma cotação comassetId,
currency, amount e rail. Quando o depósito pertencer a um cliente
existente, inclua também customerId para que o KYC salvo do provedor possa ser
reutilizado. O adaptador do provedor infere o corredor de KYC a partir da moeda
fiat selecionada. A cotação retorna um sessionId e um sessionExpiresAt. A
sessão vincula a wallet, o ativo da wallet, a moeda fiat, o valor, a via, o
provedor, a rota de conversão, o cliente e o corredor de KYC por 20 minutos.
Recomendamos usar o sessionId retornado em todas as requisições seguintes:
- Inicialize o formulário com
additionalDataRequirements.dataquando não fornull. Ele contém valores reutilizáveis já salvos para o cliente, o provedor e o corredor. - Colete todos os valores ausentes exigidos por
additionalDataRequirements.schema. - Se o esquema contiver um
x-resolution, chamePOST /v1/wallets/{id}/deposit/fiat/payment-order-requirements/resolvecom osessionIde oadditionalDataatual. - Mescle os valores resolvidos em
additionalData. - Crie a ordem com
sessionId,additionalDatae quaisquer campos opcionais da ordem, comoreferenceoumetadata.
Quote request
Quote session
Resolve requirements
Create payment order
idDocument.number é o NIN de 11 dígitos do cliente e taxId.value é o BVN de
11 dígitos do cliente. Os requisitos variam por provedor, corredor e tipo de
entidade, portanto sempre renderize o esquema retornado pela cotação em vez de
fixar esses campos no código.
Quando a ordem é criada com KYC inline, a Blockradar o salva vinculado ao
cliente da empresa, ao provedor selecionado e ao corredor. Uma cotação posterior
com o mesmo customerId e corredor retorna o KYC salvo em
additionalDataRequirements.data. Enviar um KYC alterado em uma ordem posterior
atualiza o perfil salvo do corredor; nenhum endpoint de KYC separado é
necessário.
Para manter a compatibilidade com versões anteriores, sessionId é opcional. Se
você omiti-lo, envie os valores originais de assetId, currency, amount e
rail nas requisições de resolução de requisitos e de criação da ordem. Quando
sessionId estiver presente, os valores armazenados na sessão prevalecem.
Listar ordens de pagamento da master wallet
Retorna uma lista paginada de todas as ordens de pagamento criadas sob uma master wallet. Use os parâmetros de consulta para filtrar por status, via, moeda, ativo, intervalo de datas ou busca por texto livre.GET /v1/wallets/{id}/deposit/fiat/orders
Parâmetros de consulta
Exemplo de resposta
Listar ordens de pagamento do endereço filho
Retorna as ordens de pagamento restritas a um único endereço filho. A resposta inclui os mesmos campos da ordem, além de detalhes adicionais de liquidação, provedor e cliente.GET /v1/wallets/{walletId}/addresses/{addressId}/deposit/fiat/orders
Parâmetros de caminho
Parâmetros de consulta
Exemplo de resposta
Campos de resposta
Os campos
amountFiatReceived, amountSettled, providerReference, provider e customer são retornados no endpoint de endereço filho e são preenchidos à medida que a ordem avança pela liquidação.Referência da API
Descoberta e configuração
Master Wallet
Endereço filho
Recuperar, atualizar e cancelar uma ordem exigem apenas o ID da ordem, portanto
não há equivalente para endereços filhos. Use os endpoints da master wallet
acima para qualquer ordem, inclusive as criadas contra um endereço filho.A API também expõe uma operação Find Fiat Deposit
(
POST /v1/wallets/{id}/deposit/fiat/finder) que localiza um depósito em fiat e
seus detalhes de processamento a partir de uma referência de pagamento. É útil
para conciliar um pagamento que um cliente afirma ter enviado com a ordem à qual
ele pertence.
