Inicio
Splitdigital Logo

Documentação da API da empresa

Como usar a API no domínio regenerativa.splitdigital.app.br

Esta biblioteca explica o acesso direto aos recursos desta empresa, sem passar pela Central. A URL base deste ambiente e https://regenerativa.splitdigital.app.br/api.

Base URL

https://regenerativa.splitdigital.app.br/api

Todas as chamadas desta pagina devem usar o domínio atual da empresa.

Identidade

Usuário da empresa

O token e emitido na própria empresa e respeita as permissoes do usuario local.

Isolamento

Somente esta empresa

O domínio identifica a empresa antes da autenticação. Não há seleção de empresa por parâmetro.

Autenticacao

Use o token Bearer gerado em /profile no próprio domínio da empresa.

Authorization: Bearer SEU_TOKEN
Accept: application/json
Content-Type: application/json

O usuario precisa estar com acesso por API habilitado, possuir a ability no token e manter a permissao da tela correspondente.

Contrato de isolamento

  • O token emitido nesta empresa deve ser usado em https://regenerativa.splitdigital.app.br/api.
  • O token desta empresa não concede acesso a outras empresas.
  • A API Central continua separada para usuários centrais com acesso a múltiplas empresas.
  • As regras de permissao seguem as mesmas telas da empresa.

Permissoes e abilities

Pessoas

Permissao: Visualizar Pessoa

  • tenant.pessoas.read
  • tenant.pessoas.write
  • tenant.pessoas.delete

Movimentos

Permissao: Visualizar Movimento

  • tenant.movimentos.read
  • tenant.movimentos.write
  • tenant.movimentos.delete

Provisoes

Permissao: Visualizar Provisao

  • tenant.provisoes.read
  • tenant.provisoes.write
  • tenant.provisoes.delete

Endpoints

Consulta

  • GET /api/me: usuario autenticado e dados da empresa.
  • GET /api/pessoas: lista pessoas.
  • GET /api/pessoas/{id}: consulta pessoa.
  • PUT/PATCH /api/pessoas/{id}: edita pessoa.
  • GET /api/movimentos: lista movimentos.
  • GET /api/movimentos/{id}: consulta movimento.
  • PUT/PATCH /api/movimentos/{id}: edita movimento.
  • GET /api/provisoes: lista provisoes.
  • GET /api/provisoes/{id}: consulta provisao com parcelas.
  • PUT/PATCH /api/provisoes/{id}: edita provisao respeitando bloqueios de boleto e baixa.

Escrita

  • POST /api/pessoas: cadastra pessoa.
  • DELETE /api/pessoas/{id}: exclui pessoa, se nao estiver usada no financeiro.
  • POST /api/movimentos: cadastra movimento.
  • DELETE /api/movimentos/{id}: exclui movimento.
  • POST /api/provisoes: cadastra provisao e parcelas.
  • DELETE /api/provisoes/{id}: exclui provisao, se as parcelas permitirem.

Como filtrar as consultas

Envie os filtros na URL, após ?, separados por &. Combine filtros para restringir a consulta. Eles não alteram os dados cadastrados.

Pessoas — GET /api/pessoas

Use search para buscar parte do nome ou documento. Exemplo: https://regenerativa.splitdigital.app.br/api/pessoas?search=Maria&limit=50.

Provisões e parcelas — GET /api/provisoes

Filtros das parcelas de provisões
ParâmetroComo usar
forma_pagamentopix ou boleto. Conversão automática para o tipo fixo: Pix = 3, Boleto = 4; esses códigos também são aceitos. Seleciona todas as formas cadastradas desse tipo.
formapagamento_idAlternativa para selecionar um cadastro específico pelo ID exibido em parcelas[].payment_method.id. O ID do cadastro não é o código do tipo. Não combine com forma_pagamento.
vencimento_deData inicial inclusiva, em AAAA-MM-DD.
vencimento_ateData final inclusiva, em AAAA-MM-DD. Pode ser usada sem a data inicial.
vencidos=1Somente parcelas com vencimento anterior ao dia atual no fuso da aplicação e sem baixa (realizado vazio). Não inclui vencimentos de hoje. 0 desativa este filtro.
em_aberto1: parcelas sem baixa; 0: parcelas baixadas. Omitir para consultar ambas. Para vencidas, use vencidos=1.

