O Produto PontoWeb destina-se a realizar a apuração do ponto dos funcionários durante o período apuração. Ao final, temos o resultado para lançar na folha de pagamento.
Para facilitar as rotinhas diárias, ganhar tempo e reduzir riscos operacionais, o PontoWeb e o DataSul pode ser integrados de forma nativa.
Os dados como cadastro de funcionários, afastamentos, códigos contábeis e sindicatos são enviados ao PontoWeb, para que não seja necessário realizar o cadastro novamente. Já os Resultados Apurados no período de apuração, são integrados/lançados diretamente na Folha de Pagamento.
Com estas integrações ativas, outras funcionalidades ocorrem como:
Para o processo de integração funcionar corretamente, é necessários que diversas informações estejam cadastradas de acordo com a folha de pagamento. Neste sentido, criamos este processo de integração.
Neste processo utilizamos APIs Rest Internas e o integrador 2.0 para a comunicação e orquestração de alguns fluxos.

1.Dados de Funcionários: Admissões, Movimentações e Demissões (carga e periódica)
2.Dados de Afastamentos: Criação, Alteração e Remoção (carga e periódica)
3.Sindicatos: Criação e Manutenção (carga)
4.Eventos/Rubricas: Criação e Manutenção (carga)
5.Resultados Apurados: Lançamentos (carga)
Não esta contemplado neste Escopo
Escalas: As escalas no PontoWeb devem ser cadastradas com os códigos concatenados. Assim, será possível integrar a escala padrão do funcionário:
Exemplo: Empresa (01) + Escala (111) → 01111
Centro de Custo: Os códigos de centro de custo devem ser concatenados:
Exemplo: Empresa (01) + Centro de Custo (022) → 01022
Motivos de Afastamento: Os códigos de motivos de afastamentos, devem ser cadastrados no PontoWeb concatenando a coligada:
Exemplo: Empresa (01) + Motivo (100) → 01100
Na primeira integração, deve-se seguir a seguinte ordem de ações:
Para uso no envio de resultados apurados.
XXX
Para realizar o cadastro ou ajuste da elegibilidade do ponto no DataSul.
Ajuste nos Cadastros Folhas - TOTVS (Nativas) x PontoWeb
Clientes que desejam restringir os IPs de comunicação com o Servidores do PontoWeb.
Restrição de IP Servidores Locais - TOTVS (Nativas) x PontoWebPara uso das integrações de Funcionários e Afastamentos.
Criação de Usuário M2M no PontoWeb - TOTVS (Nativas) x PontoWeb
Para realizar os ajustes no cadastro de funcionários.
Ajuste nos Cadastros PW - TOTVS (Nativas) x PontoWeb
Para realizar os cadastros ou ajustes dos códigos de afastamentos.
Ajuste nos Cadastros PW - TOTVS (Nativas) x PontoWeb
Para realizar os cadastros ou ajustes dos códigos de centros de custos.
Ajuste nos Cadastros PW - TOTVS (Nativas) x PontoWeb
Para realizar os cadastros ou ajustes dos códigos de escalas.
Ajuste nos Cadastros PW - TOTVS (Nativas) x PontoWeb
Para realizar o cadastro e configurações dos sindicatos.
Ajuste nos Cadastros PW - TOTVS (Nativas) x PontoWeb
Para realizar o cadastro e configurações dos eventos/rubricas.
Ajuste nos Cadastros PW - TOTVS (Nativas) x PontoWeb
Para ativar o serviço na base do PontoWeb, entre em:
Ativação Integração - TOTVS (Nativas) x PontoWeb
Os dados possuem o seguinte fluxo:
ID | Descrição | Origem | Destino |
01 | Dados de Funcionários | DataSul | PontoWeb |
02 | Dados de Afastamentos | DataSul | PontoWeb |
03 | Sindicatos | DataSul | PontoWeb |
04 | Eventos/Rubricas | DataSul | PontoWeb |
05 | Resultados Apurados | PontoWeb | DataSul |
Dados de Funcionários (Pessoas)
Item | Descrição |
|---|---|
| Fluxo: | DataSul (Cliente) → PontoWeb |
| URL API: | https://api.ahgora.com.br/people |
| Método: | POST |
Campos do PontoWeb que são integrados e sua origem no DataSul:
| PontoWeb | DataSul | ||||||
| Campo | Tipo | Descrição | Obrigatório | Regra | Campo | Descrição / Regra | |
| matricula | Alfanumérico | Identificação do colaborador | X | Campo chave Enviar sempre a matricula atual Concatenar dados sem separador | funcionario.cdn_funcionario | Matricula do Funcionario Enviar concatenado Empresa + Estabelecimento + Matricula | |
| nome | String | Nome do Funcionário | X | funcionario.nom_pessoa_fisic | Nome do Funcionario | ||
| pis | String | PIS do Funcionário | *X | Campo chave *Quando não existir PIS, deve ser informado o campo “sem_pis” : “ true “ | funcionario.cod_pis | Numero do PIS do Funcionário | |
| matricula_esocial | String | Matrícula do E-Social | Obrigatório para múltiplos vínculos | sped_participan.cod_matr_sped | Matricula do eSocial | ||
| dataAdmissao | Date | Data em que o Funcionário foi Admitido | X | (DD/MM/AAAA) | funcionario.dat_admis_func | Data de Admissão | |
| dataDemissao | Date | Data de Demissão | *X | (DD/MM/AAAA) *Quando for demissão, obrigatório | funcionario.dat_desligto_func | Data de Demissão | |
| localizacoes | Array | Localizações do funcionário | Manter campo aberto para que o cliente consiga enviar informação que mais se adequa | Podemos avaliar quais informações podemos colocar aqui. O que mais se aproxima é local de marcação, avaliar se temos mais informações que podemos flexibilizar. Podemos concatenar várias informações separadas com pipe | | |||
| escala_padrao | String | Código da escala/ turno do funcionário | Código da Escala existente no PontoWeb para atribuição. | funcionario.cdn_turno_trab | Turno (horário que foi contratado - ex: trab se seg a sex 08:00 as 18:00 com 01:30 de intervalo). Enviar sempre o mais atual. | ||
| lastChangeDefaultSchedule | Date | Data da alteração de escala/turno | Data da alteração relacionado ao campo "escala_padrao". | Sempre enviar a data do ultimo histórico de turno. | |||
| tipo_escala | Tipo de Escala de Trabalho | Manter padrão mensal Campo que pode ser utilizado como filtro, para disponibilizar as escalas. Ex. Pode ser diurna, noturna | Enviar sempre as horas padrão mensal do FP1400 | ||||
| ctps | String | Carteira de Trabalho | funcionario.cod_cart_trab funcionario.cod_ser_cart_trab funcionario.cod_unid_federac_cart_trab | Carteira de Trabalho do Funcionário. Podemos separar com barra, hifen | |||
| cargo | String | Título do Cargo | Padrão: dado enviado para e-social (Cod + Descrição) | funcionario.cdn_cargo_basic + cargo.des_cargo | Código do Cargo + descrição | ||
| departamento | String | Descrição do departamento do Funcionário | funcionario.cod_unid_lotac | Código + Descrição. Concatenar os dois campos e separa com traço "-". | |||
| sexo | String | Gênero do Funcionário | "F"eminino, "M"asculino ou "O"utros | rh_pessoa_fisic.idi_sexo {database/inpy/i01py257.i 06 cb_idi_sexo} | Sexo. | ||
| String | E-mail do Funcionário | Único por funcionário | rh_pessoa_fisic.nom_e_mail rh_pessoa_fisic.nom_mail_contat | E-mail e E-mail contato. Avaliar se precisamos flexibilizar | |||
| cpf | String | CPF do Funcionário | *X | *Obrigatório, se não for enviado PIS juntamente com o campo “sem_pis” : “ true “ | rh_pessoa_fisic.cod_id_feder funcionario.cod_id_feder | CPF. Enviar sem ponto e hifen | |
| rg | String | RG do Funcionário | sem SSP e sem data emissão | rh_pessoa_fisic.cod_id_estad_fisic | Carteira Identidade | ||
| cnpj | String | CNPJ da filial do Funcionário | CNPJ da PJ do estabelecimento sem caracateres | ||||
| dataCnpj | Date | Data da atribuição do CNPJ da empresa ao funcionário | (DD/MM/AAAA) | Data da transferência entre estabelecimentos.Sempre olhar o histórico e enviar a ultima transferência | |||
| centroCusto | String | Código do centro de custo do funcionário | funcionario.cod_rh_ccusto rh_ccusto.cod_rh_ccusto | Centro Custo | |||
| regimeTrabalho | String | Regime de Trabalho do Funcionário | *X | *Obrigatório quando possuir fluxo de Resultados Uma das opções (descrição): - CLT - estatutario - estagiario - temporario - rda - comissionado - terceirizado - menoraprendiz - intermitente - horista - pensaovitalicia - folhaconfidencial - autonomo - conselheiro - pensaovitalicia | Precisa criar DE-PARA para o cliente informar o tipo de funcionário com o tipo na Ahgora | ||
| dataNascimento | Date | Data de Nascimento do Funcionário | (DD/MM/AAAA) | rh_pessoa_fisic.dat_nascimento | Data Nascimento | ||
| dataCargo | Date | Data de Alteração de Cargo | Data da transferência entre cargos. Sempre olhar o histórico e enviar a ultima alteração de cargo | ||||
| carga_horaria | number | Definição de carga horária | Se definida, apenas escalas com a mesma quantidade de carga horária poderá ser aplicada para este funcionário Quantidade de horas mensais | Qauntidade de horas mês | |||
| bate_ponto | Objeto | Ponto Obrigatório | Não possuem a informação na folha Opções: - "Ponto Obrigatorio" para quem deve registrar o ponto; - "Ponto Livre" para quem não precisa registrar o ponto. Orientações: 1. se enviar o campo "bate_ponto" e "data_troca_elegibilidade_ponto" (tem que enviar os dois) vai verificar: 2. se o valor da string "bate_ponto" for "Ponto Obrigatorio" (exatamente assim) e a data enviada em "data_troca_elegibilidade_ponto" for válida vai inserir no funcionário o histórico de ponto obrigatório "true" para data enviada em "data_troca_elegibilidade_ponto" 3. caso o valor da string "bate_ponto" for diferente e a data enviada em "data_troca_elegibilidade_ponto" for válida vai inserir no funcionário o histórico de ponto obrigatório "false" para data enviada em "data_troca_elegibilidade_ponto" | CAMPO NOVO | Disponível somente quando habilita o produto do ponto | ||
| data_troca_elegibilidade_ponto | Objeto | Data de troca da elegibilidade do registro de ponto | Data relacionada ao dado do campo "registra_ponto" | CAMPO NOVO | Enviar a data quando passou a utilizar ponto, ou quando deixou de utilizar ponto. | ||
| matricula_chefia | String | Matrícula Chefia Imediata | Campo chave para Montagem da Hierarquia | Enviar a matricula do lider imediato da tabela de permissões | |||
| nome_chefia | String | Nome Chefia Imediata | Montagem da Hierarquia | Com a matricula, buscar da tabela funcionário | |||
| email_chefia | String | e-mail Chefia Imediata | Montagem da Hierarquia | Com a matricula, buscar da tabela funcionário | |||
| codSindicato | Person String | Código do Sindicato | Verificar o ID do campo | funcionario.cdn_sindicato sind_estab.cdn_sindicato | |||
| dataCodSindicato | Date | Data da alteração do código do sindicato | Este campo é relacionado a troca da informação do campo "codSindicato" | ||||
| telefone | string | Telefone | rh_pessoa_fisic.num_telefone rh_pessoa_fisic.num_telef_contat | ||||
| sem_pis | string | *X | *Obrigatório para envios sem PIS Esperado: "true" ou "false" | Preencher com true quando não tiver o PIS cadastrado | |||
| codInterno | string | Concatenar dados com separador Separado por pipe | funcionario.cdn_funcionario | Matricula do Funcionario Enviar concatenado Empresa + Estabelecimento + Matricula | |||
| matricula_anterior | string | *X | 1) Sempre será enviada a matricula corrente no campo "matricula"; 2)Quando houver transferência entre CNPJ com troca de matricula, a nova matricula deverá ser enviada no campo "matricula" e a antiga deverá ser enviada em um campo "matricula_anterior"); 3) Para novas alterações cadastrais dessa matricula alterada, os envios seguintes não deverão conter o campo matricula_antiga preenchida, pode ser enviada em branco, ou não ser enviado. 4) Não enviar datas de demissão e admissão 5) Concatenar dados sem separador | ||||
| custo_da_hora | String | Define o custo hora do funcionário, utilizado para cálculos financeiros. | Salário Hora. | ||||
| financeiro | Objeto | Indica os campos financeiros | Este campo está relacionados ao campos: salario, beneficios e vr | ||||
| salario | String | Valor do salário do colaborador | Formatado ou não. (2.245,50 ou 224550) Este campo é opcional e para clientes que utilizam o módulo financeiro | Caso o colaborar for mensalista, enviar o salário mensal Caso o colaborar for horista, enviar o salário da hora | |||
Exemplos (Json) | |||||||
| Request (Chamadas de Solicitação) | |||||||
| |||||||
| Response (Retornos) | |||||||
| Exemplo Solicitação Bem Sucedida - Code 200 | |||||||
| |||||||
| Erro de Validação - Code 400 | |||||||
| |||||||
| Erro de Autenticação - Code 401 | |||||||
|
Dados de Afastamentos
Idem | Descrição |
|---|---|
Fluxo: | DataSul (Cliente) → PontoWeb |
URL API: | |
Tipo de Requisição: | POST |
Campos do PontoWeb que são integrados e sua origem no DataSul:
PontoWeb | DataSul | ||||||
Campo | Tipo | Descrição | Obrigatório | Regra | Campo | Descrição / Regra | |
| matricula | String | Identificação do colaborador | X | Campo chave Enviar sempre a matricula atual Concatenar dados sem separador | funcionario.cdn_funcionario | Matricula do Funcionário Enviar concatenado Empresa + Estabelecimento + Matricula | |
| motivo | String | Motivo do Afastamento | X | Enviar o Código ou String, é obrigatória uma das informações. Cadastro prévio no PW exatamente iguais ao sitetema de origem | sit_afast_func.cdn_sit_afast_func sif_afast.cdn_sit_afast_func | Situação | |
| inicio | String | Data e/ou hora Inicial do Afastamento | X | YYYY-MM-DDTHH:MM (0000) Somente afastamentos em dias | sit_afast_func.dat_inic_sit_afast | Data Início | |
| fim | String | Data e/ou hora Final do Afastamento | X | YYYY-MM-DDTHH:MM (Enviando hora final 2400 corresponde ao dia total) Se data fim vazio, trocar para 31/12/2050 | sit_afast_func.dat_term_sit_afast | Dat Término Sempre envia data fim | |
| cod_interno | String | Código interno do Afastamento | X | A manutenção da ausência depende do campo 'internalCode', caso o mesmo não seja informado não será possível alterar ou remover a ausência pela integração Este código é armazenado para servir de chave para alterações no afastamento | sit_afast.idi_signif_sit database/inpy/i03py169.i | Significado | |
| operation | String | Ação a ser realizada | X | DEL para remoção da ausência (é possível remover enviando somente 2 campos: "cod_interno" e "operation" | |||
Exemplos (Json) | |||||||
Request (Chamadas de Solicitação) | |||||||
| |||||||
Deleção | |||||||
Completo | Simplificado | ||||||
|
| ||||||
Response (Retornos) | |||||||
Solicitação Bem Sucedida - Code 200 | |||||||
| |||||||
Erro de Validação - Code 400 | |||||||
| |||||||
Erro de Autenticação - Code 401 | |||||||
| |||||||
Sindicatos
Idem | Descrição |
|---|---|
| Fluxo: | DataSul (Cliente) → PontoWeb |
| URL API: | xxx |
| Tipo de Requisição: | GET |
Campos do DataSul que são integrados e sua origem no PontoWeb:
Eventos/Rubricas
Idem | Descrição |
|---|---|
| Fluxo: | DataSul (Cliente) → PontoWeb |
| URL API: | xxx |
| Tipo de Requisição: | GET |
Campos do DataSul que são integrados e sua origem no PontoWeb:
Resultados Apurados
Idem | Descrição |
|---|---|
| Fluxo: | PontoWeb → DataSul (Cliente) |
| URL API: | xxx |
| Tipo de Requisição: | POST |
Campos do DataSul que são integrados e sua origem no PontoWeb:
PontoWeb | DataSul | ||||||
Campo | Descrição | Regra | Tabela | Campo | Obrigatório | Descrição / Regra | |
| matricula | Identificação do colaborador | Pode ser alfanumerica Campo matrícula | lote_movto_infor_fp | cdn_funcionario | x | Matricula do Funcionario Enviada concatenado Empresa + Estabelecimento + Matricula | |
| anocom | Ano da competência | Padrão AAAA | lote_movto_infor_fp | num_ano_refer_movto_lote_fp | x | Código do Período. Enviar concatenado AnoMes (AAAAMM) | |
| mescom | Mês da competência | Padrão MM Ex. Janeiro enviar 01 | - | - | - | - | |
| campoAdicional | Pode ser informado o Período / Envelope na tela do integrador "Campo Adicional" | Informação do campo adicional no PW Não é obrigatório | lote_movto_infor_fp | idi_tip_movto_lote_fp | x | Tem que ser um dado parametrizável por cliente Puxar dado do "Campo Adicional" da apuração | |
| rubrica | Código do Evento / Rubrica | Será cadastrado no PW igual o sistema de destino | lote_movto_infor_fp | cdn_event_fix_movto | x | Tem que ser um dado parametrizável por cliente | |
| referencia | Referencia em horas ou dias | Horas sexagesimal (serparador ",") Ex: 1h30min, enviar 1,30 Dias em número inteiro Ex: 3 dias, enviar 3 | lote_movto_infor_fp | qtd_fix_movto | x | Enviar a quantidade, em horas ou em dias. Enviar em minutos (referência * 60) | |
| datafalta | Envio de evento de falta, envio da data em período sequencial deve ser enviada a data dia-a-dia | Envio de altas dia-a-dia formato (AAAAMMDD) | - | - | - | - | |
| codfuncionario | Código Interno do cadastro de funcionários | Dados com separador por pipe | x | Matrícula do Funcionário | |||
Exemplos (Json) | |||||||
| Request (Chamadas de Solicitação) | |||||||
| |||||||
| Response (Retornos) | |||||||
| Sucesso - Code 200 | |||||||
| |||||||
| Erro - Code 200 | |||||||
{ "response": [ { "resultados": [ { "matricula": "0101000001", "rubrica": "001", "status": "E", "mensagem": "Verba não encontrada na base de dados.", "referencia": "10,45", "datafalta": "" }, { "matricula": "0101000001", "rubrica": "002", "status": "E", "mensagem": "Verba não encontrada na base de dados.", "referencia": "1", "datafalta": "20240722" }, { "matricula": "0101000001", "rubrica": "002", "status": "E", "mensagem": "Verba não encontrada na base de dados.", "referencia": "1", "datafalta": "20240723" } ] } ]} | |||||||
| Erro - Code 400 / 401 / 500 e outros | |||||||