Rebots
Falar com suporte
API Receita Saúde · v2.1

Documentação da API

Guia técnico completo para integração com a plataforma Rebots e o sistema Receita Saúde da Receita Federal.

Última atualização: 12 de março de 2026·Versão 2.1

1. Introdução

Esta documentação descreve a API utilizada para automatizar a geração e gerenciamento de recibos eletrônicos de serviços de saúde, em conformidade com as normativas do sistema Receita Saúde da Receita Federal do Brasil.

A API foi desenvolvida pela Rebots para facilitar a integração entre os sistemas de gestão de prestadores de serviços de saúde e a plataforma oficial, permitindo a emissão, cancelamento e consulta de recibos de forma eficiente e segura.

O sistema Receita Saúde é uma iniciativa da Receita Federal que visa modernizar e simplificar a declaração de despesas médicas no Imposto de Renda, tanto para contribuintes quanto para prestadores de serviço.

Este manual técnico detalha todos os aspectos necessários para a correta utilização da API, incluindo processos de autenticação, endpoints disponíveis, operações suportadas, tratamento de erros e exemplos práticos de integração.

2. Visão Geral

A API Rebots para o Receita Saúde oferece uma interface programática robusta e simplificada, permitindo que sistemas de terceiros — como softwares de gestão de clínicas e consultórios — interajam de forma automatizada com o sistema de emissão de recibos da Receita Federal.

Emissão de Recibos

Geração de novos recibos eletrônicos com comunicação direta ao Receita Saúde.

Cancelamento de Recibos

Cancele recibos emitidos por erro ou solicitação do paciente/pagador.

Gerenciamento de Emissor

Ative, desative ou atualize informações do emissor vinculado.

Gerenciamento de Certificado

Upload e vinculação de certificado digital PFX para comunicação com a Receita Federal.

Sistema de Callback

Receba notificações assíncronas com status e PDF do recibo diretamente no seu sistema.

A API opera sobre o protocolo HTTPS, utiliza autenticação baseada em token JWT e todas as respostas são no formato JSON.

3. Autenticação

A API utiliza JWT (JSON Web Tokens) para garantir segurança e controle de acesso. Todas as requisições — com exceção da rota de obtenção do token — devem incluir um token de acesso válido no cabeçalho HTTP.

3.1 Obtenção do Token de Acesso

Para interagir com a API, o sistema cliente deve primeiro obter um token de acesso via requisição POST para o endpoint /token. O corpo deve conter a master_key fornecida no momento da contratação.

POST/receita-saude/v2/auth/token

Corpo da Requisição

json
{
  "identificador": "CODIGO_DO_CLIENTE",
  "master_key": "SUA_MASTER_KEY_FORNECIDA"
}

Resposta de Sucesso (HTTP 200)

json
{
  "access_token": "SEU_TOKEN_JWT_GERADO",
  "token_type": "Bearer",
  "client_name": "Nome do Cliente"
}
Importante: O access_token é único e exclusivo. Ao gerar um novo token, o anterior é automaticamente revogado e deve ser atualizado em todas as chamadas. Guarde a master_key com segurança — nunca a exponha em código front-end ou repositórios de versionamento.

3.2 Utilização do Token de Acesso

O access_token deve ser incluído em todas as requisições no cabeçalho Authorization com o esquema Bearer.

http
Authorization: Bearer SEU_TOKEN_JWT_GERADO
Caso o token seja inválido, expirado, revogado ou ausente, a API retornará HTTP 401 Unauthorized com uma mensagem explicativa em JSON.

3.3 Segurança e Boas Práticas

  • 01

    Armazenamento Seguro da master_key

    Mantenha a master_key em um local seguro no servidor, protegida contra acessos não autorizados.

  • 02

    Comunicação via HTTPS

    Todas as comunicações devem ser feitas exclusivamente sobre HTTPS para garantir criptografia dos dados em trânsito.

  • 03

    Monitoramento e Logs

    Monitore as requisições e mantenha logs das respostas, especialmente em casos de falha na autenticação.

Em caso de suspeita de comprometimento da master_key, entre em contato com o suporte técnico da Rebots imediatamente.

3.4 Caminhos (Rotas) da API

Todas as funcionalidades são acessadas por caminhos específicos anexados à URL base fornecida no momento da configuração do serviço.

/receita-saude/v2/auth/tokenObtenção do token de acesso
/receita-saude/v2/endpointRegistro da URL de callback
/receita-saude/v2/issuersGerenciamento do emissor
/receita-saude/v2/receiptsEmissão e cancelamento de recibos
/receita-saude/v2/client/certificateUpload do certificado digital

