Pular para o conteúdo principal
Um mapa de campos informa ao Matcher qual coluna bruta de uma fonte carrega cada campo de transação canônico. Como cada fonte (extratos bancários, exportações de ledger, relatórios de gateways) nomeia suas colunas de forma diferente, o mapa de campos normaliza esses nomes de coluna em um único vocabulário fixo antes de o matching rodar.
Um mapa de campos apenas renomeia colunas. Ele não analisa, calcula, transforma nem combina valores. Cada campo canônico é preenchido a partir de exatamente uma coluna de origem.

O que é um mapa de campos


Um mapa de campos pertence a uma única fonte dentro de um contexto. Um contexto concilia dois lados — uma fonte LEFT e uma fonte RIGHT — e cada fonte tem seu próprio mapa de campos. O Matcher compara os campos canônicos produzidos por ambos os mapas, então os dois lados devem resolver para o mesmo vocabulário mesmo quando seus arquivos brutos não se parecem em nada. O mapeamento é um objeto JSON no formato:
  • A chave é um campo canônico. As chaves vêm de um vocabulário fechado e sensível a maiúsculas e minúsculas — o Matcher rejeita qualquer chave fora dele.
  • O valor é o nome da coluna na fonte bruta que carrega esse campo. Os valores são texto livre (seja qual for o nome que seu arquivo dá à coluna) e devem ser strings não vazias.

Vocabulário canônico


O espaço de chaves é fechado. Estas são as únicas chaves que o Matcher aceita.

Chaves obrigatórias

Todo mapa de campos deve declarar as quatro:
ChaveDescrição
external_idIdentificador único do registro dentro da fonte
amountValor da transação
currencyCódigo de moeda ISO 4217
dateData da transação

Chaves opcionais

Declare estas apenas quando a fonte as carregar:
ChaveDescrição
descriptionRótulo de texto livre copiado para a coluna de descrição da transação
fee_amountColuna que carrega o valor de uma taxa para o registro
fee_currencyColuna que carrega a moeda dessa taxa
fee_amount e fee_currency são o slot de taxa opcional. Quando presentes, o valor da coluna mapeada é copiado para o metadata da transação que a verificação de taxas lê, de modo que uma coluna com qualquer nome (por exemplo mdr_fee) pode carregar taxas de ponta a ponta sem metadata construído à mão. Omita-as e o comportamento é idêntico ao de um mapa sem slot de taxa.

Criando um mapa de campos


Mapas de campos são criados por fonte. Envie o objeto de mapeamento para o endpoint de mapa de campos da fonte:
cURL
Resposta
API Reference: Create field map

Atualizando um mapa de campos


Cada fonte tem um mapa de campos. Para alterar um mapeamento, faça PATCH por seu próprio ID (não o ID da fonte). Envie o mapeamento completo — ele substitui o anterior e incrementa version.
cURL
API Reference: Update field map
Outras operações:
OperaçãoEndpoint
Obter o mapa de campos de uma fonteGET /v1/contexts/{contextId}/sources/{sourceId}/field-maps
Listar todos os mapas de campos de um contextoGET /v1/contexts/{contextId}/field-maps
Excluir um mapa de camposDELETE /v1/field-maps/{fieldMapId}

Exemplo: ambos os lados de um contexto


Um contexto concilia um feed bancário contra uma exportação de ledger interna. Os dois arquivos usam nomes de coluna diferentes, então cada fonte declara seu próprio mapa — mas ambos resolvem para as mesmas chaves canônicas.

Fonte LEFT — extrato bancário (CSV)

Colunas brutas:
Mapa de campos:

Fonte RIGHT — exportação de ledger (CSV)

Colunas brutas:
Mapa de campos:
Ambas as fontes agora expõem external_id, amount, currency e date no vocabulário canônico, de modo que as regras de match podem compará-las diretamente — mesmo que um arquivo chamasse o valor de Amount e o outro o chamasse de value.

Erros comuns


A chave é o campo canônico e o valor é sua coluna — {"external_id": "BankRef"}, não {"BankRef": "external_id"}. Escrever ao contrário coloca uma chave desconhecida (BankRef) à esquerda e é rejeitado.
Apenas external_id, amount, currency, date, description, fee_amount e fee_currency são aceitas. Chaves como transaction_id, reference, counterparty ou type são rejeitadas como chaves desconhecidas, e o erro nomeia cada infratora.
As chaves são tokens em minúsculas e sensíveis a maiúsculas e minúsculas. External_Id, Amount ou CURRENCY são tratadas como chaves desconhecidas.
Todas as chaves external_id, amount, currency e date devem estar presentes. Um mapa ao qual falte qualquer uma delas falha na validação com uma mensagem “missing required keys”.
Cada valor deve ser uma string não vazia que nomeie uma coluna de origem. null, números, objetos ou "" são rejeitados.
Mapas de campos não analisam datas, dividem valores, concatenam colunas nem aplicam condicionais. Entregue os valores já no formato esperado a partir do arquivo de origem, ou normalize a montante antes do upload.

Próximos passos


Regras de match

Defina como os campos canônicos são comparados e agrupados.

Upload de arquivos

Importe transações usando seus mapas de campos.