Loading
保險
InsContractServiceStd:createUpdateContract

InsContractServiceStd:createUpdateContract

使用此服務為指定的報價建立或更新契約。

備註
備註 必須針對「契約」實體的 Name、SourceQuote、SourceOpportunity 和 Pricebook 欄位啟用「欄位級安全性」。

類別:InsContractServiceStd​​

方法:createUpdateContract

運作方式

  1. 此服務會在報價的產品 JSON 中尋找 inputKey 值,其中包含 productConfigurationDetail 地圖、additionalFields、​QuoteId 和 AccountId​​。

  2. ​productConfigurationDetail 包含指定「報價」的報價條列項目資料,服務會用來建立契約群組計畫。

  3. ​​quoteId 是服務建立契約的報價識別碼。AccountId​​ 是連結至契約的帳戶識別碼。

  4. 服務會根據 QuoteId、AccountId 和 additionalFields 建立「契約」並填入其欄位。服務會根據此「契約」建立「保險契約」,並使用 additionalFields 資料填入其欄位。

  5. 如果已指定 contractId,則服務會更新契約。

  6. 如果未指定 contractId,則服務會建立新的 contractId。

遠端選項

選項

描述

contractId

選擇性

契約的識別碼。

pricebook

選擇性

價目手冊的名稱。

inputJson

必要。

要建立之契約和契約群組計畫的輸入 JSON。它有 productConfigurationDetail、additionalFields、AccountId 和 QuoteId。

服務行為

瞭解不同的輸入如何影響服務輸出。

輸入

輸出

inputJson否contractId 服務不會建立契約。
否 contractId 和 inputJson 服務會建立新的「契約」、「保險契約」和「契約群組計畫」。
contractId 且不 inputJson 服務不會更新契約。
contractId 和 inputJson 服務會更新現有的「契約」、「保險契約」和「契約群組計畫」。

輸入 JSON

此範例顯示新的契約輸入 JSON,其中 contractJson 是輸入索引鍵,而 productConfigurationDetail 包含產品 JSON:

{
    "productConfigurationDetail": {
        "records": [
     {
          "displaySequence": 0,
          "currencySymbol": "$",
          "currencyCode": "USD",
          "Id": "0QLRO0000009kbn4AA",
          "productId": "01tRO000000QnqrYAC",
          "Product2Id": "01tRO000000QnqrYAC",
          "LineNumber": "00000019",
          "CreatedDate": "2022-04-14T08:32:35.000+0000",
          "QuoteId": "0Q0RO0000000vtw0AA",
          "Price": 1,
          "UnitPrice": 1,
          "vlocityins6__RecordTypeName__c": "Product",
          "vlocityins6__Type__c": "Dental",
          "TotalPrice": 1,
          "LastModifiedDate": "2022-04-14T08:32:35.000+0000",
          "vlocityins6__PricingSource__c": "TotalPremium",
          "vlocityins6__ProductName__c": "Dental Standard",
          "vlocityins6__TotalAmount__c": 1,
          "vlocityins6__ProductChildItemSequence__c": 0,
          "needReprice": false,
          "vlocityins6__NeedReprice__c": false,
          "vlocityins6__RelationshipType__c": "Child",
          "quoteLineItemId": "0QLRO0000009kbn4AA",
          "productName": "Dental Standard",
          "ProductCode": "dentalStandard",
          "recordType": "Product",
          "lineRecordType": "Product",
          "Name": "Dental Standard",
          "hasAttributes": true,
          "coverageCount": 0,
          "hasCoverages": false
        },
        {
          "displaySequence": 0,
          "currencySymbol": "$",
          "currencyCode": "USD",
          "Id": "0QLRO0000009kbs4AA",
          "productId": "01tRO000000QnWnYAK",
          "Product2Id": "01tRO000000QnWnYAK",
          "LineNumber": "00000018",
          "CreatedDate": "2022-04-14T08:30:59.000+0000",
          "QuoteId": "0Q0RO0000000vtw0AA",
          "Price": 7425,
          "UnitPrice": 7425,
          "vlocityins6__RecordTypeName__c": "Product",
          "vlocityins6__Type__c": "Dental",
          "TotalPrice": 7425,
          "LastModifiedDate": "2022-05-31T02:35:56.000+0000",
          "vlocityins6__PricingSource__c": "TotalPremium",
          "vlocityins6__ProductName__c": "Dental Premium",
          "vlocityins6__TotalAmount__c": 7425,
          "vlocityins6__ProductChildItemSequence__c": 0,
          "needReprice": false,
          "vlocityins6__NeedReprice__c": false,
          "vlocityins6__RelationshipType__c": "Child",
          "quoteLineItemId": "0QLRO0000009kbs4AA",
          "productName": "Dental Premium",
          "ProductCode": "dentalPremium",
          "recordType": "Product",
          "lineRecordType": "Product",
          "Name": "Dental Premium",
          "hasAttributes": true,
          "coverageCount": 0,
          "hasCoverages": false
        }],
        "totalSize": 1        
     },
    "additionalFields" : {
      "EnrollmentWaitingPeriod": "30",
      "Name": "contractAcc-Group Contract",
      "ContractTerm": 12,
      "EnrollmentCensusId": "0rfRO00000000WRYAY"
    },
    "AccountId" : "001RO000003fLhQYAU",
    "QuoteId" : "0Q0RO0000001DlH0AU"
}

輸出 JSON (當服務建立契約時)

建立新契約時,會在輸出 JSON 中傳回新契約的 contractId。更新現有契約時,不會傳回輸出 JSON。

{
  "contractId: "0rfRN0000000014YAA",
  "errorCode": "INVOKE-200",
  "error": "OK"
}

輸出 JSON (當服務傳回錯誤時)

如果服務遇到任何例外,則會傳回空白字串。此外,也會傳回具有錯誤的成員清單。每個清單項目都包含輸入成員資料與錯誤。

{
  "contractId: "",
  "errors" : "List of errors, if any",
  "errorCode": "INVOKE-200",
  "error": "OK"
}
 
正在載入
Salesforce Help | Article