4. Operações

A API suporta diversas operações para o gerenciamento completo do ciclo de vida dos recibos eletrônicos e da configuração do emissor. Todas as operações são realizadas via requisições HTTP POST com corpo e respostas em JSON.

4.1.1 Ativar / Atualizar Emissor

Cria, atualiza ou ativa um emissor vinculado ao cliente.

POST/receita-saude/v2/issuers

Corpo da Requisição

json
{
  "identificador": "CODIGO_DO_CLIENTE",
  "issuer_code": "SEU_CODIGO_DE_EMISSOR",
  "cpf": "CPF_DO_PROFISSIONAL",
  "action": "enable",
  "occupation_code": "CODIGO_DA_OCUPACAO",
  "registration": "REGISTRO_PROFISSIONAL"
}
ParâmetroTipoReq.Descrição
identificadorstringObrigatórioCódigo de identificação do Cliente.
actionstringObrigatórioDeve ser "enable".
issuer_codestringObrigatórioCódigo identificador do emissor.
cpfstringObrigatórioCPF do titular do certificado digital (11 dígitos). Obrigatório para novo emissor.
occupation_codestringObrigatórioCódigo de ocupação do emitente.
registrationstringOpcionalRegistro profissional do emitente. Obrigatório apenas se possuir dois registros.

Resposta de Sucesso (HTTP 200)

json
{
  "issuer_code": "SEU_CODIGO_DE_EMISSOR",
  "message": "Issuer created and enabled successfully."
}

4.1.2 Desativar Emissor

Desativa um emissor, impedindo novas emissões de recibo.

POST/receita-saude/v2/issuers

Corpo da Requisição

json
{
  "identificador": "CODIGO_DO_CLIENTE",
  "issuer_code": "SEU_CODIGO_DE_EMISSOR",
  "action": "disable"
}

Resposta de Sucesso (HTTP 200)

json
{
  "issuer_code": "SEU_CODIGO_DE_EMISSOR",
  "message": "Issuer disabled successfully."
}

4.2.1 Emissão de Recibo

POST/receita-saude/v2/receipts

Corpo da Requisição

json
{
  "identificador": "CODIGO_DO_CLIENTE",
  "action": "issue",
  "issuer_code": "SEU_CODIGO_DE_EMISSOR",
  "receipt_id": 12345,
  "payer": "CPF_PAGADOR",
  "beneficiary": "CPF_BENEFICIARIO",
  "amount": 2345.78,
  "date": "2026-03-12T00:00:00",
  "description": "Consulta médica",
  "test": false
}
ParâmetroTipoReq.Descrição
identificadorstringObrigatórioCódigo de identificação do Cliente.
actionstringObrigatórioDeve ser "issue".
receipt_idintegerObrigatórioIdentificador único do recibo no sistema do Cliente. Usado para rastreamento e evitar duplicidade.
issuer_codestringObrigatórioCódigo do emissor cadastrado na plataforma Rebots.
payerstringObrigatórioCPF do pagador (somente números, 11 dígitos).
beneficiarystringOpcionalCPF do beneficiário (11 dígitos). Se omitido, o pagador é considerado beneficiário.
amountdoubleObrigatórioValor total do serviço (ex: 2345.78).
datedateObrigatórioData do serviço no formato aaaa-mm-ddT00:00:00.
descriptionstringObrigatórioDescrição do serviço prestado. Pode ser string vazia, mas deve estar presente.
testbooleanOpcionalSe true, simula a emissão sem validade fiscal. Padrão: false.

Resposta de Sucesso (HTTP 200)

json
{
  "receipt_id": 12345,
  "issuer_code": "SEU_CODIGO_DE_EMISSOR",
  "success": true,
  "message": "Issue request registered successfully"
}
A resposta inicial confirma apenas o registro da solicitação. O processamento final e a geração do recibo ocorrem de forma assíncrona. O resultado será enviado via callback.

4.2.2 Cancelamento de Recibo

POST/receita-saude/v2/receipts

Corpo da Requisição

json
{
  "identificador": "CODIGO_DO_CLIENTE",
  "action": "cancel",
  "issuer_code": "SEU_CODIGO_DE_EMISSOR",
  "receipt_id": 12345,
  "reason": "Erro no valor informado",
  "test": false
}
ParâmetroTipoReq.Descrição
identificadorstringObrigatórioCódigo de identificação do Cliente.
actionstringObrigatórioDeve ser "cancel".
receipt_idintegerObrigatórioO mesmo receipt_id usado na emissão.
issuer_codestringObrigatórioCódigo identificador do emissor.
reasonstringObrigatórioMotivo do cancelamento.
testbooleanOpcionalIndica se o recibo original foi de teste. Padrão: false.

