SAP Business One Component
Manage business partners, orders, inventory, and financial data in SAP Business One.
Component key: sap-business-one · · Changelog ↓Description
SAP Business One is an integrated enterprise resource planning (ERP) solution designed for organizations to manage their entire operations.
This component allows you to manage business partners, sales orders, purchase orders, and inventory items within SAP Business One.
API Documentation
This component was built using the SAP Business One Service Layer API, supporting both V1 (/b1s/v1 - OData 3.0) and V2 (/b1s/v2 - OData 4.0) endpoints. You can configure the API version in your connection settings.
Additional resources:
Connections
SAP Business One Authentication
key: sap-business-one-authSAP Business One uses username and password authentication to connect to the Service Layer API. The Service Layer supports two API versions: v2 (OData 4.0, recommended for new integrations) and v1 (OData 3.0, the default for backwards compatibility).
For detailed information about the SAP Business One Service Layer API, refer to the Service Layer API Reference.
Prerequisites
- Access to a SAP Business One instance (cloud or on-premises)
- SAP Business One user account with API access permissions
- For cloud instances: Server address including hostname/IP and port
- For on-premises instances: Network access to the SAP Business One server via the on-premises agent
Setup Steps
Gather the following information from the SAP Business One administrator:
- Username and Password: SAP Business One user credentials with appropriate API permissions
- Server Address (for cloud/non-OnPrem instances):
- Format:
https://<Server Name/IP>:<Port> - Example:
https://sapb1-server.example.com:50000
- Format:
- Database Instance (optional):
- Format:
<DatabaseName>@<Host>:<Port> - Example:
C200@10.58.114.200:30013
- Format:
- Company Name (optional):
- The company database name to connect to
- Example:
SBODEMOUS
- API Version:
- v1 (OData 3.0) - Default, for backwards compatibility with existing integrations
- v2 (OData 4.0) - Recommended for new integrations with improved functionality
Configure the Connection
| Field | Required | Description |
|---|---|---|
| Username | Yes | The SAP Business One username for authentication |
| Password | Yes | The SAP Business One password for authentication |
| Server Address | No* | The URL of the SAP Business One Service Layer server, including the port. Required for non-OnPrem connections. Example: https://sapb1-server.example.com:50000 |
| Database Instance | No | The SAP HANA database instance in format DatabaseName@Host:Port. Example: C200@10.58.114.200:30013 |
| Company Name | No | The company database name to connect to in SAP Business One. Example: SBODEMOUS |
| API Version | No | The Service Layer API version to use. Defaults to v1 (OData 3.0). Select v2 (OData 4.0) for new integrations |
*Required for cloud deployments. For on-premises deployments, the Host and Port fields are automatically configured by the on-premises agent.
On-prem enabled: this connection can be configured to connect to an on-prem resource on a private network. Learn more.
| Input | Notes | Example |
|---|---|---|
| API Version | The Service Layer API version to use. v2 (OData 4.0) is recommended for new integrations and provides improved functionality. v1 (OData 3.0) is available for backwards compatibility with existing integrations. | v1 |
| Company Name | The company database name to connect to in SAP Business One. | SBODEMOUS |
| Database Instance | The SAP HANA database instance to connect to, in the format DatabaseName@Host:Port. | C200@10.58.114.200:30013 |
| Host | The IP address or hostname of your On-Prem server. | sapb1-onprem.example.io |
| Password | The SAP Business One password for authentication. | Password |
| Port | The port number of your On-Prem server. | 50000 |
| Server Address | The URL of the SAP Business One Service Layer server, including the port (e.g., https://sapb1-server.example.com:50000). Required for non-OnPrem connections. See SAP Business One Service Layer documentation for details. | https://sapb1-server.example.com:50000 |
| Username | The SAP Business One username for authentication. | TestUser |
Triggers
New and Updated Records
Checks for new and updated records in SAP Business One on a configured schedule. | key: pollChangesTrigger
| Input | Notes | Example |
|---|---|---|
| Connection | The SAP Business One connection to use. | |
| Resource Type | The SAP Business One resource type to poll for new or updated records. | |
| Show New Records | When true, newly created records will be included in the trigger output. | true |
| Show Updated Records | When true, records that were updated after the last poll will be included in the trigger output. | true |
The New and Updated Records trigger checks SAP Business One for new and updated records of a selected resource type on a configured schedule. The trigger queries the SAP Business One Service Layer using OData filters and categorizes results into newly created and updated records based on CreateDate and UpdateDate timestamps.
For details on the underlying API, refer to the SAP Business One Service Layer API Reference.
How It Works
The trigger maintains a lastPolledAt timestamp in polling state and uses it to fetch only records changed since the previous run.
- Initial Poll: On the first execution,
lastPolledAtis initialized to the current time so historical records are not flooded into the workflow. - Subsequent Polls: The trigger fetches records where
UpdateDate >= lastPolledAt(day-precision) using a server-side OData$filter. - Categorization: Records are split client-side into
created(whereCreateDate > lastPolledAt) andupdated(where onlyUpdateDate > lastPolledAt) buckets. - State Persistence: After each successful poll, the current timestamp is saved as the new
lastPolledAt.
Date Precision
SAP Business One Service Layer reports CreateDate and UpdateDate with day-only precision (YYYY-MM-DD). The trigger uses ge (greater-or-equal) instead of gt so records updated on the same day as the last poll are still detected. As a result, a record updated multiple times within a single calendar day is reported once per day.
Known Limitation
SAP Business One session cookies returned by the /Login endpoint expire server-side (default ~30 minutes). When Fetch All issues many parallel paged requests, a cookie that expires mid-fetch will cause remaining requests to fail. Cookie refresh is intentionally out of scope for this trigger; reduce the polling interval or batch size if this is encountered frequently.
Configuration
The trigger requires the following inputs:
- Connection (Required): The SAP Business One connection to use.
- Resource Type (Required): The Service Layer collection to monitor for changes. See the supported resource types below.
- Show New Records (Optional, default
true): When enabled, newly created records are included in the trigger output. - Show Updated Records (Optional, default
true): When enabled, records that were updated after the last poll are included in the trigger output.
If both Show New Records and Show Updated Records are disabled, the trigger emits an empty payload and skips the API call.
Supported Resource Types
Available Resource Types (7)
| Resource Type | Service Layer Endpoint | Description |
|---|---|---|
BusinessPartners | /BusinessPartners | Customers, suppliers, and leads |
Items | /Items | Inventory items, services, labor, travel, and fixed assets |
Orders | /Orders | Sales orders |
Invoices | /Invoices | A/R invoices |
PurchaseOrders | /PurchaseOrders | Purchase orders |
Warehouses | /Warehouses | Warehouse master data |
PriceLists | /PriceLists | Price list definitions |
Returned Data
The trigger returns a payload with separate arrays for newly created and updated records.
Example Payload
{
"data": {
"created": [
{
"CardCode": "C20000",
"CardName": "Acme Corporation",
"CardType": "cCustomer",
"CreateDate": "2026-04-23",
"UpdateDate": "2026-04-23",
"Phone1": "555-0100",
"EmailAddress": "contact@acme.example"
}
],
"updated": [
{
"CardCode": "C30000",
"CardName": "Globex Industries",
"CardType": "cCustomer",
"CreateDate": "2026-01-15",
"UpdateDate": "2026-04-25",
"Phone1": "555-0200",
"EmailAddress": "info@globex.example"
}
]
}
}
The exact fields returned depend on the resource type selected. Refer to the SAP Business One Service Layer API Reference for the full schema of each entity.
Best Practices
- Polling Frequency: Use intervals of at least 5–15 minutes. Polling more frequently than the API's date precision (one day) does not surface additional records sooner — it only adds load.
- Resource-per-Trigger: Configure one trigger per resource type. Running multiple triggers for different resources lets each maintain its own
lastPolledAtcursor. - Session Cookie Awareness: Avoid extremely long polling intervals on high-volume tenants where the cookie may expire mid-poll. Shorter, more frequent polls reduce the chance of mid-fetch session expiry.
Data Sources
Select Business Partner
Select a Business Partner from a dropdown menu. | key: selectBusinessPartner | type: picklist
| Input | Notes | Example |
|---|---|---|
| Filter | An OData filter expression to apply to the request (e.g., startswith, eq, gt). See OData $filter documentation for filter syntax. | startswith(ItemCode, 'A001') |
| Connection | The SAP Business One connection to use. |
Example Payload for Select Business Partner⤓
Select Invoice
Select an Invoice from a dropdown menu. | key: selectInvoice | type: picklist
| Input | Notes | Example |
|---|---|---|
| Filter | An OData filter expression to apply to the request (e.g., startswith, eq, gt). See OData $filter documentation for filter syntax. | startswith(ItemCode, 'A001') |
| Connection | The SAP Business One connection to use. |
Example Payload for Select Invoice⤓
Select Order
Select an Order from a dropdown menu. | key: selectOrder | type: picklist
| Input | Notes | Example |
|---|---|---|
| Filter | An OData filter expression to apply to the request (e.g., startswith, eq, gt). See OData $filter documentation for filter syntax. | startswith(ItemCode, 'A001') |
| Connection | The SAP Business One connection to use. |
Example Payload for Select Order⤓
Select Purchase Order
Select an Purchase Order from a dropdown menu. | key: selectPurchaseOrder | type: picklist
| Input | Notes | Example |
|---|---|---|
| Filter | An OData filter expression to apply to the request (e.g., startswith, eq, gt). See OData $filter documentation for filter syntax. | startswith(ItemCode, 'A001') |
| Connection | The SAP Business One connection to use. |
Example Payload for Select Purchase Order⤓
Select Record
Select a Custom Record type from a dropdown menu. | key: selectRecord | type: picklist
| Input | Notes | Example |
|---|---|---|
| Filter | An OData filter expression to apply to the request (e.g., startswith, eq, gt). See OData $filter documentation for filter syntax. | startswith(ItemCode, 'A001') |
| Connection | The SAP Business One connection to use. | |
| Key Field | The field name to use as the value in dropdown options. | ItemCode |
| Label Field | The field name to use as the label text in dropdown options. | ItemName |
| Record Type | The type of record to use for the operation (e.g., JournalEntries, Activities, BusinessPartners). This corresponds to the Service Layer entity name. | JournalEntries |
Example Payload for Select Record⤓
Select Warehouse
Select a Warehouse from a dropdown menu. | key: selectWarehouse | type: picklist
| Input | Notes | Example |
|---|---|---|
| Filter | An OData filter expression to apply to the request (e.g., startswith, eq, gt). See OData $filter documentation for filter syntax. | startswith(ItemCode, 'A001') |
| Connection | The SAP Business One connection to use. |
Example Payload for Select Warehouse⤓
Actions
Close Invoice
Invoke the method Close. | key: closeInvoice
| Input | Notes | Example |
|---|---|---|
| Connection | The SAP Business One connection to use. | |
| Doc Entry | The document entry number (DocEntry) that uniquely identifies the invoice. This is an integer value. | 12345 |
Create Business Partner
Create an instance of Business Partners | key: createBusinessPartner
| Input | Notes | Example |
|---|---|---|
| Body Fields | Additional fields to include in the request body as a JSON object. These fields will be merged with the other input values. | |
| Card Code | The unique code identifying the business partner (customer or supplier). | C20000 |
| Card Name | The name of the business partner (customer or supplier). | Acme Corporation |
| Card Type | The type of the business partner: Customer (cCustomer), Supplier (cSupplier), or Lead (cLid). | |
| Connection | The SAP Business One connection to use. |
Example Payload for Create Business Partner⤓
Create Invoice
Create an instance of Invoices. | key: createInvoice
| Input | Notes | Example |
|---|---|---|
| Body Fields | Additional fields to include in the request body as a JSON object. These fields will be merged with the other input values. | |
| Card Code | The unique code identifying the business partner (customer or supplier). | C20000 |
| Connection | The SAP Business One connection to use. | |
| Doc Lines | The document lines containing item details for the order. Each line should include ItemCode, Quantity, and optionally UnitPrice and TaxCode. |
Create Item
Retrieve all or some selected properties from an instance of Items with the given id. | key: createItem
| Input | Notes | Example |
|---|---|---|
| Body Fields | Additional fields to include in the request body as a JSON object. These fields will be merged with the other input values. | |
| Connection | The SAP Business One connection to use. | |
| Item Code | The unique code identifying the item in the inventory. | A00001 |
| Item Name | The name of the item in the inventory. | Desktop Computer |
| Item Type | The type of the item: Items (itItems), Labor (itLabor), Travel (itTravel), or Fixed Assets (itFixedAssets). |
Create Order
Create an instance of Orders. | key: createOrder
| Input | Notes | Example |
|---|---|---|
| Body Fields | Additional fields to include in the request body as a JSON object. These fields will be merged with the other input values. | |
| Card Code | The business partner code associated with this order. | C20000 |
| Connection | The SAP Business One connection to use. | |
| Doc Due Date | The due date of the order in YYYY-MM-DD format. | 2026-12-31 |
| Doc Lines | The document lines containing item details for the order. Each line should include ItemCode, Quantity, and optionally UnitPrice and TaxCode. |
Create Price List
Create an instance of Price Lists | key: createPriceList
| Input | Notes | Example |
|---|---|---|
| Body Fields | Additional fields to include in the request body as a JSON object. These fields will be merged with the other input values. | |
| Connection | The SAP Business One connection to use. | |
| Price List Name | The name of the price list. | Retail Price List |
Example Payload for Create Price List⤓
Create Purchase Order
Create an instance of Purchase Orders. | key: createPurchaseOrder
| Input | Notes | Example |
|---|---|---|
| Body Fields | Additional fields to include in the request body as a JSON object. These fields will be merged with the other input values. | |
| Card Code | The unique code identifying the business partner (customer or supplier). | C20000 |
| Connection | The SAP Business One connection to use. | |
| Document Lines | The document lines containing item details for the order. Each line should include ItemCode, Quantity, and optionally UnitPrice and TaxCode. |
Create Record
Create a new record in SAP Business One. | key: createRecord
| Input | Notes | Example |
|---|---|---|
| Body Fields | Additional fields to include in the request body as a JSON object. These fields will be merged with the other input values. | |
| Connection | The SAP Business One connection to use. | |
| Record Type | The type of record to use for the operation (e.g., JournalEntries, Activities, BusinessPartners). This corresponds to the Service Layer entity name. | JournalEntries |
Create Warehouse
Create an instance of Warehouses. | key: createWarehouse
| Input | Notes | Example |
|---|---|---|
| Body Fields | Additional fields to include in the request body as a JSON object. These fields will be merged with the other input values. | |
| Connection | The SAP Business One connection to use. | |
| Warehouse Location ID | The unique identifier for the warehouse location. This is an integer value. | 1 |
| Warehouse Code | The unique code identifying the warehouse. | WH01 |
| Warehouse Name | The name of the warehouse. | Main Distribution Center |
Delete Business Partner
Delete an instance of BusinessPartners with the specified id. | key: deleteBusinessPartner
| Input | Notes | Example |
|---|---|---|
| Card Code | The unique code identifying the business partner (customer or supplier). | C20000 |
| Connection | The SAP Business One connection to use. |
Example Payload for Delete Business Partner⤓
Delete Item
Delete an instance of Items with the specified id. | key: deleteItem
| Input | Notes | Example |
|---|---|---|
| Connection | The SAP Business One connection to use. | |
| Item Code | The unique code identifying the item in the inventory. | A00001 |
Example Payload for Delete Item⤓
Delete Price List
Delete an instance of Items with the specified id. | key: deletePriceList
| Input | Notes | Example |
|---|---|---|
| Connection | The SAP Business One connection to use. | |
| Price List Number | The unique number identifying the price list. This is an integer value. | 1 |
Example Payload for Delete Price List⤓
Delete Record
Delete an existing record in SAP Business One. | key: deleteRecord
| Input | Notes | Example |
|---|---|---|
| Connection | The SAP Business One connection to use. | |
| Record ID | The unique identifier for the record. This is typically an integer value (DocEntry or similar). | 12345 |
| Record Type | The type of record to use for the operation (e.g., JournalEntries, Activities, BusinessPartners). This corresponds to the Service Layer entity name. | JournalEntries |
Example Payload for Delete Record⤓
Delete Warehouse
Delete an instance of Warehouses with the specified id. | key: deleteWarehouse
| Input | Notes | Example |
|---|---|---|
| Connection | The SAP Business One connection to use. | |
| Warehouse Code | The unique code identifying the warehouse. | WH01 |
Example Payload for Delete Warehouse⤓
Get Business Partner
Retrieve all or some selected properties from an instance of BusinessPartners with the given id. | key: getBusinessPartner
| Input | Notes | Example |
|---|---|---|
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Card Code | The unique code identifying the business partner (customer or supplier). | C20000 |
| Connection | The SAP Business One connection to use. |
Example Payload for Get Business Partner⤓
Get Invoice
Retrieve all or some selected properties from an instance of Warehouses with the given id. | key: getInvoice
| Input | Notes | Example |
|---|---|---|
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Connection | The SAP Business One connection to use. | |
| Doc Entry | The document entry number (DocEntry) that uniquely identifies the invoice. This is an integer value. | 12345 |
Get Item
Retrieve all or some selected properties from an instance of Items with the given id. | key: getItem
| Input | Notes | Example |
|---|---|---|
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Connection | The SAP Business One connection to use. | |
| Item Code | The unique code identifying the item in the inventory. | A00001 |
Get Order
Retrieve all or some selected properties from an instance of Orders with the given id. | key: getOrder
| Input | Notes | Example |
|---|---|---|
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Connection | The SAP Business One connection to use. | |
| Doc Entry | The document entry number (DocEntry) that uniquely identifies the order. This is an integer value. | 123 |
Get Price List
Retrieve all or some selected properties from an instance of PriceLists with the given id. | key: getPriceList
| Input | Notes | Example |
|---|---|---|
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Connection | The SAP Business One connection to use. | |
| Price List Number | The unique number identifying the price list. This is an integer value. | 1 |
Example Payload for Get Price List⤓
Get Purchase Order
Retrieve all or some selected properties from an instance of Purchase Orders with the given id. | key: getPurchaseOrder
| Input | Notes | Example |
|---|---|---|
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Connection | The SAP Business One connection to use. | |
| Purchase Order Document Entry | The document entry number (DocEntry) that uniquely identifies the purchase order. This is an integer value. | 12345 |
Get Record
Retrieve a single record from SAP Business One. | key: getRecord
| Input | Notes | Example |
|---|---|---|
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Connection | The SAP Business One connection to use. | |
| Record ID | The unique identifier for the record. This is typically an integer value (DocEntry or similar). | 12345 |
| Record Type | The type of record to use for the operation (e.g., JournalEntries, Activities, BusinessPartners). This corresponds to the Service Layer entity name. | JournalEntries |
Get Warehouse
Retrieve all or some selected properties from an instance of Warehouses with the given id. | key: getWarehouse
| Input | Notes | Example |
|---|---|---|
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Connection | The SAP Business One connection to use. | |
| Warehouse Code | The unique code identifying the warehouse. | WH01 |
Example Payload for Get Warehouse⤓
Get Warehouse Location
Retrieve all or some selected properties from an instance of Warehouse Location with the given id. | key: getWarehouseLocation
| Input | Notes | Example |
|---|---|---|
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Connection | The SAP Business One connection to use. | |
| Warehouse Location ID | The unique identifier for the warehouse location. This is an integer value. | 1 |
Example Payload for Get Warehouse Location⤓
List Business Partners
Retrieve a collection of Business Partners with all or some selected properties | key: listBusinessPartners
| Input | Notes | Example |
|---|---|---|
| Filter | An OData filter expression to apply to the request (e.g., startswith, eq, gt). See OData $filter documentation for filter syntax. | startswith(ItemCode, 'A001') |
| Order By | A comma-separated list of fields to sort by. Add 'asc' or 'desc' after field name for sort direction (e.g., ItemCode desc). | ItemCode asc |
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Skip | The number of items to skip before returning results. Used for pagination. | 20 |
| Top | The maximum number of items to return. Maximum value is 20. | 10 |
| Connection | The SAP Business One connection to use. | |
| Custom Query Params | Custom query parameters to include in the request, such as $expand for related entities. | $expand=value |
| Fetch All | When true, all records will be fetched automatically by paginating through results. When false, only the number of records specified in $top will be returned. | false |
Example Payload for List Business Partners⤓
List Invoices
Retrieve a collection of Invoices with all or some selected properties in the given order by specifying the given filter condition. | key: listInvoices
| Input | Notes | Example |
|---|---|---|
| Filter | An OData filter expression to apply to the request (e.g., startswith, eq, gt). See OData $filter documentation for filter syntax. | startswith(ItemCode, 'A001') |
| Order By | A comma-separated list of fields to sort by. Add 'asc' or 'desc' after field name for sort direction (e.g., ItemCode desc). | ItemCode asc |
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Skip | The number of items to skip before returning results. Used for pagination. | 20 |
| Top | The maximum number of items to return. Maximum value is 20. | 10 |
| Connection | The SAP Business One connection to use. | |
| Custom Query Params | Custom query parameters to include in the request, such as $expand for related entities. | $expand=value |
| Fetch All | When true, all records will be fetched automatically by paginating through results. When false, only the number of records specified in $top will be returned. | false |
List Items
Retrieve a collection of Items with all or some selected properties. | key: listItems
| Input | Notes | Example |
|---|---|---|
| Filter | An OData filter expression to apply to the request (e.g., startswith, eq, gt). See OData $filter documentation for filter syntax. | startswith(ItemCode, 'A001') |
| Order By | A comma-separated list of fields to sort by. Add 'asc' or 'desc' after field name for sort direction (e.g., ItemCode desc). | ItemCode asc |
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Skip | The number of items to skip before returning results. Used for pagination. | 20 |
| Top | The maximum number of items to return. Maximum value is 20. | 10 |
| Connection | The SAP Business One connection to use. | |
| Custom Query Params | Custom query parameters to include in the request, such as $expand for related entities. | $expand=value |
| Fetch All | When true, all records will be fetched automatically by paginating through results. When false, only the number of records specified in $top will be returned. | false |
List Orders
Retrieve a collection of Orders with all or some selected properties | key: listOrders
| Input | Notes | Example |
|---|---|---|
| Filter | An OData filter expression to apply to the request (e.g., startswith, eq, gt). See OData $filter documentation for filter syntax. | startswith(ItemCode, 'A001') |
| Order By | A comma-separated list of fields to sort by. Add 'asc' or 'desc' after field name for sort direction (e.g., ItemCode desc). | ItemCode asc |
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Skip | The number of items to skip before returning results. Used for pagination. | 20 |
| Top | The maximum number of items to return. Maximum value is 20. | 10 |
| Connection | The SAP Business One connection to use. | |
| Custom Query Params | Custom query parameters to include in the request, such as $expand for related entities. | $expand=value |
| Fetch All | When true, all records will be fetched automatically by paginating through results. When false, only the number of records specified in $top will be returned. | false |
List Price Lists
Retrieve a collection of PriceLists with all or some selected properties. | key: listPriceLists
| Input | Notes | Example |
|---|---|---|
| Filter | An OData filter expression to apply to the request (e.g., startswith, eq, gt). See OData $filter documentation for filter syntax. | startswith(ItemCode, 'A001') |
| Order By | A comma-separated list of fields to sort by. Add 'asc' or 'desc' after field name for sort direction (e.g., ItemCode desc). | ItemCode asc |
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Skip | The number of items to skip before returning results. Used for pagination. | 20 |
| Top | The maximum number of items to return. Maximum value is 20. | 10 |
| Connection | The SAP Business One connection to use. | |
| Custom Query Params | Custom query parameters to include in the request, such as $expand for related entities. | $expand=value |
| Fetch All | When true, all records will be fetched automatically by paginating through results. When false, only the number of records specified in $top will be returned. | false |
Example Payload for List Price Lists⤓
List Purchase Orders
Retrieve a collection of Purchase Orders with all or some selected properties. | key: listPurchaseOrders
| Input | Notes | Example |
|---|---|---|
| Filter | An OData filter expression to apply to the request (e.g., startswith, eq, gt). See OData $filter documentation for filter syntax. | startswith(ItemCode, 'A001') |
| Order By | A comma-separated list of fields to sort by. Add 'asc' or 'desc' after field name for sort direction (e.g., ItemCode desc). | ItemCode asc |
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Skip | The number of items to skip before returning results. Used for pagination. | 20 |
| Top | The maximum number of items to return. Maximum value is 20. | 10 |
| Connection | The SAP Business One connection to use. | |
| Custom Query Params | Custom query parameters to include in the request, such as $expand for related entities. | $expand=value |
| Fetch All | When true, all records will be fetched automatically by paginating through results. When false, only the number of records specified in $top will be returned. | false |
List Records
Retrieve a list of records from SAP Business One. | key: listRecords
| Input | Notes | Example |
|---|---|---|
| Filter | An OData filter expression to apply to the request (e.g., startswith, eq, gt). See OData $filter documentation for filter syntax. | startswith(ItemCode, 'A001') |
| Order By | A comma-separated list of fields to sort by. Add 'asc' or 'desc' after field name for sort direction (e.g., ItemCode desc). | ItemCode asc |
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Skip | The number of items to skip before returning results. Used for pagination. | 20 |
| Top | The maximum number of items to return. Maximum value is 20. | 10 |
| Connection | The SAP Business One connection to use. | |
| Custom Query Params | Custom query parameters to include in the request, such as $expand for related entities. | $expand=value |
| Fetch All | When true, all records will be fetched automatically by paginating through results. When false, only the number of records specified in $top will be returned. | false |
| Record Type | The type of record to use for the operation (e.g., JournalEntries, Activities, BusinessPartners). This corresponds to the Service Layer entity name. | JournalEntries |
List Warehouse Locations
Retrieve a collection of Warehouses Locations with all or some selected properties in the given order by specifying the given filter condition. | key: listWarehouseLocations
| Input | Notes | Example |
|---|---|---|
| Filter | An OData filter expression to apply to the request (e.g., startswith, eq, gt). See OData $filter documentation for filter syntax. | startswith(ItemCode, 'A001') |
| Order By | A comma-separated list of fields to sort by. Add 'asc' or 'desc' after field name for sort direction (e.g., ItemCode desc). | ItemCode asc |
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Skip | The number of items to skip before returning results. Used for pagination. | 20 |
| Top | The maximum number of items to return. Maximum value is 20. | 10 |
| Connection | The SAP Business One connection to use. | |
| Custom Query Params | Custom query parameters to include in the request, such as $expand for related entities. | $expand=value |
| Fetch All | When true, all records will be fetched automatically by paginating through results. When false, only the number of records specified in $top will be returned. | false |
Example Payload for List Warehouse Locations⤓
List Warehouses
Retrieve a collection of Warehouses with all or some selected properties in the given order by specifying the given filter condition. | key: listWarehouses
| Input | Notes | Example |
|---|---|---|
| Filter | An OData filter expression to apply to the request (e.g., startswith, eq, gt). See OData $filter documentation for filter syntax. | startswith(ItemCode, 'A001') |
| Order By | A comma-separated list of fields to sort by. Add 'asc' or 'desc' after field name for sort direction (e.g., ItemCode desc). | ItemCode asc |
| Select | A comma-separated list of fields to include in the response. If not provided, all fields will be returned and the query may be slower. See OData $select documentation for available fields. | ItemCode,ItemName,ForeignName |
| Skip | The number of items to skip before returning results. Used for pagination. | 20 |
| Top | The maximum number of items to return. Maximum value is 20. | 10 |
| Connection | The SAP Business One connection to use. | |
| Custom Query Params | Custom query parameters to include in the request, such as $expand for related entities. | $expand=value |
| Fetch All | When true, all records will be fetched automatically by paginating through results. When false, only the number of records specified in $top will be returned. | false |
Example Payload for List Warehouses⤓
Raw Request
Send raw HTTP request to the SAP Business One API | key: rawRequest
| Input | Notes | Example |
|---|---|---|
| Connection | The SAP Business One connection to use. | |
| Data | The HTTP body payload to send to the URL. | {"exampleKey": "Example Data"} |
| File Data | File Data to be sent as a multipart form upload. | [{key: "example.txt", value: "My File Contents"}] |
| File Data File Names | File names to apply to the file data inputs. Keys must match the file data keys above. | |
| Form Data | The Form Data to be sent as a multipart form upload. | [{"key": "Example Key", "value": new Buffer("Hello World")}] |
| Header | A list of headers to send with the request. | User-Agent: curl/7.64.1 |
| Max Retry Count | The maximum number of retries to attempt. Specify 0 for no retries. | 0 |
| Method | The HTTP method to use. | |
| Query Parameter | A list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2. | |
| Response Type | The type of data you expect in the response. You can request json, text, or binary data. | json |
| Retry On All Errors | If true, retries on all erroneous responses regardless of type. This is helpful when retrying after HTTP 429 or other 3xx or 4xx errors. Otherwise, only retries on HTTP 5xx and network errors. | false |
| Retry Delay (ms) | The delay in milliseconds between retries. This is used when 'Use Exponential Backoff' is disabled. | 0 |
| Timeout | The maximum time that a client will await a response to its request | 2000 |
| URL | The API endpoint path only (e.g., Items, Orders, BusinessPartners). The base URL is automatically included based on your connection settings. For example, to access Items, enter 'Items' here and it will be appended to the base URL ( | Items |
| Use Exponential Backoff | Specifies whether to use a pre-defined exponential backoff strategy for retries. When enabled, 'Retry Delay (ms)' is ignored. | false |
Update Business Partner
Update an instance of Business Partners | key: updateBusinessPartner
| Input | Notes | Example |
|---|---|---|
| Body Fields | Additional fields to include in the request body as a JSON object. These fields will be merged with the other input values. | |
| Card Code | The unique code identifying the business partner (customer or supplier). | C20000 |
| Card Name | The name of the business partner (customer or supplier). | Acme Corporation |
| Card Type | The type of the business partner: Customer (cCustomer), Supplier (cSupplier), or Lead (cLid). | |
| Connection | The SAP Business One connection to use. |
Example Payload for Update Business Partner⤓
Update Invoice
Update an instance of Invoices. | key: updateInvoice
| Input | Notes | Example |
|---|---|---|
| Body Fields | Additional fields to include in the request body as a JSON object. These fields will be merged with the other input values. | |
| Comments | The comments to be added to the modified order. | new comments - modified by Service Layer |
| Connection | The SAP Business One connection to use. | |
| Doc Entry | The document entry number (DocEntry) that uniquely identifies the invoice. This is an integer value. | 12345 |
Example Payload for Update Invoice⤓
Update Item
Update an instance of Items | key: updateItem
| Input | Notes | Example |
|---|---|---|
| Body Fields | Additional fields to include in the request body as a JSON object. These fields will be merged with the other input values. | |
| Connection | The SAP Business One connection to use. | |
| Item Code | The unique code identifying the item in the inventory. | A00001 |
| Item Name | The name of the item in the inventory. | Desktop Computer |
| Item Type | The type of the item: Items (itItems), Labor (itLabor), Travel (itTravel), or Fixed Assets (itFixedAssets). |
Example Payload for Update Item⤓
Update Order
Update an instance of Orders. | key: updateOrder
| Input | Notes | Example |
|---|---|---|
| Body Fields | Additional fields to include in the request body as a JSON object. These fields will be merged with the other input values. | |
| Comments | The comments to be added to the modified order. | new comments - modified by Service Layer |
| Connection | The SAP Business One connection to use. | |
| Doc Entry | The document entry number (DocEntry) that uniquely identifies the order. This is an integer value. | 123 |
Example Payload for Update Order⤓
Update Price List
Update an instance of Price Lists. | key: updatePriceList
| Input | Notes | Example |
|---|---|---|
| Body Fields | Additional fields to include in the request body as a JSON object. These fields will be merged with the other input values. | |
| Connection | The SAP Business One connection to use. | |
| Price List Name | The name of the price list. | Retail Price List |
| Price List Number | The unique number identifying the price list. This is an integer value. | 1 |
Example Payload for Update Price List⤓
Update Purchase Order
Update an instance of Purchase Orders. | key: updatePurchaseOrder
| Input | Notes | Example |
|---|---|---|
| Body Fields | Additional fields to include in the request body as a JSON object. These fields will be merged with the other input values. | |
| Comments | The comments to be added to the modified order. | new comments - modified by Service Layer |
| Connection | The SAP Business One connection to use. | |
| Purchase Order Document Entry | The document entry number (DocEntry) that uniquely identifies the purchase order. This is an integer value. | 12345 |
Example Payload for Update Purchase Order⤓
Update Record
Update an existing record in SAP Business One. | key: updateRecord
| Input | Notes | Example |
|---|---|---|
| Body Fields | Additional fields to include in the request body as a JSON object. These fields will be merged with the other input values. | |
| Connection | The SAP Business One connection to use. | |
| Record ID | The unique identifier for the record. This is typically an integer value (DocEntry or similar). | 12345 |
| Record Type | The type of record to use for the operation (e.g., JournalEntries, Activities, BusinessPartners). This corresponds to the Service Layer entity name. | JournalEntries |
Example Payload for Update Record⤓
Update Warehouse
Update an instance of Warehouses. | key: updateWarehouse
| Input | Notes | Example |
|---|---|---|
| Body Fields | Additional fields to include in the request body as a JSON object. These fields will be merged with the other input values. | |
| Connection | The SAP Business One connection to use. | |
| Warehouse Location ID | The unique identifier for the warehouse location. This is an integer value. | 1 |
| Warehouse Code | The unique code identifying the warehouse. | WH01 |
| Warehouse Name | The name of the warehouse. | Main Distribution Center |
Example Payload for Update Warehouse⤓
Changelog
2026-05-05
Added New and Updated Records polling trigger that detects newly created and recently modified records across seven resource types: Business Partners, Items, Orders, Invoices, Purchase Orders, Warehouses, and Price Lists. Filtering is pushed to the SAP Business One Service Layer for efficient server-side queries, with date-based filtering reflecting the day-level precision of the underlying update timestamp
2026-04-30
Updated spectral version
2026-01-26
Added API Version selection to connection settings, allowing you to choose between v1 (OData 3.0) or v2 (OData 4.0) APIs. v2 is recommended for new integrations to access the latest OData 4.0 features and improved performance, while v1 remains available to ensure existing integrations continue working without modification.