Overview
This document outlines the configuration for automatically synchronizing Loyalty Card Transaction records from the 99minds Loyalty Card Transaction entity update to the iPaaS Transaction entity. The integration uses an API-based sync that triggers whenever a Loyalty Card Transaction record is updated in 99minds.
Mapping Collection Status
Mapping Status: Enabled.
Trigger Events: The sync is triggered by the update of Loyalty Card Transactions in 99minds.
ID Format: When manually syncing, the Loyalty Card Transaction ID from 99minds is used. This can be resolved via an external ID.
Conflicting Mappings: This mapping applies only to Loyalty Card Transactions. Ensure no other mappings target the same 99minds entity to prevent data from being overwritten.
System Caveats
99minds Caveats
Each transaction must include All TransactionAmount and TransactionType for proper classification.
Transactions referencing an order should include ClientOrderId to prevent duplicates.
iPaaS Caveats
The destination system requires a unique TransactionNumber for every Loyalty Transaction.
If a matching order or transaction is already found, iPaaS skips the incoming record automatically.
Setup Requirements
99minds Configuration
All loyalty point transactions must include:
TransactionAmount
TransactionType
ClientOrderId (when related to an order)
A valid customer reference or external identifier
iPaaS Configuration
CustomerId must resolve via internal lookup using customer mapping.
Ensure the iPaaS Loyalty Transaction entity has fields configured.
Authentication & Security
99minds API Secret Key: Used to access iPaaS API for fetching Loyalty Card Transaction Transaction and related data.
Integration Flow
Retrieve Data: Fetch newly created point transactions from 99minds based on Last Sync Time.
Check Existing Orders: If a transaction references an order and that order already exists in iPaaS, the system will skip creation to avoid duplication.
Map Fields: Apply the mapping rules to transform 99minds values into the iPaaS Loyalty Transaction format.
Assign Static Values: Default values for Ticket Type and Status are applied.
Transfer Data: Push transformed transactions to iPaaS as new entries only.
Mappings
Loyalty Card Transaction Transaction
Filter
TransactionAmount != "0.00"
Description
This mapping collection preserves all existing transaction values and only updates 99minds custom fields with loyalty point information
Mapping Type | Source Field (99minds) | Destination Field (iPaaS) | Description |
Dynamic Formula |
| 99minds Last Sync Time (custom field) |
|
Field | AllTransactionAmounts | 99minds Points Earned / Used (custom field) |
|
Field | TransactionType | 99minds Points Transaction Type (custom field) |
|
Dynamic Formula |
| 99minds Order Transactions (custom field) | If multiple transactions occurred, this will search for all of them. |
Dynamic Formula |
| SystemId |
|
Dynamic Formula |
| TransactionNumber |
|
Dynamic Formula |
| CustomerId |
|
Dynamic Formula |
| Type |
|
Dynamic Formula |
| Status |
|
Dynamic Formula |
| EmailAddress |
|
Dynamic Formula |
| DiscountAmount |
|
Dynamic Formula |
| TaxAmount |
|
Dynamic Formula |
| ShippingAmount |
|
Dynamic Formula |
| Subtotal |
|
Dynamic Formula |
| Total |
|
Dynamic Formula |
| TotalQty |
|
Dynamic Formula |
| TransactionCreatedDateTime |
|
Error Handling
Duplicate Transaction (Order Match Found)
No new record created — existing order matched.
Description: The transaction references an order already synced to iPaaS.
Resolution: No action required — this is expected behavior to prevent duplicates.
Missing Transaction Amount
TransactionAmount not found.
Description: iPaaS cannot process the record without point’s value.
Resolution: Ensure 99minds always supplies the TransactionAmount.
Invalid Customer Identifier
Failed to resolve CustomerId.
Description: Customer lookup function returned null.
Resolution: Validate customer mapping or ensure customer exists in iPaaS.
Missing Transaction Type
TransactionType missing.
Description: System cannot determine if this is earn/redeem.
Resolution: Fix data in 99minds before syncing.
Validation Rules & Testing
Validation Checklist
TransactionAmount equal to zero are skipped.
Status must not be changed.
Test Scenarios
Balance Verification: Confirm that both Balance and OriginalAmount match expected values in iPaaS.
Additional Notes
This mapping supports update-Only updating of Loyalty Transactions.
