Before using the TMF632 resource mappings, refer to the following.
Constraints and Limitations
- Individual maps to Salesforce Contact. Organization maps to Salesforce Account.
- Out-of-the-box implementation is restricted to the core data model.
givenName and familyName are mandatory for Individual POST. name is mandatory for Organization POST.
- An individual party contact that has no associated related accounts (a private contact) cannot be linked with an organization party Account.
- To add an Account-to-Account relationship on an Organization resource, create a PartyRoleRelation.
- DELETE does not hard-delete Contact or Account records. The DELETE endpoint is an extensibility hook. Without a custom Apex implementation, DELETE returns HTTP 400.
- Fields that are not supported out of the box can be added by using Apex extensibility hooks. See Extensibility for TMF632 v5 Party Management.
These default mappings are supported for the TMF632 resources.
Individual
| TMF Field<div style="width:120px"></div> |
Description<div style="width:180px"></div> |
Supported<div style="width:70px"></div> |
Salesforce Object<div style="width:100px"></div> |
Salesforce Mapping<div style="width:140px"></div> |
Mandatory for POST<div style="width:90px"></div> |
Supported methods<div style="width:90px"></div> |
| id |
Unique identifier. |
Yes |
Contact |
Id |
No |
GET |
| href |
Hyperlink reference. Constructed at runtime. |
Yes |
Contact |
Derived |
No |
GET |
| name |
Full name presented in reference data types. |
Yes |
Contact |
Name |
No |
GET |
| title |
Title such as Pr, Dr, or Sir. |
Yes |
Contact |
Title |
No |
GET, POST, PATCH |
| birthDate |
Birth date. |
Yes |
Contact |
Birthdate |
No |
GET, POST, PATCH |
| givenName |
First name of the individual. |
Yes |
Contact |
FirstName |
Yes |
GET, POST, PATCH |
| familyName |
Last name of the individual. |
Yes |
Contact |
LastName |
Yes |
GET, POST, PATCH |
| @type |
Sub-class name. Always Individual in the response. |
Yes |
— |
Hardcoded |
Yes |
GET, POST |
| @baseType |
Super-class name. Always Party in the response. |
Yes |
— |
Hardcoded |
Yes |
GET, POST |
| contactMedium |
List of contact means such as email, phone, fax, and address. |
Yes |
Contact |
See ContactMedium |
No |
GET, POST, PATCH |
| relatedParty |
Parties related to the individual. |
Yes |
Contact / Account |
See Related Party (Individual) |
No |
GET, POST, PATCH |
| aristocraticTitle |
Aristocratic title. |
No |
— |
— |
No |
— |
| countryOfBirth |
Country of birth. |
No |
— |
— |
No |
— |
| creditRating |
Credit profiles and scores. |
No |
— |
— |
No |
— |
| deathDate |
Date of death. |
No |
— |
— |
No |
— |
| disability |
Disabilities. |
No |
— |
— |
No |
— |
| externalReference |
Identifiers in an external system. |
No |
— |
— |
No |
— |
| gender |
Gender. |
No |
— |
— |
No |
— |
| maritalStatus |
Marital status. |
No |
— |
— |
No |
— |
| middleName |
Middle name or initial. |
No |
— |
— |
No |
— |
| nationality |
Nationality. |
No |
— |
— |
No |
— |
| status |
Lifecycle state of the individual. |
No |
— |
— |
No |
— |
These Individual attributes are patchable: givenName, familyName, title, birthDate, contactMedium, and relatedParty. These attributes are not patchable: id, href, name, and @type.
Organization
| TMF Field<div style="width:120px"></div> |
Description<div style="width:180px"></div> |
Supported<div style="width:70px"></div> |
Salesforce Object<div style="width:100px"></div> |
Salesforce Mapping<div style="width:140px"></div> |
Mandatory for POST<div style="width:90px"></div> |
Supported methods<div style="width:90px"></div> |
| id |
Unique identifier. |
Yes |
Account |
Id |
No |
GET |
| href |
Hyperlink reference. Constructed at runtime. |
Yes |
Account |
Derived |
No |
GET |
| name |
Organization name. |
Yes |
Account |
Name |
Yes |
GET, POST, PATCH |
| organizationType |
Type of organization, such as company or department. |
Yes |
Account |
Type |
No |
GET, POST, PATCH |
| @type |
Sub-class name. Always Organization in the response. |
Yes |
— |
Hardcoded |
Yes |
GET, POST |
| @baseType |
Super-class name. Always Party in the response. |
Yes |
— |
Hardcoded |
No |
GET, POST |
| contactMedium |
List of contact means. |
Yes |
Account |
See ContactMedium |
No |
GET, POST, PATCH |
| relatedParty |
Parties related to the organization. |
Yes |
Account / Contact |
See Related Party (Organization) |
No |
GET, POST, PATCH |
| organizationParentRelationship |
Parent organization reference. |
Yes |
Account |
See Organization Parent Relationship |
No |
GET, POST, PATCH |
| organizationChildRelationship |
Child organizations contained in this organization. |
Yes |
Account |
See Organization Child Relationship |
No |
GET |
| creditRating |
Credit profiles and scores. |
No |
— |
— |
No |
— |
| isHeadOffice |
Whether the organization is the head office. |
No |
— |
— |
No |
— |
| isLegalEntity |
Whether the organization is a legal entity. |
No |
— |
— |
No |
— |
| status |
Lifecycle state of the organization. |
No |
— |
— |
No |
— |
| tradingName |
Name the organization trades under. |
No |
— |
— |
No |
— |
Sub-resources
ContactMedium
| TMF Field<div style="width:160px"></div> |
Description<div style="width:180px"></div> |
Supported |
Salesforce Mapping<div style="width:180px"></div> |
Mandatory for POST |
| @type |
Discriminator: EmailContactMedium, PhoneContactMedium, FaxContactMedium, or GeographicAddressContactMedium |
Yes |
Hardcoded discriminator |
No |
| id |
Identifier for this contact medium. |
Yes |
Generated |
No |
| emailAddress |
Email contact medium. |
Yes |
Contact.Email or equivalent Account field |
No |
| phoneNumber |
Phone contact medium. |
Yes |
Contact.Phone or Account.Phone |
No |
| faxNumber |
Fax contact medium. |
Yes |
Contact.Fax or Account.Fax |
No |
| street1, city, stateOrProvince, postCode, country |
Geographic address. |
Yes |
Address fields on Contact or Account |
No |
| validFor |
Validity period. |
No |
— |
No |
| contactType |
Qualification such as personal or professional email. |
No |
— |
No |
Related Party (Individual)
Related parties on an Individual map through AccountContactRelation to Account.
| TMF Field<div style="width:180px"></div> |
Description |
Supported |
Salesforce Mapping |
Mandatory for POST |
| role |
Role played by the related party. |
Yes |
AccountContactRelation.Roles |
No |
| @type |
Sub-class name. |
Yes |
Hardcoded: RelatedPartyRefOrPartyRoleRef |
No |
| partyOrPartyRole.id |
Unique identifier of the related party. |
Yes |
AccountId |
No |
| partyOrPartyRole.name |
Name of the related party. |
Yes |
Account.Name |
No |
| partyOrPartyRole.href |
Hyperlink reference. |
Yes |
Derived |
No |
| partyOrPartyRole.@type |
Sub-class name. |
Yes |
Hardcoded: PartyRef |
No |
| partyOrPartyRole.@referredType |
Actual type of the target. |
Yes |
Individual or Organization |
No |
Related Party (Organization)
Organization related parties map through AccountContactRelation (to Contact) or AccountAccountRelation (to Account). For Account-to-Account relationships, create a PartyRoleRelation.
| TMF Field<div style="width:180px"></div> |
Description |
Supported |
Salesforce Mapping |
Mandatory for POST |
| role |
Role played by the related party. |
Yes |
AccountContactRelation.Roles or AccountAccountRelation.PartyRoleRelation.roleName |
No |
| @type |
Sub-class name. |
Yes |
Hardcoded: RelatedPartyRefOrPartyRoleRef |
No |
| partyOrPartyRole.id |
Unique identifier of the related party. |
Yes |
AccountContactRelation.ContactId or AccountAccountRelation.RelatedAccountId |
No |
| partyOrPartyRole.name |
Name of the related party. |
Yes |
Contact.Name or Account.Name |
No |
| partyOrPartyRole.href |
Hyperlink reference. |
Yes |
Derived |
No |
| partyOrPartyRole.@type |
Sub-class name. |
Yes |
Hardcoded: PartyRef |
No |
| partyOrPartyRole.@referredType |
Actual type of the target. |
Yes |
Individual or Organization |
No |
Organization Parent Relationship
| TMF Field<div style="width:160px"></div> |
Description |
Supported |
Salesforce Mapping |
Mandatory for POST |
| @type |
Sub-class name. |
Yes |
Hardcoded: OrganizationRef |
No |
| organization.id |
Unique identifier of the parent organization. |
Yes |
Account.ParentId |
No |
| organization.name |
Name of the parent organization. |
Yes |
Parent.Name |
No |
| organization.href |
Hyperlink reference. |
Yes |
Derived |
No |
| relationshipType |
Type of relationship. |
No |
— |
No |
Organization Child Relationship
| TMF Field<div style="width:160px"></div> |
Description |
Supported |
Salesforce Mapping |
Mandatory for POST |
| @type |
Sub-class name. |
Yes |
Hardcoded: OrganizationRef |
No |
| organization.id |
Unique identifier of the child organization. |
Yes |
Child Account Id where ParentId is this account |
No |
| organization.name |
Name of the child organization. |
Yes |
Child.Name |
No |
| organization.href |
Hyperlink reference. |
Yes |
Derived |
No |
| relationshipType |
Type of relationship. |
No |
— |
No |