FJFrigo · Contabilidade · menu252 — Sincronização

O esquema contábil da sincronização

O asiento que cada módulo produz, desenhado linha a linha: o que vai em débito, o que vai em crédito, e de qual tabela e coluna sai cada conta e cada valor — mais o que costuma dar errado em cada um.

25 módulos portados de 28 D débito   C crédito   ≈ só para fechar a origem no banco

Como ler as tabelas. Cada linha do asiento traz a conta e o valor, e embaixo de cada um, em letra menor, a tabela.coluna de onde ele sai. É essa segunda linha que responde "de onde vem" — e é por ela que se acha o cadastro a corrigir.

A

As siglas, e as regras que valem em todos

Leia antes das tabelas

A regra que explica quase toda conta

A conta do outro lado — o cliente na venda, o fornecedor na compra — sai quase sempre do mesmo lugar: tipo_faturamento.idplconta. E há um segundo passo que a consulta traz de propósito.

Se ct_plano_conta.analitica da conta do tipo for…Então a conta é…
analíticaela mesma — e a analítica do emitente nem é procurada
sintéticaa analítica do emitente sob ela, criada se não existir, com o nome do emitente

É por isso que as consultas trazem sempre o trio tf.idplconta, pc.numero e pc.analitica: o primeiro é a conta, os outros dois decidem se ela vale ou se vira a do emitente — e dão o número sob o qual criar a nova.

Inverter essa ordem manda o lançamento para a conta do fornecedor onde deveria ir para a do tipo. Foi um defeito real, corrigido em 03/09/2026.

As outras quatro origens de conta

OrigemColunas típicasOnde se corrige
Grupo de produto produto_grupo.idplconta · _tr_sa · _tr_en · _comp_mi · _exp Cadastro do grupo de produto
Centro de custo centro_custo.idplconta_deb · _cred · _cli · _ins_alm · _imo_alm · _ser_alm · _rendir Cadastro de centro de custo
Subgrupo de almoxarifado almoxarifado_subgrupo.idplc_cons_ent · _cons_sai Cadastro do subgrupo
Parâmetro da filial filial.idplconta_iva10 · _iva5 · idplc_difcamb · idplc_chemi · idplc_trent · idplc_trsai · idplc_despachante · idplc_rendir · idplc_retiva · idplc_int_pago · idplc_desc_obtido Cadastro de filial

As siglas, e o que cada uma quer dizer

A sigla vai na coluna tabela do asiento — é por ela que a sincronização reencontra o que já fez e regrava sem duplicar. Vários módulos gravam mais de uma.

SiglaQuer dizerTabela de origem
fvVenda de mercado internofaturamento_venda
fvxp fvxr fvxVenda de exportação — provisão, reversão, a vendafaturamento_venda
fvdDespacho de exportaçãofaturamento_venda_despacho
ticCupom (ticket de balcão)cupom · cupom_itens
fccCompra de carnefaturamento_compra_carne
cgCompra de gadofaturamento_compra_gado
ccgComissão de compra de gadofaturamento_comissao_gado
acCompra de almoxarifadoalmoxarifado_compra
ccdDespacho de compra de carnefaturamento_compra_carne_despacho
acdDespacho de compra de almoxarifadoalmoxarifado_compra_despacho
fimFinanceiro — emissão de títulofinanceiro_emissao
fbaFinanceiro — baixafinanceiro_baixas
riRetenção de IVAretencao_iva
ftbTransferência bancáriafinanceiro_lancamento_banco
cbaConciliação bancáriafinanceiro_baixas
cbte cbtsConciliação da transferência — entrada e saídafinanceiro_lancamento_banco
emEmpréstimoemprestimo
cexCobrança no exteriorfinanceiro_exportacao
far favFatura avulsa — o revés e a faturafatura_avulsa
conaConsumo de almoxarifadoalmoxarifado_saida
falFaturamento de almoxarifadofaturamento_transp_almox
salSaída de almoxarifadoalmoxarifado_saida
tcvTransporte de carne — vendafaturamento_transportadora
fvvFrete de vivo — a faturafaturamento_transportadora
ftdFrete de vivo — a despesa, em asiento própriofaturamento_transportadora_despesas

A unidade do asiento nem sempre é o documento

UnidadeQuem usaConsequência
O documentoA maioriaUm asiento por venda, compra, título
O DIAconaTodas as saídas da filial no dia num asiento só, com idfaturamento = 0; a regravação apaga por data
Documento + despachoccd acd fvdA mesma compra tem um asiento por despacho
O cheque ou o coletivocbaUm cheque que pagou 103 títulos vira um asiento
O nº do documento (texto)ri fvvO reencontro é pelo número do comprovante, não pelo id

De onde vem o câmbio

SituaçãoColuna
Câmbio fechado no documentoa própria coluna valor_cambio do documento
Câmbio aberto — venda (a receber)moeda_valores.valor_compra
Câmbio aberto — compra (a pagar)moeda_valores.valor_venda
A data da cotaçãoa data do documento, deslocada para o dia anterior conforme o país — e só com moeda_valores.aut_contab = 'T'

Três exceções ao deslocamento: a baixa (fba) usa a cotação do fim do mês anterior; o consumo de almoxarifado não desloca; e a compra de gado desloca por literal, não pelo parâmetro de país.

Cada linha guarda três valores: valor (na moeda do lançamento), valor_ml (valor × câmbio) e valor_us (o lado IFRS). Conferir pela coluna errada é a confusão mais comum.

B

Vendas

O dinheiro entrando
fv

