Saltar para o conteúdo principal
POST
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.

Corpo

application/json
transaction_id
string
obrigatório

O seu identificador exclusivo para esta transação (máx. 128 carateres).

Exemplo:

"your-txn-2026-05-17-001"

transaction_category
enum<string>
obrigatório

Categoria da transação. Aliases em CamelCase (travelRule, userPlatformEvent, gamblingBet, …) também são aceites; o valor armazenado/devolvido é camelCase para categorias compostas por várias palavras.

Opções disponíveis:
finance,
kyc,
travel_rule,
user_event,
audit_trail_event,
gambling_bet,
gambling_limit_change,
gambling_bonus_change,
travelRule
Exemplo:

"finance"

transaction_details
object
obrigatório

Detalhes financeiros principais da transação.

subject
object
obrigatório

O sujeito (requerente) da transação.

transaction_at
string<date-time>

Quando a transação ocorreu. O padrão é o momento atual se omitido.

time_zone
string

Identificador de fuso horário IANA, ex.: Europe/Madrid.

counterparty
object

A contraparte da transação (opcional).

custom_properties
object

Pares chave-valor arbitrários associados à transação. Cada chave pode ser referenciada nas condições das regras através do caminho de campo custom_values.<key>.

Exemplo:
travel_rule_details
object

Dados da Travel Rule. Quando a Travel Rule está ativada e transaction_category é travel_rule, a Didit executa a troca por si própria: ignora status, protocol, required e obligations_count, e utiliza originator_data, beneficiary_data e metadata. Caso contrário, a Didit armazena estes valores como um registo passivo da Travel Rule. Enquanto a Travel Rule estiver ativada, uma transferência de saída igual ou superior ao seu limiar deve incluir o que o respetivo regime exige (EU TFR ou Recomendação 16 do GAFI), verificado nas partes que enviar: um campo em falta responde com 400 sob travel_rule_details.originator_data ou travel_rule_details.beneficiary_data, por exemplo "O EU TFR exige o nome do ordenante."

network_snapshot
object

Instantâneo pré-computado do grafo de rede.

include_crypto_screening
boolean | null

Substituição por transação para a triagem de análise de blockchain de criptoativos. Quando true, a triagem de criptoativos é realizada independentemente do valor predefinido da aplicação. Quando false, a triagem de criptoativos é ignorada mesmo que esteja ativada nas definições da aplicação. Quando omitido ou null, é utilizado o valor predefinido ao nível da aplicação configurado na Console. A triagem de criptoativos requer transaction_details.direction, currency_kind: "crypto", uma blockchain/moeda e o endereço de carteira selecionado pela direção: a triagem pré-transferência de entrada utiliza counterparty.payment_method.account_id, a triagem de hash de transação de entrada utiliza subject.payment_method.account_id e a triagem de saída utiliza counterparty.payment_method.account_id. Quando transaction_details.payment_reference_id contém um hash de transação de blockchain, a Didit realiza a triagem de transação e devolve o enriquecimento do resumo da transação quando disponível.

Resposta

Transação submetida e monitorizada. O corpo contém os detalhes completos da transação (mesma estrutura de GET /v3/transactions/{transaction_id}/), refletindo quaisquer resultados de regras já aplicados.

Registo completo de monitorização de uma transação, conforme retornado por GET /v3/transactions/{transaction_id}/ e POST /v3/transactions/.

uuid
string<uuid>

Identificador de transação estável da Didit. Utilize como {transaction_id} para chamadas de seguimento.

environment
enum<string>

Ambiente da aplicação proprietária da transação. Uma transação em sandbox é armazenada, mas nunca avaliada, sujeita a triagem, notificada ou faturada, pelo que o seu rule_runs vazio significa "não avaliada".

Opções disponíveis:
live,
sandbox
transaction_number
integer

Número sequencial da transação no âmbito da aplicação apresentado na Consola (ex.: 4123).

txn_id
string

O transaction_id que indicou no momento da criação (máx. 128 carateres). Único por aplicação.

txn_date
string<date-time>

Quando a transação ocorreu (a partir de transaction_at; o padrão é a hora de submissão).

zone_id
string | null

Identificador de fuso horário IANA fornecido no momento da criação.

transaction_type
string

Categoria de nível superior tal como armazenada: finance, kyc, travelRule, userPlatformEvent, gamblingBet, gamblingLimitChange, gamblingBonusChange, auditTrailEvent. Tenha em atenção que os valores com várias palavras são devolvidos em camelCase, mesmo quando enviados em snake_case.

action_type
string

Subtipo dentro da categoria (p. ex. deposit, withdrawal, transfer). É predefinido como a categoria quando não é fornecido.

direction
enum<string>

Direção em relação ao sujeito. Armazenada em maiúsculas independentemente da capitalização submetida (in/out/inbound/outbound são aceites na entrada).

Opções disponíveis:
INBOUND,
OUTBOUND
status
enum<string>

Veredito atual de monitorização. As transações são criadas como APPROVED; as regras podem alterá-las sincronamente para IN_REVIEW/DECLINED.

