Overview
This guide explains how to create transactions and add transaction tracking using the iPaaS.com API. Since financial data requires strict validation and synchronization across platforms, transactions and their associated collections can only be edited through the API, not via the iPaaS.com portal.
What you'll learn:
How to authenticate with the API
How to create transactions via API endpoints
How to add transaction tracking information
Required permissions and prerequisites
Prerequisites
User Permissions Required
Your API user must have the following permissions enabled:
Data Management > Transaction Custom Field
View
Create
Edit
Data Management > Transaction
View
Create
Edit
Other > Transaction Tracking
View
Create
Edit
Account Setup Requirements
Before creating transactions, ensure your account has:
Active Subscription: Navigate to Subscriptions Management > Marketplace, select and subscribe to a service. Note the subscription ID from the URL when editing (this becomes your
system_id
).Shipping Methods: Create via Data Management > Shipping Methods > Create (names are case-sensitive in API calls).
Products in Catalog: Add via Data Management > Product Catalog with these specifications:
SKU: Use "1" and "2" for the example
Tracking method: Product
Type: Physical
Status: Active
Authentication
Navigate to the Transaction API documentation.
Click Authenticate in the header.
Enter your company-specific API token.
NOTE: You can use tools like Postman instead of the in-browser Swagger documentation if preferred. |
Creating a Transaction
Navigate to the Transaction API. Click authenticate in the header and enter the company-specific token you generated by following these steps.
Navigate to the Transaction section, to
POST /v/Transaction
.Click Try it out.
Use the JSON below to create this transaction. This should result in a transaction that resembles one you would see returned from an eCommerce system, POS, ERP, or other source.
NOTES:
This is a simple call and does not include all collections. If you do add other collections, they should exist. For example, if you add a payment method, then that payment method must exist in your iPaaS.com account.
This example will not link the transaction to a customer or company.
This example does not leverage custom fields.
{
"system_id": 13476,
"transaction_number": "1234",
"type": "Order",
"email_address": "don.draper@ipaas.com",
"status": "Pending",
"discount_amount": 0,
"tax_amount": 1.76,
"shipping_amount": 5,
"subtotal": 21.99,
"total": 28.75,
"total_qty": 1,
"lines": [
{
"sequence_number": 1,
"status": "Pending",
"sku": "1",
"type": "Product",
"qty": 1,
"qty_shipped": 0,
"unit_price": 21.99,
"extended_price": 21.99,
"original_unit_price": 21.99,
"discount_amount": 0,
"discount_percent": 0,
"tax_percent": 0,
"estimated_tax_amount": 1.76,
"weight": 0.5,
"address": {
"shipping_method": "UPS GROUND",
"first_name": "Don",
"shipping_method_description": "Flat Rate",
"last_name": "Draper",
"shipping_amount": 0,
"company": "iPaaS.com",
"address_1": "1955 Vaughn Road",
"address_2": "Suite 108",
"city": "Atlanta",
"region": "Georgia",
"country": "United States",
"postal_code": "30144",
"is_primary_billing": true,
"is_primary_shipping": true
}
},
{
"sequence_number": 2,
"status": "Pending",
"sku": "2",
"type": "Product",
"qty": 1,
"qty_shipped": 0,
"unit_price": 19.99,
"extended_price": 19.99,
"original_unit_price": 19.99,
"discount_amount": 0,
"discount_percent": 0,
"tax_percent": 0,
"estimated_tax_amount": 1.76,
"weight": 0.5,
"address": {
"shipping_method": "UPS GROUND",
"first_name": "Don",
"shipping_method_description": "Flat Rate",
"last_name": "Draper",
"shipping_amount": 0,
"company": "iPaaS.com",
"address_1": "1955 Vaughn Road",
"address_2": "Suite 108",
"city": "Atlanta",
"region": "Georgia",
"country": "United States",
"postal_code": "30144",
"is_primary_billing": false,
"is_primary_shipping": true
}
}
],
"addresses": [
{
"shipping_method": "UPS GROUND",
"first_name": "Don",
"shipping_method_description": "Flat Rate",
"last_name": "Draper",
"shipping_amount": 0,
"company": "iPaaS.com",
"address_1": "1955 Vaughn Road",
"address_2": "Suite 108",
"city": "Atlanta",
"region": "Georgia",
"country": "United States",
"postal_code": "30144",
"is_primary_billing": true,
"is_primary_shipping": true
}
]
}
Adding Transaction Tracking
Navigate to the Tracking section and select
POST/v2/Transaction/Tracking
.Click Try it out.
Fill out the parent ID from the ID returned from your previous call or from a transaction in the UI (the ID is in the URL from the Transaction).
The shipping method needs to exist, and you can use the name of the shipping method (case sensitive) in the call.
The iPaaS.com API does not validate the tracking number, so if the system you use validates it, ensure it meets their criteria.
{
"parent_id": "101771",
"shipping_method": "UPS GROUND",
"tracking_number": "1234123412341234",
"cost": 10,
}