Forma de pagamento, vencimento e baixa são filtrados na mesma parcela, nunca no cabeçalho da provisão. A resposta contém provisões com pelo menos uma parcela correspondente. Com include=parcelas, apenas as parcelas que atendem a todos os filtros são retornadas; parcelas_count conta essas parcelas. Os valores do cabeçalho da provisão permanecem os valores originais.

# Boletos vencidos e não baixados, com as parcelas correspondentes
GET https://regenerativa.splitdigital.app.br/api/provisoes?forma_pagamento=boleto&vencidos=1&include=parcelas&limit=100

# Pix em aberto com vencimento em novembro de 2026
GET https://regenerativa.splitdigital.app.br/api/provisoes?forma_pagamento=pix&em_aberto=1&vencimento_de=2026-11-01&vencimento_ate=2026-11-30&include=parcelas

Em todas as listagens, limit tem padrão 50 e máximo 100 registros por resposta; nas provisões, use page=1, page=2 etc. para percorrer todos os resultados. A resposta informa meta.total, meta.current_page, meta.last_page e meta.next_page_url (nulo na última página). A próxima URL preserva os filtros. Pessoas e movimentos retornam apenas o limite solicitado, sem paginação. include=extras inclui metadados controlados e pode ser combinado como include=parcelas,extras nas provisões. Movimentos aceitam limit e include=extras, sem filtros de parcelas. Filtros inválidos de provisões retornam 422, incluindo datas inválidas ou intervalo invertido.

Regras de escrita

Provisoes

  • Alteracoes respeitam as mesmas regras usadas nas telas da empresa.
  • Uma provisao com qualquer parcela baixada nao pode ser alterada pela API.
  • Boletos recebidos ou em situacao nao editavel bloqueiam alteracao de cabecalho e parcelas.
  • Boletos cancelados ou expirados nao sao editados no banco; ao alterar vencimento ou valor, sera criado um novo boleto.
  • Ao informar parcelas[].id, a parcela precisa pertencer a provisao da URL.
  • Provisoes de entrada com forma de pagamento boleto disparam o registro bancario apos salvar.

Pessoas

  • O campo pix_chave aceita no maximo 100 caracteres, tanto no cadastro quanto na edicao.

Boleto e metadata

  • A parcela so e tratada como boleto vinculado quando existem dados reais no metadata, como status, codigo de solicitacao, instituicao ou nosso numero.
  • Apenas escolher forma de pagamento boleto nao bloqueia edicao antes do vinculo bancario existir.
  • Metadata enviado em parcelas e mesclado com o metadata existente para preservar dados bancarios.
  • O campo linha_digitavel pode ser enviado na parcela e sera normalizado para numeros.
  • Erros tecnicos dos bancos sao normalizados antes de serem exibidos ao usuario.

Exemplo: criar pessoa

POST https://regenerativa.splitdigital.app.br/api/pessoas
Authorization: Bearer SEU_TOKEN
Content-Type: application/json

{
  "nome": "Cliente API",
  "inscrfederal": "12345678901",
  "email": "cliente@example.com",
  "ativo": true,
  "pix_tipo": 1,
  "pix_chave": "12345678901"
}

Exemplo: criar movimento

POST https://regenerativa.splitdigital.app.br/api/movimentos
Authorization: Bearer SEU_TOKEN
Content-Type: application/json

