Adding and Updating Contact Addresses

The information in this topic is applicable when the Enable Shared Addresses check box in the company profit is deselected, that is, when addresses are not shared.

Note: When Enable Shared Addresses is selected, the address child object, (<ListOfAddress>) cannot be used, and instead the shared address child object (<ListOfSharedAddress>) must be used to associate or dissociate addresses and flag addresses as billing, shipping, or primary addresses. For more information about the shared address child object, see Shared Address and for more information about the address child object, see Address.

The contact object has three types of address:

  1. Primary address

  2. Alternate address

  3. Simple address

If the contact is associated with an account, the account’s billing address becomes the contact’s primary address, that is, the account’s billing address fields populate the contact’s primary address fields. The primary address fields are read-only in the contact record. The primary address might also be called the account address.

The alternate address is simply the contact’s address. Alternate address fields at the parent level are editable and this address is added to address children with the Primary checkbox in the UI selected. The alternate address might also be called the contact address.

You can use either ContactInsert, ContactUpdate or ContactExecute calls to insert or update primary or alternate addresses for a contact. With ContactInsert or ContactUpdate calls, the contact parent node with primary and alternate address fields must be present, and there must not be any child node. If an address child is present, only a simple address can be added, and not primary and alternate addresses. If the address child or any other child node is not present, only primary and alternate addresses can be added, and not simple addresses.

With the ContactExecute call, both the contact parent node and address child node can be present along with primary and alternate address fields at the parent level.

Note: A PrimaryAddressLine1 field is used to dynamically map the primary address field from an external application to the primary address field in Oracle CRM On Demand. For more information, see Mapping Primary Address Fields Using Web Services.