Symptom
When trying to update the delivery schedule of "Sales Scheduling Agreement" using the SOAP API "Delivery Schedule of Sales Scheduling Agreement - Receive, Update (B2B)", a "500 Internal Server Error" is thrown
Example endpoint URL: https://my-system-api.s4hana.ondemand.com/sap/bc/srt/scs/sap/schedgagrmtdlivschedule_in
Environment
SAP S/4HANA Cloud Public Edition
Cause
The Error "500 Internal Server Error" occurs because the system cannot perform its duplicate detection. As per the Delivery Schedule of Sales Scheduling Agreement - Receive, Update (B2B) | SAP Help Portal , to achieve ExactlyOnce processing, a unique message ID must be transferred with each call to the service to facilitate the detection of duplicate messages. When you call the service, the request URL must therefore include a query string that specifies a UUID (universally unique identifier) as the message ID. Otherwise the system cannot detect duplicate messages and throws the error "500 Internal Server Error"
Resolution
Pass the UUID as the message ID along with the endpoint. Use the following format to include your UUID as the message ID:
<your endpoint URL>?MessageID=<your UUID>
For generating UUID, you can use a UUID generator e.g. https://www.uuidgenerator.net/ or you can directly add {{$guid}} in the URL for testing.
See Also
- Delivery Schedule of Sales Scheduling Agreement - Receive, Update (B2B)
- 3388235 - How to create/update the delivery schedule of sales scheduling agreements using an API
Keywords
SOAP API, Delivery Schedule of Sales Scheduling Agreement - Receive, Update (B2B), 500 internal error, messageid, UUID, endpoint url, duplicate messages, update, delivery schedule, schedule line , KBA , SD-SLS-API-2CL , API (Public Cloud) , Problem
SAP Knowledge Base Article - Public