CTN Extrator

Extração autenticada de dados financeiros do Sistema CTN

Porta 2007 Online

O que é

Movimentações
Receitas & Despesas
Saldos
Fechamento de Caixa
Vendas
Relatório por Vendedor
Refresh
Cookie Automático
A autenticação usa cookies de sessão salvos no .env. Cookies são renovados via POST /refresh com 2captcha.

Rotas da API

GET /health

Verifica se a API está no ar.

{ "status": "ok" }
POST /movimentacoes

Retorna receitas e despesas por conta num intervalo de datas.

CampoTipoReq.Descrição
franquia_idstringID numérico da franquia
data_iniciostringYYYY-MM-DD
data_fimstringYYYY-MM-DD
tipo_movimentacaostring"" todos · "1" receita · "2" despesa
curl -X POST http://localhost:2007/movimentacoes \
  -H "Content-Type: application/json" \
  -d '{"franquia_id":"535","data_inicio":"2026-04-01","data_fim":"2026-04-06"}'
POST /saldos

Retorna fechamento de caixa e saldo por conta para uma data específica.

Retorna dados apenas para datas já encerradas (dias anteriores ao atual).
CampoTipoReq.Descrição
franquia_idstringID numérico da franquia
datastringYYYY-MM-DD
curl -X POST http://localhost:2007/saldos \
  -H "Content-Type: application/json" \
  -d '{"franquia_id":"535","data":"2026-04-01"}'
POST /vendas

Relatório de Filiação por Vendedor num intervalo de datas.

curl -X POST http://localhost:2007/vendas \
  -H "Content-Type: application/json" \
  -d '{"franquia_id":"535","data_inicio":"2026-04-22","data_fim":"2026-04-29"}'
POST /refresh 🔒 protegido

Renova os cookies do CTN via login automático + 2captcha. Atualiza o .env em disco sem reiniciar.

HeaderValor
X-API-SecretValor de API_SECRET no .env
curl -X POST http://localhost:2007/refresh \
  -H "X-API-Secret: sua_senha_forte"
Configure no n8n: cron 0 7 * * 1-5POST /refresh com o header. O refresh leva ~2 min (2captcha).

Configuração · .env

VariávelDescriçãoAtualização
CTN_LOGINE-mail de acesso ao CTNManual
CTN_SENHASenha de acesso ao CTNManual
TWOCAPTCHA_API_KEYChave do 2captchaManual
API_SECRETProtege POST /refreshManual
CTN_AUTHCookie de autenticação CTNAuto via /refresh
FRANQUIA_IDSMapa NOME:ID separado por vírgulaManual