updateContract

Description
This transaction updates or corrects the information for an existing account, agreement, or contract. For the purposes of this transaction, the terms account, agreement, and contract can be used interchangeably and refer to the same business entity: a legal agreement between parties. Unless explicitly stated, each term refers to Managed Accounts and Reference Accounts.
Web Services
Operation name: updateContract
Service name: FinancialServices
Example
Update the billing type of John Smith's life insurance policy.

Update the agreement name and executed date of a Retirement Savings Maximizer Value Package, purchased by John Smith, that consists of a Registered Retirement Savings Plan account and an Equity Funds account.

Usage information
Essentially all of the business objects associated with a contract can be added or changed through this transaction.
Restriction: An existing party cannot be updated when it is associated with a contract (party) role being added using this transaction. In this case, the updateContract transaction will not fail, but the party will not be updated.
For example, this transaction can be used to:
  • Close a reference account that is part of a Managed Account with an AgreementType of Value Package by updating the EndDate.
  • Update the terms and conditions associated with the account.
  • Override a product's terms and conditions.

If you are using this transaction to update an agreement with an AgreementType that is associated with a specification (spec) through an active entity spec use, then you can add new spec values (ContractSpecValueBObj) to the agreement. You can also update existing spec values in a coarse-grained transaction.

Refer to the documentation for addContract for details about the conditions that must be met when adding spec values to an agreement.

When updating existing spec values, the following conditions must be met:
  • The SpecFormatId, ContractSpecValueId, and LastUpdateDate must be provided.
  • The entity spec use between the AgreementType and the spec must be active.
  • The spec value StartDate and EndDate must be within the date range defined by the start and end dates of the entity spec use.
  • The start and end dates cannot overlap for ContractSpecValueBObjs that reference the same spec.
  • If AttributeValueBObj is provided, you must use the update action to specify whether the provided spec attribute values are to be added, updated, removed, or replaced.

Spec values can be inactivated by setting the EndDate in ContractSpecValueBObj to be prior to or equal to the current date.

If the entity spec use between the agreement type and the spec is inactivated, the agreement will no longer have access to the spec, meaning that new spec values cannot be added and existing spec values cannot be updated.

Preconditions
The contract must exist.
Mandatory input
  • ContractIdPK
  • ContractLastUpdateDate
Inquiry levels
Not applicable
Filter values
Not applicable
Transaction behavior
When used as a coarse-grained transaction, new parties can be added to the database. All party details must be recorded on the first instance of the party business object, or the new party, in the request XML. Any details recorded on other instances of the party business object that are not also recorded on the first instance of the party business object are ignored. The NewPartyIdReference should be used to link any other instances of the party to the first instance.

The AdminContractId element within the TCRMContractBObj object must be supplied if either the AdminSystemType or the AdminSystemValue element is supplied.

If the AdminContractId element and either the AdminSystemValue or AdminSystemType elements are provided in the TCRMContractBObj, then the TCRMAdminNativeKeyBObj object should not be part of the request message for the TCRMContractBObj object or the TCRMContractComponentBObj object.

The ManagedAccountIndicator and SignedDate elements of an account cannot be updated.

For Managed Accounts whose AgreementType is Value Package:
  • The ProductId element is not updatable.
  • The ContractPartyRole element can be updated, but at least one party with an Owner role must exist.

If relating Managed Accounts to other accounts within the TCRMContractRelationshipBObj, the Managed Account must be active.

When adding a ContractRelationship, it cannot be the same as a preexisting ContractRelationship. Relationships are considered duplicates if the OriginalContractId, DestContractId, and RelationshipType elements are duplicates.

Request message
<TCRMTxType> UpdateContract

<TCRMTxObject> TCRMContractBObj

<TCRMObject> TCRMContractBObj

Response objects
TCRMContractBObj
Special note
The same transaction, with different required parameters, can be used to update:
  • In the Party domain, Reference Accounts.
  • In the Accounts domain, Managed Accounts and Reference Accounts.