Resposta de Sucesso (HTTP 200)

json
{
  "receipt_id": 12345,
  "issuer_code": "SEU_CODIGO_DE_EMISSOR",
  "success": true,
  "message": "Cancel request registered successfully"
}

4.3.1 Upload de Certificado PFX

Realiza o upload do certificado digital utilizado para assinar as requisições junto à Receita Federal.

POST/receita-saude/v2/client/certificate

Corpo da Requisição (multipart/form-data)

ParâmetroTipoReq.Descrição
identificadorstringObrigatórioCódigo de identificação do Cliente.
certificatefile (.pfx)ObrigatórioArquivo do certificado digital no formato .pfx.
passwordstringObrigatórioSenha do certificado PFX.

5. Sistema de Callback

Para informar o resultado final das operações assíncronas de emissão e cancelamento, a API utiliza um sistema de callback. O cliente deve registrar uma URL para a qual a API enviará uma requisição HTTP POST com os detalhes do resultado.

5.1 Registro de Endpoint de Callback

POST/receita-saude/v2/endpoint

Corpo da Requisição

json
{
  "identificador": "CODIGO_DO_CLIENTE",
  "url": "https://sua-api.com/callback",
  "token": "SEU_TOKEN_DE_SEGURANCA"
}
ParâmetroTipoReq.Descrição
identificadorstringObrigatórioCódigo de identificação do Cliente.
urlstringObrigatórioURL pública do endpoint que receberá as notificações POST.
tokenstringObrigatórioToken de autenticação que a Rebots incluirá no header das requisições de callback.

Formato do Callback Recebido

json
{
  "data": {
    "receipt_id": 12345,
    "issuer_code": "CODIGO_DO_EMISSOR",
    "success": true,
    "key": "IDENTIFICADOR_UNICO_NA_API",
    "file_url": "https://url-expiravel-para-pdf",
    "status_message": "Operation carried out successfully",
    "original_action": "issue"
  }
}
ParâmetroTipoReq.Descrição
receipt_idintegerObrigatórioIdentificador único enviado originalmente pelo cliente.
issuer_codestringObrigatórioCódigo do emissor no sistema.
successbooleanObrigatórioIndica se a operação foi concluída com sucesso no Receita Saúde.
keystringOpcionalChave única do recibo gerada pela API. Presente em emissão bem-sucedida.
file_urlstringOpcionalURL expirável para download do PDF do recibo ou comprovante de cancelamento.
status_messagestringObrigatórioMensagem informativa sobre o resultado. Em caso de erro, descreve o problema.
original_actionstringObrigatório"issue" para emissão ou "cancel" para cancelamento.

Requisitos do Endpoint de Callback

  • A URL deve estar acessível publicamente na internet.
  • Deve aceitar requisições HTTP POST com corpo JSON.
  • Deve retornar HTTP 200 OK para confirmar o recebimento.
  • Deve validar o token enviado no header Authorization.
Retenção de dados: Após a confirmação de recebimento (HTTP 200), os dados do documento processado serão descartados e não poderão ser recuperados. O mesmo ocorre com documentos que retornarem erro no callback por mais de 48 horas. Caso o sistema fique indisponível por mais de 24h, o cliente será notificado e terá mais 24 horas para resolver o problema.

6. Tratamento de Erros

A API utiliza códigos de status HTTP padrão para indicar sucesso ou falha. Em caso de erro, o corpo da resposta conterá um objeto JSON com error_code e error_message detalhando o problema.

json
{
  "error_code": "CODIGO_DO_ERRO_ESPECIFICO",
  "error_message": "Descrição detalhada do erro ocorrido."
}
200OKRequisição bem-sucedida.
400Bad RequestParâmetros inválidos ou ausentes no corpo da requisição.
401UnauthorizedToken ausente, inválido, expirado ou revogado.
403ForbiddenAcesso negado ao recurso solicitado.
404Not FoundRecurso não encontrado.
500Internal Server ErrorErro interno no servidor. Entre em contato com o suporte.
É fundamental que o sistema do cliente esteja preparado para tratar esses erros de forma adequada, registrando-os para análise e, quando apropriado, informando o usuário de maneira clara.

Documentação da API Rebots · Versão 2.1

Última atualização: 12 de março de 2026

Suporte técnico