Get a transaction by ID.
A movimentação é procurada DENTRO da empresa do header x-company-id: id de outra empresa responde 404, igual a id inexistente. payments[] traz o estado de estorno (kind, reverses_payment_id, reason, remaining_amount, reversed): linhas kind=reversal têm valor negativo e a soma de amount é o total pago ativo. audit_logs[] é o histórico das operações sobre lançamento pago (estorno, edição com efeito financeiro, exclusão), em ordem cronológica.
Authorizations
Token da sessão no cabeçalho Authorization, no formato Bearer (mesmo esquema ApiKeyAuth do contrato).
Headers
company uuid
Path Parameters
Transaction ID
Response
OK
BankAccount é PONTEIRO (CERNE-304/T4d): uma transação de cartão de crédito
não tem conta bancária, e o contrato precisa expressar isso como null
explícito no JSON — nunca {} (pareceria conta real de campos vazios) e
nunca campo ausente (o front não distinguiria de versão antiga da API).
Decisão registrada em plan.md, Q6.
swaggertype: o swag v1.16 não resolve o alias dto2 (há quatro pacotes "dto" importados aqui) e o make swagger falhava. Só a doc fica genérica; o JSON é o mesmo.
CreditCard é o espelho de BankAccount para a outra origem (CERNE-304 /
T11): null explícito no lançamento de conta bancária, preenchido na
compra de cartão. Campo NOVO e aditivo — quem já ignora o corpo não
percebe, e quem lê origin sabe qual dos dois consultar.
Origin é o discriminador explícito da origem do lançamento — ver as constantes acima. Sempre presente, nunca vazio.