Opções disponíveis:
APPROVED,
IN_REVIEW,
DECLINED,
AWAITING_USER
source
enum<string>

Como o registo teve origem: LIVE para transações submetidas através da API ou SDK, IMPORTED para transações carregadas através da importação da consola.

Opções disponíveis:
LIVE,
IMPORTED
amount
string

Montante da transação como uma string decimal sem zeros à direita (por exemplo, "1500", "0.5", "0.123456789012345678"). Até 18 casas decimais.

currency
string

Código de moeda de amount. Qualquer código alfabético ISO 4217 é aceite (por exemplo, EUR, USD, NGN), bem como um símbolo de ativo criptográfico (por exemplo, BTC). Dê preferência a um código atualmente em circulação. Nem todos os códigos aceites têm uma taxa de câmbio: quando nenhuma estiver disponível para o código (por exemplo, a unidade contabilística ISO XSU, ou um símbolo criptográfico que a Didit não precifique), a conversão automática falha e preferred_currency_amount é devolvido a null, a menos que o pedido tenha fornecido um amount_in_default_currency pré-convertido.

currency_type
string | null

fiat ou crypto, conforme submetido em currency_kind.

amount_in_default_currency
string | null

Montante pré-convertido fornecido por si, como uma cadeia decimal sem zeros à direita.

default_currency_code
string | null
preferred_currency_amount
string | null

amount convertido para a moeda preferida da aplicação, quando disponível.

preferred_currency_code
string | null
payment_details
string | null

Referência ou memorando de pagamento em texto livre proveniente do envio.

payment_txn_id
string | null

Referência externa do sistema de pagamento (por exemplo, hash de transação na blockchain) a partir de payment_reference_id.

score
integer

Pontuação de risco acumulada por regras (normalmente 0–100). Mais alta = maior risco.

severity
enum<string> | null

Gravidade de risco categórica definida por regras/fornecedores (UNKNOWN, LOW, MEDIUM, HIGH, CRITICAL). null até que algo a defina.

Opções disponíveis:
UNKNOWN,
LOW,
MEDIUM,
HIGH,
CRITICAL
decision_reason_code
string | null

Motivo legível por máquina para o status atual.

decision_reason_label
string | null

Rótulo legível para decision_reason_code.

vendor_data
string | null

Cópia de conveniência dos vendor_data do requerente.

metadata
object

Instantâneo dos payloads de subject e counterparty conforme enviados no momento da criação.

props
object

As custom_properties que forneceu no momento da criação. Cada chave pode ser referenciada nas condições das regras como custom_values.<key>.

tags
object[]

Etiquetas associadas à transação (manualmente ou por regras).

parties
object[]

Partes da transação (requerente, contraparte).

payment_methods
object[]

Métodos de pagamento associados à transação.

documents
object[]

Ficheiros anexados à transação a partir da consola. [] quando não existem ficheiros.

activities
object[]

Entradas do registo de atividade (criação, notas, revisões manuais, alterações de estado).

alerts
object[]

Sempre vazio atualmente. Um alerta em aberto é uma transação com o estado IN_REVIEW ou AWAITING_USER.

rule_runs
object[]

Resultados da execução por regra — que regra foi acionada, com que impacto na pontuação.

provider_results
object[]

Payloads em bruto do fornecedor (triagem AML, análise de blockchain, etc.).

travel_rule
object | null

Transferência ou verificação da Travel Rule. Preenchido quando travel_rule_details foi submetido, e também quando a Travel Rule está ativada e a transação foi criada com transaction_category: travelRule (a Didit inicia a troca por si própria, mesmo sem travel_rule_details). null quando não existe qualquer transferência ou verificação. Numa transferência de entrada, os dados originator_data e beneficiary_data da contraparte permanecem mascarados (data_masked: true) até que a propriedade da carteira seja confirmada.

network_snapshot
object | null

Instantâneo do grafo de transações/partes relacionadas utilizado pelo motor de regras. Corresponde ao network_snapshot submetido com a transação ou ao grafo que a Didit gera a partir de uma triagem AML de carteiras bem-sucedida (o qual substitui o submetido). null quando nenhum deles existe.

remediation
object | null

Sessão de remediação oferecida ao utilizador quando é necessária reverificação. Substituída por action_required, que é o bloco canónico; mantida para retrocompatibilidade.

action_required
Verification session · object

Ação pendente do utilizador final necessária para concluir esta transação, ou null quando não houver nenhuma. Os SDKs da Didit iniciam automaticamente a ação por predefinição e atualizam a transação quando esta termina. Duas variantes, distinguidas por type: verification_session (uma sessão de verificação alojada criada por uma ação de regra) e wallet_ownership (uma sessão de widget de propriedade da carteira criada automaticamente para uma transferência da Travel Rule que necessita de comprovativo de controlo da carteira, condicionada pela definição da Travel Rule auto_wallet_verification). Quando ambas se podem aplicar, wallet_ownership tem precedência porque bloqueia a troca da Travel Rule.

cost_breakdown
object | null

Custo desta transação: total_price e items, um por cobrança, cada um com usage_type, price, details e created_at. Uma nova triagem da mesma transação constitui um novo item.

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