ERP · Gestão Escolar Novo

Módulos ERP

Além do pedagógico e da secretaria, a API dá acesso aos módulos de gestão da escola: financeiro, estoque e merenda, patrimônio, biblioteca, CRM, RH, visitantes, saúde, eventos, exercícios e suporte. As rotas seguem as mesmas convenções do restante da API — mesmos cabeçalhos de autenticação, mesmo formato de erro e de paginação.

Módulos disponíveis

Tudo o que o plano Gestão Escolar oferece pela API. Cada módulo tem a sua página com o modelo de dados, os filtros e exemplos de requisição e resposta.

Gestão

Exigem o plano Gestão Escolar também na API — clientes sem o ERP recebem 403 com ERP_REQUIRED.

Pedagógico

Módulos pedagógicos do plano Gestão Escolar, documentados junto aos demais recursos da API.

Disponíveis em todos os planos

Documentados com os módulos ERP, mas liberados também para clientes sem o plano Gestão Escolar — como no sistema.

Sem API pública por enquanto

Também fazem parte do plano Gestão Escolar, mas são usados apenas pelas telas do sistema e pelos aplicativos da To Aqui:

  • Alertas e Painéis personalizados
  • Relatórios pedagógicos e administrativos
  • Portal do Responsável e Portal do Aluno
  • Matrícula online, contratos e assinatura digital
  • Mapa da Escola

Requisitos e convenções

  • Plano Gestão Escolar. Os módulos de gestão só respondem para clientes com o ERP contratado; os demais recebem 403 com ERP_REQUIRED.
  • Escolas privadas. Financeiro, CRM e RH existem apenas para redes privadas — clientes públicos recebem PRIVATE_CLIENT_REQUIRED.
  • Escopo por escola. As rotas recebem o CNPJ da escola e só enxergam os dados daquela escola dentro do cliente autenticado. A Biblioteca é a exceção: é única para o cliente e as suas rotas não levam CNPJ.
  • Listas paginadas. Listas grandes trazem 25 itens por página no formato de paginação simples (data, links, meta); listas curtas (categorias, depósitos, etapas) vêm inteiras em data.
  • Filtros. Vão na query string. Booleanos aceitam 1/0; datas usam AAAA-MM-DD. Um filtro inválido responde 422 com o detalhe em errors.
  • Edições parciais. Nos PUT dos módulos ERP, só os campos enviados são alterados.
  • Datas e valores. Datas e horas em ISO 8601 com o fuso de Brasília; valores monetários como número em reais, com duas casas.

O que a API não altera

As operações de escrita cobrem cadastros e rotinas operacionais. O que mexe com dinheiro ou exige um funcionário identificado continua exclusivo da equipe da escola:

  • Cobranças, pagamentos, estornos, contratos e acordos — o Financeiro é somente leitura.
  • Dados bancários e chave PIX de fornecedores — ignorados nas escritas e nunca expostos.
  • Cobrança de ingressos de eventos — eventos criados pela API são sempre gratuitos.
  • Entradas, saídas e ajustes de estoque — sempre lançados por um funcionário.
  • Salário, dados bancários e documentos de funcionários — nunca expostos.
  • Gabaritos de exercícios — alternativas corretas e respostas-modelo nunca são expostas.

Códigos de erro dos módulos ERP

Além do formato de erros padrão, as respostas de regra de negócio trazem um code estável para você tratar no código:

403 ERP_REQUIRED

O cliente não está no plano Gestão Escolar (ERP).

403 PRIVATE_CLIENT_REQUIRED

Módulo exclusivo de escolas privadas (Financeiro, CRM, RH).

422 BUSINESS_RULE

Uma regra da escola impediu a operação — ex.: limite de empréstimos na biblioteca. A mensagem diz qual.

422 SYSTEM_DRIVEN_STAGE

Etapa do CRM controlada pelo fluxo de matrícula; não aceita movimentação manual.

422 INVALID_STAGE

Etapa inicial de lead não permitida (automática, ganha ou perdida).

422 INVALID_STATUS

Transição de status não permitida (ex.: check-out de visita que não está em andamento).

422 INVALID_DATES

Datas do evento incoerentes depois da edição.

422 DUPLICATE_CPF

Já existe um visitante com o CPF nesta escola.

422 ALREADY_RETURNED

O empréstimo já foi devolvido.

Exemplo — 422
{
  "success": false,
  "code": "BUSINESS_RULE",
  "message": "Limite de 3 empréstimo(s) simultâneo(s) atingido para esta categoria.",
  "errors": {
    "circulation": [
      "Limite de 3 empréstimo(s) simultâneo(s) atingido para esta categoria."
    ]
  }
}

Webhooks

Os módulos ERP também avisam o seu sistema. Os eventos disparam qualquer que seja a origem da mudança — telas da escola, pagamento confirmado pelo banco ou chamada da própria API — e chegam no mesmo formato e com a mesma assinatura dos demais webhooks. Assine-os no Portal do Parceiro.

receivable.paid

Uma conta a receber foi quitada — por boleto, PIX, cartão, maquininha ou no caixa.

receivable.status_changed

Qualquer outra mudança de status de uma conta a receber (vencida, parcial, cancelada, renegociada, estornada…).

supplier.created / supplier.updated

Fornecedor cadastrado ou alterado.

crm_lead.created / crm_lead.stage_changed

Lead criado ou movido de etapa (inclusive pela conversão em matrícula).

library_loan.created / .returned / .renewed

Empréstimo, devolução ou renovação na biblioteca.

visitor.created / visitor.updated

Visitante cadastrado ou alterado.

visit.created / .checked_in / .checked_out / .cancelled

Visita agendada, entrada, saída ou cancelamento.

event.created / event.updated / event.status_changed

Evento criado, editado ou com status alterado.

Teste no sandbox

O cliente de demonstração do sandbox está no plano Gestão Escolar e já vem com dados de todos os módulos: um contrato com parcelas pagas, em aberto e vencidas, uma conta a pagar, produtos com lotes, um cardápio, um bem patrimonial, um empréstimo na biblioteca, leads no funil, uma visita agendada, um evento, um atendimento na enfermaria, um funcionário, uma lista de exercícios e um chamado. Use uma chave toaqui_test_ — veja Sandbox e produção.