Skip to main content
sap-business-one icon

SAP Business One Connector

SourceAPI DocsAPI ChangelogConnector 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-auth

SAP 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:

  1. Username and Password: SAP Business One user credentials with appropriate API permissions
  2. Server Address (for cloud/non-OnPrem instances):
    • Format: https://<Server Name/IP>:<Port>
    • Example: https://sapb1-server.example.com:50000
  3. Database Instance (optional):
    • Format: <DatabaseName>@<Host>:<Port>
    • Example: C200@10.58.114.200:30013
  4. Company Name (optional):
    • The company database name to connect to
    • Example: SBODEMOUS
  5. 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​

FieldRequiredDescription
UsernameYesThe SAP Business One username for authentication
PasswordYesThe SAP Business One password for authentication
Server AddressNo*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 InstanceNoThe SAP HANA database instance in format DatabaseName@Host:Port. Example: C200@10.58.114.200:30013
Company NameNoThe company database name to connect to in SAP Business One. Example: SBODEMOUS
API VersionNoThe 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.

InputNotesExample
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​

Retrieves existing and ongoing records for a specified SAP Business One resource type. Load history once, check for changes on a schedule, or both. | key: pollChangesTrigger

InputNotesExample
Connection

The SAP Business One connection to use.

Look-back Date

The date the initial sync starts from, in YYYY-MM-DD format. Cannot be a future date. Leave empty to start from the first recurrence with no backfill. When set, the initial sync seeds each record modified on or after this date once, ignoring the trigger's visibility filters.

2026-01-01
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.

  1. First Recurrence: With no stored position and no Look-back Date, lastPolledAt is initialized to the current time so historical records are not flooded into the workflow. With a Look-back Date, an initial sync runs instead (see below).
  2. Subsequent Polls: The trigger fetches records where UpdateDate >= lastPolledAt (day-precision) using a server-side OData $filter.
  3. Categorization: Records are split client-side into created (where CreateDate > lastPolledAt) and updated (where only UpdateDate > lastPolledAt) buckets.
  4. State Persistence: After each successful poll, the current timestamp is saved as the new lastPolledAt.

Outside an initial sync, Show New Records and Show Updated Records each gate one of the two result arrays. If both are disabled, the trigger emits an empty payload and skips the API call.

Initial Sync

An initial sync seeds a complete starting state rather than a change feed, so inputs that narrow which changes are reported would leave gaps in it: Show New Records and Show Updated Records are ignored while it runs, and are the only inputs it ignores. It begins on the first recurrence, when the trigger has no stored position and a Look-back Date (YYYY-MM-DD) is set, and seeds every record dated on or after that day exactly once. Left empty, there is no sync and the trigger starts from its first recurrence.

The window has no fixed upper bound, so a record modified mid-fetch is swept into the sync rather than deferred to the schedule. The sync is fetched in full within one recurrence, whether or not batching is on. The trigger then stores the time that recurrence began as its position, the first incremental recurrence resumes from exactly there, and nothing in the payload marks the handoff. A stored position always takes precedence over the Look-back Date.

Resource Type still applies throughout. The trigger has no page-size or field-selection input, so nothing else is suppressed.

Batching

Batching is enabled per flow on this trigger: each changed record is dispatched as its own execution, or grouped by the configured batch size. Batch size and batch concurrency can both be overridden per instance. Raising concurrency increases the request volume sent to SAP Business One.

To turn it on, select the flow's trigger, open the Flow control tab, and switch on Enable Batching. Under Batch Size, keep Trigger default or choose Custom batch size. Batch Concurrency is optional; leave it blank for no batch-level limit.

With batching off a downstream step reads body.data.created and body.data.updated. With batching on those fields do not exist: each execution receives one { "changeType": ..., "record": ... } item, or an array of them when the batch size is greater than 1. Any step reading the older shape must be updated before batching is enabled, or it breaks the moment the switch is flipped. Because batching is enabled per flow, that change is scoped to the flow rather than to the component or to other flows using the same trigger.

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 if this is encountered frequently.

Supported Resource Types​

Available Resource Types (7)
Resource TypeService Layer EndpointDescription
BusinessPartners/BusinessPartnersCustomers, suppliers, and leads
Items/ItemsInventory items, services, labor, travel, and fixed assets
Orders/OrdersSales orders
Invoices/InvoicesA/R invoices
PurchaseOrders/PurchaseOrdersPurchase orders
Warehouses/WarehousesWarehouse master data
PriceLists/PriceListsPrice list definitions

Returned Data​

With batching off, the trigger returns a payload with separate arrays for newly created and updated records. Fields shown are representative. The full response object includes additional properties.

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"
}
]
}
}

With batching on, each execution receives one record tagged with how it changed, or an array of such items when the batch size is greater than 1. The created and updated arrays are not part of this shape.

