Skip to main content

Clover to iPaaS.com Customer Mapping Documentation

How Clover customers are captured into iPaaS.com, including field mappings, the transaction-polling model, and overwrite behavior.

Contents

  • Summary

  • ID Format

  • Deleted Record Support

  • Mapping Collection Status

  • Duplicate or Conflicting Mappings

  • Supported Child Collections

  • System Caveats

  • Setup Requirements

  • Integration Flow

  • Mappings

  • Error Handling

  • Testing & Validation

  • Out of Scope

  • Additional Notes

Summary

Clover customers can be transferred into iPaaS.com so that the iPaaS.com customer list stays aligned with the customers who exist in Clover. Two parent collections carry the flow: one creates new iPaaS.com customers from Clover and one updates customers that already exist, each with a child collection that carries the customer's address alongside the customer record. Customers move automatically as part of transaction polling — when the integration polls a Clover order that references a customer, that customer is transferred with the order — and Manual Sync is always available to transfer a specific customer on demand.

ID Format

Manual Sync ID Format

The parent customer collections accept a Manual Sync key. Enter the Clover customer identifier for the customer you want to transfer. A Clover customer identifier is a single opaque value carried on the customer record.

  • Pattern: {CloverCustomerId}

  • Example: 8FGH1234ABCD5

The two child address collections do not take their own Manual Sync key. An address is matched to its customer through the parent transfer, so there is no separate identifier to enter for the address.

External ID Format

After a customer transfers, the integration stores a dedicated external-identifier record that links the Clover customer to its iPaaS.com counterpart, keyed on the Clover customer identifier. Because of this link, the same Clover identifier resolves the same iPaaS.com record on every repeat transfer, so re-syncing a customer updates the existing record rather than creating a duplicate.

Deleted Record Support

Outbound delete is not part of this flow. The Add and Update collections documented here transfer new and changed customers into iPaaS.com; they do not carry deletions. Delete mappings are not included in the default templates for the Clover-to-iPaaS.com customer collections, and a customer removed in Clover is not automatically removed from iPaaS.com through these collections. If a customer should no longer be active in iPaaS.com, manage that customer directly in iPaaS.com.

Mapping Collection Status

Status: Both parent collections are active. Add Clover Customer TO iPaaS.com creates customers; Update Clover Customer TO iPaaS.com updates existing customers. Each processes a Clover customer only when the customer passes the mapping filter described in the Mappings section. The two child address collections are active and have no filter of their own.

Trigger Events: A customer is transferred when a polled Clover order references that customer (the customer travels with the transaction). Manual Sync can trigger a transfer of a specific customer at any time. No webhook configuration is required by the subscriber.

Duplicate or Conflicting Mappings

Duplicate or conflicting collections

Two collections target the Clover-sourced iPaaS.com customer: one creates and one updates. To avoid records overwriting one another, no other active mapping collection should target the same iPaaS.com customer from the same source. Review your active collections if the same customer appears to change unexpectedly.

Collision handling

The Clover integration does not provide collision handling for the customer flow. When the same record could be changed from more than one side, the integration does not run a field-level merge or conflict-resolution step. Decide which system is the system of record for each customer and drive changes from that side. This behavior is described in the Clover Integration Known Limitations article.

Unmapped Field Overwrite Risk

The Update flow writes the mapped fields onto the existing iPaaS.com customer on every transfer. First Name, Last Name, and Email Address are refreshed from Clover each time, so any value entered directly in iPaaS.com on those fields is replaced by the Clover value on the next update. The integration omits empty (null) values from the write rather than sending them as blanks, so a field that is not part of these collections' mappings is left as it is on the destination record — unmapped fields are preserved, not cleared. For a field that should keep a value set in iPaaS.com rather than one sourced from Clover, use the destination-value approach so the update reads the existing iPaaS.com value back into the write and preserves it. This is exactly how Customer Number is preserved on update, using DestinationValue.CustomerNumber.

Supported Child Collections

Each parent customer collection supports one child address collection. The child does not transfer on its own; it moves whenever its parent customer moves.

Parent Collection

Child Collection

Purpose

Add Clover Customer TO iPaaS.com

Add Clover Customer Address TO iPaaS.com

Carries the new customer's address details alongside the customer record.

Update Clover Customer TO iPaaS.com

