Nossas APIs foram desenvolvidas no protocolo de comunicação SOAP e toda solicitação deve ser realizada pelo método POST
Os serviços disponíveis estão organizados por módulos como segue:
Geral: Cadastro comuns para todos os módulos
CRM: Contas + Contatos + Oportunidades para fechar mais negócios e vender mais
Finanças: Extrato multi-contas + Contas a Receber + Contas a Pagar + Fluxo de Caixa
Compras, Estoque e Produção: Gerencie suas compras, estoque e ordens de produção
Vendas e NF-e: Processo de Venda e Faturamento, emissão de NF-e, Cupons Fiscais, etc
Serviços e NFS-e: Processo de emissão de Ordens de Serviço, Contratos e NFS-e
Painel do Contador: Consulta de documentos fiscais
Para cada módulo, há uma lista de serviços disponíveis:
📌 Para consultar a lista completa de API's disponíveis, acesse:
SOAP
Para realizar um consumo pelo protocolo de comunicação SOAP você precisará indicar / verificar as seguintes informações:
Content-Type: text/xml;charset=UTF-8
<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:wsdl="http://app.omie.com.br/api/v1/geral/clientes/?WSDL" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<soapenv:Header>
<app_key>999999999999</app_key>
<app_secret>a1b2c3d4e5a1b2c3d4e5a1b2c3d4e5a1b2c3d4e5</app_secret>
</soapenv:Header>
<soapenv:Body>
... (Body da requisição em formato XML)
</soapenv:Body>
</soapenv:Envelope>
RESTFUL
Existe a possibilidade de fazer um consumo pelo protocolo de comunicação RESTFUL?
Não, mas estamos trabalhando numa nova plataforma que utilizará a protocolo REST e documentação Swagger
JSON
Existe a possibilidade de enviar um JSON ao invés de XML?
Sim, para isso você deve observar o seguinte formato:
Content-type: application/json
{
"app_key": "9999999999",
"app_secret": "a1b2c3d4e5a1b2c3d4e5a1b2c3d4e5a1b2c3d4e5",
"call": "ListarClientes",
"param": [
{
... (Body da requisição em formato JSON)
}
]
}
CORS policy 1
Como corrigir o seguinte erro:
Access to XMLHttpRequest at ‘https://app.omie.com.br/api/v1/geral/clientes/’ from origin ‘https://www.seusite.com.br’ has been blocked by CORS policy: Response to preflight request doesn’t pass access control check: No ‘Access-Control-Allow-Origin’ header is present on the requested resource
Neste caso, há uma tentativa de realizar o consumo diretamente pelo navegador, o que expõe as credenciais do usuário. A solução é criar uma API e consumi-la a partir do server
CORS policy 2
Como corrigir o seguinte erro:
Access to fetch at 'https://app.omie.com.br/api/v1/geral/clientes/' from origin 'https://localhost:8082/' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource
Neste caso, há uma tentativa de realizar o consumo pelo localhost, o que não é permitido. A solução é alterar o local de origem para um IP público e tentar novamente
Rate limit
Para saber mais sobre os nossos limites de consumo, confira o artigo abaixo:
C#
Valores não são enviados para o Omie:
Consumo via GET
Indisponível. Requisições com GET não são seguras, pois expõe os seus dados tornando sua aplicação vulnerável a ataques ou mesmo sequestro de dados. Caso você execute, a consulta abaixo diretamente pelo seu navegador, receberá a seguinte mensagem:
Requisição:
https://app.omie.com.br/api/v1/servicos/os/?JSON={"call":"ListarOS","app_key":" 38333295000","app_secret":" 4cea520a0e2a2ecdc267b75d3424a0ed","param":[{"pagina":1,"registros_por_pagina":50,"apenas_importado_api":"N"}]}
Resposta:
{"status":"400","message":"Consumo indevido [GET]. Consulte nosso time de suporte através do chat disponível em nosso site."}
Solução: altere o método de consumo para POST e envie os dados no BODY da sua requisição
📌 Separamos alguns artigos importantes que podem te ajudar bastante: