Deal Creation Request and Response - Attribute Value Pairs in the JSON Format

Note: We recommend you to refer the topicsDeal Creation Request in the JSON Format and Deal Creation Response in the JSON Format in parallel while understanding the below mentioned attributes. This will help you to understand how the attributes are structured in the JSON format.

Before calling the C1-DealCreationUpdateIWS business service through an inbound web service, you need to ensure that the deal creation request contains the following attributes:

Attribute Name Attribute Description Mandatory (Yes or No)
actionFlag Used to indicate that you want to create a deal for an entity (i.e. existing person, account, or prospect person) in the system. The valid value is:
  • ADD

Note: If you do not specify the value in this attribute, by default, the system considers it as an ADD action.
Yes
dealDetails Used to specify basic information about the deal. Yes
dealEntityDetails Used to specify basic information about the entity (i.e. existing person, account, or prospect person) for which you want to create a deal. Yes
personIdentifierType Used to indicate the identifier type using which the person is created in the system.
Note:

If you specify the personIdentifier attribute, you need to specify the personIdentifierType attribute.

If you specify the personIdentifier attribute and do not specify the personIdentifierType attribute, the system will throw an error message indicating that the person identifier type field is missing.

If you specify the personIdentifierType attribute, you need not specify the personId attribute.

Yes (Conditional)
Note: This data is required while creating a deal for an existing person i.e. when the value of the dealEntityType attribute is set to EPER.
personIdentifier Used to specify the value for the person identifier type.
Note:

If you specify the personIdentifierType attribute, you need to specify the personIdentifier attribute.

If you specify the personIdentifierType attribute and do not specify the personIdentifier attribute, the system will throw an error message indicating that the person identifier field is missing.

If you specify the personIdentifier attribute, you need not specify the personId attribute.

Yes (Conditional)
Note: This data is required while creating a deal for an existing person i.e. when the value of the dealEntityType attribute is set to EPER.
personId Used to specify the existing person for whom you want to create a deal in the system.
Note:

If you specify the personId attribute, you need not specify the personIdentifierType and the personIdentifier attributes.

If the personId attribute is not valid, the system will throw an error message indicating that the person ID is invalid.

Based on the specified value in the personId attribute, the system fetches the values of the person's division, accessGrp, customerSegment, and customerTier attributes.

Yes (Conditional)
Note: This data is required while creating a deal for an existing person i.e. when the value of the dealEntityType attribute is set to EPER.
accountIdentifierType Used to indicate the identifier type using which the account is created in the system.
Note:

If you specify the accountIdentifier attribute, you need to specify the accountIdentifierType attribute.

If you specify the accountIdentifier attribute and do not specify the accountIdentifierType attribute, the system will throw an error message indicating that the account identifier type field is missing.

If you specify the accountIdentifierType attribute, you need not specify the accountId attribute.

Yes (Conditional)
Note: This data is required while creating a deal for an existing account i.e. when the value of the dealEntityType attribute is set to EACC.
accountIdentifier Used to specify the value for the account identifier type.
Note:

If you specify the accountIdentifierType attribute, you need to specify the accountIdentifier attribute.

If you specify the accountIdentifierType attribute and do not specify the accountIdentifier attribute, the system will throw an error message indicating that the account identifier field is missing.

If you specify the accountIdentifier attribute, you need not specify the accountId attribute.

Yes (Conditional)
Note: This data is required while creating a deal for an existing account i.e. when the value of the dealEntityType attribute is set to EACC.
accountId Used to specify the existing account for which you want to create a deal in the system.
Note:

If you specify the accountId attribute, you need not specify the accountIdentifierType and the accountIdentifier attributes.

If the accountId attribute is not valid, the system will throw an error message indicating that the account ID is invalid.

Based on the specified value in the accountId attribute, the system fetches the account's main person ID and further fetches the values of the division, accessGrp, customerSegment, and customerTier attributes.

Yes (Conditional)
Note: This data is required while creating a deal for an existing account i.e. when the value of the dealEntityType attribute is set to EACC.
prsPerIdentifierType Used to indicate the identifier type using which the prospect person is created in the system.
Note:

If you specify the prsPerIdentifier attribute, you need to specify the prsPerIdentifierType attribute.

If you specify the prsPerIdentifier attribute and do not specify the prsPerIdentifierType attribute, the system will throw an error message indicating that the prospect person identifier type field is missing.

If you specify the prsPerIdentifierType attribute, you need not specify the prospectPersonId attribute.

Yes (Conditional)
Note: This data is required while creating a deal for a prospect person i.e. when the value of the dealEntityType attribute is set to PRSP.
prsPerIdentifier Used to specify the value for the prospect person identifier type.
Note:

If you specify the prsPerIdentifierType attribute, you need to specify the prsPerIdentifier attribute.

If you specify the prsPerIdentifierType attribute and do not specify the prsPerIdentifier attribute, the system will throw an error message indicating that the prospect person identifier field is missing.

If you specify the prsPerIdentifier attribute, you need not specify the prospectPersonId attribute.

Yes (Conditional)
Note: This data is required while creating a deal for a prospect person i.e. when the value of the dealEntityType attribute is set to PRSP.
prospectPersonId Used to specify the prospect person for whom you want to create a deal in the system.
Note:

If you specify the prospectPersonId attribute, you need not specify the prsPerIdentifierType and the prsPerIdentifier attributes.

If the prospectPersonId attribute is not valid, the system will throw an error message indicating that the prospect person ID is invalid.

Based on the specified value in the prospectPersonId attribute, the system fetches the values of prospect person's division, accessGrp, customerSegment, and customerTier attributes.

Yes (Conditional)
Note: This data is required while creating a deal for a prospect person i.e. when the value of the dealEntityType attribute is set to PRSP.
division Used to indicate the division to which the entity (i.e. existing person, account, or prospect person) belongs.
Note:

You must specify a division which is already defined in the system.

If you do not specify the division attribute while specifying the identifier type and identifier of the entity (i.e. existing customer, account, or prospect customer), the system throws an error message indicating that the division is mandatory when identifier type and identifier is provided.

Yes (Conditional)
Note: This data is required while creating a deal for an entity (i.e. existing customer, account, or prospect customer) by specifying the entity's identifier type and identifier.
dealIdentifier Used to specify the primary identifier using which you want to create the deal in the system.
Note:

You should ensure that every deal has a unique deal identifier.

An error message appears when you save a deal with a deal identifier which is already used while creating a deal.

Yes
dealEntityType Used to indicate the type of entity for which you want to create a deal. The valid values are:
  • EPER - Used to indicate that you want to create deal for an existing person.
    Note:

    If you specify the dealEntityType attribute as EPER, you must specify either the personId attribute or the personIdentifierType, personIdentifier, and division attributes.

    If you do not specify the personId attribute, the system will validate the combination of the values provided in the personIdentifierType, personIdentifier, and division attributes. If the combination is valid, the system will derive the person ID and continue the deal creation process. Whereas, if the combination is invalid, the system will throw an error message indicating that the person is not found.

  • EACC - Used to indicate that you want to create deal for an existing account.
    Note:

    If you specify the dealEntityType attribute as EACC, you must specify either the accountId attribute or the accountIdentifierType, accountIdentifier, and division attributes.

    If you do not specify the accountId attribute, the system will validate the combination of the values provided in the accountIdentifierType, accountIdentifier, and division attributes. If the combination is valid, the system will derive the account's main person ID and continue the deal creation process. Whereas, if the combination is invalid, the system will throw an error message indicating that the account is not found.

  • PRSP - Used to indicate that you want to create deal for a prospect person.
    Note:

    If you specify the dealEntityType attribute as PRSP, you must specify either the prospectPersonId attribute or the prsPerIdentifierType, prsPerIdentifier, and division attributes.

    If you do not specify the prospectPersonId attribute, the system will validate the combination of the values provided in the prsPerIdentifierType, prsPerIdentifier, and division attributes. If the combination is valid, the system will derive the prospect person ID and continue the deal creation process. Whereas, if the combination is invalid, the system will throw an error message indicating that the prospect person is not found.

Note: If you do not specify the value of the dealEntityType attribute, the system will throw an error message indicating that the Deal Entity Type Flag field is missing.
Yes
contractedDealFlag Used to indicate that the change in the price item pricing from the price list does not affect the price item pricing offered in the deal created for the entity (i.e. existing person, account, or prospect person). The valid values are:
  • true

  • false

Yes
currency Used to specify the currency in which you want to calculate the deal level, division level, or product level financial summary and profitability of the deal.
Note: You can specify only those currencies which are already defined in the system.
Yes
dealTypeCode Used to specify the deal type using which you want to create the deal in the system.
Note:

If you specify a value in the dealTypeCode attribute, the customer segment, customer tier, and division of the specified deal type is validated against the customerSegment, customerTier, and division attributes specified in the deal creation request using the GETDEALTYPE business service.

If the deal type is validated successfully, the system will continue the deal creation process. Whereas, if the deal type is invalid, the system will throw an error message indicating that the deal type is invalid.

Yes
startDate Used to specify the date from when the deal is effective for the entity (i.e. existing person, account, or prospect person).
Note: This date is also used as the effective start date for the proposed price list assignment and start date for the proposed product enrollment.
Yes
endDate Used to specify the date till when the deal is effective for the entity (i.e. existing person, account, or prospect person). No
simulationTypeFlag Used to indicate the simulation type using which you want to analyze the cost, revenue, and profitability of the deal. The valid values are:
  • CUST

  • ACCT

  • DEAL

Yes
reviewFrequency Used to specify the timely monitoring of the deal usage as per the commitments made by the customer. The valid values are:
  • 6 - Used to indicate that you want to monitor the deal usage biannually

  • 12 - Used to indicate that you want to monitor the deal usage annually

  • 24 - Used to indicate that you want to monitor the deal usage in every two years

No
dealDescription Used to specify the description for the deal. No
dealVersionDescription Used to specify the description for the deal version. No
dealFrequency Used to indicate the duration in which you want to simulate the deal for calculating the financial summary and profitability of the deal. The valid values are:
  • 1 - Used to indicate that you want to simulate the deal every month

  • 3 - Used to indicate that you want to simulate the deal quarterly

  • 6 - Used to indicate that you want to simulate the deal biannually

  • 12 - Used to indicate that you want to simulate the deal annually

Yes
skipReferenceFlag Used to specify whether you want to use a deal which is already created in the system as a reference for copying the pricing and commitments in the deal or not. The valid values are:
  • true

  • false

Note:

If you do not specify a value in the skipReferenceFlag attribute, by default, the system considers it as false.

If you specify the value in the skipReferenceFlag attribute as false, you need to specify the reference deal details. The system will then copy the reference deal details using the C1-ReferePriceVolumeAdd business service.

No
priceSelectionDate Used to specify the date from when the price lists, pricing assignments, and product enrollments are effective for simulation. Yes
usagePeriod Used to indicate the period for which you want to aggregate the deal data to determine the scope of the deal. The valid values are:
  • 1 - Used to indicate that you want to aggregate the deal data every month

  • 3 - Used to indicate that you want to aggregate the deal data quarterly

  • 6 - Used to indicate that you want to aggregate the deal data biannually

  • 12 - Used to indicate that you want to aggregate the deal data annually

Yes
includeHierarchyFlag Used to indicate whether you want to include the child persons, grandchild persons, and their accounts in the customer hierarchy while creating a deal. The valid values are:
  • true

  • false

Note:

If you do not specify a value in the includeHierarchyFlag attribute, by default, the system considers it as false.

You can specify the value in the includeHierarchyFlag attribute as true only when the dealEntityType attribute is set to EPER and the simulationTypeFlag attribute is set to CUST.

You cannot specify the value in the includeHierarchyFlag as false when the value in the dealEntityType attribute is set to PRSP and the simulationTypeFlag attribute is set to CUST. In such case, the system will throw an error message indicating that you must set the include hierarchy flag to true when deal entity type is PRSP and simulation type is CUST.

Yes (Conditional)
Note: This data is required while specifying the deal details to create a deal for an existing or prospect person.
templateFlag Use to indicate whether you want the deal to be used as a template while searching references for other deals. The valid values are:
  • true

  • false

Note:

Users who belong to the user group which has the Change access mode provided for the C1-DEALTEMPLATE application service can create the deal templates in the system.

If you specify the value in the templateFlag attribute as true and you do not belong to the user group which has the Change access mode provided for the C1-DEALTEMPLATE application service, the system will throw an error message indicating that you do not have security rights to create a deal template.

