SAP Business ByDesign Supply Chain API
Manage inbound and outbound deliveries, goods receipts, goods issues, and production orders.
Manage inbound and outbound deliveries, goods receipts, goods issues, and production orders.
openapi: 3.0.3
info:
title: SAP Business ByDesign OData Analytics Supply Chain API
description: OData v2 REST API for SAP Business ByDesign — a cloud ERP solution for midmarket companies. Provides access to business objects and analytics across financials, CRM, procurement, supply chain, project management, and HR. Supports CRUD operations and custom OData services via the /sap/byd/odata/cust/v1/ namespace, plus pre-built analytics services via /sap/byd/odata/{service_name}.svc/.
version: 1.0.0
contact:
name: SAP Support
url: https://support.sap.com
externalDocs:
description: SAP Business ByDesign OData API Examples
url: https://community.sap.com/t5/enterprise-resource-planning-blog-posts-by-sap/sap-business-bydesign-odata-api-examples/ba-p/13400614
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0
servers:
- url: https://{tenant}.bydesign.cloud.sap
description: SAP Business ByDesign tenant
variables:
tenant:
default: my-tenant
description: Your SAP Business ByDesign tenant hostname
security:
- basicAuth: []
- oAuth2: []
tags:
- name: Supply Chain
description: Manage inbound and outbound deliveries, goods receipts, goods issues, and production orders.
paths:
/sap/byd/odata/cust/v1/khoutbounddelivery/OutboundDeliveryCollection:
get:
summary: Query outbound deliveries
description: Query outbound delivery records.
operationId: queryOutboundDeliveries
tags:
- Supply Chain
parameters:
- $ref: '#/components/parameters/FilterParam'
- $ref: '#/components/parameters/SelectParam'
- $ref: '#/components/parameters/ExpandParam'
- $ref: '#/components/parameters/TopParam'
- $ref: '#/components/parameters/SkipParam'
- $ref: '#/components/parameters/FormatParam'
responses:
'200':
description: Collection of outbound delivery records.
content:
application/json:
schema:
type: object
properties:
d:
type: object
properties:
results:
type: array
items:
$ref: '#/components/schemas/OutboundDelivery'
'401':
$ref: '#/components/responses/Unauthorized'
/sap/byd/odata/cust/v1/khoutbounddelivery/Release:
post:
summary: Release outbound delivery
description: Releases an outbound delivery for picking and goods issue processing.
operationId: releaseOutboundDelivery
tags:
- Supply Chain
parameters:
- $ref: '#/components/parameters/XCSRFTokenHeader'
- name: ObjectID
in: query
required: true
schema:
type: string
responses:
'200':
description: Outbound delivery released.
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
/sap/byd/odata/cust/v1/khoutbounddeliveryrequest/ItemPostGoodsIssue:
post:
summary: Post goods issue
description: Posts a goods issue for an outbound delivery request item, reducing inventory and triggering logistics and financial postings.
operationId: postGoodsIssue
tags:
- Supply Chain
parameters:
- $ref: '#/components/parameters/XCSRFTokenHeader'
- name: ObjectID
in: query
required: true
schema:
type: string
responses:
'200':
description: Goods issue posted.
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
/sap/byd/odata/cust/v1/khinbounddelivery/InboundDeliveryCollection:
get:
summary: Query inbound deliveries
description: Query inbound delivery and customer return notification records.
operationId: queryInboundDeliveries
tags:
- Supply Chain
parameters:
- $ref: '#/components/parameters/FilterParam'
- $ref: '#/components/parameters/SelectParam'
- $ref: '#/components/parameters/TopParam'
- $ref: '#/components/parameters/SkipParam'
- $ref: '#/components/parameters/FormatParam'
responses:
'200':
description: Collection of inbound delivery records.
content:
application/json:
schema:
type: object
properties:
d:
type: object
properties:
results:
type: array
items:
$ref: '#/components/schemas/InboundDelivery'
'401':
$ref: '#/components/responses/Unauthorized'
post:
summary: Create inbound delivery / customer return notification
description: Creates a new inbound delivery or customer return notification record.
operationId: createInboundDelivery
tags:
- Supply Chain
parameters:
- $ref: '#/components/parameters/XCSRFTokenHeader'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/InboundDeliveryCreate'
responses:
'201':
description: Inbound delivery created.
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
/sap/byd/odata/cust/v1/khinbounddelivery/PostGoodsReceipt:
post:
summary: Post goods receipt
description: Posts a goods receipt for an inbound delivery, increasing inventory and triggering financial postings.
operationId: postGoodsReceipt
tags:
- Supply Chain
parameters:
- $ref: '#/components/parameters/XCSRFTokenHeader'
- name: ObjectID
in: query
required: true
schema:
type: string
responses:
'200':
description: Goods receipt posted.
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
components:
schemas:
OutboundDelivery:
type: object
description: SAP Business ByDesign outbound delivery.
properties:
ObjectID:
type: string
ID:
type: string
ShipToPartyID:
type: string
StatusCode:
type: string
PlannedShippingDate:
type: string
format: date
InboundDeliveryCreate:
type: object
properties:
SupplierID:
type: string
PlannedDeliveryDate:
type: string
format: date
ODataError:
type: object
properties:
error:
type: object
properties:
code:
type: string
message:
type: object
properties:
lang:
type: string
value:
type: string
InboundDelivery:
type: object
description: SAP Business ByDesign inbound delivery or customer return notification.
properties:
ObjectID:
type: string
ID:
type: string
SupplierID:
type: string
StatusCode:
type: string
PlannedDeliveryDate:
type: string
format: date
parameters:
XCSRFTokenHeader:
name: x-csrf-token
in: header
required: true
description: 'CSRF token obtained from a prior GET request with x-csrf-token: Fetch.'
schema:
type: string
FormatParam:
name: $format
in: query
required: false
description: Response format. Use 'json' for JSON output.
schema:
type: string
enum:
- json
- xml
default: json
SelectParam:
name: $select
in: query
required: false
description: Comma-separated list of properties to include in the response.
schema:
type: string
TopParam:
name: $top
in: query
required: false
description: Maximum number of records to return.
schema:
type: integer
minimum: 1
maximum: 1000
default: 20
ExpandParam:
name: $expand
in: query
required: false
description: Comma-separated navigation properties to expand inline.
schema:
type: string
FilterParam:
name: $filter
in: query
required: false
description: OData filter expression (e.g., Status eq 'Released' and PostingDate ge datetime'2024-01-01T00:00:00').
schema:
type: string
SkipParam:
name: $skip
in: query
required: false
description: Number of records to skip for pagination.
schema:
type: integer
minimum: 0
default: 0
responses:
Unauthorized:
description: Unauthorized — invalid or missing credentials.
content:
application/json:
schema:
$ref: '#/components/schemas/ODataError'
BadRequest:
description: Bad request — invalid OData query parameters or request body.
content:
application/json:
schema:
$ref: '#/components/schemas/ODataError'
securitySchemes:
basicAuth:
type: http
scheme: basic
description: HTTP Basic Authentication using SAP Business ByDesign user credentials.
oAuth2:
type: oauth2
description: OAuth 2.0 authentication for SAP Business ByDesign.
flows:
clientCredentials:
tokenUrl: https://{tenant}.bydesign.cloud.sap/sap/bc/sec/oauth2/token
scopes: {}