Applying a Promotion to a Quote or an Order
When you use the Siebel REST API to apply a promotion to a quote or an order, the Siebel application takes the bundle promotion definition ID and adds an instance of the promotion, along with its default components, to a quote or to an order. We can also use this API to associate an existing line item to an existing promotion instance.
The following request applies a specific promotion to a quote or an order:
URI: http://ServerName:port/siebel/v1.0/service/Workflow Process Manager/RunProcess
HTTP Method: POST
Content-Type: application/json
Authorization: Basic
- Request body:
{ "body": { "ProcessName": "ISS Promotion WS - ApplyProductPromotion - Order", "ProdPromId": "88-255DX", "PricingMode": "Y", "EligibilityMode": "1", "SiebelMessage": { "MessageId": "", "MessageType": "Integration Object", "IntObjectName": "PDS Order", "IntObjectFormat": "Siebel Hierarchical", "ListOfPDS Order": { "Header": { "Account": "R_Account", "Account Id": "88-1V9XIA", "Order Type": "Sales Order", "Order Number": "88-1X9C57" } } } } }
For a description of the request message associated with this API, see the following table.
Name | Description |
---|---|
Process Name |
One of the following processes is required:
|
ProdPromId |
Required. Promotion ID that is applied to the quote or order. |
PricingMode |
Optional. The default value is Y. If the value set to Y, then the pricing is calculated for all line items in the in-memory document. |
EligibilityMode |
Optional. Valid values are 0, 1, or 2.
|
Quantity |
Optional. The default value is 1. Quantity of the promotion to be applied. |
HeaderId |
Optional, depending on usage. However, this is required if SiebelMessage is not provided. Quote ID or Order ID. |
Sync |
Optional. The default value is N. If set to Y, then an order or a quote is created or updated in the database. |
ProdPromInstanceId |
Optional. Integration ID of the Promotion. If the promotion already exists in the document, and one more product needs to be added to the promotion instance, then this ID is passed. |
LineItemId |
Optional. Line item ID of the product to which the promotion should be applied. |
SiebelMessage |
Optional, depending on usage. However, this is required if HeaderId is not provided. PDS quote or PDS Order. |
Here are the response details for a successful request:
HTTP Code: 200
Content-Type: application/json
- Response body:
{ "Error Code": "", "Non Orderable Error": "", "Error Message": "", "SiebelMessage": { "IntObjectName": "PDS Order", "MessageType": "Integration Object", "Header": { "Order Number": "88-1X9C57", "Id": "88-1VAFOS", "Account Id": "88-1V9XIA", "Account": "R_Account", "Order Type": "Sales Order", "Line Item": [ { "Asset Integration Id": "88-1VAFOQ", "Name": "Millenium Max 1000 Package", "Product Id": "88-255DX", "Product Structure Type": "None" }, { "Asset Integration Id": "88-1VAFOW", "Name": "Wireless Service", "Product Id": "88-231H5", "Product Prom Id": "88-255DX", "Product Structure Type": "Customizable" } ] } } }