Venda — mercado interno

faturamento_venda · um asiento por venda

A consulta agrupa por (fv.id, idplconta_cre, fvp.percentual_iva): a conta de receita muda com o grupo do produto, então uma venda com produtos de grupos diferentes credita contas diferentes, e cada faixa de IVA tem a sua linha.

ContaValor
D Cliente tipo_faturamento.idplconta → se sintética, analítica de emitente.razao_social Σ dos itens mais o ICMS ST, menos o desconto (só BR e PY) SUM(faturamento_venda_produtos.valor_total) + SUM(faturamento_produto_trib.valor_icms_st) − faturamento_venda.valor_outros_descontos
D Desconto concedido conta de desconto da filial só se houver desconto faturamento_venda.valor_outros_descontos > 0
C Receita — uma linha por conta
escolhida pelo tipo de faturamento 1157 → centro_custo.idplconta_cli · 1138/11106/11111/11118 → produto_grupo.idplconta_tr_sa · 1171 → produto_grupo.idplconta_comp_mi · demais → produto_grupo.idplconta
PY: ROUND(total ÷ (1+iva)) · BO: total − total×iva · BR: total + icms_st (ou − icms nas transf./doações/devoluções) SUM(faturamento_venda_produtos.valor_total) · fvp.percentual_iva · fpt.valor_icms
C IVA 10% a recolher filial.idplconta_iva10 o que sobrou da divisão (PY/BO) · o ICMS (BR) SUM(faturamento_produto_trib.valor_icms)
C IVA 5% filial.idplconta_iva5 idem, na faixa de 5. Na Bolívia esta linha não sai
D ICMS despesa (BR) conta de ICMS de faturamento da filial o mesmo ICMS — no Brasil o imposto tem duas pernas. Não sai nas transf., doações e devoluções
D
C
ICMS ST — recuperar / a recolher (BR) contas de ICMS ST da filial o ST do item SUM(faturamento_produto_trib.valor_icms_st)

Problemas

· A venda inteira em "otros ingresos". Se o primeiro item cair nessa conta — o que acontece com produto.idgrupo_produto vazio —, todas as demais linhas vão para ela: a troca pela conta do grupo só acontece enquanto a conta corrente não for essa. Costuma ser um produto sem grupo, não todos. É do sistema antigo.

· Um crédito de 999.999.999 é uma sentinela: no Brasil, crédito negativo é substituído por esse número para estourar aos olhos de quem confere. Não é o valor do documento.

· Asiento que não fecha fora do BR e do PY: lá o desconto é debitado e não sai do valor da nota. É o que o sistema antigo faz; na prática aqueles países não usam a coluna.

· Pulados: doação — não contabiliza · venda a funcionário não contabiliza na Bolívia · tipo de faturamento 11116 não contabiliza no Brasil · grupo de produto … sem conta de crédito.

fvxpfvxrfvx

Venda — exportação

faturamento_venda · três passadas, três conjuntos de documentos
ContaValor
fvxp — provisão, na data de emissão
D Clientetipo_faturamento.idplconta → analítica do emitente o valor da vendafaturamento_venda_produtos.valor_total
C Conta "em curso"literal no código — ver a seção I o mesmo valor
fvxr — reversão, na data do cumprido
DConta "em curso"o espelho exato do fvxp
CClienteidem
fvx — a venda, na data do cumprido
DCliente o valor real embarcado
C Receita de exportação — uma linha por grupoproduto_grupo.idplconta_exp o valor de cada grupo
≈ Diferença de inventário · arredondamentoliteral no código o que falta para fechar

Problemas

· Provisão e reversão só com a chave SINCRONIZA_VENDA_EXPORTACAO_PROVISAO de system_config valendo "1" (sem a chave, não rodam) — só o fvx roda sempre. Até 12/09/2026 o gate era "fora de 003, 004 e BFC-USA"; o sistema antigo trocou pela chave e o porte acompanhou. O câmbio e a coluna de data continuam pelo teste antigo.

· Provisão sem reversão. Emissão e cumprido caem em meses diferentes, e uma venda emitida e nunca cumprida deixa a provisão de pé. Procurar a reversão no mês da emissão não a acha.

· Pulados: cumprido em mês fechado · documento sem numeração fiscal.

fvd

Despacho de exportação

a 4ª passada do mesmo módulo · um asiento por (venda, despacho)
ContaValor
D A conta da despesadespesas_despacho.idplconta a despesa sem IVA
D IVA 10% e IVA 5%filial.idplconta_iva10 · idplconta_iva5 as duas faixas, uma linha cada
C Despachanteanalítica sob filial.idplc_despachante o total, uma linha só

Problemas

· Este módulo faltava inteiro no porte até 03/09/2026 — e a comparação com o sistema antigo não podia tê-lo achado: ela percorre os módulos do porte; um módulo que não existe aparece como nada, não como diferença. Em janeiro/2026 são 1.759 linhas em 214 asientos.

· A nota de crédito inverte o lado, e os dois acumuladores não são simétricos: o total soma com IVA e a nota de crédito soma sem.

· Linha inválida é descartada, o grupo não — despesa sem conta é pulada e as demais formam o asiento.

· Pulados: sem numero de despacho · despesa de despacho … sem conta.

tic

Cupom — venda de balcão

