Overview
This document outlines the configuration for automatically synchronizing customer records from the Clover Customer entity to the iPaaS Customer entity. The integration uses an API-based sync that triggers whenever an order record is created or updated in Clover using polling.
Mapping Collection Status
Mapping Status Enabled
Trigger Events: The sync is triggered by customer creation or updates in Clover.
ID Format: When manually syncing, the Customer ID from iPaaS is used. This can be resolved via an external ID.
Conflicting Mappings: This mapping applies only to Customers. Ensure no other mappings target the same Clover entity to prevent data from being overwritten.
Supported Child Collections
The integration supports the synchronization of the parent customer and its related child collections:
Customer Address: Transfers customer address details.
System Caveats
Clover Caveats
Customer records without an email address are not synced due to the filter applied.
iPaaS Caveats
iPaaS requires a valid CustomerNumber as the primary identifier.
EmailAddress must be unique in iPaaS.
Address child records will sync only if valid data exists in Clover.
Setup Requirements
Clover Configuration
Ensure EmailAddress is populated; otherwise, the record is excluded from the sync. Customer address fields should be valid where available.
iPaaS Configuration
Each customer in iPaaS must have a unique CustomerNumber.
Authentication & Security
Clover2 MerchantId: Used to access the iPaaS API for fetching data.
Clover2 API Key: Used to access the iPaaS API for fetching data.
Integration Flow
Retrieve Data: Fetch customer data from Clover.
Map Fields: Map Clover customer fields to iPaaS destination fields.
Map Addresses: Fetch associated customer addresses and map them through the child collection.
Sync Data: Push customer and address information to iPaaS, maintaining ID relationships.
Mappings
Clover Customer Add To iPaaS (Parent)
Mapping Filter
!IsEmpty(EmailAddress)
Mapping Type | Source Field (Clover) | Destination Field (iPaaS) | Description |
Field | Id | CustomerNumber | Required |
Field | FirstName | FirstName | Required |
Field | LastName | LastName | Required |
Dynamic Formula |
| EmailAddress | Required:Uses the customer’s email if available; otherwise, defaults to guest@customerdomain.com. |
Clover Customer Address Add To iPaaS (Child Collection)
Mapping Type | Source Field (Clover) | Destination Field (iPaaS) |
Field | Address1 | Address1 |
Field | Address2 | Address2 |
Field | Address3 | Address3 |
Field | City | City |
Field | State | Region |
Field | Country | Country |
Field | Zip | PostalCode |
Field | PhoneNumber | PhoneNumber |
Clover Customer Update To iPaaS (Parent)
Mapping Filter
!IsEmpty(EmailAddress)
Mapping Type | Source Field (Clover) | Destination Field (iPaaS) | Description |
Dynamic Formula |
| CustomerNumber | Required: Unique identifier for a customer in the destination system. |
Field | FirstName | FirstName | Required |
Field | LastName | LastName | Required |
Dynamic Formula |
| EmailAddress | Required: Uses the customer’s email if available; otherwise, defaults to guest@customerdomain.com. |
Clover Customer Address Update To iPaaS (Child Collection)
Mapping Type | Source Field (Clover) | Destination Field (iPaaS) |
Field | Address1 | Address1 |
Field | Address2 | Address2 |
Field | Address3 | Address3 |
Field | City | City |
Field | State | Region |
Field | Country | Country |
Field | Zip | PostalCode |
Field | PhoneNumber | PhoneNumber |
Error Handling
Missing Email Address
EmailAddress is empty.
Description: The mapping filter excludes records without an email, so no sync occurs.
Resolution: Populate a valid email address in Clover.
Missing Customer ID
Customer ID missing in Clover record.
Description: Without a valid ID, the CustomerNumber cannot be generated.
Resolution: Ensure Clover customer records contain a valid Id field.
Duplicate Email Conflict
Email already exists in iPaaS.
Description: iPaaS does not allow multiple customers with the same EmailAddress.
Resolution: Update duplicate emails in Clover.
Validation Rules & Testing
Validation Rules
Only customers with a valid EmailAddress sync.
CustomerNumber, FirstName, LastName, and EmailAddress must be correctly populated.
Test Scenarios
New Customer Sync: Create a Clover customer with a valid email and verify creation in iPaaS.
Update Customer: Update name or email in Clover, and confirm the changes are reflected in iPaaS.
Address Sync: Add or update address fields in Clover and ensure they sync in the child collection.
Missing Email Simulation: Create a customer without an email and confirm it does not sync.
Additional Notes
The email field is required due to the filter.