Batched Item
{
"changeType": "created",
"record": {
"CardCode": "C20000",
"CardName": "Acme Corporation",
"CardType": "cCustomer",
"CreateDate": "2026-04-23",
"UpdateDate": "2026-04-23",
"Phone1": "555-0100",
"EmailAddress": "contact@acme.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 and only adds load.
  • Resource-per-Trigger: Configure one trigger per resource type. Running multiple triggers for different resources lets each maintain its own lastPolledAt cursor.
  • 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

InputNotesExample
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⤓
Loading…

Select Invoice​

Select an Invoice from a dropdown menu. | key: selectInvoice | type: picklist

InputNotesExample
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⤓
Loading…

Select Order​

Select an Order from a dropdown menu. | key: selectOrder | type: picklist

InputNotesExample
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⤓
Loading…

Select Purchase Order​

Select an Purchase Order from a dropdown menu. | key: selectPurchaseOrder | type: picklist

InputNotesExample
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⤓
Loading…

Select Record​

Select a Custom Record type from a dropdown menu. | key: selectRecord | type: picklist

InputNotesExample
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⤓
Loading…

Select Warehouse​

Select a Warehouse from a dropdown menu. | key: selectWarehouse | type: picklist

InputNotesExample
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⤓
Loading…

Actions​

Close Invoice​

Invoke the method Close. | key: closeInvoice

InputNotesExample
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

InputNotesExample
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⤓
Loading…

Create Invoice​

Create an instance of Invoices. | key: createInvoice

InputNotesExample
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.

[
  {
    "ItemCode": "i001",
    "Quantity": "100",
    "TaxCode": "T1",
    "UnitPrice": "30"
  }
]

Create Item​

Retrieve all or some selected properties from an instance of Items with the given id. | key: createItem

InputNotesExample
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

InputNotesExample
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.

[
  {
    "ItemCode": "i001",
    "Quantity": "100",
    "TaxCode": "T1",
    "UnitPrice": "30"
  }
]

Create Price List​

Create an instance of Price Lists | key: createPriceList

InputNotesExample
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⤓
Loading…

Create Purchase Order​

Create an instance of Purchase Orders. | key: createPurchaseOrder

InputNotesExample
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.

[
  {
    "ItemCode": "i001",
    "Quantity": "100",
    "TaxCode": "T1",
    "UnitPrice": "30"
  }
]

Create Record​

Create a new record in SAP Business One. | key: createRecord

InputNotesExample
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

InputNotesExample
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

InputNotesExample
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⤓
Loading…

Delete Item​

Delete an instance of Items with the specified id. | key: deleteItem

InputNotesExample
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⤓
Loading…

Delete Price List​

Delete an instance of Items with the specified id. | key: deletePriceList

InputNotesExample
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⤓
Loading…

Delete Record​

Delete an existing record in SAP Business One. | key: deleteRecord

InputNotesExample
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⤓
Loading…

Delete Warehouse​

Delete an instance of Warehouses with the specified id. | key: deleteWarehouse

InputNotesExample
Connection

The SAP Business One connection to use.

Warehouse Code

The unique code identifying the warehouse.

WH01
Example Payload for Delete Warehouse⤓
Loading…

Get Business Partner​

Retrieve all or some selected properties from an instance of BusinessPartners with the given id. | key: getBusinessPartner

InputNotesExample
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⤓
Loading…

Get Invoice​

Retrieve all or some selected properties from an instance of Warehouses with the given id. | key: getInvoice

InputNotesExample
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

InputNotesExample
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

InputNotesExample
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

InputNotesExample
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⤓
Loading…

Get Purchase Order​

Retrieve all or some selected properties from an instance of Purchase Orders with the given id. | key: getPurchaseOrder

InputNotesExample
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

InputNotesExample
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

InputNotesExample
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⤓
Loading…

Get Warehouse Location​

Retrieve all or some selected properties from an instance of Warehouse Location with the given id. | key: getWarehouseLocation

InputNotesExample
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⤓
Loading…

List Business Partners​

Retrieve a collection of Business Partners with all or some selected properties | key: listBusinessPartners

InputNotesExample
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⤓
Loading…

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

InputNotesExample
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

InputNotesExample
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

InputNotesExample
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

InputNotesExample
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⤓
Loading…

List Purchase Orders​

Retrieve a collection of Purchase Orders with all or some selected properties. | key: listPurchaseOrders

InputNotesExample
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

InputNotesExample
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

InputNotesExample
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⤓
Loading…

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

InputNotesExample
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⤓
Loading…

Raw Request​

Send raw HTTP request to the SAP Business One API | key: rawRequest

InputNotesExample
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 (https://server:port/b1s/v1 or v2).

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

InputNotesExample
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⤓
Loading…

Update Invoice​

Update an instance of Invoices. | key: updateInvoice

InputNotesExample
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⤓
Loading…

Update Item​

Update an instance of Items | key: updateItem

InputNotesExample
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⤓
Loading…

Update Order​

Update an instance of Orders. | key: updateOrder

InputNotesExample
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⤓
Loading…

Update Price List​

Update an instance of Price Lists. | key: updatePriceList

InputNotesExample
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⤓
Loading…

Update Purchase Order​

Update an instance of Purchase Orders. | key: updatePurchaseOrder

InputNotesExample
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⤓
Loading…

Update Record​

Update an existing record in SAP Business One. | key: updateRecord

InputNotesExample
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⤓
Loading…

Update Warehouse​

Update an instance of Warehouses. | key: updateWarehouse

InputNotesExample
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⤓
Loading…

Changelog​

2026-10-13​

Added batching and initial sync support to the New and Updated Records polling trigger:

  • Added opt-in batching to the New and Updated Records trigger, dispatching each changed record individually or in configured batches; enabling it changes the shape a downstream step receives
  • Added an optional Look-back Date input for performing an initial sync of records. The initial sync begins on the first recurrence and backfills every record modified on or after the specified date, seeding each once and ignoring the trigger's visibility filters; later recurrences are unaffected. Leave it empty to start from the first recurrence with no backfill

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.