Apply Options
Overview
With this integration point user will be able to augment a 'Partial provider pricing clause (PPPC)' and generate 'Draft provider pricing clause (DPPC)' into a pricing worksheet by applying pricing options to the pricing worksheet.
This integration also supports to add few parameters on to the DPPC that are not part of 'PPPC' by allowing to pass values. See Parameters section below
Please refer to the text Pricing Templates page in this Configuration Guide for a more elaborate description of the generation of draft provider pricing clauses using pricing options.
Pricing Options
Applying pricing options to a pricing worksheet generates a draft provider pricing clause one per each partial provider pricing clause linked to that specific pricing option applied.
-
Specifying the property value for "pricingWorkSheetCode" and 'pricingOptionCode' is mandatory, and it accepts entry of more than one 'pricingOptionCode'.
-
The partial provider pricing clauses as defined in the selected options are copied into the worksheet as draft provider pricing clause, augmented with specified parameters (see below).
Parameters
With this integration point user can also apply below parameters to DPPC and generate into the pricing worksheet:
-
Specifying these parameters is optional.
-
If the value for any parameter is specified then the PPPC of the selected pricing options above are augmented by copying those parameter values into the respective DPPC properties while the DPPC is generated.
-
Below are those parameter properties
-
Contract Reference
-
copied to 'draftProviderPricingClause.contractReferenceCode'
-
-
Individual Provider
-
copied to 'draftProviderPricingClause.individualProviderCode'
-
-
Individual Provider Definition
-
copied to 'draftProviderPricingClause.individualProviderDefinitionCode'
-
-
Organization Provider
-
copied to 'draftProviderPricingClause.organizationalProviderCode'
-
-
Organizational Provider Definition
-
copied to 'draftProviderPricingClause.organizationalProviderDefinitionCode'
-
-
Provider Group
-
copied to 'draftProviderPricingClause.providerGroup'
-
-
Product Category
-
copied to 'draftProviderPricingClause.productCategory'
-
The parameter 'Product Category' accepts entry of more than one product category. This multiplies the number of draft provider pricing clauses generated into the worksheet.
-
-
Condition
-
This parameter accepts more than one entry.
-
copied to 'draftProviderPricingClause.draftProviderPricingClauseDynLogicList'
-
-
Start Date
-
copied to 'draftProviderPricingClause.'
-
-
Generate DPPC
Integration Point
-
Process Type: Synchronous
-
End-point: The endpoint URL to 'applyOptions' on a pricing worksheet:
http://[hostName]:[portNumber]/[api-context-root]/pricingworksheets/applyoptions
Post Operation
A sample POST request payload will look like below.
Request Payload
{
"applyOptionList": [
{
"pricingWorkSheetCode": "",
"pricingOptionsList": [
{
"pricingOptionCode": "",
"groupingLabelOverride": "",
"pricingTemplateCode": "",
"pricingSectionDisplayName": ""
},
...
],
"contractReferenceCode": "",
"individualProviderCode": "",
"individualProviderDefinitionCode": "",
"organizationProviderCode": "",
"organizationProviderDefinitionCode": "",
"providerGroupCode": "",
"productCategoryList": [
{
"productCategoryCode": ""
},
{
"productCategoryCode": ""
}
],
"draftProviderPricingClauseDynLogicList": [
{
"draftProviderPricingClauseDynLogicCode": ""
},
{
"draftProviderPricingClauseDynLogicCode": ""
}
],
"startDate": ""
},
...
]
}
-
Executing a post on the end-point URL with the payload mentioned above:
-
All the values of the 'Partial provider pricing clause' properties are copied to the respective properties of 'Draft provider pricing clause'.
-
If the applied pricing option has no 'Partial provider pricing clause', then no 'Draft provider pricing clause' is generated.
-
-
The field "Code" of each generated draft provider pricing clause is set automatically (sequence number).
-
The value of 'pricingOptionCode' is copied to 'draftProviderPricingClause.createdFromOptionCode'
-
The value of 'pricingOptionDisplayName' of the respective 'pricingOptionCode' is copied to 'draftProviderPricingClause.createdFromOptionDisplayName'
-
The grouping label value on the DPPC:
-
If, 'groupingLabelOverride' is passed then, this value is copied on to 'draftProviderPricingClause.groupingLabel'.
-
else, 'pricingOptions.groupingLabel' is copied to 'draftProviderPricingClause.groupingLabel'.
-
-
-
If 'pricingTemplateCode' is passed then,
-
The value is copied to 'draftProviderPricingClause.createdFromTemplateCode'
-
else, left blank
-
-
-
If 'pricingSectionDisplayName' is passed then,
-
The value is copied to 'draftProviderPricingClause.createdFromSectionDisplayName'
-
else, left blank
-
-
-
The total count of DPPC’s on Pricing worksheet is also updated accordingly.
-
Response Message
This operation will provide HTTP status codes as defined in Response Messages.
-
Success
-
HTTP Status 200 (ok) is returned after the operation is completed successfully.
-
-
Failure
-
If an error occurs, the appropriate HTTP status code is returned. This way, the operation can be executed again after the reason for failure has been fixed.
-
The following operation specific error can occur:
-
Code | Sev | Message |
---|---|---|
PRI-IP-DPPC-011 |
Fatal |
Pricing option code {code} is unknown |
PRI-IP-DPPC-012 |
Fatal |
Pricing worksheet code {code} is unknown |
The response can also contain generic error messages that are not specific to this web service. Please refer to Response Messages section for more details.
Authorization
-
The applyOptions IP grant access restriction protects this integration point.
-
If the parent 'Pricing Worksheet', 'Pricing Option' and 'Pricing Template' is protected by additional access restrictions of type 'Pricing Construct' then you need the same access restriction to invoke Apply Options IP.