Skip to main content

Using the Transaction API to Post Transactions and Transaction Tracking

Creating Transactions and Transaction Tracking via the API

Updated over 2 weeks ago

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:

  1. 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).

  2. Shipping Methods: Create via Data Management > Shipping Methods > Create (names are case-sensitive in API calls).

  3. 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

  1. Navigate to the Transaction API documentation.

  2. Click Authenticate in the header.

  3. 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.

  1. Navigate to the Transaction section, to POST /v/Transaction .

  2. Click Try it out.

  3. 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

  1. Navigate to the Tracking section and select POST/v2/Transaction/Tracking.

  2. Click Try it out.

  3. 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).

  4. The shipping method needs to exist, and you can use the name of the shipping method (case sensitive) in the call.

  5. 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,
}
Did this answer your question?