Created by

Created by: Raquel Giugliano || raquelgiugliano

Raquel Giugliano

Last update

Last update 6 days ago

Categories

Share


This minimal utility workflow connects to the SAP Business One Service Layer API to verify login credentials and return the session ID. It's ideal for testing access or using as a sub-workflow to retrieve the B1SESSION token for other operations.

++⚙️ HOW IT WORKS:++
🔹 1. Trigger Manually

The workflow is initiated using a Manual Trigger.

Ideal for testing or debugging credentials before automation.

🔹 2. Set SAP Login Data

The Set Login Data node defines four key input variables:

sap_url: Base URL of the SAP B1 Service Layer (e.g. https://sap-server:50000/b1s/v1/)

sap_username: SAP B1 username

sap_password: SAP B1 password

sap_companydb: SAP B1 Company DB name

🔹 3. Connect to SAP

A HTTP Request node performs a POST to the Login endpoint.

The body is structured as:

{
"UserName": "your_sap_username",
"Password": "your_sap_password",
"CompanyDB": "your_sap_companydb"
}

If successful, the response contains a SessionId which is essential for authenticated requests.

🔹 4. Return Session or Error

The response is branched:

On success → the sessionID is extracted and returned.

On failure → the error message and status code are stored separately.

++🛠 SETUP STEPS:++
1️⃣ Create SAP Service Layer Credentials
Although this workflow uses manual inputs (via Set), it's best to define your connection details as environment variables for reuse:

SAP_URL=https://your-sap-host:50000/b1s/v1/
SAP_USER=your_sapuser
SAP_PASSWORD=your_password
SAP_COMPANY_DB=your_companyDB

Alternatively, update the Set Login Data node directly with your values.

2️⃣ Run the Workflow
Click "Execute Workflow" in n8n.

Watch the response from SAP:

If successful: sessionID will be available in the Success node.

If failed: statusCode and errorMessage will be available in the Failed node.

++✅ USE CASES:++

  • 🔄 Reusable Login Module
    Export this as a reusable sub-workflow for other SAP-integrated flows.

  • 🔐 Credential Testing Tool
    Validate new environments, test credentials before deployment.