cupom · cupom_itens · um asiento por ticket
ContaValor
D Caixa da lojaLITERAL por filial — oito lojas; fora delas, o literal 10026142 da consulta o total do ticketSUM(cupom_itens.valor_total)
C IVA 10% e 5%filial.idplconta_iva10 · idplconta_iva5 ROUND(ROUND(base ÷ 1,10) × 0,10) — dois arredondamentos, nesta ordem bases já vêm da consulta, com o desconto do ticket rateado entre as faixas
C ReceitaLITERAL por filial; fora delas, o literal 12115 o líquido

Problemas

· As contas são chumbadas por filial — oito lojas com o seu par. Filial nova cai no genérico e ninguém avisa.

· Um ramo que existiu e foi removido. Uma filial ganhou ramo próprio com base em 5.320 linhas da cópia de produção, e no mês seguinte, sincronizado pelo sistema antigo, as 395 linhas dela saíram no genérico — o executável do cliente não tem o ramo. Ressincronizar janeiro a junho hoje moveria 5.320 linhas.

· Gift card não gera asiento: ali não houve receita, e sim o resgate de um valor já recebido.

· Pulados: cupom sem data de fatura · … sem par de contas do ticket.

C

Compras

O que entra e o que se passa a dever
fcc

Compra de carne

faturamento_compra_carne · três passadas

O que se compra entra pelo valor sem imposto recuperável — o imposto não é somado, é deduzido e vira crédito próprio.

ContaValor
D Estoque / despesa — pela passada compra → produto_grupo.idplconta_comp_mi (ou _tr_en no tipo 1137) · devolução MI → produto_grupo.idplconta (ou _tr_en em 11119/11120) · devolução exportação → produto_grupo.idplconta_exp o item menos o imposto recuperável, mais frete e seguro SUM(faturamento_compra_carne_produtos.valor_total) · fv.valor_seguro · fv.valor_outros_acrescimos
D IVA / ICMS a recuperar filial.idplconta_iva10 · idplconta_iva5 BR: o ICMS da coluna · PY: por dentro · BO: por fora SUM(faturamento_produto_trib.valor_icms) · SUM(base_calculo_icms) · fvp.percentual_iva
D ICMS ST a recuperar (BR) filial.idplc_icms_st_recuperar SUM(faturamento_produto_trib.valor_icms_st)
C Fornecedor tipo_faturamento.idplconta → se sintética, analítica do emitente o valor da nota
C COLCAT centro_custo apontado por filial.idcentro_custo_compra_gado_colcat o funrural retido

Problemas

· Compra com XML do fornecedor tem outra origem de imposto. Havendo faturamento_compra_carne.xml_fornecedor, o ICMS vem do vICMS do XML — que é o total da nota — e é deduzido só da primeira linha. Conferir item a item não bate.

· Três passadas, três desenhos. Compra, devolução no mercado interno e devolução de exportação têm tipos, conta de débito e histórico próprios.

· Pulados: compra sem data de emissão · título do próprio CNPJ (compra mismo RUC) · grupo de produto … sem conta · nenhum item com conta contábil.

cgccg

Compra de gado (cg) e comissão de compra de gado (ccg)

faturamento_compra_gado · faturamento_comissao_gado

Uma compra tem N faturas e o asiento é um só: o débito é feito uma vez pelo total, e o crédito sai uma linha por fatura, para o emitente daquela fatura — que nem sempre é o pecuarista.

ContaValor
cg — a compra
D Gado parâmetro de conta de gado da filial — entra na consulta como idplconta_deb o total da compra SUM(faturamento_compra_gado_produtos.valor_total)
D IVA 10% e 5% retidos filial.idplconta_iva10 · idplconta_iva5 o imposto retido de cada faixa
C Emitente da fatura — uma linha por fatura tipo_faturamento.idplconta → analítica de faturamento_compra_gado_fatura.idemitente o valor da fatura; mais o IVA fora do BR e da BO faturamento_compra_gado_fatura.valor
C Frete · frete lavado · pedágio · COLCAT contas de frete e COLCAT da filial · frete lavado é LITERAL em moeda local, câmbio 1 — mesmo com a compra em dólar SUM(faturamento_compra_gado_transportadoras.valor_total_frete) · valor_frete_lavado
≈ Arredondamento — no crédito ou no débito a própria conta do credor a sobra da conversão dos descontos faturamento_compra_gado.valor_cambio_desc
ccg — a comissão de compra de gado
D Comissão paga centro_custo apontado por filial.idcentro_custo_compra_gado_comissao SUM(faturamento_comissao_gado_fat.valor_comissao)
C Comissionista tipo_faturamento.idplconta → analítica do emitente idem

Problemas

· Duas cotações no mesmo asiento. Frete, COLCAT, pedágio e frete lavado vivem em guarani e a compra pode estar em dólar: eles são convertidos pelo valor_cambio_desc, e a sobra vai para a linha de arredondamento do fim. É a origem das dúvidas de "por que sobrou essa linha".

· O rateio do desconto fecha na ÚLTIMA fatura — conferir fatura a fatura mostra a última "diferente".

· A cotação aqui é a do dia anterior por LITERAL, não pelo parâmetro de país.

· Pulados: compra sem data · comissão sem data de fatura · emitente … sem conta · centro de custo COLCAT sem conta de crédito.

ac

Compra de almoxarifado

