O Índice de Participação por Município (IPM) é um controle efetuado pelas Secretarias da Fazenda Estadual (SEFAZ) para identificar o montante de operações realizadas em cada município,
com o propósito de realizar uma melhor distribuição do imposto recolhido para os municípios de seu território. Essas informações são apresentadas no registro 1400 da EFD ICMS/IPI.
Essa funcionalidade permite rastrear quais os valores divididos para cada município e identificar (via relatório) como o sistema chegou nesses valores, trazendo informações dos documentos fiscais e das regras utilizadas.
O objetivo da rotina de apuração é que seja personalizável, permitindo que o cliente consiga configurar e montar as regras de geração do registro 1400 de acordo com sua movimentação.
Importar os códigos do IPM por UF, na rotina Índice de Part. dos Municipios (FISA094).
https://www.sped.fazenda.gov.br/spedtabelas/AppConsulta/publico/aspx/ConsultaTabelasExternas.aspx?CodSistema=SpedFiscal

| As notas que serão consideradas no filtro de apuração devem possuir incidência de ICMS e o imposto criado no Configurador de Tributos. |
Exemplo de nota que será considerada na apuração:
OBS: No exemplo abaixo criamos o imposto IPM e iremos utilizá-lo na regra e apuração do IPM.


Incluir no configurador de tributos o imposto que será utilizado na identificação das operações que serão considerados na apuração do IPM. No exemplo utilizamos a nomenclatura IPM.
Documentação do Configurador de Tributos:
https://tdn.totvs.com/display/public/PROT/CFGTRIB+-+Configurador+de+Tributos
Realizar o cadastro levando em consideração os itens abaixo:
- Perfil de Produto , Operação, Participante, Origem- Destino.
- Regra de Base de Cálculo, Alíquota , Escrituração.

O cadastro da regra deve ser preenchido:
Código: Informe o identificador único
Descrição: Informe a descrição do cadastro
Data início e Data Final: Informe o período de vigência do cadastro
Na aba IPM deve ser preenchido:
UF: Informe a UF que deseja utilizar na regra de cálculo do IPM, pode cadastrar mais de uma UF em um único cadastro.
IPM: Escolher o código da DIPAM que foi importado na rotina (FISA094).
Descrição: Descrição do código da DIPAM
Código Regra: Escolher o código de regra que foi cadastrado na Regra de Cálculo - Documentos Fiscais
Op. Município:
1- Município Origem:
2- Município Destino:
3- Município Participante:
4- Município Contribuinte:
5- Rateio:
Vl. Simbólico: Inclui o valor simbólico de 0,01 quando não houver operações.
Na aba Rateio:
Ao preencher a aba rateio a somatoria do percentual deve ser de 100%.


Acessar o Configurador de tributos (FISA170) \ Regras Fiscais \ Apuração \ Apuração de IPM ( FISA325 ).
Ao clicar em processar será necessário selecionar a filial onde será gravado a apuração, essa filial será considerada a filial centralizadora.

Posteriormente será necessário informar a data inicial e final, caso seja necessário apurar movimento de várias filiais para consolidar na centralizadora, marque seleciona filial com a opção 1 - Sim,
se for necessário marcar apenas as filiais selecionadas com a mesma raiz, habilite o campo Agrupo CNPJ + IE = 1 - Sim,
por fim, escolha se irá considerar os código IPMs da tabela CNL com o tipo mensal ou anual.
Na tabela abaixo, marque o tributo genérico de IPM que foi vinculado a regra de código IPM no cadastro do código IPM ( FISA322 ), pois servirá de filtro, caso haja necessidade de apurar parcial,
se existir mais de um tributo genérico de IPM.

Clique em avançar. Se houver êxito, será exibido a mensagem "Apuração concluída com sucesso!".

Posteriormente será exibido a tela com os dados apurados.

Consolida os movimentos utilizando os seguintes critérios:
Com base em:
Essa definição será utilizada para aplicar filtros e realizar a apuração dos movimentos.

