This guide shows you how to manage contact information in Peach, continuing with our borrower James Smith from the Quickstart guide. You'll learn how to view existing contacts and add secondary contact information.
Each borrower in Peach can have multiple contact records:
- Primary contacts (for main communications)
- Secondary contacts (for backup or work information)
- Additional contacts (for special purposes)
Each contact in Peach has important properties that determine how it's used:
primary- Main contact for notifications and portal displaysecondary- Alternative contact methodsadditional- Extra contacts for special purposesarchived- Historical information.
personal- Personal contact methodswork- Work-related contactshome- Home contact informationmilitary- Military contact details
valid- Contact is not known to be disconnected or otherwise unusable. (e.g., if a carrier responds that a phone number is disconnected, this would be set tofalse)verified- Contact has been verified (e.g., through confirmation code)
Before you begin, make sure you have:
- A Peach account with API access
- Your API key
- Borrower ID
Note: The following examples use commonly used fields, but for full details, including additional data and parameters, refer to the API Reference.
Let's first verify James's current contact information that we set up in the Quickstart:
GET /people/{personId}/contacts
X-API-KEY: <YOUR-API-KEY>The response should show his primary contacts:
{
"status": 200,
"count": 3,
"data": [
{
"id": "CT-ABCD-1234",
"contactType": "email",
"label": "personal",
"affiliation": "self",
"status": "primary",
"value": "james.smith@example.com",
"valid": true,
"verified": true
},
{
"id": "CT-EFGH-5678",
"contactType": "phone",
"label": "mobile",
"affiliation": "self",
"status": "primary",
"value": "+14155551234",
"valid": true,
"verified": true,
"receiveTextMessages": true
},
{
"id": "CT-IJKL-9012",
"contactType": "address",
"label": "home",
"affiliation": "self",
"status": "primary",
"address": {
"addressLine1": "1 Main St",
"city": "Houston",
"state": "TX",
"postalCode": "77002",
"country": "US"
}
}
]
}Now let's add James' work contact information as secondary contacts.
POST /people/{personId}/contacts
X-API-KEY: <YOUR-API-KEY>
Content-Type: application/json
{
"contactType": "email",
"label": "work",
"affiliation": "self",
"status": "secondary",
"value": "jsmith@company.com",
"valid": true,
"verified": false
}POST /people/{personId}/contacts
X-API-KEY: <YOUR-API-KEY>
Content-Type: application/json
{
"contactType": "phone",
"label": "work",
"affiliation": "self",
"status": "secondary",
"value": "+14155559876",
"valid": true,
"verified": false,
"receiveTextMessages": false
}The Peach Borrower Portal automatically uses specific contacts:
Portal Display
- Primary personal/work email
- Primary personal mobile phone
- Primary home address
Notification System
- Emails: Sends to primary self-affiliated email
- Text messages: Uses primary personal phone with
receiveTextMessages: true - Physical mail: Uses primary home address
Contact Organization
- Keep one primary email, phone, and address
- Mark work contacts as secondary
- Archive outdated contacts
Phone Numbers
- Always include the country code
- Set
receiveTextMessages: trueonly with consent - Use proper formatting (e.g., +1XXXXXXXXXX)
Email Addresses
- Verify email format before submission
- Consider verification status when sending important notices
- Use appropriate labels for different email types
These are the key requirements to ensure proper contact setup in Peach's Borrower Portal (if applicable):
- Portal Display Requirements
EMAIL: contactType=email, label=personal/work, affiliation=self, status=primaryMOBILE PHONE: contactType=phone, label=personal, affiliation=self, status=primaryHOME PHONE: contactType=phone, label=home, affiliation=self, status=secondaryHOME ADDRESS: contactType=address, label=home, affiliation=self, status=primary
- Notice Delivery Requirements
- Email notices: contactType=email, valid=true, affiliation=self, status=primary (falls back to secondary, then additional if primary not found)
- Text messages: contactType=phone, valid=true, affiliation=self, receiveTextMessages=true, label=personal, status=primary (falls back to secondary, then additional if primary not found)
Following these requirements ensures proper display in the Borrower Portal and reliable notice delivery.
- Learn how to manage borrower Identities
- Set up Payment Instruments for collecting payments
- Configure outbound notifications and templates in Communications