almoxarifado_compra · a contrapartida da tela 242
ContaValor
D A conta do CENTRO DE CUSTO de cada item insumo → centro_custo.idplconta_ins_alm · imobilizado → centro_custo.idplconta_imo_alm · serviço → centro_custo.idplconta_ser_alm, sempre o valor sem IVA, agrupado por (conta, % IVA, % retenção) almoxarifado_compra_produto · almoxarifado_compra_servico
D IVA 10% / 5% a recuperar filial.idplconta_iva10 · idplconta_iva5 o imposto de cada faixa
D ICMS ST a recuperar (BR) filial.idplc_icms_st_recuperar almoxarifado_compra_produto.valor_st
C Fornecedor tipo_faturamento.idplconta → analítica do emitente nota + ST − funrural + acréscimo
C COLCAT centro_custo do COLCAT da filial o funrural

Problemas

· A conta de débito não está na compra, está no centro de custo — e qual coluna dele vale depende do tipo de faturamento. Procurar a conta no documento não a acha.

· O sistema antigo tem OITO passadas e só DUAS estão vivas. As de 3 a 8 têm um desvio incondicional antes da consulta, e as tabelas que gravariam estão marcadas ali como "não está usando". Com elas fica de fora o módulo almoxarifado em curso inteiro.

· Um asiento que não fecha, e é erro de lançamento. Caso medido com falta de 32.941: um serviço de 80.000 com % IVA e % retenção trocados (70 e 10 em vez de 10 e 70). Com 70% a base cai fora de qualquer faixa e o módulo só tem conta para 10% e 5%. A correção é no documento, na tela 242.

· Pulados: a compra não tem produto nem serviço com valor · centro de custo … sem conta · crédito fiscal de IVA — centro de custo ….

ccdacd

Despachos — de compra de carne (ccd) e de compra de almoxarifado (acd)

o custo de nacionalizar uma importação · um asiento por despacho
ContaValor
D Custo da importação ccd → centro_custo.idplconta_ins_alm do tipo de importação
acd → conta da despesa quando despesas_despacho.reg_sep = 'T'; senão idplconta_imo_alm no tipo 1142 e idplconta_ins_alm no resto
mercadoria + frete + seguro, na moeda da COMPRA com o câmbio do despacho — valor_cambio_desp
D Despesas do despachante despesas_despacho.idplconta na moeda do DESPACHO com a cotação de moeda_valores
D IVA filial.idplconta_iva10 — as duas faixas, ver problemas com fatura: a despesa entra líquida e o IVA vai à parte · sem fatura: entra cheia e o IVA é debitado à parte separadas por tipo_doc = 'SC'
C Fornecedor tipo_faturamento.idplconta → analítica do emitente mercadoria, frete e seguro
C Despachante analítica sob filial.idplc_despachante as despesas, pelo bruto

Problemas

· Duas moedas no mesmo asiento — cada linha carrega o próprio par moeda/câmbio. Conferir por uma cotação só não fecha.

· A faixa de 5% é lançada na conta de IVA 10. Parece troca de coluna e não é: o sistema antigo manda as duas para a mesma conta e só muda o histórico.

· No FOB, o frete e o seguro debitam e creditam a MESMA conta — quem paga é o comprador, então o valor volta para a conta de custo em vez de virar dívida.

· O IVA da despesa sem fatura: vale o EXECUTÁVEL (decisão do usuário, 12/09/2026). O fonte manda debitar despSF + rep e creditar despSF + ivaSF + despCF; o executável que gravou a produção fez despSF − ivaSF + rep e despSF + despCF. As duas convenções fecham o asiento — pelo fonte, o IVA entra no custo e de novo na linha própria, inflando na mesma medida o custo e a dívida. Medido em dois despachos reais, nos dois módulos: 18.012.469 contra 2.688.859 no débito. O porte passou a gravar como o executável: o IVA sai do custo e o despachante é credor do líquido.

· Na Bolívia o acd separa a ADUANA do despachante pelo fornecedor de cada despesa (o emitente literal 1001269); as duas metades são debitadas em separado e o crédito vai inteiro ao despachante.

· Pulados: despacho sem data · sem numero de despacho · despacho com IVA maior que a despesa.

D

Financeiro

Títulos, baixas e retenção
fim

Financeiro — emissão

financeiro_emissao · duas passadas

Contabiliza os títulos que não vieram de um faturamento — o WHERE exige idfaturamento IS NULL OR = 0, com exceções por tipo de título. Título nascido de venda ou compra é contabilizado pelo módulo daquela origem.

ContaValor
D Despesa centro_custo.idplconta_deb — o centro de custo do próprio título (financeiro_emissao.idcentro_custo) o valor sem IVA financeiro_emissao.valor_parcela
D Gastos a render — quando o título não tem fatura centro_custo.idplconta_rendir, caindo em filial.idplc_rendir o valor cheio
C IVA 10% e 5% a recuperar filial.idplconta_iva10 · idplconta_iva5 por dentro, com dois arredondamentos: ROUND(ROUND(base ÷ 1,10) × 0,10). Só a Bolívia é por fora
C Fornecedor / título tipo_titulo.idplconta → se sintética, analítica do emitente o total do título
≈ Diferença de câmbio filial.idplc_difcamb o que falta para fechar

Problemas

· A segunda passada existe para um caso que ninguém lembra: o título cuja fatura é de um mês já fechado mas que só foi emitido agora. Ele não apareceu na primeira passada de mês nenhum e ficaria sem contabilizar para sempre.

· A data e o câmbio NÃO seguem a passada que achou o título. Cada um recalcula: usa a fatura quando ela é posterior à emissão ou posterior ao mês fechado — o que quase sempre escolhe a fatura. Tratar "achado pela segunda passada" como "usa emissão" produz asiento com a cotação de uma a duas semanas depois. Foi defeito real, corrigido em 03/09/2026.

· Pulados: documento sem data · sem conta do tipo de título · IVA retido — tem sincronização própria · empréstimo bancário — já lançado pelo módulo de empréstimos.

fba

Financeiro — baixas

financeiro_baixas · a mesma rotina serve a pagar e a receber

Baixa a dívida contra o trânsito. O dinheiro só encontra o banco na conciliação (cba) — este asiento não toca a conta bancária.

ContaValor
D Título — a dívida deixa de existir tipo_faturamento.idplconta no empréstimo; senão tipo_titulo.idplconta → analítica do emitente o valor pago · histórico "Pago …" financeiro_baixas.valor
D
C
Desconto obtido — nos dois lados filial.idplc_desc_obtido financeiro_baixas.valor_desconto
D Título · "Devolucion …" financeiro_baixas.valor_devolucao
D Juros pagos · "Juro …" filial.idplc_int_pago financeiro_baixas.valor_juros / encargos
C A pagar: conta de trânsito analítica "CHEQUES EMITIDOS <conta>" sob filial.idplc_chemi — criada se faltar o valor pago
D A receber: conta de trânsito · "Recibido …" analítica "RECAUDACIONES A DEPOSITAR <conta>" sob filial.idplc_redep o valor recebido

Problemas

· A conta de cheque é ANALÍTICA por conta bancária, não a sintética da filial — e é criada quando falta. Debitar a sintética direto era defeito, corrigido em 29/08/2026.

· A consulta AGRUPA por data_baixa, idconta_bancaria, idemitente, numero_cheque, idcentro_custo, idfinanceiro_emissao — mas o fb.id entra só no a pagar. No a receber, várias baixas do mesmo título no mesmo dia viram um asiento. Foi a causa de 4 "diferenças de valor" que não eram.

· A cotação é a do FIM DO MÊS ANTERIOR, não a do dia anterior.

· Baixa de empréstimo debita a conta do tipo de FATURAMENTO, não a do tipo de título — são dois ramos, e o porte só tinha um.

· A linha de resíduo de conversão esconde erro de valor: ela absorve qualquer divergência, e foi ela que fez asientos com a cotação errada "fecharem" sem sintoma.

· Pulados: baixa sem data de conciliação · a receber sem número de documento · devolução do exterior — o desconto já saiu no título principal.

ri

Retenção de IVA

retencao_iva · a unidade é o NÚMERO da retenção
ContaValor
D Fornecedor — o imposto retido deixa de ser devido a ele tipo_titulo.idplconta → analítica do emitente o valor retido retencao_iva.valor_retido — em guarani, já informado no comprovante
C Retenção — o que se passa a dever ao fisco filial.idplc_retiva idem
≈ Diferença cambial — duas linhas filial.idplc_difcamb o resto entre o câmbio derivado e a cotação da data da fatura

Problemas

· O câmbio é DERIVADO, não lido. A retenção é calculada em moeda estrangeira (base ÷ 1,10 × 10% × % de retenção) mas o que se recolhe é um valor em guarani, já no comprovante. O sistema divide um pelo outro para o lançamento fechar exatamente no valor recolhido — e o resto vira as duas linhas de diferença cambial. Um câmbio "estranho" aqui é isso, não erro.

· A moeda e a data saem da ORIGEM quando a retenção não as tem: a coluna retencao_iva.tabela diz de onde veio — emissão, compra de gado, compra de carne, almoxarifado, fatura avulsa, despacho — e cada origem tem a sua coluna de data. Origem excluída, ou que não existe mais, pula o comprovante inteiro.

· Pulados: retenção sem data · a fatura de origem (…) não existe · câmbio derivado inválido · retenção sem base calculada e em moeda estrangeira.

E

Bancos

Onde o dinheiro de fato se move
ftb

Transferência bancária

financeiro_lancamento_banco · DUAS linhas com o mesmo idtransferencia
ContaValor
D Banco de destino — ou o trânsito de entrada conta_bancaria.idplconta se tipo_conta = '1'; senão filial.idplc_trent a linha de tipo 114 (entrada), com a moeda e o câmbio dela financeiro_lancamento_banco.valor · idmoeda · valor_cambio
C Banco de origem — ou o trânsito de saída conta_bancaria.idplconta se tipo_conta = '1'; senão filial.idplc_trsai a linha de tipo 113 (saída)
≈ Redondeo filial.idplc_difcamb quando as duas pernas, arredondadas cada uma na moeda dela, não dão o mesmo em moeda local

Problemas

· A conta nem sempre é a do banco — só com conta_bancaria.tipo_conta = '1'. Nas demais valem as contas de trânsito: o dinheiro que saiu de um banco e ainda não entrou no outro. Medido num caso real: as duas pernas eram de trânsito.

· Uma armadilha do sistema antigo que o porte não tem. Lá o cursor lê a linha corrente como crédito e avança uma; se a primeira do par não for 113, ele não avança e lê os dois lados da mesma linha — asiento que debita e credita a mesma conta. Aqui as duas são agrupadas por idtransferencia e escolhidas pelo tipo.

· Pulados: a transferência não tem as duas pernas (…) · lançamento sem data.

cba

Conciliação bancária

financeiro_baixas · a unidade é o cheque ou o coletivo

Tira o valor do trânsito e o põe no banco. É este asiento — não o fba — que move a conta bancária.

ContaValor
D A pagar: trânsito de cheques emitidos
A receber: o banco analítica sob filial.idplc_chemi · conta_bancaria.idplconta
a soma das baixas daquela compensação SUM(financeiro_baixas.valor) das linhas do mesmo cheque/coletivo
C A pagar: o banco
A receber: trânsito de recaudaciones conta_bancaria.idplconta · analítica sob filial.idplc_redep
o mesmo valor

