Updating contacts

In the base configuration, PolicyCenter is designed to use a contact management system as the system of record for contact management. If a contact associated with billing information changes in PolicyCenter, PolicyCenter determines whether to notify a contact management system by calling the method gw.contact.ContactEnhancement.ShouldSendToContactSystem. If the method returns true, the contact updates are sent to the external contact system.

If you do not use an external contact management system, comment out the contents of the shouldSendContactUpdate method and change its return value to false. For example:

property get ShouldSendToContactSystem() : boolean {
//  return this.AutoSync == AutoSync.TC_ALLOW 
//    and not this.ID.Temporary
//    and (isOnAccountWithLinkContacts() or isReinsuranceParticipant())
  return false;
}

This feature applies to the following contacts:

  • New or changed contacts for a producer
  • New or changed contact for an account holder
  • New or changed contacts for a policy period billing contact
  • New or changed contacts for an policy period primary insured.

Changes to non-primary insured contact information does not trigger this request.

Note: PolicyCenter always calls this method asynchronously with respect to the user interface. The messaging code calls out to the plugin.

If you use a contact management system, your implementation of the BCBillingSystemPlugin.updateContact method must update the contact information for a Contact entity instance. The parameters to the method are a Contact entity instance and the billing system transaction ID.

The transaction ID is an identifier that PolicyCenter creates. Your plugin must track this billing system transaction ID. If PolicyCenter requests the same transaction ID twice, the billing system or your plugin that represents it must detect that PolicyCenter requested it twice. If you receive the same transaction ID more than once, you must ignore the duplicate requests.

Use the public ID of the contact to uniquely identify the contact in the external billing system.

Note: If you remove a role from a contact in the base configuration implementation, PolicyCenter does not notify the billing system that the contact no longer has that role.