Saltar para o conteúdo principal
PATCH
curl

Autorizações

x-api-key
string
header
obrigatório

A chave de API da sua aplicação, a partir de Programadores -> Chaves de API na Business Console. A chave principal tem acesso total. Uma chave nomeada pode ter o âmbito definido: nenhum, leitura ou escrita por recurso, limitada a alguns fluxos ou a sessões aprovadas, a uma lista de endereços IP e a uma data de validade. 401 significa que a chave está incorreta, revogada ou expirada; 403 significa que nenhuma chave foi enviada, que a chave não tem acesso a este recurso ou ação, ou que o pedido veio de um endereço fora da sua lista de IP; 404 numa rota de sessão significa que a sessão está fora dos fluxos ou estados da chave. Uma chave sem acesso a multimédia recebe URLs de imagens, vídeos e PDFs como nulos, e uma chave sem permissão de escrita em sessões recebe ligações de sessão e tokens como nulos. Consulte https://docs.didit.me/console/api-keys.

Parâmetros de caminho

transaction_id
string<uuid>
obrigatório

UUID de transação estável da Didit proprietário da transferência.

Corpo

application/json

Forneça exatamente um de: payment_txn_id (finish), action=cancel, action=resend, action=update_compliance_email com compliance_email, action=update_originator_wallet com wallet_address ou action=beneficiary_vasp com beneficiary_vasp.

payment_txn_id
string

O hash da transação on-chain. Exige que a transferência seja uma transferência de saída no estado COMPLETED.

action
enum<string>

"cancel" cancela uma transferência não terminal. "resend" executa novamente o encaminhamento de uma transferência enviada retida em COUNTERPARTY_VASP_NOT_FOUND, COUNTERPARTY_VASP_NOT_REACHABLE ou NOT_ENOUGH_COUNTERPARTY_DATA. "update_compliance_email" substitui o e-mail de conformidade para o qual o pedido é enviado, numa transferência enviada num desses três estados; envie "resend" em seguida. "update_originator_wallet" regista a carteira de onde os fundos saíram efetivamente (wallet_address, memo). "beneficiary_vasp" indica manualmente o VASP da contraparte (requer beneficiary_vasp) para uma transferência enviada num desses estados: é encaminhada para esse VASP e enviada novamente.

Opções disponíveis:
cancel,
resend,
update_compliance_email,
update_originator_wallet,
beneficiary_vasp
compliance_email
string<email>

Obrigatório com action: update_compliance_email. Mantido como beneficiary_data.counterparty_vasp_email desta transferência: pertence apenas a esta transferência e não é associado a nenhuma entrada do diretório nem a nenhuma lista de contactos.

Maximum string length: 254
wallet_address
string

Com action: update_originator_wallet: a carteira de onde os fundos saíram. Quando as entradas UTXO da transferência são conhecidas, tem de ser uma delas.

Maximum string length: 128
memo
string

Com action: update_originator_wallet: o memo ou etiqueta da carteira numa rede com memo. Opcional.

Maximum string length: 256
beneficiary_vasp
string<uuid>

Obrigatório com action=beneficiary_vasp: o id de um VASP do diretório, de GET /v3/travel-rule/vasps/. A sua escolha tem prioridade sobre qualquer passo de deteção automática, que nunca a substitui.

Resposta

A transferência atualizada. Após update_compliance_email, o respetivo estado permanece inalterado e mantém reason: email_undeliverable até ao próximo resend.

Objeto completo de transferência devolvido pelos endpoints de confirmação de propriedade e de finalização/cancelamento. Enquanto a propriedade da carteira de uma transferência recebida não estiver confirmada, os campos originator_data e beneficiary_data da contraparte são devolvidos mascarados (a primeira letra de cada palavra é mantida; a carteira, a blockchain e o encaminhamento do VASP permanecem legíveis) e data_masked é true.

uuid
string<uuid>
status
enum<string>
Opções disponíveis:
AWAITING_COUNTERPARTY,
ON_HOLD,
COMPLETED,
FINISHED,
CANCELLED,
EXPIRED,
COUNTERPARTY_MISMATCHED_DATA,
COUNTERPARTY_VASP_NOT_FOUND,
COUNTERPARTY_VASP_NOT_REACHABLE,
UNCONFIRMED_OWNERSHIP,
COUNTERPARTY_VASP_GENERAL_DECLINE,
NOT_ENOUGH_COUNTERPARTY_DATA,
NOT_APPLICABLE
direction
enum<string>
Opções disponíveis:
INBOUND,
OUTBOUND
rail
enum<string> | null