No
templateReferenceDetails Used to specify the template deal details which you want to use for creating a deal for the entity (i.e. existing person, account, or prospect person).
Note: Template deal information such as, Deal type, Price Selection Date, End Date, Simulation Type, Currency, Include Hierarchy, Contracted deal, Review Frequency, Deal Frequency, Skip Reference, Usage Period, Deal Description and Deal Version Description are copied when you use a template deal as a reference to create a deal for an entity (i.e. existing person, account, or prospect person).
No
templateDealId Used to specify the template deal which you want to use for creating a deal for the entity (i.e. existing person, account, or prospect person).
Note:

If you specify the templateDealId attribute, you need not specify the templateDealIdentifier and templateModelId attributes.

If the specified template deal has multiple versions, the system will throw an error message indicating that multiple deal versions exist for the deal ID in the system. In such case, you need to specify the templateModelId attribute of the template deal instead of the templateDealId attribute.

If the value specified in the templateDealId attribute is invalid, the system will throw an error message indicating that the deal template is invalid.

Yes (Conditional)
Note: This data is required while specifying the template deal as a reference to create a deal for an entity (i.e. existing person, account, or prospect person).
templateDealIdentifier Used to specify the primary identifier using which the template deal is created in the system.
Note:

If you specify the templateDealIdentifier attribute, you need not specify the templateDealId and templateModelId attributes.

If the specified template deal has multiple versions, the system will throw an error message indicating that multiple deal versions exist for the deal identifier in the system. In such case, you need to specify the templateModelId attribute of the template deal instead of the templateDealIdentifier attribute.

If the value specified in the templateDealIdentifier attribute is invalid, the system will throw an error message indicating that the deal template is invalid.

Yes (Conditional)
Note: This data is required while specifying the template deal as a reference to create a deal for an entity (i.e. existing person, account, or prospect person).
templateModelId Used to specify the deal version which you want to use as a template for creating a deal for the entity (i.e. existing person, account, or prospect person).
Note:

If you specify the templateModelId attribute, you need not specify the templateDealId and templateDealIdentifier attributes.

If the value specified in the templateModelId attribute is invalid, the system will throw an error message indicating that the deal template is invalid.

Yes (Conditional)
Note: This data is required while specifying the template deal as a reference to create a deal for an entity (i.e. existing person, account, or prospect person).
copyBasicDetailsFlag Used to indicate whether you want to copy the basic details from the template deal to the deal which you want to create for the entity (i.e. existing person, account, or prospect person). The valid values are:
  • true

  • false

Note:

If you specify the values in the copyPricingFlag and copyUsageFlag attributes as false, you need to specify the value in the copyBasicDetailsFlag as true.

Details such as, Deal Information, Deal Products, Deal Terms and Conditions and Deal Characteristics are copied from the template deal when you specify the copyBasicDetailsFlag as true.

The Deal Information copied from the template deal gets overridden by the Deal Information specified by the user while creating a deal through the inbound web service.

Yes (Conditional)
Note: This data is required while specifying the template deal as a reference to create a deal for an entity (i.e. existing person, account, or prospect person).
copyPricingFlag Used to indicate whether you want to copy the price list assignments and price assignments from the template deal to the deal which you want to create for the entity (i.e. existing person, account, or prospect person). The valid values are:
  • true

  • false

Note: If you specify the values in the copyBasicDetailsFlag and copyUsageFlag attributes as false, you need to specify the value in the copyPricingFlag as true.
Yes (Conditional)
Note: This data is required while specifying the template deal as a reference to create a deal for an entity (i.e. existing person, account, or prospect person).
copyUsageFlag Used to indicate whether you want to copy commitments from the SQI-based billable charges from the template deal to the deal which you want to create for the entity (i.e. existing person, account, or prospect person). The valid values are:
  • true

  • false

Note: If you specify the values in the copyBasicDetailsFlag and copyPricingFlag attributes as false, you need to specify the value in the copyUsageFlag as true.
Yes (Conditional)
Note: This data is required while specifying the template deal as a reference to create a deal for an entity (i.e. existing person, account, or prospect person).
dealCharacteristics Used to specify a list of characteristics for the deal.
Note: If you create a deal using a template deal as a reference, the characteristics specified in the dealCharacteristics attribute will be added with the template deal characteristics.
No
characteristicType Used to indicate the characteristic type.
Note:

You can specify only those characteristic types where the characteristic entity is set to Deal.

If the Characteristic Type of the template deal matches with the value specified in the characteristicType attribute, the system will override the template deal Characteristic Type.

Yes (Conditional)
Note: This data is required while specifying a characteristic for the deal.
effectiveDate Used to specify the date from when the characteristic is effective for the deal. Yes (Conditional)
Note: This data is required while specifying a characteristic for the deal.
characteristicValue Used to specify the value for the characteristic type. Yes (Conditional)
Note: This data is required while specifying a characteristic for the deal.
dealTermsAndConditionsDetails Used to specify a list of terms and conditions which you want to associate with the deal.
Note: If you create a deal using a template deal as a reference, the deal terms and conditions specified in the dealTermsAndConditionsDetails attribute will be added with the template deal terms and conditions.
No
termsAndConditionsList Used to specify the terms and conditions of the deal. No
description Used to specify the description of the terms and conditions.
Note: If the value specified in the description attribute is not valid, the system will throw an error message indicating that the terms and conditions is invalid.
Yes (Conditional)
Note: This data is required while associating terms and conditions with a deal.
termsAndCondition Used to specify the terms and conditions which you want to associate with the deal.
Note: If the value specified in the termsAndCondition attribute is not valid, the system will throw an error message indicating that the terms and conditions is invalid.
Yes (Conditional)
Note: This data is required while associating terms and conditions with a deal.
termsAndConditionText Used to specify additional information about the terms and conditions. No
adhocTermsAndCondition Used to specify the adhoc terms and conditions which you want to associate with the deal. No
productDetailsList Used to recommend a list of products for the deal.
Note: If you create a deal using a template deal as a reference, the deal products specified in the productDetailsList attribute will be added with the template deal recommended products.
No
productCode Used to specify the product which you want to recommend for the deal. Yes (Conditional)
Note: This data is required while recommending a product for the deal.
referenceDetails Used to specify the details of the reference deal using which you want to create the deal for the entity (i.e. existing person, account, or prospect person). Yes (Conditional)
Note: This data is required while specifying the reference deal to create a deal for an entity (i.e. existing person, account, or prospect person).
referenceTypeFlg Used to indicate the type of the reference deal using which you want to create the deal for the entity (i.e. existing person, account, or prospect person). The valid values are:
  • RPER - Used to indicate that you want to use the deal of a person as a reference to create the deal for the existing person or the prospect person.
    Note:

    If you specify the skipReferenceFlag attribute as false and the dealEntityType attribute as EPER or PRSP, you need to ensure that the referenceTypeFlg attribute is set to either RPER or RDEL.

    If you specify the referenceTypeFlg attribute as RPER, you must specify the values in either the referPersonId attribute or refPersonIdentifierType, refPersonIdentifier, and division attributes.

  • RACC - Used to indicate that you want to use the deal of an account as a reference to create the deal for the existing account.
    Note:

    If you specify the skipReferenceFlag attribute as false and the dealEntityType attribute as EACC, you need to ensure that the referenceTypeFlg attribute is set to either RACC or RDEL.

    If you specify the referenceTypeFlg attribute as RACC, you must specify the values in either the referAccountId attribute or refAccountIdentifierType, refAccountIdentifier, and division attributes.

  • RDEL - Used to indicate that you want to use an existing deal as a reference to create the deal for the existing person, account or prospect person.
    Note: If you specify the referenceTypeFlg attribute as RDEL, you must specify the values in either the referenceDealId, referDealIdentifier, or referenceModelId attribute.
Note: If you do not specify the value of the referenceTypeFlg attribute and the skipReferenceFlag is set as false, the system will throw an error message indicating that the Reference Type Flag field is missing.
Yes (Conditional)
Note: This data is required while specifying the reference deal to create a deal for an entity (i.e. existing person, account, or prospect person).
refPersonIdentifierType Used to specify the identifier type of the person using which the reference deal is created in the system.
Note:

If you specify the refPersonIdentifier attribute, you need to specify the refPersonIdentifierType attribute.

If you specify the refPersonIdentifier attribute and do not specify the refPersonIdentifierType attribute, the system will throw an error message indicating that the person identifier type in the reference section is missing.

If you specify the refPersonIdentifierType attribute, you need not specify the referPersonId attribute.

Yes (Conditional)
Note: This data is required while specifying the reference deal to create a deal for an existing or prospect person.
refPersonIdentifier Used to specify the value of the reference person identifier type.
Note:

If you specify the refPersonIdentifierType attribute, you need to specify the refPersonIdentifier attribute.

If you specify the refPersonIdentifierType attribute and do not specify the refPersonIdentifier attribute, the system will throw an error message indicating that the person identifier in the reference section is missing.

If you specify the refPersonIdentifier attribute, you need not specify the referPersonId attribute.

Yes (Conditional)
Note: This data is required while specifying the reference deal to create a deal for an existing or prospect person.
referPersonId Used to specify the person for whom the reference deal is created.
Note:

If you specify the referPersonId attribute, you need not specify the refPersonIdentifierType and the refPersonIdentifier attributes.

If the referPersonId attribute is not valid, the system will throw an error message indicating that the referred person is invalid.

Based on the specified value in the referPersonId attribute, the system fetches the reference deal details for the deal creation process.

Yes (Conditional)
Note: This data is required while specifying the reference deal to create a deal for an existing or prospect person.
refAccountIdentifierType Used to specify the identifier type of the account using which the reference deal is created in the system.
Note:

If you specify the refAccountIdentifier attribute, you need to specify the refAccountIdentifierType attribute.

If you specify the refAccountIdentifier attribute and do not specify the refAccountIdentifierType attribute, the system will throw an error message indicating that the account identifier type in the reference section is missing.

If you specify the refAccountIdentifierType attribute, you need not specify the referAccountId attribute.

Yes (Conditional)
Note: This data is required while specifying the reference deal to create a deal for an existing account.
refAccountIdentifier Used to specify the value of the reference account identifier type.
Note:

If you specify the refAccountIdentifierType attribute, you need to specify the refAccountIdentifier attribute.

If you specify the refAccountIdentifierType attribute and do not specify the refAccountIdentifier attribute, the system will throw an error message indicating that the account identifier in the reference section is missing.

If you specify the refAccountIdentifier attribute, you need not specify the referAccountId attribute.

Yes (Conditional)
Note: This data is required while specifying the reference deal to create a deal for an existing account.
referAccountId Used to specify the account for which the reference deal is created.
Note:

If you specify the referAccountId attribute, you need not specify the refAccountIdentifierType and the refAccountIdentifier attributes.

If the referAccountId attribute is not valid, the system will throw an error message indicating that the referred account is invalid.

Based on the specified value in the referAccountId attribute, the system fetches the reference deal details for the deal creation process.

Yes (Conditional)
Note: This data is required while specifying the reference deal to create a deal for an existing account.
referDealIdentifier Used to specify the primary identifier using which the reference deal is created in the system.
Note:

If you specify the referDealIdentifier attribute, you need not specify the referenceDealId and referenceModelId attributes.

You need to ensure that the Simulation Type of the reference deal matches with the value specified in the simulationTypeFlag attribute of the deal which you are creating. If the value does not match, the system will throw an error message indicating that the system is unable to derive a reference deal using the given deal identifier.

Also, you cannot use a deal whose status is Draft, Discarded, Hierarchy Creation Deferred, and Inactive as a reference for creating a deal. If the status of the reference deal is invalid, the system will throw an error message indicating that the system is unable to derive a reference deal using the given deal identifier.

If the specified reference deal has multiple versions, the system will throw an error message indicating that multiple deal versions exist for the deal in the system. In such case, you need to specify the referenceModelId attribute of the reference deal instead of the referDealIdentifier attribute.

Yes (Conditional)
Note: This data is required while specifying the reference deal to create a deal for an existing person, account, or a prospect person.
referenceDealId Used to specify the deal which you want to use as a reference.
Note:

If you specify the referenceDealId attribute, you need not specify the referDealIdentifier and referenceModelId attributes.

You need to ensure that the Simulation Type of the reference deal matches with the value specified in the simulationTypeFlag attribute of the deal which you are creating. If the value does not match, the system will throw an error message indicating that the system is unable to derive a reference deal using the given deal ID.

Also, you cannot use a deal whose status is Draft, Discarded, Hierarchy Creation Deferred, and Inactive as a reference for creating a deal. If the status of the reference deal is invalid, the system will throw an error message indicating that the system is unable to derive a reference deal using the given deal ID.

If the specified reference deal has multiple versions, the system will throw an error message indicating that multiple deal versions exist for the deal in the system. In such case, you need to specify the referenceModelId attribute of the reference deal instead of the referenceDealId attribute.

Yes (Conditional)
Note: This data is required while specifying the reference deal to create a deal for an existing person, account, or a prospect person.
referenceModelId Used to specify the deal version which you want to use as a reference.
Note:

You need to specify the referenceModelId if the reference deal has multiple deal versions.

If you specify the referenceModelId attribute, you need not specify the referDealIdentifier and referenceDealId attributes.

You need to ensure that the Simulation Type of the reference deal version matches with the value specified in the simulationTypeFlag attribute of the deal which you are creating. If the value does not match, the system will throw an error message indicating that the system is unable to derive a reference deal using the given deal version ID.

Also, you cannot use a deal version whose status is Draft, Discarded, Hierarchy Creation Deferred, and Inactive as a reference for creating a deal. If the status of the reference deal version is invalid, the system will throw an error message indicating that the system is unable to derive a reference deal using the given deal version ID.

Yes (Conditional)
Note: This data is required while specifying the reference deal to create a deal for an existing person, account, or a prospect person.
referUsageSw Used to indicate whether you want to copy commitments from the SQI-based billable charges of the reference deal. The valid values are:
  • true

  • false

Note:

If you do not specify a value in the referUsageSw attribute, by default, the system considers it as false.

You should specify values in either referUsageSw or referPriceSw attribute or both.

Yes (Conditional)
Note: This data is required while specifying the reference deal to create a deal for an existing person, account, or a prospect person.
referPriceSw Used to indicate whether you want to copy the price list assignments and price assignments of the reference deal. The valid values are:
  • true

  • false

Note:

If you do not specify a value in the referPriceSw attribute, by default, the system considers it as false.

You should specify values in either referUsageSw or referPriceSw attribute or both.

Yes (Conditional)
Note: This data is required while specifying the reference deal to create a deal for an existing person, account, or a prospect person.
includeChildHierarchy Used to indicate whether you want to include the child persons, grandchild persons, and their accounts of the reference deal while creating the deal for an existing or prospect person. The valid values are:
  • true

  • false

Note:

By default, the system considers all child and grandchild persons and their accounts in the customer hierarchy while specifying a reference deal for an existing person irrespective of the values provided in the includeChildHierarchy attribute.

Yes (Conditional)
Note: This data is required while specifying the reference deal to create a deal for an existing person.
division Used to specify the division to which the reference person belongs. Yes (Conditional)
Note: This data is required while creating a deal for an entity (i.e. existing customer, account, or prospect customer) by specifying the reference deal identifier type and identifier.

Once the deal is created, all the details of deal are listed in the above mentioned attributes along with the following attributes:

Attribute Name Attribute Description
dealResponse Displays whether the deal creation request is successfully processed or not.
message Displays the message generated for the deal response.
dealInformation Displays the concatenated string of information about the deal separated by a comma (,).
dealId Displays the identification value of the deal.
modelId Displays the identification value of the deal version.
customerSegment Indicates the business component to which the entity (i.e. existing person, account, or prospect person) belongs.
customerTier Indicates the customer tier of the customer segment to which the entity (i.e. existing person, account, or prospect person) belongs.
division Indicates the division to which the entity (i.e. existing person, account, or prospect person) belongs.
accessGrp Indicate the user group who can view and edit the details of the entity (i.e. existing person, account, or prospect person).
dealEntityId Displays the entity (i.e. existing person, account, or prospect person) for which the deal is created.
createdDate Displays the date when the deal is created in the system.
status Displays the current status of the deal.
dealVersionStatus Displays the current status of the deal version.

Related Topics

For more information on... See...
Sample deal creation request and response in the JSON format Sample Deal Creation Request and Response in the JSON Format