Update Clover Customer Address TO iPaaS.com

Refreshes the existing customer's address details alongside the customer update.

System Caveats

Clover Caveats

When Clover reports that too many requests have been made in a short period, the integration automatically pauses and retries the affected calls; no subscriber action is required. Customer records that have no email address in Clover are excluded by the mapping filter and will not appear in — or be updated in — iPaaS.com. For the address child collections, only address fields that are present on the Clover customer are carried; a field that is empty in Clover arrives empty in iPaaS.com.

iPaaS.com Caveats

iPaaS.com treats Customer Number as the primary customer identifier and expects a value on every record; on update the existing number is preserved rather than replaced. Email Address is expected to be unique per customer — if a Clover customer resolves to an email that already exists on a different iPaaS.com customer, the transfer can be rejected as a conflict. An address is stored against the customer created or matched by the parent collection: if the parent customer is not created or matched, there is no customer to attach the address to and the address is not stored.

Integration-Specific Caveats

The guest-email default is the only conditional field behavior in this flow. When a Clover customer's email is empty, the collection substitutes the default value guest@customerdomain.com so the required Email Address field is satisfied. Because the mapping filter already skips customers whose Clover email is empty, this default acts as a safeguard rather than the usual outcome. Note that multiple customers resolving to the shared guest value can conflict with one another under the uniqueness expectation above.

Setup Requirements

Clover Configuration

Populate an email address on each Clover customer you expect to sync; customers with no email are excluded by the filter. Populate the customer's address fields where available so the address child collection has data to carry.

iPaaS.com Configuration

No subscriber-facing setup is required on the iPaaS.com side to receive customers — automatic capture happens as part of transaction polling, so there is no webhook to configure. The Clover integration must be installed and authorized for the subscription before any transfer, and for the update flow a matching customer must already exist in iPaaS.com for the update to apply.

Authentication & Security

The integration authenticates to Clover using the credentials established when the Clover integration is authorized for the subscription. No additional per-transfer authentication is required for the customer flow. For the full installation and authorization walkthrough, see the Clover Installation Instructions article.

Integration Flow

  1. The integration polls Clover for orders. When a polled order references a customer, that customer is transferred with the order; the customer must exist on the transaction for this to occur. Alternatively, a subscriber runs Manual Sync on a parent customer collection using the Clover customer identifier.

  2. The Clover customer is read and evaluated against the mapping filter. A customer with no email address in Clover is skipped and does not proceed.

  3. The mapped identifying and contact fields are assembled into an iPaaS.com customer record. On Add, the customer is created; on Update, the mapped fields are written onto the matched iPaaS.com customer and the established Customer Number is preserved.

  4. The address child collection writes the mapped address fields to the customer's address as part of the same transfer — there is no separate subscriber-initiated step for the address.

  5. The integration stores or reuses the external-identifier record that links the Clover customer to its iPaaS.com counterpart, so repeat transfers resolve the same record.

Mappings

The Add and Update parent collections carry the same four customer fields, differing only in how Customer Number is handled (created from Clover on Add; preserved from the existing record on Update). The two child collections carry the same eight address fields. Each is documented below.

Add Clover Customer TO iPaaS.com

iPaaS.com data type: Customer

Mapping Filter

!IsEmpty(EmailAddress)

Filter Description. This collection processes a Clover customer only when the customer has a non-empty email address. A customer whose Clover EmailAddress is empty fails the filter and is skipped — no iPaaS.com customer is created and no error is raised (the skip is silent). The filter is evaluated against the raw Clover email before the email mapping's default guest value is applied, so an empty-email customer is never created even though the email mapping could otherwise supply a default.

Mapping Type

Source Field (Clover)

Destination Field (iPaaS.com)

Description

Field

Id

CustomerNumber

Required. Populates the iPaaS.com Customer Number from the Clover customer's identifier, which serves as the primary customer identifier. If the Clover identifier is missing, the record cannot be created because iPaaS.com will not accept a customer without this value.

Field

FirstName

FirstName

Recommended for record completeness; not required by iPaaS.com. If the Clover customer has no first name, the field is left empty and the transfer still succeeds.

Field

LastName

LastName

Recommended for record completeness; not required by iPaaS.com. If the Clover customer has no last name, the field is left empty and the transfer still succeeds.

