Skip to main content

Clover Transaction To iPaaS.com

Map Clover transaction records to iPaaS.com

Updated today

Overview

Synchronize Transaction records from the Clover Transaction entity to the iPaaS Transaction entity. The integration uses an API-based sync that triggers whenever a Transaction record is created or updated in Clover using polling.

Mapping Collection Status

  • Mapping Status: Enabled.

Trigger Events

  • The sync is triggered by the creation or update of Transactions in Clover.

ID Format

  • When manually syncing, the Transaction ID from iPaaS is used. This can be resolved via an external ID.

Conflicting Mappings

  • This mapping applies only to Transactions. 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 Transaction and its related child collections:

  • Transaction Address.

  • Transaction Billing Address.

  • Order Payment

  • Transaction Line

System Caveats

Clover Caveats

  • Transaction records with paymentState is “PAID” can be transferred to Clover.

iPaaS Caveats

  • TransactionNumber must be unique.

  • Address child records will sync only if valid data exists in Clover.

Setup Requirements

Clover Configuration

  • Ensure paymentState is “PAID”; otherwise, the record is excluded from the sync.

  • Transaction address fields should be valid where available.

iPaaS Configuration

  • Ensure TransactionNumber follows the standard format and does not end with excluded suffixes.

  • Provide valid tax and total amounts.

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

  1. Retrieve Data: Fetch Transaction data from Clover.

  2. Map Fields: Map Clover Transaction fields to iPaaS destination fields.

  3. Map Addresses: Fetch associated Transaction addresses and map them through the child collection.

  4. Sync Data: Push Transaction and address information to iPaaS, maintaining ID relationships.

Mappings

Clover Transaction To iPaaS

Mapping Filter

PaymentState == "PAID"

Mapping Type

Source Field (Clover)

Destination Field (iPaaS)

Description

Field

Id

Clover Transaction ID (custom field)

Dynamic Formula

CurrentDateTime()

Clover Update Date (custom field)

Sets the field to the current date and time

Dynamic Formula

Clover Transaction #" + Id

TransactionMessage

Creates a message by prefixing the Clover Transaction ID with "Clover Transaction #" for clarity.

Dynamic Formula

SpaceportSystemId

SystemId

Required: Sets the value to the SpaceportSystemId.

Field

Id

TransactionNumber

Required

Static

Order

Type

Required

Static

Complete

Status

Required

Dynamic Formula

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

EmailAddress

Required: Uses the customer’s email if available; otherwise, defaults to guest@customerdomain.com.

Dynamic Formula

CoalesceToDecimal(TaxAmount, 0) / 100

TaxAmount

Converts TaxAmount from cents to dollars by dividing by 100 (defaults to 0 if null).

Dynamic Formula

CoalesceToDecimal(Total, 0) / 100

Subtotal

Converts Total from cents to dollars by dividing by 100 (defaults to 0 if null).

Dynamic Formula

CoalesceToDecimal(Total, 0) / 100

Total

Converts Total from cents to dollars by dividing by 100 (defaults to 0 if null).

Dynamic Formula

GetTotalUnitQty(OrderLineItemsList) / 1000

TotalQty

Calculates the total quantity from all order line items, converting from thousandths by dividing by 1000.

Dynamic Formula

ConvertFromUnixTime(CreatedTime)

TransactionCreatedDateTime

Converts the Unix timestamp CreatedTime to a standard datetime format.

Clover Transaction Billing Address To IPaaS (Child Collection)

Mapping Type

Source Field (Clover)

Destination Field (iPaaS)

Static

true

IsPrimaryBilling

Static

true

IsPrimaryShipping

Field

Address1

Address1

Field

Address2

Address2

Field

Address3

Address3

Field

City

City

Field

State

Region

Field

United States

Country

Field

Zip

PostalCode

Clover Transaction Order Payment To IPaaS (Child Collection)

Mapping Type

Source Field (Clover)

Destination Field (iPaaS)

Description

Static

Other

Method

Required

Static

Clover Payment

Description

Dynamic Formula

CoalesceToDecimal(Amount,0) / 100

Amount

Amount from cents to dollars by dividing by 100 (defaults to 0 if null).

Field

Authorized

Status

Required

Clover Transaction Line To IPaaS (Child Collection)

Mapping Type

Source Field (Clover)

Destination Field (iPaaS)

Description

Static

Product

Type

Required

Static

Complete

Status

Required

Static

CLOVER-PRODUCT

Sku

Required

Field

Name

Description

Dynamic Formula

(UnitQty == 0 ? 1 : (CoalesceToDecimal(UnitQty, 1000) / 1000) )

Qty

Sets the quantity to 1 if UnitQty is 0; otherwise, converts UnitQty from thousandths to units by dividing by 1000.

Dynamic Formula

(UnitQty == 0 ? 1 : (CoalesceToDecimal(UnitQty, 1000) / 1000) )

QtyShipped

Sets the quantity to 1 if UnitQty is 0; otherwise, converts UnitQty from thousandths to units by dividing by 1000.

Dynamic Formula

CoalesceToDecimal(Price, 0) / 100

UnitPrice

Converts Price from cents to dollars by dividing by 100 (defaults to 0 if null).

Dynamic Formula

UnitQty == 0 ? 1 : (CoalesceToDecimal(UnitQty, 1000) / 1000) * (CoalesceToDecimal(Price, 0) / 100)

ExtendedPrice

Calculates the total line price by multiplying the converted quantity by the converted unit price, using 1 as a fallback if UnitQty is 0.

Error Handling

Invalid Totals

Total or Tax is non-numeric.

  • Description: Clover requires integer (in cents) values.

  • Resolution: Verify formulas return valid integers.

Missing Transaction ID

Transaction ID missing in Clover record.

  • Description: Without a valid ID, the TransactionNumber cannot be generated.

  • Resolution: Ensure Clover Transaction records contain a valid Id field.

Validation Rules & Testing

Validation Rules

  • TransactionNumber must not end in “-D” or “-GC”.

  • Tax, Misc, Total must convert correctly to cents.

  • Line creation timestamps must be valid.

  • EmailAddress should be valid if provided.

Test Scenarios

  1. New Transaction Sync: Create a Clover Transaction with a valid email and verify creation in iPaaS.

  2. Update Transaction: Update the transaction in Clover and confirm that the changes are reflected in iPaaS.

  3. Address Sync: Add or update address fields in Clover and ensure they sync in the child collection.

  4. Missing Payment State Simulation: Create a Transaction without a payment state and confirm it does not sync.

Additional Notes

  • The PaymentState field is required due to the filter.

Did this answer your question?