Symptom
You are creating a Sales Order via the web service ManageSalesOrderIn and are passing the Payment Terms in the element CashDiscountTerms. However, the Payment Terms from the payload are not taken over in the new created Sales Order but instead the Payment Terms from the Account Master Data are used.
Environment
SAP Business ByDesign
Reproducing the Issue
Example Payload for creating a Sales Order with the Payment Terms 1005 (60 days net):
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:glob="http://sap.com/xi/SAPGlobal20/Global" xmlns:glob1="http://sap.com/xi/AP/Globalization" xmlns:a00="http://sap.com/xi/AP/CustomerExtension/BYD/A0014">
<soap:Header/>
<soap:Body>
<glob:SalesOrderBundleMaintainRequest_sync>
<BasicMessageHeader></BasicMessageHeader>
<SalesOrder actionCode="04">
<AccountParty>
<PartyID>XYZ</PartyID>
</AccountParty>
<Item>
<ID>10</ID>
<ItemProduct>
<ProductInternalID>EFG</ProductInternalID>
</ItemProduct>
</Item>
<CashDiscountTerms>
<Code>1005</Code>
<PaymentBaselineDate>2019-09-30</PaymentBaselineDate>
</CashDiscountTerms>
</SalesOrder>
</glob:SalesOrderBundleMaintainRequest_sync>
</soap:Body>
</soap:Envelope>
Sale Order ABC has been created via this payload (ABC represents the Sales Order ID).
- Go to the Sales Orders work center.
- Select the Sales Orders view.
- Open the sales order ABC.
- In the General tab you can see that the Payment Terms are not 1005 (60 days net).
Cause
The Payment Terms can only be updated via a second call.
Resolution
You can update the Payment Terms via a second call e.g:
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:glob="http://sap.com/xi/SAPGlobal20/Global" xmlns:glob1="http://sap.com/xi/AP/Globalization" xmlns:a00="http://sap.com/xi/AP/CustomerExtension/BYD/A0014">
<soap:Header/>
<soap:Body>
<glob:SalesOrderBundleMaintainRequest_sync>
<BasicMessageHeader/>
<SalesOrder actionCode="04">
<ID>ABC</ID>
<CashDiscountTerms>
<Code>1005</Code>
</CashDiscountTerms>
</SalesOrder>
</glob:SalesOrderBundleMaintainRequest_sync>
</soap:Body>
</soap:Envelope>
The Sales Order ABC will then have the Payment Terms 1005 (60 days net).
See Also
[Enter your See Also here...]
Keywords
Web Service; Payment Terms; Cash Discount Terms; <CashDiscountTerms>; overwritten; , KBA , AP-SLO-SO , Sales Order , Problem