{
  "doc": "MOV-001",
  "pessoa_id": 1,
  "tipo": 1,
  "valor": 150.75,
  "previsto": "2026-05-10",
  "realizado": "2026-05-10",
  "descricao": "Recebimento via integracao",
  "formapagamento_id": 1
}

Exemplo: criar provisao com parcelas

POST https://regenerativa.splitdigital.app.br/api/provisoes
Authorization: Bearer SEU_TOKEN
Content-Type: application/json

{
  "doc": "PROV-001",
  "pessoa_id": 1,
  "tipo": 1,
  "valor": 300.50,
  "previsto": "2026-06-10",
  "descricao": "Provisao via integracao",
  "formapagamento_id": 1,
  "parcelas": [
    {
      "seq": 1,
      "valor": 150.25,
      "previsto": "2026-06-10",
      "formapagamento_id": 1
    },
    {
      "seq": 2,
      "valor": 150.25,
      "previsto": "2026-07-10",
      "formapagamento_id": 1
    }
  ]
}

Parametros uteis

  • limit: limite de registros, de 1 a 100.
  • search: busca pessoas por nome ou documento.
  • include=extras: inclui metadados controlados.
  • include=parcelas: inclui parcelas na listagem de provisoes.

Respostas esperadas

  • 200: consulta autorizada.
  • 201: recurso criado.
  • 204: recurso excluido.
  • 401: token ausente, invalido ou expirado.
  • 403: API desabilitada, ability ausente ou permissao insuficiente.
  • 409: operacao bloqueada por regra de negocio.
  • 422: payload invalido.

Resumo OpenAPI

Referencia compacta para IAs e integradores

openapi: 3.0.3
servers:
  - url: https://regenerativa.splitdigital.app.br/api
security:
  - bearerAuth: []
paths:
  /me:
    get:
      x-ability: tenant.read
  /pessoas:
    get:
      x-ability: tenant.pessoas.read
    post:
      x-ability: tenant.pessoas.write
  /pessoas/{id}:
    get:
      x-ability: tenant.pessoas.read
    patch:
      x-ability: tenant.pessoas.write
    delete:
      x-ability: tenant.pessoas.delete
  /movimentos:
    get:
      x-ability: tenant.movimentos.read
    post:
      x-ability: tenant.movimentos.write
  /movimentos/{id}:
    get:
      x-ability: tenant.movimentos.read
    patch:
      x-ability: tenant.movimentos.write
    delete:
      x-ability: tenant.movimentos.delete
  /provisoes:
    get:
      x-ability: tenant.provisoes.read
      parameters:
        - {in: query, name: forma_pagamento, schema: {type: string, enum: [pix, boleto, '3', '4']}, description: 'Tipo da forma de pagamento da parcela; não combinar com formapagamento_id'}
        - {in: query, name: formapagamento_id, schema: {type: integer, minimum: 1}, description: 'ID do cadastro da forma de pagamento da parcela'}
        - {in: query, name: vencimento_de, schema: {type: string, format: date}, description: 'Vencimento inicial da parcela, inclusivo'}
        - {in: query, name: vencimento_ate, schema: {type: string, format: date}, description: 'Vencimento final da parcela, inclusivo'}
        - {in: query, name: vencidos, schema: {type: integer, enum: [0, 1]}, description: '1 = vencimento anterior a hoje e sem baixa'}
        - {in: query, name: em_aberto, schema: {type: integer, enum: [0, 1]}, description: '1 = sem baixa; 0 = baixadas'}
        - {in: query, name: include, schema: {type: string}, example: 'parcelas,extras'}
        - {in: query, name: limit, schema: {type: integer, minimum: 1, maximum: 100, default: 50}}
        - {in: query, name: page, schema: {type: integer, minimum: 1, default: 1}}
    post:
      x-ability: tenant.provisoes.write
  /provisoes/{id}:
    get:
      x-ability: tenant.provisoes.read
    patch:
      x-ability: tenant.provisoes.write
    delete:
      x-ability: tenant.provisoes.delete
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer