Integração ERP: SAP S/4HANA
O SAP S/4HANA é a plataforma ERP de nível enterprise da SAP, utilizada por grandes organizações para gestão integrada de finanças, logística, compras, vendas e controladoria. A integração é feita via OData APIs disponibilizadas nativamente pelo sistema.
Este artigo orienta a preparação do ambiente SAP, a configuração da credencial e detalha os relatórios disponíveis deste conector. Para o passo a passo de uso no fluxo de preparação de dados — seleção do conector, credencial, relatório e parâmetros — veja o artigo Etapa ERP.
Preparação do ambiente SAP — serviços e autorizações
A integração consome as APIs OData padrão do SAP S/4HANA, que por segurança são entregues inativas. Três providências do time que administra o SAP (Basis/segurança) preparam o ambiente:
1. Ativar os serviços OData
Na transação /n/IWFND/MAINT_SERVICE (Activate and Maintain Services), ative os serviços correspondentes aos relatórios que serão utilizados:
Relatório | Serviço OData |
|---|---|
Saldo Contábil (Balancete) |
|
Balancete Razão (Trial Balance) |
|
Parceiros de Negócio |
|
Ordens de Compra |
|
Pedidos de Venda |
|
Faturas de Fornecedor |
|
Produtos / Materiais |
|
Documentos de Material |
|
Classificação de Materiais |
|
Centros de Custo |
|
Centros de Lucro |
|
Para o balancete, os dois serviços confirmados são C_TRIALBALANCE_CDS / C_TRIALBALANCE e C_GLACCOUNTBALANCEQUERY_CDS / C_GLACCOUNTBALANCEQUERY — este último é comum em ambientes com SAP Fiori.
Além dos serviços dos relatórios, o serviço de catálogo do SAP Gateway (/IWFND/CATALOGSERVICE;v=2) precisa estar acessível — é por ele que a plataforma descobre os serviços disponíveis no ambiente.
O padrão de endpoint é https://{host}:{porta}/sap/opu/odata/sap/{SERVICE}. A documentação pública de cada API está no SAP Business Accelerator Hub, e o passo a passo de ativação no SAP Help Portal.
Como ativar um serviço
Na transação /n/IWFND/MAINT_SERVICE, verifique se o serviço está ativo. Se não estiver:
Clique em Adicionar serviço.
Em System Alias, informe
LOCAL.Busque pelo nome do serviço (por exemplo,
C_GLACCOUNTBALANCEQUERY_CDS).Selecione e confirme.
Teste no navegador:
https://{host}:{porta}/sap/opu/odata/sap/{SERVICE}/$metadata.
O link deve abrir e exibir o XML do metadata. Use um usuário com permissão de acesso ao serviço e, se necessário, atribua as autorizações.
2. Autorizar o usuário de integração
Crie um usuário de sistema/comunicação dedicado à integração (não um usuário de diálogo de uma pessoa).
Conceda as autorizações de runtime do SAP Gateway (objetos
/IWFND/*e/IWBEP/*) e a autorização de execução dos serviços ativados (objetoS_SERVICE).Conceda as autorizações de negócio dos dados de cada relatório (por exemplo, os objetos de FI para os balancetes), no princípio do menor privilégio — apenas os relatórios que serão consumidos.
3. Expor o endpoint com segurança
A plataforma acessa o SAP por chamadas HTTPS de saída, somente leitura. Se o S/4HANA não é acessível pela internet, a conexão é feita por liberação de firewall ou VPN/VPC site-to-site — acione o suporte da Dattos para configurar em conjunto.
Uso de middleware
A integração pode usar um middleware entre a plataforma e o SAP Gateway, desde que ele opere em modo pass-through (bypass), sem alterar a requisição ou a resposta.
Devem ser preservados:
o método HTTP;
a URL, a rota e os parâmetros;
os cabeçalhos;
o corpo da requisição e da resposta;
os códigos de status;
o formato dos dados;
as mensagens de erro do SAP Gateway.
O middleware pode ser usado para funções de segurança e infraestrutura, como autenticação, autorização, controle de acesso, políticas de rede, logs, monitoramento, certificados, limitação de requisições e restrição por IP. A autenticação deve usar uma das modalidades suportadas pela integração, validada pelo middleware ou encaminhada ao SAP Gateway.
Se o middleware exigir um tipo de autenticação ainda não suportado pela integração, fale com o suporte da Dattos.
Configuração da Credencial
O SAP S/4HANA suporta dois métodos de autenticação. Escolha o que estiver habilitado no seu ambiente:
Opção 1 — Login Básico SAP (usuário e senha)
Campo | Descrição | Obrigatório |
|---|---|---|
Host | URL base do servidor SAP (ex: | Sim |
System Number | Número do sistema SAP (ex: | Sim |
Client | Código do mandante SAP (ex: | Sim |
Usuário | Usuário de integração do SAP | Sim |
Senha | Senha do usuário | Sim |
Opção 2 — OAuth 2.0 SAP
Campo | Descrição | Obrigatório |
|---|---|---|
Host | URL base do servidor SAP | Sim |
Client ID | ID do cliente OAuth registrado no SAP | Sim |
Client Secret | Segredo do cliente OAuth | Sim |
Token URL | URL do endpoint de geração de token OAuth | Sim |
Grant Type | Tipo de concessão (normalmente | Não |
Dica: O usuário de integração SAP precisa ter autorização nos objetos de autorização das APIs OData que serão utilizadas (ex: /IWFND/ e /IWBEP/).
Relatórios Disponíveis
Módulo: Materiais
Produtos / Materiais
Retorna o cadastro de produtos e materiais registrados no SAP.
Parâmetros de filtro:
Parâmetro | Descrição | Obrigatório |
|---|---|---|
ProductType | Tipo de produto (ex: | Não |
Plant | Código da planta para filtrar produtos associados | Não |
Campos retornados:
Campo | Descrição |
|---|---|
Product | Código do produto |
ProductType | Tipo de produto |
ProductGroup | Grupo de produto |
BaseUnit | Unidade de medida base |
GrossWeight | Peso bruto |
NetWeight | Peso líquido |
WeightUnit | Unidade de peso |
Division | Divisão |
Documentos de Material
Retorna os documentos de movimento de materiais (entradas, saídas, transferências físicas).
Parâmetros de filtro:
Parâmetro | Descrição | Obrigatório |
|---|---|---|
MaterialDocumentYear | Ano do documento de material (4 dígitos) | Não |
Plant | Código da planta | Não |
Campos retornados:
Campo | Descrição |
|---|---|
MaterialDocument | Número do documento de material |
MaterialDocumentItem | Item do documento |
PostingDate | Data de lançamento |
Material | Código do material |
Plant | Planta |
Quantity | Quantidade movimentada |
UnitOfEntry | Unidade de entrada |
StorageLocation | Local de armazenagem |
MaterialDocumentYear | Ano do documento |
Classificação de Materiais
Retorna a classificação dos materiais por tipo de classe.
Parâmetros de filtro:
Parâmetro | Descrição | Obrigatório |
|---|---|---|
KeyDate | Data de referência para a classificação (formato | Sim |
ClassType | Tipo de classe (máx. 3 caracteres) | Não |
Campos retornados:
Campo | Descrição |
|---|---|
Material | Código do material |
ClassType | Tipo de classe |
Class | Classe |
KeyDate | Data-chave da classificação |
ClassificationStatus | Status da classificação |
Módulo: Parceiros de Negócio
Parceiros de Negócio
Retorna clientes, fornecedores e parceiros cadastrados no SAP.
Parâmetros de filtro:
Parâmetro | Descrição | Obrigatório | Opções |
|---|---|---|---|
BusinessPartnerCategory | Categoria do parceiro | Não |
|
Campos retornados:
Campo | Descrição |
|---|---|
BusinessPartner | Código do parceiro |
BusinessPartnerCategory | Categoria (pessoa/organização/grupo) |
BusinessPartnerFullName | Nome completo |
SearchTerm1 | Termo de busca |
BusinessPartnerGrouping | Agrupamento |
CreationDate | Data de criação |
Módulo: Compras
Ordens de Compra
Retorna as ordens de compra emitidas no SAP.
Parâmetros de filtro:
Parâmetro | Descrição | Obrigatório |
|---|---|---|
CompanyCode | Código da empresa (4 caracteres) | Não |
CreationDate | Data de criação (formato | Não |
Campos retornados:
Campo | Descrição |
|---|---|
PurchaseOrder | Número da ordem de compra |
CompanyCode | Código da empresa |
CreationDate | Data de criação |
Supplier | Código do fornecedor |
PurchasingOrganization | Organização de compras |
PurchaseOrderType | Tipo de OC |
TotalNetOrderAmount | Valor líquido total |
DocumentCurrency | Moeda do documento |
Módulo: Vendas
Pedidos de Venda
Retorna os pedidos de venda registrados no SAP.
Parâmetros de filtro:
Parâmetro | Descrição | Obrigatório |
|---|---|---|
CreationDate | Data de criação do pedido (formato | Não |
SalesOrganization | Código da organização de vendas (4 caracteres) | Não |
Campos retornados:
Campo | Descrição |
|---|---|
SalesOrder | Número do pedido de venda |
SalesOrderType | Tipo de pedido |
CreationDate | Data de criação |
SalesOrganization | Organização de vendas |
SoldToParty | Cliente (sold-to) |
TotalNetAmount | Valor líquido total |
TransactionCurrency | Moeda da transação |
Módulo: Contas a Pagar
Faturas de Fornecedor
Retorna as faturas de fornecedor (notas fiscais de entrada) lançadas no SAP.
Parâmetros de filtro:
Parâmetro | Descrição | Obrigatório |
|---|---|---|
CompanyCode | Código da empresa (4 caracteres) | Não |
FiscalYear | Ano fiscal (4 dígitos) | Não |
Campos retornados:
Campo | Descrição |
|---|---|
SupplierInvoice | Número da fatura |
FiscalYear | Ano fiscal |
CompanyCode | Código da empresa |
DocumentDate | Data do documento |
PostingDate | Data de lançamento |
InvoicingParty | Fornecedor emitente |
InvoiceGrossAmount | Valor bruto da fatura |
DocumentCurrency | Moeda |
Módulo: Contabilidade
Saldo Contábil (Balancete)
Retorna o balancete contábil por conta e período fiscal.
Parâmetros de filtro:
Parâmetro | Descrição | Obrigatório |
|---|---|---|
P_Ledger | Ledger contábil (padrão: | Sim |
P_CompanyCode | Código(s) de empresa. Aceita múltiplos valores | Sim |
P_FiscalYear | Ano fiscal. Preenchido automaticamente com o ano da data de referência | Sim |
P_FiscalPeriod | Período fiscal (mês). Preenchido automaticamente com o mês da data de referência | Sim |
P_FromPostingDate | Data inicial do período de lançamento. Preenchida automaticamente (1º do mês de referência) | Sim |
P_ToPostingDate | Data final do período de lançamento. Preenchida automaticamente (último dia do mês de referência) | Sim |
Campos retornados:
Campo | Descrição |
|---|---|
CompanyCode | Código da empresa |
GLAccount | Conta contábil |
GLAcctLineDescription | Descrição da conta |
FiscalYear | Ano fiscal |
FiscalPeriod | Período fiscal |
DisplayCurrency | Moeda de exibição |
StartingBalAmtInDspCrcy | Saldo inicial |
DebitAmountInDisplayCrcy | Valor de débito |
CreditAmountInDisplayCrcy | Valor de crédito |
EndingBalAmtInDspCrcy | Saldo final |
Balancete Razão (Trial Balance)
Retorna o balancete razão com saldos por conta e período.
Parâmetros de filtro:
Parâmetro | Descrição | Obrigatório |
|---|---|---|
Ledger | Ledger contábil (padrão: | Sim |
CompanyCode | Código(s) de empresa. Aceita múltiplos valores | Sim |
P_FromPostingDate | Data inicial. Preenchida automaticamente (1º do mês de referência) | Sim |
P_ToPostingDate | Data final. Preenchida automaticamente (último dia do mês de referência) | Sim |
Campos retornados:
Campo | Descrição |
|---|---|
CompanyCode | Código da empresa |
GLAccount | Conta contábil |
StartingBalanceAmtInCoCodeCrcy_F | Saldo inicial (moeda da empresa) |
DebitAmountInCoCodeCrcy_F | Débitos do período |
CreditAmountInCoCodeCrcy_F | Créditos do período |
EndingBalanceAmtInCoCodeCrcy_F | Saldo final |
DebitCreditCodeName | Indicador de natureza (D/C) |
FiscalYear | Ano fiscal |
FiscalPeriod | Período fiscal |
Módulo: Controladoria
Centros de Custo
Retorna o cadastro de centros de custo configurados no SAP.
Parâmetros de filtro:
Parâmetro | Descrição | Obrigatório |
|---|---|---|
CompanyCode | Código da empresa | Não |
Campos retornados:
Campo | Descrição |
|---|---|
CostCenter | Código do centro de custo |
CompanyCode | Código da empresa |
CostCenterName | Nome do centro de custo |
CostCenterCategory | Categoria |
ValidityStartDate | Início da vigência |
ValidityEndDate | Fim da vigência |
ResponsibleUser | Usuário responsável |
Centros de Lucro
Retorna o cadastro de centros de lucro (profit centers).
Parâmetros de filtro:
Parâmetro | Descrição | Obrigatório |
|---|---|---|
CompanyCode | Código da empresa | Não |
Campos retornados:
Campo | Descrição |
|---|---|
ProfitCenter | Código do centro de lucro |
ProfitCenterName | Nome do centro de lucro |
CompanyCode | Código da empresa |
ValidityStartDate | Início da vigência |
ValidityEndDate | Fim da vigência |
ProfitCenterStandardHierarchy | Hierarquia padrão |
Parâmetros Fixos (gerenciados automaticamente)
Estes parâmetros são preenchidos automaticamente pelo sistema e não aparecem para o usuário:
Parâmetro | Valor padrão | Motivo |
|---|---|---|
|
| Controla o número máximo de registros por requisição. Valor alto para garantir extração completa dos dados |
| (lista de campos pré-configurada) | Determina quais campos são retornados pela API. Pré-definido para trazer apenas os dados relevantes para o relatório |
|
| Papel de moeda para o balancete (moeda da empresa) |
|
| Exibe conta alternativa no balancete |
|
| Exibe descrição dependente de tempo no balancete |
Artigos relacionados
Etapa ERP
Introdução às integrações
Integrações customizadas via API Rest e conectores SQL