Problemas

· Um asiento nem sempre é uma baixa. Confirmado nos dados: um coletivo com 103 baixas e um único asiento de 173.304.050.

· Quem representa o grupo é a PRIMEIRA linha na ordem da consulta, e dela saem o idfaturamento e o documento — não é a de menor id. Procurar o asiento pela primeira baixa que se vê na tela costuma não achar.

· O reencontro do cheque tem dez dias de folga (a compensação chega depois da baixa); o do coletivo é no mesmo dia, exatamente.

· A pagar sem número de cheque não concilia. Num tenant que não usa cheque isso deixa de fora todas as baixas a pagar — e é o esperado.

· A conta bancária tem fechamento PRÓPRIO (conta_bancaria.udf_contab), além da U.D.F. contábil.

· Cuidado ao comparar este módulo: uma rodada real do porte contamina a base — o sistema antigo pode não reconhecer o asiento que ela gravou e criar outro, deixando os dois vivos. Foi o que produziu 157 "diferenças" que eram resíduo nosso.

cbtecbts

Conciliação das transferências

cada perna vira um asiento próprio, em tabela própria
ContaValor
cbts — a saída (tipo 113)
D Trânsito de saídafilial.idplc_trsai o valor da pernafinanceiro_lancamento_banco.valor
C O bancoconta_bancaria.idplconta idem
cbte — a entrada (tipo 114)
D O bancoconta_bancaria.idplconta o valor da perna
C Trânsito de entradafilial.idplc_trent idem

Problemas

· As duas pernas usam o MESMO idfaturamento (o número da transferência) — quem as separa é a tabela. O reencontro de um lado nunca acha o do outro, e procurar por idfaturamento sem filtrar a sigla traz os dois.

· Conta de CAIXA não concilia: com tipo_conta = '1' o dinheiro nunca esteve em trânsito, e a transferência já foi lançada inteira no ftb.

em

Empréstimos

emprestimo · cinco passadas, a MESMA consulta
ContaValor
D Banco — onde o dinheiro caiu conta_bancaria.idplconta o líquido — e a composição dele muda com o TIPO DE TÍTULO (cheque, duplicata, ou o resto) emprestimo_parcela.valor_liquido · emprestimo.valor_bruto
D Gastos a render filial.idplc_gasto_rendir a comissão — vem com o IVA embutido: divide-se por 1,10 e tira-se 10% dali emprestimo.valor_comissao
D Gastos a render — ou juros pagos no de terceiros filial.idplc_gasto_rendir · filial.idplc_int_pago os juros
C Credor tipo_faturamento.idplconta → analítica do emitente o que se passa a dever
C Retenção de IVA (1163 · 1162, do exterior) filial.idplc_retiva ali o IVA é retido, não recuperado; o 1162 ainda debita a renta

Problemas

· Cinco desenhos com a mesma consulta. 1118/11173/11174 é o comum; 1143 de terceiros (comissão inteira, com IVA, e juros em juros pagos); 1144 bônus (bruto contra bruto); 1163 e 1162 do exterior.

· BUG DO SISTEMA ANTIGO, reproduzido: um asiento que não fecha. No ramo comum ele calcula líquido − IVA − comissão, subtraindo um IVA que o valor_liquido da parcela já não contém. O ramo de terceiros, uma linha acima, tem a forma certa. Medido: faltam 1.036.430 num empréstimo real. O porte segue o fonte, e por isso esse asiento aparece com "Fechou? NÃO".

· Empréstimo SEM parcela lançada é pulado. O LEFT JOIN traz a linha com os campos de parcela nulos, e como os valores estão no cabeçalho mas o líquido sai das parcelas, o asiento sairia zerado. Foi o único delta real de uma rodada inteira de agosto.

cex

Cobrança no exterior

financeiro_exportacao · a chegada do dinheiro de uma exportação
ContaValor
D Conta bancáriaconta_bancaria.idplconta o líquido recebidofinanceiro_exportacao.valor_liquido
D Taxas · descontocontas de despesa bancária da filial o que o banco cobrou
C Cliente no exterior — uma linha por fatura LITERAL por razão social: 144 em BFC-USA · 1001104 em BFC · 1212 nos demais tipo N: com diferença cambial por linha · tipo O: só quando a distribuição é F com faturamento · tipo A: credita a conta de exportação pelo bruto financeiro_exportacao.tipo_recebimento · financeiro_exportacao_dist
≈ Diferença cambial acumuladafilial.idplc_difcamb um par de linhas
≈ "Diferencia Redondeo"filial.idplc_difcamb o que ainda sobrar entre débito e crédito

Problemas

· O acréscimo entra na ÚLTIMA fatura, não em linha própria.

· Faturas menores que o bruto creditam a sobra na conta de exportação. Conferido num asiento real: 18 créditos ao cliente e um de 17.702,17 nessa conta — porque a 19ª distribuição foi acrescentada depois da contabilização.

· O documento da linha de crédito é o do TÍTULO, não o swift. E a diferença cambial sai zero quando a distribuição não tem faturamento.

· Pulados: cobrança sem data · sem comprovante (…).

F

Faturas avulsas

Um método, três módulos do combo
farfav

Fatura avulsa — comum, saída (1167) e entrada (1166)

