.gold. Esses arquivos tornam as movimentações financeiras mais acessíveis e alinhadas com a lógica contábil.
Por que usar Gold?
- Fornece um formato claro e estruturado para transferências de ativos.
- Define origens, destinos e valores de forma explícita.
- Suporta lógica avançada de transação, como distribuição de saldos baseada em percentuais ou valores remanescentes.
- Melhora a automação e a consistência nos fluxos de trabalho financeiros.
Estrutura de um arquivo .gold
Um arquivo
.gold representa uma transação usando uma estrutura hierárquica. Aqui está um exemplo:
Hierarquia da DSL
Abaixo está a estrutura hierárquica de um arquivo
.gold, ilustrando os principais relacionamentos:
Entendendo as palavras-chave da DSL
transaction
Abre um novo bloco de transação, onde todos os elementos relacionados são definidos.send
Especifica o ativo e o valor a ser transferido, incluindo as contas de origem das quais os fundos serão debitados. Múltiplas contasfrom podem ser agrupadas usando source.
Formato: send {asset_code} {value}
distribute
Define as contas de destino onde os fundos serão creditados. Múltiplas contasto podem ser incluídas dentro de distribute.
Notações de valor em transações
A DSL gold suporta diferentes formas de expressar valores dentro de uma transação:
:amount– Notação padrão especificando o ativo, valor e escala.:share– Especifica uma porcentagem do valor total dosend.:remaining– Aloca o saldo remanescente após todas as outras distribuições.
Exemplo: Fluxo de transação Pix Out
Este exemplo demonstra uma transação Pix Out no formato
.gold:
Detalhamento:
- (transaction v1) – Define uma nova transação usando a versão 1.
- (Transaction route ID) – Categoriza a transação.
- (metadata …) – Armazena dados adicionais da transação.
- (send BRL fee|2) – Especifica o valor total enviado.
- (source …) – Detalha as contas de origem das quais o valor é debitado.
- (distribute …) – Aloca os fundos para as contas apropriadas.
- (distribute :remaining …) – Garante que qualquer saldo remanescente seja tratado.

