Summary
This article describes how the integration captures deposit tickets from Zuper into iPaaS.com as transactions. A deposit ticket is a Zuper invoice whose number ends in -D, representing a deposit taken against an invoice. When a deposit ticket is created in Zuper, the integration reads the full record and creates a matching transaction in iPaaS.com, along with its line items, billing and service addresses, notes, payments, and tax through child collections. Each deposit ticket is also linked to the base invoice it belongs to, which keeps deposit activity visible alongside the underlying invoices in iPaaS.com.
ID Format
Manual Sync ID Format
The Manual Sync identifier is the Zuper deposit ticket identifier, which is the base invoice identifier with -D appended. Enter this value on the iPaaS.com Manual Sync page to capture a specific deposit ticket.
Example: 32bc938b-d942-4eed-ad65-15f633c5b270-D
External ID Format
After a successful transfer, iPaaS.com records the Zuper deposit ticket identifier as the external ID on a dedicated external-ID record, which routes later updates to the same iPaaS.com transaction. The TransactionNumber mapping also carries the deposit ticket number onto the transaction, which provides visibility and serves as a fallback match when no external-ID record yet exists.
Deleted Record Support
This collection captures deposit ticket creates. It does not remove transactions from iPaaS.com. Removal of transactions is out of scope for this collection.
Mapping Collection Status
Enabled. Mapping filters apply to several collections in this family, so that only deposit tickets are captured and each child entry is produced from the correct source record. The applicable filters are documented per collection below.
Trigger Events: The TO iPaaS.com direction supports Zuper webhooks enabled under Inbound Data Flows — the Zuper invoice and job events — plus Manual Sync. No automatic transfers occur until those webhook events are enabled.
Duplicate or Conflicting Mappings
Several collections capture Zuper billing records as iPaaS.com transactions and are separated by their filters. Review them together and confirm each is filtered for the records it should own:
Add Zuper Deposit Ticket TO iPaaS.com captures deposit tickets (invoice number ending in -D).
Add Zuper Invoice TO iPaaS.com captures standard invoices (invoice number not ending in -D).
Update Zuper Invoice TO iPaaS.com captures updates to standard invoices.
Add Zuper Job TO iPaaS.com captures Zuper jobs as transactions.
Collision Handling
This collection does not use collision handling. Records are matched by the saved external ID and, before an external-ID link exists, by the transaction number — not by a configurable collision rule.
Supported Child Collections
Each child below is captured as part of the deposit ticket transfer and is linked to the transaction it belongs to. None of them run independently.
Add Zuper Deposit Ticket Line TO iPaaS.com captures the line items.
Add Zuper Deposit Ticket Billing Address TO iPaaS.com captures the billing address.
Add Zuper Deposit Ticket Service Address TO iPaaS.com captures the service address.
Add Zuper Deposit Ticket Note TO iPaaS.com captures notes.
Add Zuper Deposit Ticket Payment TO iPaaS.com captures recorded payments.
Add Zuper Deposit Ticket Payment Due TO iPaaS.com records the outstanding balance as a payment entry.
Add Zuper Deposit Ticket Tax TO iPaaS.com captures the tax.
Zuper Caveats
Deposit tickets are identified by the -D suffix: only records whose invoice number ends in -D are captured here. Records whose number does not end in -D are standard invoices and are handled by the Invoice collection.
Parent invoice link: each deposit ticket links to its base invoice through the ParentId mapping, which resolves the base invoice number to the parent transaction already captured in iPaaS.com. That base invoice should already have been captured so the link can be resolved.
Totals are calculated from line items: subtotal, discount, tax, and quantity totals are computed from the record's line items and tax entries at capture time.
iPaaS.com Caveats
The captured transaction and its child records are created together. The child collections do not run independently of this deposit ticket transfer, and each child record is attached to the parent transaction captured by the deposit ticket collection.
Setup Requirements
Enable the Zuper invoice and job webhook events under Inbound Data Flows in the subscription configuration so that deposit activity in Zuper flows into iPaaS.com automatically.
Authentication uses a Zuper API key. For the steps to obtain the API key and configure the subscription, see the Zuper Installation Instructions article.
Integration Flow
A single transfer brings the deposit ticket into iPaaS.com:
The integration retrieves the full deposit ticket record from Zuper by its identifier.
The record is captured as a transaction and its parent invoice is linked.
The line items, billing and service addresses, notes, payments, and tax are captured through the child collections and attached to the transaction.
Mappings
Add Zuper Deposit Ticket TO iPaaS.com
This collection maps the Zuper deposit ticket record onto the iPaaS.com transaction.
Mapping Filter
if (InvoiceNo != null && InvoiceStatus != null){
if (InvoiceNo.EndsWith("-D"))
return true;
else
return false;
} else {return false;}The filter captures a record only when both its invoice number and its invoice status are present. When they are present, the record is captured only if its invoice number ends in -D, which identifies it as a deposit ticket; a record whose number does not end in -D is a standard invoice and is skipped here. A record missing either its invoice number or its status is also skipped.
Mapping Type | Source Field (Zuper) | Destination Field (iPaaS.com) | Description |
Dynamic Formula |
| SystemId | Records which connected system the transaction came from. This is a system-managed value and should be left as configured. Optional. |
Field | InvoiceNo | TransactionNumber | Sets the transaction number from the Zuper deposit ticket number. It identifies the transaction and is used to match it on later transfers. Required. |
Dynamic Formula |
| ParentId | Links the deposit ticket to the invoice it belongs to, by trimming the -D suffix from the identifier and resolving the base invoice's parent transaction already captured in iPaaS.com. The parent invoice should already have been captured so this link can be resolved. Recommended. |
Static |
| Type | Sets the transaction type to Order for deposit tickets. This is a fixed classification for this collection. Recommended. |
Lookup Translation | Lookup Translation: Zuper Invoice Status To iPaaS | Status | Sets the transaction status by translating the Zuper deposit ticket status. Values not listed in the translation table are passed through unchanged. Recommended. |
Dynamic Formula |
| EmailAddress | Sets the contact email on the transaction from the Zuper customer's email. Recommended. |
Dynamic Formula |
| DiscountAmount | Sets the total discount on the transaction by adding up the discounts on the line items, handling fixed and percentage discounts. Optional. |
Dynamic Formula |
| TaxAmount | Sets the total tax on the transaction by adding up the tax entries. Optional. |
Dynamic Formula |
| Subtotal | Sets the transaction subtotal by totaling the line items before tax, accounting for fixed and percentage discounts. Recommended. |
Field | Total | Total | Sets the transaction total from the Zuper deposit ticket total. Recommended. |
Dynamic Formula |
| TotalQty | Sets the total quantity on the transaction by adding up the line item quantities. Optional. |
Dynamic Formula |
| TransactionCreatedDateTime | Records when the transaction was captured into iPaaS.com. This is a system-managed value. Optional. |
Lookup Translation Tables
Source Value (Zuper) | Destination Value (iPaaS.com) |
DRAFT | Pending |
PAID | Complete |
AWAIT_PAYMENT | Pending |
Add Zuper Deposit Ticket Line TO iPaaS.com
This child collection maps each Zuper deposit ticket line item onto an iPaaS.com transaction line as part of the parent deposit ticket transfer.
Mapping Type | Source Field (Zuper) | Destination Field (iPaaS.com) | Description |
Field | LocationName | Zuper Fulfillment Location | Captures the fulfillment location name for the line into an iPaaS.com custom field. Optional. |
Static |
| Type | Marks the line as a Product line. This is a fixed classification for lines captured through this collection. Recommended. |
Static |
| Status | Sets the line status to Pending by default. Subscribers who track a different line status can change this value. Recommended. |
Field | ProductId | Sku | Captures the product identifier for the line item so the line can be matched to a product. Recommended. |
Field | Name | Description | Captures the line item description (the product name) from Zuper. Recommended. |
Field | Quantity | Qty | Captures the quantity for the line item. Recommended. |
Dynamic Formula |
| UnitPrice | Sets the per-unit price for the line, adjusting for a fixed or percentage discount applied to the line in Zuper. Recommended. |
Dynamic Formula |
| ExtendedPrice | Sets the extended (line total) price, accounting for the line quantity and any discount. Recommended. |
Field | UnitPrice | OriginalUnitPrice | Captures the original unit price before any discount. Optional. |
Dynamic Formula |
| DiscountAmount | Sets the discount amount for the line, based on whether the Zuper discount is a fixed amount or a percentage. Optional. |
Dynamic Formula |
| EstimatedTaxAmount | Sets the estimated tax for the line, derived from the line total after discount. Optional. |
Add Zuper Deposit Ticket Billing Address TO iPaaS.com
This child collection maps the deposit ticket customer's billing address onto the iPaaS.com transaction's billing address as part of the parent deposit ticket transfer.
Mapping Filter
SourceTypeName == "ParentOnly"
The filter captures the billing address only from the parent deposit ticket record, so a single billing address is captured per transaction rather than once per line item.
Mapping Type | Source Field (Zuper) | Destination Field (iPaaS.com) | Description |
Static |
| IsPrimaryBilling | Marks this address as the transaction's primary billing address. This is a fixed value for this collection. Recommended. |
Dynamic Formula |
| Address1 | Captures the billing street from the deposit ticket's customer billing address. Recommended. |
Dynamic Formula |
| City | Captures the billing city from the deposit ticket's customer billing address. Recommended. |
Dynamic Formula |
| Region | Captures the billing state or region from the deposit ticket's customer billing address. Recommended. |
Dynamic Formula |
| Country | Captures the billing country from the deposit ticket's customer billing address. Recommended. |
Dynamic Formula |
| PostalCode | Captures the billing postal or zip code from the deposit ticket's customer billing address. Recommended. |
Dynamic Formula |
| FirstName | Captures the billing contact first name from the deposit ticket's customer billing address. Optional. |
Dynamic Formula |
| LastName | Captures the billing contact last name from the deposit ticket's customer billing address. Optional. |
Dynamic Formula |
| Company | Captures the company name on the billing address when the deposit ticket belongs to a Zuper organization; otherwise no value is set. Optional. |
Add Zuper Deposit Ticket Service Address TO iPaaS.com
This child collection maps the deposit ticket customer's service address onto the iPaaS.com transaction's service (shipping) address as part of the parent deposit ticket transfer.
Mapping Filter
SourceTypeName == "ParentOnly"
The filter captures the service address only from the parent deposit ticket record, so a single service address is captured per transaction rather than once per line item.
Mapping Type | Source Field (Zuper) | Destination Field (iPaaS.com) | Description |
Static |
| IsPrimaryShipping | Marks this address as the transaction's primary service (shipping) address. This is a fixed value for this collection. Recommended. |
Dynamic Formula |
| Address1 | Captures the service street from the deposit ticket's customer service address. Recommended. |
Dynamic Formula |
| City | Captures the service city from the deposit ticket's customer service address. Recommended. |
Dynamic Formula |
| Region | Captures the service state or region from the deposit ticket's customer service address. Recommended. |
Dynamic Formula |
| Country | Captures the service country from the deposit ticket's customer service address. Recommended. |
Dynamic Formula |
| PostalCode | Captures the service postal or zip code from the deposit ticket's customer service address. Recommended. |
Dynamic Formula |
| FirstName | Captures the service contact first name from the deposit ticket's customer service address. Optional. |
Dynamic Formula |
| LastName | Captures the service contact last name from the deposit ticket's customer service address. Optional. |
Dynamic Formula |
| Company | Captures the company name on the service address when the deposit ticket belongs to a Zuper organization; otherwise no value is set. Optional. |
Add Zuper Deposit Ticket Note TO iPaaS.com
This child collection maps each Zuper deposit ticket note onto an iPaaS.com transaction note as part of the parent deposit ticket transfer.
Mapping Type | Source Field (Zuper) | Destination Field (iPaaS.com) | Description |
Static |
| Type | Classifies the captured note with a fixed type of Invoice Note, consistent with how notes are labeled across the invoice and deposit ticket collections. This is a fixed value for this collection. Recommended. |
Field | Content | Text | Captures the note text from the Zuper deposit ticket note. Recommended. |
Add Zuper Deposit Ticket Payment TO iPaaS.com
This child collection maps recorded payments on a fully paid deposit ticket onto iPaaS.com transaction payments as part of the parent deposit ticket transfer.
Mapping Filter
SourceTypeName != "ParentOnly" && Parent.AmountDue == 0 && IsVoid == false
The filter captures a payment when it is a real payment record (not the deposit ticket header), the deposit ticket has no remaining balance, and the payment is not voided. Voided payments and deposit tickets with an outstanding balance are handled elsewhere.
Mapping Type | Source Field (Zuper) | Destination Field (iPaaS.com) | Description |
Dynamic Formula |
| Method | Captures the payment method from the Zuper payment mode. Recommended. |
Dynamic Formula |
| Description | Sets the payment description from the Zuper payment mode. Optional. |
Field | Amount | Amount | Captures the payment amount from the Zuper deposit ticket payment. Required. |
Static |
| Status | Marks the payment as Captured, reflecting a completed payment on the deposit ticket. This is a fixed value for this collection. Recommended. |
Add Zuper Deposit Ticket Payment Due TO iPaaS.com
This child collection records the outstanding balance on a deposit ticket as an iPaaS.com transaction payment entry as part of the parent deposit ticket transfer.
Mapping Filter
SourceTypeName == "ParentOnly" && Parent.AmountDue > 0
The filter creates this entry from the deposit ticket header only when the deposit ticket has an outstanding balance greater than zero. Deposit tickets with no balance due do not produce a payment-due entry.
Mapping Type | Source Field (Zuper) | Destination Field (iPaaS.com) | Description |
Static |
| Method | Labels the entry method as amount due, distinguishing it from a recorded payment. This is a fixed value for this collection. Recommended. |
Static |
| Description | Sets the entry description to amount due. This is a fixed value for this collection. Optional. |
Dynamic Formula |
| Amount | Sets the payment entry amount to the deposit ticket's outstanding balance. Required. |
Static |
| Status | Marks the entry as Authorized, reflecting an outstanding (not yet captured) balance. This is a fixed value for this collection. Recommended. |
Add Zuper Deposit Ticket Tax TO iPaaS.com
This child collection maps each Zuper deposit ticket tax entry onto an iPaaS.com transaction tax entry as part of the parent deposit ticket transfer.
Mapping Type | Source Field (Zuper) | Destination Field (iPaaS.com) | Description |
Field | TaxName | Authority | Captures the tax authority (the tax name) from the Zuper deposit ticket tax. Recommended. |
Field | TaxAmount | Amount | Captures the tax amount from the Zuper deposit ticket tax. Recommended. |
Field | TaxPercent | TaxPercent | Captures the tax percentage from the Zuper deposit ticket tax. Optional. |
Error Handling
For the errors this integration can return and how to resolve them, see the Zuper Error Messages article.
Testing & Validation
Test Scenarios
Create a deposit ticket in Zuper (an invoice whose number ends in -D) and confirm a matching transaction with type Order appears in iPaaS.com, together with its line items, addresses, notes, payments, and tax.
Confirm the deposit ticket's ParentId resolves to the base invoice transaction, and that the base invoice was captured beforehand so the link resolves.
Create a standard invoice (a number not ending in -D) and confirm it is not captured by the deposit ticket collection.
Run a Manual Sync using the Zuper deposit ticket identifier (base invoice identifier with -D appended) and confirm the deposit ticket is captured.
Capture a fully paid deposit ticket and confirm a Captured payment is recorded, with no payment-due entry.
Capture a deposit ticket with an outstanding balance and confirm an amount-due entry is recorded with a status of Authorized.
Confirm the transaction status reflects the translated Zuper status (for example, DRAFT to Pending, PAID to Complete, AWAIT_PAYMENT to Pending).
Validation Checklist
The Zuper invoice and job webhook events are enabled under Inbound Data Flows.
The transaction's TransactionNumber matches the Zuper deposit ticket number.
The transaction type is set to Order.
The ParentId links the deposit ticket to its base invoice transaction.
Subtotal, discount, tax, and total quantity are calculated from the line items and tax entries.
The billing and service addresses, notes, tax, and payment or payment-due entries are attached to the transaction.
A fully paid deposit ticket records a Captured payment; a deposit ticket with a balance records an Authorized amount-due entry.
Additional Notes
Out of Scope
This collection captures deposit ticket creates only; it does not remove transactions. There is no bulk initialization — records transfer individually through the parent's webhook events or Manual Sync at the time this documentation was written. None of the child collections run on their own; each travels with its deposit ticket and is attached to the parent transaction.
Totals are calculated at capture time
Subtotal, discount, tax, and quantity totals are computed from the record's line items and tax entries when the deposit ticket is captured, at the time this documentation was written.