fatura_avulsa · duas tabelas: o revés e a fatura
ContaValor
far — o revés: desfaz a provisão que o financeiro já lançou
D O títulotipo_titulo.idplconta → analítica do emitente o valor provisionado
C Conta "a render"filial.idplc_rendir idem
fav — a fatura
D A despesa — a conta depende de três perguntas importada? · asiento manual → centro_custo.idplconta_deb do rateio · conta de valor bruto → fatura_avulsa.idplconta_vlr_bruto o valor da faturafatura_avulsa.valor
D IVA a recuperarfilial.idplconta_iva10 · idplconta_iva5 por dentro: base ÷ 1,10 ou ÷ 1,05. Na Bolívia por fora, e a faixa de 10 vale 13
C Fornecedor / títulotipo_titulo.idplconta → analítica do emitente o valor da fatura

Problemas

· A nota de crédito (tipo_doc = 'NC') INVERTE os lados — todo o asiento.

· O revés não sai sempre. Só quando a fatura não é importada e o tipo de título admite reversão. No Brasil nunca há reversão, e numa transportadora paraguaia também não; nos demais quem decide é o tipo de título (frete não reverte). Procurar o far de uma fatura brasileira é procurar o que não existe.

· Dois ramos do sistema antigo são código morto: os que tratariam a fatura excluída, já que a consulta filtra excluido <> 'T'.

· Pulados: fatura sem data · fatura sem financeiro · fatura com asiento manual e sem contas de centro de custo · fatura com conta de valor bruto e sem conta de valor líquido.

G

Almoxarifado e fretes

O material saindo
cona

Consumo de almoxarifado

almoxarifado_saida · um asiento por DIA e filial
ContaValor
D Despesa — uma linha por subgrupo almoxarifado_subgrupo.idplc_cons_ent custo_almox_si(produto, data) × quantidade — a função do banco, não o valor gravado na saída almoxarifado_saida_produto.quantidade
C Estoque — acumulado por (moeda, conta) almoxarifado_subgrupo.idplc_cons_sai a soma — a baixa não se quer detalhada

Problemas

· O custo NÃO sai da saída. Ele vem da função custo_almox_si; o valor_total gravado inclui IVA e a própria consulta o traz apelidado como custo_total_com_iva — separado, e sem uso. Comparar o asiento com o valor da saída não bate, e está certo.

· Débito por linha, crédito acumulado — e é no acúmulo que mora a única diferença cambial do módulo: o débito converte linha a linha e o crédito converte a soma.

· A exclusão de uma saída, no sistema antigo, apaga o asiento do DIA INTEIRO — sem filial e sem id. Uma saída excluída derruba a contabilização do dia da empresa toda. O porte não reproduz isso; está marcado como decisão pendente.

· Este módulo levava um minuto POR DIA até 01/09/2026 — a coluna excluido faz parte de um índice, então o MySQL materializava os candidatos antes de atualizar. Hoje o apagar é em duas etapas.

· Pulados: Subgrupo sem conta de Débito … · Subgrupo sem conta de Crédito ….

falsaltcv

Faturamento e saída de almoxarifado · transporte de carne

o mesmo tronco — o material ou o serviço vira valor a receber
ContaValor
D Quem deve — o cliente tipo_faturamento.idplconta → analítica do emitente o total da fatura
C IVA 10% e 5% filial.idplconta_iva10 · idplconta_iva5 por dentro, sobre a FAIXA INTEIRA: ROUND(ROUND(base ÷ 1,10) × 0,10) — não é o imposto item a item somado
C Contrapartida — no tcv, a conta de serviço centro_custo.idplconta_ser_alm do centro de custo do produto o líquido
≈ Diferença — para o asiento fechar na moeda local filial.idplc_difcamb — moeda local, câmbio 1, somente_conversao = 'T' a sobra dos arredondamentos

Problemas

· A ordem dos dois arredondamentos muda centavos — é ROUND da divisão e depois a alíquota.

· Uma janela de 2022 parte a faixa de 10 ao meio no tcv: entre 01/08 e 31/12/2022 o imposto da carga era calculado a 5% e o resto dividido em duas metades, uma tributada e outra isenta. Não é regra viva — é uma medida do governo paraguaio, portada porque refazer aqueles meses tem de reproduzir o que foi feito.

· O corte de 01/07/2017 no tcv saiu do legado em 13/09/2026, e com ele os de 01/04/2015 (emissão e baixa), 31/03/2015 (período) e 30/11/2018 (consumo em FRIGO).

· Um deslize do sistema antigo, corrigido aqui: no fal, quando a conta já é analítica, a conta de débito fica com o valor da iteração anterior — o ramo equivalente só tem um comentário. O gêmeo sal faz a atribuição que falta.

· fal não pôde ser exercitado: faturamento_transp_almox não existe em nenhum dos bancos que temos. O módulo se declara indisponível em vez de estourar.

· Pulados: saída sem data de emissão · sem conta de crédito — centro de custo … · transferência entre sucursais.

fvvftd

Frete de vivo — venda

faturamento_transportadora · o único módulo que grava DUAS tabelas
ContaValor
fvv — a fatura (reencontro pelo documento)
D Clientetipo_faturamento.idplconta → analítica do emitente cargas mais despesas — as duas metades de facturar faturamento_transportadora_cargas · _despesas
C IVA de cada faixafilial.idplconta_iva10 · idplconta_iva5 só sobre a despesa que se fatura; a de "recuperar" é cobrada cheia, sem IVA faturamento_transportadora_despesas.facturar
C Serviçocentro_custo do produto as cargas
C Conta 1162LITERAL no código as despesas (aqui elas são repasse)
ftd — cada despesa, em asiento próprio (por id)
D Centro de custo da despesacentro_custo.idplconta_deb o valor dela — aqui ela é custo
C Fornecedor da despesaanalítica do emitente da despesa idem

