Integração via webhook
Na integração via webhook, o sistema V2Saúde realiza o envio de notificações para um endereço especificado, utilizando uma estrutura de dados específica de acordo com o tipo de notificação.
Ativação de webhooks
Os webhooks podem ser ativados na página Cadastros > Empresa e preferências, na aba "Integrações".
É necessária a contratação do mõdulo de webhooks para utilizar esta função.
Ao clicar em "Gerenciar webhooks", a página de gerenciamento de webhooks será exibida. Nesta página é possível gerir as notificações configuradas para a empresa:
Clique em "Novo webhook" para cadastrar um novo webhook:
Escolha o tipo, a API Key e a URL do webhook.
Linhas gerais sobre o envio de webhooks
As seguintes informações se aplicam a todas as chamadas de webhook:
- O V2Saúde realiza chamadas POST para a URL especificada
- A API Key informada será enviada no cabeçalho (header) "Authorization" da requisição
Tipos de webhook
Os seguintes tipos de webhook são atualmente suportados.
Cadastro e alterações em cirurgias
Uma notificação é enviada sempre que uma cirurgia for inserida ou modificada no sistema.
Exemplo de payload da requisição:
[
{
"id": 583581,
"cliente": {
"id": 63387,
"nome": "BRADESCO SAUDE - OPERADORA DE PLANOS S/A",
"razaoSocial": "BRADESCO SAUDE - OPERADORA DE PLANOS S/A",
"cnpj": "15.011.651/0001-54",
"cpf": null
},
"responsavel": "MACHADO DE ASSIS",
"paciente": "JOSE DE ALENCAR",
"matriculaPaciente": "",
"medico": "GRACILIANO RAMOS",
"medicoCRM": "1234",
"procedimento": "CIRURGIA DE QUADRIL",
"data": "2025-01-01",
"dataDeCadastro": "2025-01-01",
"finalizada": false,
"dataDeFinalizacao": null,
"dataOrcamentoPos": null,
"dataLiberacaoMaterial": null,
"dataLimiteRetirada": null,
"finalizadaPor": null,
"observacao": "",
"observacaoVale": "",
"observacaoPos": null,
"horaCirurgia": "14:30",
"cancelada": false,
"vendedor": {
"id": null,
"nome": null,
"razaoSocial": null,
"cnpj": null,
"cpf": null
},
"hospital": {
"id": 62707,
"nome": "ALBERT EINSTEIN",
"razaoSocial": "",
"cnpj": "",
"cpf": null
},
"convenio": {
"id": 63387,
"nome": "BRADESCO SAUDE - OPERADORA DE PLANOS S/A",
"razaoSocial": "BRADESCO SAUDE - OPERADORA DE PLANOS S/A",
"cnpj": "15.011.651/0001-54",
"cpf": null
},
"codigoSus": "",
"cirurgiaBaixada": false,
"observacaoBaixa": null,
"nota": null,
"statusCotacao": "APROVADA",
"procedimentoCirurgico": null,
"numeroEmpenho": ""
}
]
Os seguintes atributos fazem parte do payload da requisição
Atributo |
Registro Pai |
Tipo |
Descrição |
id |
Número |
Código da cirurgia |
|
cliente |
Pessoa (ver Registros Auxiliares) |
Dados do cliente |
|
responsavel | String | Responsável pela cirurgia | |
paciente | String | Nome do paciente | |
matriculaPaciente | String | Matrícula do paciente | |
medico | String | Nome do médico | |
medicoCRM | String |
CRM do médico |
|
procedimento | String |
Descrição do procedimento |
|
data | Date |
Data da cirurgia |
|
dataDeCadastro | DateTime |
Data de cadastro |
|
cadastradoPor | Pessoa (ver Registros Auxiliares) | Usuário responsável pelo cadastro |
|
finalizada | Boolean |
Cirurgia finalizada? |
|
dataDeFinalizacao | DateTime |
Data da finalização |
|
dataOrcamentoPos | DateTIme |
Data do orçamento pś |
|
dataLiberacaoMaterial | DateTime |
Data da liberação do material |
|
dataLimiteRetirada | DateTime |
Data limite da retirada do material consignado |
|
finalizadaPor | Pessoa (ver Registros Auxiliares) | Usuário responsável pela finalização |
|
observacao | String |
Observações da cirurgia |
|
observacaoVale | String |
Observações do vale/consignação |
|
observacaoPos | String |
Observações do orçamento pós |
|
horaCirurgia | Time |
Hora da cirurgia |
|
cancelada | Boolean |
Cirurgia cancelada? |
|
vendedor | Pessoa (ver Registros Auxiliares) | Vendedor |
|
hospital | Pessoa (ver Registros Auxiliares) | Hospital |
|
convenio | Pessoa (ver Registros Auxiliares) | Convênio |
|
codigoSus | String |
Código SUS do procedimento |
|
cirurgiaBaixada | Boolean |
Cirurgia com pagamento cancelado/baixado? |
|
observacaoBaixa | String |
Observações da baixa |
|
nota | Número |
Número da nota fiscal de venda |
|
statusCotacao | String |
Status da cotação. Os seguintes valores são suportados:
|
|
procedimentoCirurgico | String |
Descrição do procedimento |
|
numeroEmpenho | String |
Número do empenho da licitação |
Cadastro e alterações em orçamentos pré
Uma notificação é enviada quando o orçamento pré de uma cirurgia é alterado.
Exemplo de payload da requisição:
[
{
"id": 48391,
"cirurgia": {
"id": 142913,
"cliente": {
"id": 1234,
"nome": "AMIL",
"razaoSocial": null,
"cnpj": "11.111.111/0001-11",
"cpf": null
},
"responsavel": "AUGUSTO DOS ANJOS",
"paciente": "CARLOS DRUMMOND DE ANDRADE",
"matriculaPaciente": null,
"medico": "VINICIUS DE MORAIS",
"medicoCRM": "9196",
"instrumentadoresAvulsos": null,
"procedimento": "RESSECÇAO ENDOSCOPICA DA PROSTATA",
"data": "2025-01-01",
"dataDeCadastro": "2025-01-01",
"finalizada": false,
"dataDeFinalizacao": null,
"dataOrcamentoPos": null,
"dataLiberacaoMaterial": null,
"dataLimiteRetirada": null,
"finalizadaPor": null,
"observacao": "",
"observacaoVale": null,
"observacaoPos": null,
"horaCirurgia": "16:00",
"cancelada": false,
"vendedor": {
"id": 1829,
"nome": "NOME DO VENDEDOR",
"razaoSocial": null,
"cnpj": null,
"cpf": null
},
"hospital": {
"id": null,
"nome": null,
"razaoSocial": null,
"cnpj": null,
"cpf": null
},
"convenio": {
"id": null,
"nome": null,
"razaoSocial": null,
"cnpj": null,
"cpf": null
},
"codigoSus": null,
"cirurgiaBaixada": false,
"observacaoBaixa": null,
"nota": null,
"statusCotacao": "APROVADA",
"procedimentoCirurgico": null,
"numeroEmpenho": null,
"action": null
},
"cadastradoPor": {
"id": 1747,
"nome": "OPERADOR DO SISTEMA",
"razaoSocial": null,
"cnpj": null,
"cpf": null
},
"aprovado": false,
"data": "2025-01-01",
"dataAprovacao": null,
"observacoes": "",
"desconto": 0,
"itens": [
{
"id": 170011,
"produto": {
"id": 235167,
"descricao": "CARGA ARTICULADA ROXA P3H 45 MM",
"referenciaFabricante": "CADD45ENTS",
"registroAnvisa": "80940400003",
"codigoDeBarras": "1000001048024",
"fabricante": {
"id": 101565,
"nome": "PANTHER HEALTHCARE",
"razaoSocial": null,
"cnpj": null,
"cpf": null
}
},
"valor": 500,
"desconto": 0,
"quantidade": 1,
"quantidadeAutorizada": 0,
"quantidadeDoacao": 0
}
]
}
]
Os seguintes atributos fazem parte do payload da requisição:
Atributo |
Registro Pai |
Tipo |
Descrição |
id |
Número |
Código do orçamento |
|
cirurgia |
Cirurgia (ver Cadastro e alterações em cirurgias) |
Dados da cirurgia |
|
cadastradoPor |
Pessoa |
Usuário responsável pelo cadastro do orçamento |
|
aprovado |
Boolean |
Aprovado? |
|
data |
Date |
Data do orçamento |
|
dataAprovacao | Date |
Data de aprovação do orçamento |
|
observacoes | String |
Observações do orçamento |
|
desconto | Número |
Valor do desconto |
|
itens | Objeto |
Itens do orçamento |
|
id |
itens |
Número |
Código do orçamento |
produto |
itens |
Produto |
Dados do produto |
valor |
itens |
Número |
Valor unitário |
desconto |
itens |
Desconto |
Valor do desconto |
quantidade |
itens |
Número |
Quantidade |
quantidadeAutorizada |
itens |
Número |
Quantidade autorizada |
quantidadeDoacao | itens |
Número |
Quantidade que não deve ser faturada (doada) |
Registros auxiliares
Pessoa
Atributo |
Registro Pai |
Tipo |
Descrição |
id |
Número |
Código |
|
nome |
String |
Nome |
|
razaoSocial |
String |
Razão social |
|
cnpj |
String |
CNPJ |
|
cpf |
String |
CPF |
Produto
Atributo |
Registro Pai |
Tipo |
Descrição |
id |
Número |
Código |
|
descricao | String |
Descrição |
|
referenciaFabricante | String |
Referência do fabricante |
|
registroAnvisa | String |
Número do registro na Anvisa |
|
codigoDeBarras | String |
Código de barras |
|
fabricante |
Pessoa |
Dados do fabricante |