Integração SAP Business One x SAP Sales Cloud (C4C) — Configuração do Integration Framework

Passo a passo da configuração da integração entre SAP Business One e SAP Sales Cloud (C4C) via Integration Framework, cobrindo certificados, porta HTTPS, importação de cenários e configurações no B1.

6 min de leitura

Integração SAP Business One x SAP Sales Cloud (C4C) — Configuração do Integration Framework

## Referências - **SAP Note:** 2221527 — Integration Scenario between SAP Business One and SAP Hybris Cloud for Customer - **Manual:** 1C1_CFCALL_HowTo_Guide_EN_XX.pdf (disponível no pacote SAP Best Practices) - **Pacote de cenário:** sap.C4C_Scenario_Export_20210901_2105.zip

## Pré-requisitos - SAP Business One 9.1 ou superior - SAP Hybris Cloud for Customer (Sales Cloud) 1602 ou superior - Integration Framework do SAP Business One versão 1.22.9 ou superior - Certificado SSL válido para o Integration Framework

---

Item 3 — Certificate Management

3.1.1 a 3.1.3 — Certificado do IF e exportação dos certificados do C4C ✅

O Integration Framework já possuía certificado wildcard `*.skyinone.net` (emitido por Go Daddy).

Foram exportados 3 certificados do tenant SAP Sales Cloud: - Certificado raiz (DigiCert Root G3) - Certificado intermediário (DigiCert Intermediate G3) - Certificado do tenant (client)

3.1.4 — Importação dos certificados do C4C no keystore do IF ✅

Os 3 certificados foram importados no keystore `keystore.jks` do Integration Framework via PowerShell/keytool.

**Caminho do keystore:** ``` C:\Program Files\SAP\SAP Business One Integration\IntegrationServer\Tomcat\webapps\B1iXcellerator\keystore.jks ```

**Caminho do keytool:** ``` C:\Program Files\SAP\SAP Business One Integration\sapjre_64\bin\keytool.exe ```

**Comando para verificar os certificados importados (somente leitura):** ```powershell & "C:\Program Files\SAP\SAP Business One Integration\sapjre_64\bin\keytool.exe" -list -keystore "C:\Program Files\SAP\SAP Business One Integration\IntegrationServer\Tomcat\webapps\B1iXcellerator\keystore.jks" -storepass <SENHA_KEYSTORE> ```

**Aliases confirmados no keystore:** | Alias | Tipo | Descrição | |---|---|---| | skyinone.net | PrivateKeyEntry | Certificado do IF | | c4c_tenant_crm | trustedCertEntry | Certificado client do C4C | | c4c_digicert_intermediate_g3 | trustedCertEntry | Certificado intermediário | | c4c_digicert_root_g3 | trustedCertEntry | Certificado raiz |

**Senha do keystore:** está no arquivo `server.xml` (atributo `keystorePass`): ```powershell Select-String -Path "C:\Program Files\SAP\SAP Business One Integration\IntegrationServer\Tomcat\conf\server.xml" -Pattern "keystorePass" ```

3.1.5 — Cópia do keystore para o DI Proxy e reinício dos serviços ✅

Como o DI Proxy e o Integration Service rodam no mesmo servidor, o keystore foi copiado:

```powershell # Backup do keystore antigo do DI Proxy Copy-Item "C:\Program Files\SAP\SAP Business One Integration\DIProxy\.keystore" "C:\Program Files\SAP\SAP Business One Integration\DIProxy\.keystore.bak"

# Cópia do keystore atualizado do IF para o DI Proxy Copy-Item "C:\Program Files\SAP\SAP Business One Integration\IntegrationServer\Tomcat\webapps\B1iXcellerator\keystore.jks" "C:\Program Files\SAP\SAP Business One Integration\DIProxy\.keystore" -Force ```

Após a cópia, os serviços foram reiniciados: 1. SAP Business One Integration Service 2. SAP Business One DI Proxy Service

3.1.6 — Porta HTTPS do Integration Framework ⚠️ Mantida em 8443

A documentação recomenda trocar de 8443 para 443. Foi tentada a troca, porém a porta 443 já estava em uso por outro serviço do Windows (PID 4 — System/HTTP.SYS).

**Decisão do cliente:** manter na porta 8443. O provedor do C4C vai testar a comunicação pela porta 8443.

**Local da configuração da porta:** - Interface: MAINTENANCE → Cfg Runtime → Integration Framework HTTPS Port - Arquivo: `C:\Program Files\SAP\SAP Business One Integration\IntegrationServer\Tomcat\conf\server.xml`

**Endereço externo do IF:** `https://alfama-mobile.skyinone.net:8443`