Problemas

· A mesma despesa aparece duas vezes, e não é duplicidade — na fatura ela é repasse ao cliente, no ftd ela é custo. São dois fatos.

· O ftd vai na data da NOTA DA DESPESA, que pode cair em outro mês que o da fatura.

· A "diferença cambial" não é a diferença do asiento. O sistema antigo acumula dois totais à mão que não são os do asiento — o IVA entra no débito embora seja crédito, e da conta 1162 só uma parte entra no crédito. É essa conta, e não o desequilíbrio real, que decide se sai linha de diferença. Reproduzido como está.

· NÃO PÔDE SER EXERCITADO: faturamento_transportadora tem 2 linhas no banco de homologação, as duas excluídas e sem data. É módulo de outro tenant.

· A janela de 2022 aqui começa em 14/07, e no transporte de carne em 01/08. Não é engano de leitura: os dois métodos têm a mesma regra com datas diferentes.

H

Como achar de onde veio uma linha

Do asiento no 251 ao documento
PassoOlheDiz
1Coluna TabelaA sigla — leve-a às seções B a G. Vazia = lançamento manual do 251
2somente_conversaoSe for 'T', pare: é linha de fechamento, não tem documento por trás
3Coluna idfaturamentoO id na tabela de origem daquele módulo. Zero no cona, onde a unidade é o dia
4Coluna DocumentoO número que a pessoa reconhece — a fatura, o cheque, o comprovante
5Coluna HistóricoCostuma dizer o papel: "Pago", "Descto", "Juro", "Comission", "Redondeo", o nome do emitente
6Coluna idfilial_dadoA filial do documento, que pode não ser a que contabilizou

A conta parece errada? Volte à seção A e identifique a família. Quase sempre ela está num cadastro — o grupo do produto, o centro de custo, o parâmetro da filial — e não no documento. Corrigir o documento não muda a conta; corrigir o cadastro e ressincronizar muda.

Mas cuidado ao ressincronizar para "corrigir" asiento antigo. A contabilidade guarda o cadastro da época; a sincronização lê o de hoje. Foram medidos 426 títulos num único caso — valor batendo ao centavo, só a conta diferente, porque trocaram o centro de custo deles depois de contabilizados. Conferir o asiento congela isso: o que está conferido a sincronização não regrava.

Sinais que costumam ser confundidos com defeito

O que se vêO que é
Um crédito de 999.999.999Sentinela do fv no Brasil para crédito negativo — um alarme, não um valor
Asiento com "Fechou? NÃO"Pode ser erro de lançamento (percentuais trocados no ac) ou bug do sistema antigo reproduzido (o em). Compare com o que o sistema antigo produz antes de tratar como defeito
O mesmo documento em duas linhasfvv/ftd: repasse e custo. far/fav: o revés e a fatura
Um câmbio estranho no riEle é derivado do valor retido em guarani, não lido do cadastro
Uma venda inteira em "otros ingresos"Um item sem grupo de produto — o primeiro. A conta gruda no documento
A linha "Redondeo de IFRS"Vem do 25F ou da própria sincronização, que fecha em IFRS o asiento que já fecha em moeda local — na conta da chave IDCONTA_AJUSTE_IRFS (Config. Globais, tela 41); sem a chave ela não é gravada
Um asiento aparecendo aberto numa consulta suaA linha de "Redondeo de IFRS" é gravada em dólar com câmbio 1: somar valor × câmbio nela devolve um número que em guarani não significa nada
I

As contas chumbadas no código

Esperadas — não são defeito

Algumas contas não vêm de cadastro nenhum: estão escritas no programa, escolhidas por razão social, apelido da filial ou id. Vieram assim do sistema antigo.

MóduloO que é chumbado
ticO par de contas de cada uma das oito lojas. Fora delas, dois literais da consulta
cexO cliente no exterior e o antecipo, por razão social
fvxp fvxA conta "em curso" e a de diferença de inventário
ccgO centro de custo do spread
acdO emitente da aduana na Bolívia, e uma despesa com caso próprio
fvvA conta 1162 das despesas
cgA conta do frete lavado

Eles ficam reunidos num método por módulo, com a linha do sistema antigo ao lado, justamente para que a troca por cadastro seja uma edição num lugar só quando chegar a vez. O caminho já está sendo percorrido: a lista de clientes fora da cobrança de exportação, que era literal, já virou coluna de cadastro.

Enquanto isso, não abra chamado por eles. Uma conta que aparece "sem explicação no cadastro" num desses sete pontos é o comportamento esperado.

O que ainda não é gravado

O câmbio IFRS. A sincronização grava o valor em dólar de cada linha pela cotação IFRS da data (a mesma do 25F) e fecha o asiento com o "Redondeo de IFRS" na conta da chave IDCONTA_AJUSTE_IRFS. Desde 12/09/2026 a conta é essa chave, como no 25F — antes era 10019979, e 1001459/1001441 nas filiais SHANGAI e HONG KONG. Sem a chave o asiento fica aberto em IFRS e a rodada avisa; o 25F continua disponível para completar.

Três módulos do combo não foram portados — adiantamento de RH, CT-e e almoxarifado em curso. O último é código morto no próprio sistema antigo.

Nada bate com essa busca. Tente a sigla do módulo, o nome da conta ou um trecho do histórico.