SIX
| INDICE | ORDEM | CHAVE | DESCRICAO |
| CKI | 1 | CKI_FILIAL+CKI_IDDETA+CKI_IDUNIQ | ID Det. Apur + ID Único |
| CKH | 1 | CKH_FILIAL+CKH_IDAPUR+CKH_UF+CKH_DIPAM+CKH_CODMUN | ID Apuracao + UF + Cod. Dipam + Cod. Municip |
| CKG | 2 | CKG_FILIAL+DTOS(CKG_DTINI)+DTOS(CKG_DTFIM) | Data Inicial + Data Final |
| CKG | 1 | CKG_FILIAL+CKG_ID | ID |
| CKF | 1 | CKF_FILIAL+CKF_IDIPM+CKF_UF+CKF_CODIPM+CKF_CODMUN | ID + UF + IPM + Município |
| CKE | 1 | CKE_FILIAL+CKE_ID+CKE_UF+CKE_CODIPM+CKE_REGCAL | ID + UF + IPM + Código Regra |
| CKD | 2 | CKD_FILIAL+CKD_CODREG | Código |
| CKD | 1 | CKD_FILIAL+CKD_ID+CKD_CODREG | ID + Código |
SX2
| X2_CHAVE | X2_ARQUIVO | X2_NOME | X2_UNICO | X2_MODO | X2_MODOUN | X2_MODOEMP | X2_SYSOBJ |
| CKI | CKIT10 | Apuração de IPM - Relatório | CKI_FILIAL+CKI_IDDETA+CKI_IDUNIQ | E | E | E | |
| CKH | CKHT10 | Apuração de IPM - Detalhamento | CKH_FILIAL+CKH_IDAPUR+CKH_UF+CKH_DIPAM+CKH_CODMUN | E | E | E | FISA325 |
| CKG | CKGT10 | Apuração de IPM - Cabecalho | CKG_FILIAL+CKG_ID | E | E | E | FISA325 |
| CKF | CKFT10 | Regra de IPM - Rateio | CKF_FILIAL+CKF_IDIPM+CKF_UF+CKF_CODIPM+CKF_CODMUN | E | E | E | FISA322 |
| CKE | CKET10 | Regra de IPM - Cadastro | CKE_FILIAL+CKE_ID+CKE_UF+CKE_CODIPM+CKE_REGCAL | E | E | E | FISA322 |
| CKD | CKDT10 | Cab. Regra de IPM | CKD_FILIAL+CKD_ID+CKD_CODREG | E | E | E | FISA322 |
SX3
| X3_ARQUIVO | X3_ORDEM | X3_CAMPO | X3_TIPO | X3_TAMANHO | X3_DECIMAL | X3_TITULO | X3_PICTURE | X3_F3 | X3_BROWSE | X3_VISUAL | X3_CONTEXT |
| CKI | 32 | CKI_CODFOR | C | 6 | 0 | Cod. Fornec. | @! | FOR | S | A | R |
| CKI | 31 | CKI_CODCLI | C | 6 | 0 | Cod. Cliente | @! | SA1 | S | A | R |
| CKI | 30 | CKI_FORNEC | C | 50 | 0 | Nome Fornec | @! | N | V | R | |
| CKI | 29 | CKI_CLIENT | C | 60 | 0 | Nome Cliente | @! | N | V | R | |
| CKI | 28 | CKI_VLTRIB | N | 14 | 2 | Vlr. Tributo | @E 99,999,999,999.99 | N | V | R | |
| CKI | 27 | CKI_ALIQ | N | 10 | 6 | Aliq Aplica | @E 999.999999 | N | V | R | |
| CKI | 26 | CKI_BSECAL | N | 14 | 2 | Base Calc | @E 99,999,999,999.99 | N | V | R | |
| CKI | 25 | CKI_VLTOT | N | 16 | 2 | Vlr. Total | @E 9,999,999,999,999.99 | S | V | R | |
| CKI | 24 | CKI_VLCONT | N | 14 | 2 | Vlr.Contabil | @E 99,999,999,999.99 | N | V | R | |
| CKI | 23 | CKI_MUNDES | C | 60 | 0 | Munic. Dest | @! | N | V | R | |
| CKI | 22 | CKI_UFDEST | C | 2 | 0 | UF Destino | @! | 12 | N | V | R |
| CKI | 21 | CKI_MUNORI | C | 60 | 0 | Munic Origem | @! | N | V | R | |
| CKI | 20 | CKI_UFORIG | C | 2 | 0 | UF de Origem | @! | 12 | N | V | R |
| CKI | 19 | CKI_MUNPAR | C | 60 | 0 | Munic Partic | @! | N | V | R | |
| CKI | 18 | CKI_UFPART | C | 2 | 0 | UF Partic | @! | 12 | N | V | R |
| CKI | 17 | CKI_LOJA | C | 2 | 0 | Loja | @! | N | V | R | |
| CKI | 16 | CKI_UFNOTA | C | 2 | 0 | UF Emi/Des | @! | 12 | N | V | R |
| CKI | 15 | CKI_DTEMIS | D | 8 | 0 | DT. Emissao | N | V | R | ||
| CKI | 14 | CKI_DTENT | D | 8 | 0 | DT.Ent. Doc | N | V | R | ||
| CKI | 13 | CKI_ITEM | C | 4 | 0 | Item | @! | N | V | R | |
| CKI | 12 | CKI_TPMOV | C | 1 | 0 | Tp.Movimento | @! | N | V | R | |
| CKI | 11 | CKI_SERIE | C | 3 | 0 | Serie | !!! | N | V | R | |
| CKI | 10 | CKI_NF | C | 9 | 0 | NF | @! | N | V | R | |
| CKI | 9 | CKI_CODTRI | C | 6 | 0 | Cod. Tributo | @! | N | A | R | |
| CKI | 8 | CKI_REGAPU | C | 6 | 0 | Reg/Proc Apu | @! | N | V | R | |
| CKI | 7 | CKI_CODMUN | C | 60 | 0 | Cod. Municip | @! | N | A | R | |
| CKI | 6 | CKI_FILDOC | C | 8 | 0 | Filial Doc | N | A | R | ||
| CKI | 5 | CKI_CODIPM | C | 60 | 0 | Cod. IPM | @! | N | V | R | |
| CKI | 4 | CKI_UFDOC | C | 2 | 0 | UF documento | @! | 12 | N | V | R |
| CKI | 3 | CKI_IDUNIQ | C | 36 | 0 | ID Único | @! | N | A | R | |
| CKI | 2 | CKI_IDDETA | C | 36 | 0 | ID Det. Apur | @! | N | V | R | |
| CKI | 1 | CKI_FILIAL | C | 8 | 0 | Filial | N | V | R | ||
| CKH | 9 | CKH_DSCDIP | C | 80 | 0 | Descr. Dipam | @! | N | V | V | |
| CKH | 8 | CKH_TIPO | C | 1 | 0 | Tipo | @! | N | V | R | |
| CKH | 7 | CKH_VLRADC | N | 14 | 2 | Vlr. Adic | @E 99,999,999,999.99 | N | V | R | |
| CKH | 6 | CKH_MUNICI | C | 60 | 0 | Município | @! | N | V | R | |
| CKH | 5 | CKH_CODMUN | C | 5 | 0 | Cod. Municip | @! | N | A | R | |
| CKH | 4 | CKH_DIPAM | C | 60 | 0 | Cod. Dipam | @! | N | V | R | |
| CKH | 3 | CKH_UF | C | 2 | 0 | UF | @! | N | V | R | |
| CKH | 2 | CKH_IDAPUR | C | 36 | 0 | ID Apuracao | @! | N | A | R | |
| CKH | 1 | CKH_FILIAL | C | 8 | 0 | Filial | N | V | R | ||
| CKG | 4 | CKG_DTFIM | D | 8 | 0 | Data Final | S | V | R | ||
| CKG | 3 | CKG_DTINI | D | 8 | 0 | Data Inicial | S | V | R | ||
| CKG | 2 | CKG_ID | C | 36 | 0 | ID | @! | N | V | R | |
| CKG | 1 | CKG_FILIAL | C | 8 | 0 | Filial | S | V | R | ||
| CKF | 7 | CKF_RATEIO | N | 5 | 2 | % Rateio | @E 99.99 | S | A | R | |
| CKF | 6 | CKF_DESCMU | C | 60 | 0 | Descrição | @! | S | V | R | |
| CKF | 5 | CKF_CODMUN | C | 5 | 0 | Município | @! | CC2CKF | S | A | R |
| CKF | 4 | CKF_CODIPM | C | 60 | 0 | IPM | @! | S | A | R | |
| CKF | 3 | CKF_UF | C | 2 | 0 | UF | @! | 12 | S | A | R |
| CKF | 2 | CKF_IDIPM | C | 36 | 0 | ID | @! | S | A | R | |
| CKF | 1 | CKF_FILIAL | C | 8 | 0 | Filial | S | A | R | ||
| CKE | 9 | CKE_IDF2B | C | 36 | 0 | ID Reg Calc | @! | N | A | R | |
| CKE | 8 | CKE_CONVLS | C | 1 | 0 | Vl Simbólico | @! | S | A | R | |
| CKE | 7 | CKE_CONSMU | C | 1 | 0 | Op.Município | @! | S | A | R | |
| CKE | 6 | CKE_REGCAL | C | 6 | 0 | Código Regra | @! | F2B3 | S | A | R |
| CKE | 5 | CKE_DSCIPM | C | 60 | 0 | Decrição | @! | S | V | R | |
| CKE | 4 | CKE_CODIPM | C | 60 | 0 | IPM | @! | CLNCKE | S | A | R |
| CKE | 3 | CKE_UF | C | 2 | 0 | UF | @! | 12 | S | A | R |
| CKE | 2 | CKE_ID | C | 36 | 0 | ID | @! | S | A | R | |
| CKE | 1 | CKE_FILIAL | C | 8 | 0 | Filial | S | V | R | ||
| CKD | 6 | CKD_VIGFIM | D | 8 | 0 | Data Final | S | A | R | ||
| CKD | 5 | CKD_VIGINI | D | 8 | 0 | Data Início | S | A | R | ||
| CKD | 4 | CKD_DESCR | C | 50 | 0 | Descrição | @! | S | A | R | |
| CKD | 3 | CKD_CODREG | C | 6 | 0 | Código | @! | S | A | R | |
| CKD | 2 | CKD_ID | C | 36 | 0 | ID | @! | N | V | R | |
| CKD | 1 | CKD_FILIAL | C | 8 | 0 | Filial | S | V | R |
SX7
| X7_CAMPO | X7_SEQUENC | X7_REGRA | X7_CDOMIN | X7_TIPO | X7_SEEK | X7_ALIAS | X7_ORDEM | X7_CHAVE | X7_PROPRI |
| CKF_CODMUN | 1 | Fisa322CC2(FwFldGet("CKE_UF"),FwFldGet("CKF_CODMUN")) | CKF_DESCMU | X | N | 0 | S | ||
| CKE_REGCAL | 1 | F2B->F2B_ID | CKE_IDF2B | P | N | 0 | S | ||
| CKE_CODIPM | 1 | SUBSTR(CLN->CLN_DSCIPM,1,60) | CKE_DSCIPM | P | S | CLN | 1 | XFILIAL("CLN")+FwFldGet("CKE_UF")+FwFldGet("CKE_CODIPM") | S |
SX9
| X9_DOM | X9_IDENT | X9_CDOM | X9_EXPDOM | X9_EXPCDOM | X9_PROPRI | X9_LIGDOM | X9_LIGCDOM | X9_CONDSQL | X9_USEFIL | X9_ENABLE | X9_VINFIL | X9_CHVFOR |
| SX5 | 8 | CKE | X5_TABELA+X5_CHAVE | '12'+CKE_UF | S | 1 | N | S | S | 2 | 2 | |
| SX5 | 7 | CKI | X5_TABELA+X5_CHAVE | '12'+CKI_UFDEST | S | 1 | N | S | S | 2 | 2 | |
| SX5 | 6 | CKI | X5_TABELA+X5_CHAVE | '12'+CKI_UFORIG | S | 1 | N | S | S | 2 | 2 | |
| SX5 | 5 | CKI | X5_TABELA+X5_CHAVE | '12'+CKI_UFPART | S | 1 | N | S | S | 2 | 2 | |
| SX5 | 4 | CKI | X5_TABELA+X5_CHAVE | '12'+CKI_UFNOTA | S | 1 | N | S | S | 2 | 2 | |
| SX5 | 3 | CKI | X5_TABELA+X5_CHAVE | '12'+CKI_UFDOC | S | 1 | N | S | S | 2 | 2 | |
| SX5 | 2 | CKH | X5_TABELA+X5_CHAVE | '12'+CKH_UF | S | 1 | N | S | S | 2 | 2 | |
| SX5 | 1 | CKF | X5_TABELA+X5_CHAVE | '12'+CKF_UF | S | 1 | N | S | S | 2 | 2 | |
| SA2 | 1 | CKI | A2_COD+A2_LOJA | CKI_CODFOR+CKI_LOJA | S | 1 | N | S | S | 2 | 2 | |
| SA1 | 1 | CKI | A1_COD+A1_LOJA | CKI_CODCLI+CKI_LOJA | S | 1 | N | S | S | 2 | 2 | |
| F2B | 1 | CKE | F2B_REGRA | CKE_REGCAL | S | 1 | N | S | S | 2 | 2 | |
| CLN | 1 | CKE | CLN_UF+CLN_CODIPM | CKE_UF+CKE_CODIPM | S | 1 | N | S | S | 2 | 2 | |
| CKG | 1 | CKH | CKG_ID | CKH_IDAPUR | S | 1 | N | S | S | 1 | 1 | |
| CKE | 1 | CKF | CKE_ID+CKE_UF+CKE_CODIPM | CKF_IDIPM+CKF_UF+CKF_CODIPM | S | 1 | N | S | S | 1 | 1 | |
| CKD | 1 | CKE | CKD_ID | CKE_ID | S | 1 | N | S | S | 1 | 1 | |
| CC2 | 2 | CKH | CC2_CODMUN | CKH_CODMUN | S | 1 | N | S | S | 2 | 2 | |
| CC2 | 1 | CKF | CC2_CODMUN | CKF_CODMUN | S | 1 | N | S | S | 2 | 2 |
SXB
| XB_ALIAS | XB_TIPO | XB_SEQ | XB_COLUNA | XB_DESCRI | XB_DESCSPA | XB_DESCENG | XB_CONTEM |
| CLNCKE | 6 | 1 | CLN->CLN_UF==FwFldGet("CKE_UF") | ||||
| CLNCKE | 5 | 1 | CLN_CODIPM | ||||
| CLNCKE | 4 | 1 | 4 | Descrição | Descripción | Description | CLN_DSCIPM |
| CLNCKE | 4 | 1 | 3 | Código IPM | Código IPM | IPM Code | CLN_CODIPM |
| CLNCKE | 4 | 1 | 2 | Dt Final | Fch. Final | End Date | CLN_DTFIMV |
| CLNCKE | 4 | 1 | 1 | Dt Início | Fch. Inicial | Start Date | CLN_DTINIV |
| CLNCKE | 2 | 1 | 1 | Filial+estado+codigo | Suc+E/P/R+Código | Branch+State+Code | |
| CLNCKE | 1 | 1 | DB | Ind.Partic.Munic. | Ind.Partic.Munic. | City Partic. Ind. | CLN |
| CC2CKF | 6 | 1 | CC2->CC2_EST==FwFldGet("CKE_UF") | ||||
| CC2CKF | 5 | 1 | CC2_CODMUN | ||||
| CC2CKF | 4 | 2 | 6 | Municipio | Municipio | City | CC2_MUN |
| CC2CKF | 4 | 2 | 5 | Cod. IBGE | Cód. IBGE | IBGE Code | CC2_CODMUN |
| CC2CKF | 4 | 2 | 4 | Estado | Est/Prov/Reg | State | CC2_EST |
| CC2CKF | 4 | 1 | 3 | Municipio | Municipio | City | CC2_MUN |
| CC2CKF | 4 | 1 | 2 | Cod. IBGE | Cód. IBGE | IBGE Code | CC2_CODMUN |
| CC2CKF | 4 | 1 | 1 | Estado | Est/Prov/Reg | State | CC2_EST |
| CC2CKF | 2 | 2 | 2 | Codigo Ibge | Código IBGE | IBGE Code | |
| CC2CKF | 2 | 1 | 1 | Municipio | Municipio | City | |
| CC2CKF | 1 | 1 | DB | Municipio Rateio | Municipio Prorrateo | Apportionment City | CC2 |
Implementação cadastro Código IPM
Implementação da tela de apuração
Implementação do relatório SmartView (IPM)