O canal através do qual a transferência foi encaminhada, ou null quando nenhum canal foi selecionado (por exemplo, abaixo do limiar, uma carteira de contraparte autocustodiada, um registo pós-depósito, ou nenhuma contraparte alcançável). INTERNAL significa que ambos os lados são aplicações da Didit; EMAIL significa que a contraparte foi alcançada através de uma ligação de recolha enviada por e-mail. TEST_VASP significa que o Didit Test VASP respondeu à transferência em sandbox. Através de GTR, VERIFYVASP e SYGNA, a Didit lê a resposta da contraparte a partir da resposta da rede ou consultando-a a cada 5 minutos. TRUST apenas envia, pelo que uma transferência TRUST permanece AWAITING_COUNTERPARTY até expirar. Um canal de rede só é utilizado quando tiver associado a sua própria adesão a essa rede. É escolhido após o retorno da criação da transação, pelo que é null nessa resposta.

Opções disponíveis:
INTERNAL,
TRP,
GTR,
TRUST,
VERIFYVASP,
SYGNA,
EMAIL,
TEST_VASP,
null
protocol
string | null
ivms_version
string
Exemplo:

"ivms101.2023"

required
boolean
ownership_confirmed
boolean | null
deadline_at
string<date-time> | null
timeline
object[]
counterparty_vasp
object | null
originator_data
object

Parte ordenante. Para uma transferência de entrada, os valores da contraparte são ocultados até que a propriedade seja confirmada.

beneficiary_data
object

Parte beneficiária. Para uma transferência de entrada, os valores da contraparte são ocultados até que a propriedade seja confirmada.

name_match
object · null · null

A comparação de nomes que decidiu a transferência, ou nulo até que uma seja executada. Enquanto as partes estiverem mascaradas, e na cópia do outro cliente de uma troca INTERNAL, transfer_name, compared_name, matched_names e mismatched_names são ocultados. score e matched podem divergir: matched segue o rigor, score é a semelhança dos dois nomes completos.

data_match
object | null

Comparação campo a campo dos dados das partes da transferência com o que a outra parte sabe sobre o titular da carteira. Indica campos e resultados, nunca valores, para que permaneça legível enquanto os dados da contraparte estiverem mascarados. Null até que uma comparação tenha sido executada.

mismatched_fields
string[]

Atalho para data_match.mismatched_fields. Vazio quando nada difere.

data_unmasked
object | null

Registo de auditoria do momento em que os dados da contraparte foram desmascarados. Nulo enquanto os dados ainda estiverem mascarados e para transferências de saída.

data_masked
boolean

Verdadeiro enquanto os dados pessoais da contraparte estiverem mascarados nesta resposta.

created_at
string<date-time>
delivery
object | null

O estado em que se encontra a mensagem mais recente que esta transferência deve à outra parte. Nulo quando a transferência nunca deveu nenhuma (por exemplo, abaixo de threshold_amount, uma carteira autocustodiada declarada ou um registo sunrise).

discovery
object[]

Como a Didit procurou a contraparte, uma entrada por passo executado. Vazio quando não foi executada qualquer deteção, por exemplo, numa transferência recebida.

reason
string

O motivo pelo qual uma transferência COUNTERPARTY_VASP_NOT_FOUND ou COUNTERPARTY_VASP_NOT_REACHABLE está bloqueada; "" para qualquer outro estado. Uma falha na entrega determina-o primeiro, apenas em COUNTERPARTY_VASP_NOT_REACHABLE: email_undeliverable (o fornecedor de e-mail recusou o e-mail de conformidade e não resta nenhum endereço para tentar: quando foi enviado, num lembrete ou como uma devolução permanente comunicada posteriormente) ou delivery_failed (o canal que estava a efetuar a entrega falhou definitivamente: um canal de rede recusou a mensagem ou esgotou as tentativas, um host de identidade TRP não respondeu, ou o host TRP da contraparte não aceitou a consulta). Caso contrário, o rastreio de discovery determina-o: awaiting_end_user (nenhum passo identificou uma contraparte que a Didit consiga contactar), directory_match_no_route (um passo identificou um VASP de diretório que não tem rota), picked_member_without_proven_wallet (o utilizador final escolheu um cliente Didit que não comprovou o controlo da carteira), ou no_directory_match quando o rastreio não fornece outro motivo. Um novo envio faz avançar a transferência, pelo que o motivo é limpo. Consulte Por que motivo uma transferência está bloqueada.

next_actions
object[]

O que faz a transferência avançar; [] para qualquer estado exceto COUNTERPARTY_VASP_NOT_FOUND ou COUNTERPARTY_VASP_NOT_REACHABLE. email_undeliverable disponibiliza update_compliance_email e, em seguida, resend. delivery_failed disponibiliza resend. Um motivo de descoberta disponibiliza select_counterparty_vasp, declare_self_hosted, add_vasp_hint e resend.

chain_details
object

Como a blockchain da transferência designa as suas duas carteiras, quando se trata de mais do que um endereço a pagar a outro. Vazio ({}) para uma transferência numa blockchain baseada em contas (EVM, Solana, Tron), onde os dois endereços são as carteiras. A correspondência, o encaminhamento e o livro de endereços leem primeiro as carteiras a partir daqui.

Última modificação em 7 de novembro de 2026