Dynamic Formula

(IsEmpty(EmailAddress) ? "guest@customerdomain.com" : EmailAddress)

EmailAddress

Required. Uses the Clover customer's email when present; when it is empty, substitutes the default guest@customerdomain.com so the required field is never empty. Because the filter above only admits customers with a non-empty email, the default is a safeguard rather than the usual outcome. Customers resolving to the shared guest value can conflict under the email-uniqueness expectation.

Update Clover Customer TO iPaaS.com

iPaaS.com data type: Customer

Mapping Filter

!IsEmpty(EmailAddress)

Filter Description. This collection processes a Clover customer only when the customer has a non-empty email address. A customer whose Clover EmailAddress is empty fails the filter and is skipped — the existing iPaaS.com customer is not updated and no error is raised (the skip is silent). As with the Add collection, the filter is evaluated against the raw Clover email before the email mapping's default guest value is applied.

Mapping Type

Source Field (Clover)

Destination Field (iPaaS.com)

Description

Dynamic Formula

DestinationValue.CustomerNumber

CustomerNumber

Required. Keeps the iPaaS.com Customer Number as it already is on the matched customer: the formula reads the current destination value and writes it back unchanged rather than re-deriving it from Clover, preserving the established identifier across updates. This is the recommended pattern for any field that should retain its iPaaS.com value rather than be overwritten from the source.

Field

FirstName

FirstName

Recommended for completeness; not required. Refreshed from Clover on every update, so a first name edited directly in iPaaS.com is replaced by the Clover value on the next transfer. If the Clover customer has no first name, the field is set empty.

Field

LastName

LastName

Recommended for completeness; not required. Refreshed from Clover on every update, so a last name edited directly in iPaaS.com is replaced by the Clover value on the next transfer. If the Clover customer has no last name, the field is set empty.

Dynamic Formula

(IsEmpty(EmailAddress) ? "guest@customerdomain.com" : EmailAddress)

EmailAddress

Required. Uses the Clover customer's email when present; when it is empty, substitutes the default guest@customerdomain.com. Refreshed on every update, so an address edited directly in iPaaS.com is replaced by the Clover value on the next transfer. Customers resolving to the shared guest value can conflict under the email-uniqueness expectation.

Add Clover Customer Address TO iPaaS.com

iPaaS.com data type: Customer Address

This child collection has no mapping filter of its own. Its records are gated entirely by the parent Add Clover Customer TO iPaaS.com collection: whichever customers the parent processes, their addresses are carried through here. The address transfers only as part of the parent customer transfer.

Mapping Type

Source Field (Clover)

Destination Field (iPaaS.com)

Description

Field

Address1

Address1

Recommended for a complete address; not required. If the source line is empty, the destination line is left empty and the transfer still succeeds.

Field

Address2

Address2

Recommended for a complete address; not required. Empty in the source means empty in the destination.

Field

Address3

Address3

Recommended for a complete address; not required. Empty in the source means empty in the destination.

Field

City

City

Recommended for a complete address; not required. Empty in the source means empty in the destination.

Field

State

Region

Recommended for a complete address; not required. The Clover State value is passed through as provided to the iPaaS.com Region field, so subscribers should confirm the source uses region values that iPaaS.com and downstream systems accept. Empty in the source means empty in the destination.

Field

Country

Country

Recommended for a complete address; not required. The value is passed through as provided by Clover. Empty in the source means empty in the destination.

Field

Zip

PostalCode

Recommended for a complete address; not required. Maps the Clover Zip value to the iPaaS.com Postal Code field. Empty in the source means empty in the destination.

Field

PhoneNumber

PhoneNumber

Recommended for a complete contact record; not required. Empty in the source means empty in the destination.

Update Clover Customer Address TO iPaaS.com

iPaaS.com data type: Customer Address

This child collection has no mapping filter of its own. Its records are gated entirely by the parent Update Clover Customer TO iPaaS.com collection: whichever customers the parent updates, their addresses are carried through here. The address update transfers only as part of the parent customer update. Because these fields are refreshed from Clover on every update, a value edited directly in iPaaS.com on a mapped address field is replaced by the Clover value on the next transfer, and an empty source field clears the mapped destination field.

Mapping Type

Source Field (Clover)

Destination Field (iPaaS.com)

Description