Caso futuramente decidam trocar para 443, é necessário primeiro liberar a porta (identificar e parar o serviço que a ocupa) e então: alterar no Cfg Runtime, substituir todas as ocorrências de 8443 por 443 no server.xml, e reiniciar o Integration Service.

3.1.7 — Exportação do certificado do IF para o provedor C4C ✅

O certificado `*.skyinone.net` foi exportado pelo navegador no formato Base-64-encoded ASCII (.CER) e enviado à empresa terceira para importação no Trust List do SAP Sales Cloud.

---

Item 5 — Configuração no Integration Framework (B1i)

5.2 — Usuário Runtime ✅

O usuário **B1iRuntime** já existia, está ativo e será usado pelo C4C para se conectar ao IF.

**Local:** MAINTENANCE → User Administration → Runtime Users

Usuário e senha são case-sensitive. Devem ser informados à empresa terceira para configuração do Outbound Communication Arrangement no C4C.

5.3 — Importação do pacote de cenários ✅

O pacote **sap.C4C versão 1.1.11** (Sales and Distribution) já foi importado.

**Local:** SCENARIOS → Import (arquivo: sap.C4C_Scenario_Export_20210901_2105.zip)

**Verificação:** SCENARIOS → Control → cenário sap.C4C listado.

5.4 — System Landscape Directory (SLD) ✅ (parcial)

**SAP Business One (SBO_ALFAMA_PRD):** já configurado com conexões B1DI e JDBC. ✅

**C4C:** entrada criada no SLD com tipo H.AnySystem, porém campos de conexão vazios. ⬜

Pendências da empresa terceira — Item 5

| Pendência | Descrição | |---|---| | Preencher SLD do C4C | Configurar destHost, destPort, destProtocol, user, password, trustStoreURI, keyStoreURI, associatedSrvIP no SLD do C4C | | C4CLocalSystemID | Manter o SystemID do C4C nas Properties (SLD → C4C → Properties) | | Setup Wizard sap.C4C | Executar SCENARIOS → Setup → sap.C4C (definir senders/receivers, global properties, value mappings) | | Ativar cenário | Ativar o cenário sap.C4C após o setup completo |

---

Item 6 — Configuração no SAP Business One

6.1 — Códigos ISO das moedas ✅

Todos os códigos ISO estão preenchidos: | Código | Moeda | ISO | |---|---|---| | CAN | Dólar Canadense | CAD | | EUR | Euro | EUR | | R$ | Real | BRL | | USD | Dólar Norte Americano | USD |

**Local:** Administração → Definição → Finanças → Moedas → coluna "Código de moeda ISO"

6.2 — Criar campos definidos pelo usuário (UDFs) ⬜ Pendente

Serão criados automaticamente via trigger do cenário sap.B1.Add.UDFs após ativação do cenário pela empresa terceira.

**UDFs que serão criados:**

**Parceiro de Negócios:** - C4C_InternalID (Alfanumérico, 50) - C4C_UUID (Alfanumérico, 50)

**Endereços do PN:** - C4C_UUID (Alfanumérico, 50)

**Pessoas de Contato:** - C4C_UUID (Alfanumérico, 50) - C4C_InternalID (Alfanumérico, 50) - C4C_ExternalID (Alfanumérico, 50)

**Documentos de Marketing — Linhas:** - ExRefNo (Alfanumérico, 50) - ExCurrency (Alfanumérico, 20) - ExPrice (Unidades e Totais, Structure: Price) - ExItemCode (Alfanumérico, 20) - ExUnitCode (Alfanumérico, 10)

**Trigger:** SCENARIOS → Control → sap.C4C → Trigger → sap.B1.Add.UDFs → Trigger

6.3 — Períodos de lançamento ✅

Período fiscal 2026 já definido.

**Local:** Administração → Inicialização do sistema → Períodos de lançamento

---

Resumo Final

### Concluído - Certificados importados e exportados - Keystore copiado para DI Proxy - Serviços reiniciados - Porta mantida em 8443 (decisão do cliente) - Usuário Runtime B1iRuntime ativo - Pacote sap.C4C v1.1.11 importado - SLD do B1 configurado - Moedas com código ISO - Períodos de lançamento definidos

### Pendente — Empresa Terceira (Provedor C4C) 1. Preencher dados de conexão do C4C no SLD do IF 2. Manter C4CLocalSystemID nas Properties do C4C 3. Executar Setup Wizard do cenário sap.C4C 4. Criar UDFs via trigger sap.B1.Add.UDFs 5. Testar comunicação na porta 8443 6. Importar certificado do IF no Trust List do C4C

### Observações - A empresa terceira já possui acesso ao Integration Framework - Endereço externo do IF: `https://alfama-mobile.skyinone.net:8443` - Certificado do IF já foi enviado ao provedor - Usuário e senha do B1iRuntime devem ser compartilhados com o provedor para configuração do Communication Arrangement