Prophet 21 (P21) Contact Sync Integration Overview
This document provides setup instructions and an overview of the Epicor Prophet 21 (P21) contact sync integration with Prokeep.
Note: If you’re setting up the Prophet 21 Contact sync integration as a part of your Order Automation integration, see Prophet 21 (P21) Contact Sync Setup for Order Automation
Note: If you’re setting up the standard (non–Order Automation) version of the Prophet 21 integration, see Prophet 21 (P21) Contact Sync Integration Overview
About the Integration
Target System: Epicor Prophet 21 (P21) – API enabled
Directionality: Bi-directional for contacts (P21 ↔ Prokeep), one-way for companies (P21 → Prokeep)
Functionality: Sync contact and company (address) data between P21 and Prokeep
System Requirements:
-
API access to the Entity API and OData API
-
External access to the P21 endpoint (sandbox and production)
-
Prokeep IPs whitelisted for connectivity
Note: If your organization does not have P21 APIs enabled, we recommend not pursuing this integration. The APIs can be expensive, and we do not advise enabling them solely for the purpose of this sync.
Overview
The P21–Prokeep integration automatically exchanges contact and address information between P21 and Prokeep using API credentials and OData filters provided by the customer.
-
Contacts sync bi-directionally between P21 and Prokeep.
-
Companies (addresses) flow one way from P21 into Prokeep.
-
P21 remains the system of record for company data.
Once active, this integration keeps your customers and contacts consistent across both platforms and ensures any new records created in one system are accurately reflected in the other.
Managing Companies in Prokeep
When the P21 sync is active, Prokeep disables the ability to manually create or edit companies.
-
New companies (addresses) must be created in P21.
-
Any new or updated companies automatically flow into Prokeep during the next sync (every 15 minutes).
-
Users can still assign contacts to companies within Prokeep.
Because Prokeep uses P21 data as the source of truth, this ensures all company and contact activity in Prokeep maps correctly back to P21.
Integration Key
Contact Fields
Prokeep Field | P21 Field |
---|---|
First Name | FirstName |
Last Name | LastName |
Mobile | DirectPhone |
EmailAddress | |
Company | AddressId |
Group | Set by Integration |
External ID (not in UI) | ID |
Account Rep | Does not sync |
Notes | Does not sync |
Preferences | Does not sync |
Contact Labels | Does not sync |
Group Behavior:
During setup, Prokeep creates a group called P21Contacts. All contacts synced through the integration or linked to a P21 ID are added to this group. Dynamic mapping to other Prokeep groups or branches is not currently supported.
Company Fields (Addresses in P21)
Prokeep Field | P21 Field |
---|---|
Company Name | Name |
Company Account # | AddressID |
External ID | AddressID |
Company Phone | CentralPhoneNumber |
Company Email | EmailAddress |
Setting Up the Integration
Most of the setup is handled by Prokeep. The customer’s role is to provide access credentials, filtering details, and endpoint validation.
Setup Steps
1. Provide Environment Details
-
Sandbox and production P21 URLs
-
API credentials (either username and password or API key and secret) with access to Contacts, Customers, and Addresses
-
Desired OData filtering criteria
-
Prokeep lets customers define custom OData filters for Addresses and Contacts to control which records sync from P21.
-
Default filter:
$filter=delete_flag eq 'N'
-
Example custom filter:
$filter=delete_flag eq 'N' and (customer eq 'Y' or vendor eq 'Y') and (preferred_location_id eq 10 or preferred_location_id eq null)
-
Use single quotes for strings (e.g., 'N', 'Y'), use
eq null
for null checks, and keep filters consistent across environments.
2. Prokeep Validates Connectivity
-
Confirms data access via the Entity and OData APIs
-
Ensures Prokeep’s IPs are whitelisted:
-
52.32.60.21
-
99.79.3.85
-
-
Data is pulled from P21 and mapped to the correct Prokeep fields
-
Contacts and companies are linked using P21 identifiers
-
Integration configured and turned on for limited testing.
Once configured and passed test validation, your synced contact and company data will continuously align between Prokeep and P21.
How the Sync Works
The integration runs on a scheduled process to keep Prokeep and P21 aligned.
Contacts Added in P21
-
Contacts created or updated in P21 are imported or refreshed in Prokeep during the next sync.
-
If an existing Prokeep contact matches the P21 contact’s external ID or phone number, that record is updated instead of duplicated.
-
This ensures all active contacts from P21 are available in Prokeep.
Contacts Added in Prokeep
-
Contacts can also be created in Prokeep (for example, when a new customer texts in or a user adds a contact manually).
-
These contacts initially do not exist in P21.
-
When Prokeep later detects a contact in P21 with a matching phone number that isn’t already linked, it will:
-
Match that Prokeep contact to the P21 record
-
Update it with the P21 external ID
-
This automatic linking ensures that contacts originating in Prokeep become associated with their correct P21 record once it exists.
Companies / Addresses
-
New companies (addresses) must be created in P21.
-
Once added, they automatically flow into Prokeep on the next sync.
-
Manual creation or editing of companies in Prokeep is disabled while the integration is active.
This guarantees that customer records in Prokeep always tie to valid P21 addresses.
Information Needed from the Customer
To complete setup, please provide:
-
P21 Environment URLs (sandbox and production)
-
API Credentials
-
Username and Password – for standard user-level API access
-
API Key and Secret – for token-based access
-
-
OData Filter Criteria (to exclude inactive or deleted records)
-
Whitelisting of Prokeep IPs:
-
52.32.60.21
-
99.79.3.85
-
-
Confirmation of Endpoint Access – Prokeep must be able to reach the Contacts, Customers, and Addresses endpoints in both environments.
For more detailed information or assistance during the setup process, please contact Support at support@prokeep.com. We're here to help ensure a smooth integration tailored to your needs.