Field

Address1

Address1

Recommended for a complete address; not required. Refreshed on every update; an empty source line clears the destination line.

Field

Address2

Address2

Recommended for a complete address; not required. Refreshed on every update; an empty source value clears the destination.

Field

Address3

Address3

Recommended for a complete address; not required. Refreshed on every update; an empty source value clears the destination.

Field

City

City

Recommended for a complete address; not required. Refreshed on every update; an empty source value clears the destination.

Field

State

Region

Recommended for a complete address; not required. Maps the Clover State value to the iPaaS.com Region field, passed through as provided; subscribers should confirm the source uses region values that iPaaS.com and downstream systems accept. Refreshed on every update; an empty source value clears the destination.

Field

Country

Country

Recommended for a complete address; not required. The value is passed through as provided by Clover. Refreshed on every update; an empty source value clears the destination.

Field

Zip

PostalCode

Recommended for a complete address; not required. Maps the Clover Zip value to the iPaaS.com Postal Code field. Refreshed on every update; an empty source value clears the destination.

Field

PhoneNumber

PhoneNumber

Recommended for a complete contact record; not required. Refreshed on every update; an empty source value clears the destination.

Error Handling

Errors for this flow surface in the iPaaS.com Dashboard under Integration Monitoring and then Error Logs. The full catalog of Clover integration error messages, with resolutions, lives in the Clover Error Messages article; consult it when you see an error in your logs.

Two behaviors specific to the customer flow are worth calling out:

  • A customer with no email address in Clover is skipped silently. The mapping filter excludes these records, so they are filtered before any write is attempted. No error message is written to Error Logs — the customer simply does not appear (Add) or is not updated (Update). To transfer such a customer, populate a valid email address on the Clover customer.

  • A duplicate email conflict can reject the transfer. iPaaS.com expects Email Address to be unique per customer. If a Clover customer resolves to an email already used by a different iPaaS.com customer — including several customers falling back to the shared guest@customerdomain.com default — the transfer can be rejected as a conflict. Resolve the duplicate email in Clover so the customer resolves to a unique address.

Testing & Validation

Test Scenarios

  1. New customer sync. Create a Clover customer with a valid email address, then poll an order that references the customer (or run Manual Sync on the customer identifier). Confirm a new customer is created in iPaaS.com with the Clover identifier as its Customer Number.

  2. Update an existing customer. Change the first name, last name, or email on a Clover customer that already exists in iPaaS.com, re-transfer, and confirm the change propagates while the Customer Number stays unchanged.

  3. Address sync. Populate or change the address fields on the Clover customer and confirm the address is carried into the iPaaS.com customer's address through the child collection.

  4. Required-field / filter validation. Create a Clover customer with no email address, attempt to transfer it, and confirm it does not sync and that no error is written to Error Logs (the record is filtered silently).

  5. ID format. Run Manual Sync using the documented Clover customer identifier pattern and confirm the correct customer transfers.

  6. Duplicate email. Point two Clover customers at the same email address, transfer both, and confirm the second is rejected as a uniqueness conflict.

Validation Checklist

  • Only customers with a non-empty Clover email address are transferred.

  • Customer Number carries the Clover identifier on Add and is preserved unchanged on Update.

  • Email Address is always populated on the transferred record (Clover email, or the guest default).

  • Address fields present in Clover appear on the iPaaS.com customer address; empty source fields arrive empty.

  • Re-transferring the same customer updates the existing record rather than creating a duplicate.

  • On Update, fields not carried by these collections retain their existing iPaaS.com values.

Out of Scope

  • The Add collections do not update customers that already exist in iPaaS.com, and the Update collections do not create customers that do not yet exist — the two flows are separate.

  • These collections do not transfer orders, products, or inventory.

  • Address handling is limited to the fields carried by the child address collections.

  • Deletions are not propagated to iPaaS.com through these collections (see Deleted Record Support).

Additional Notes

  • Email Address is effectively mandatory for this flow because the mapping filter excludes customers without a Clover email; the guest-email default only applies to records that already pass the filter.

  • This flow maps identifying and contact fields only. Fields not listed in the mappings are not sent to iPaaS.com; on Update they are preserved on the existing record. This behavior and the broader integration constraints are described in the Clover Integration Known Limitations article.

Did this answer your question?