The Transaction Object
Core Properties
string
required
Unique identifier for the transaction
string (Optional)
Friendly identifier (e.g., invoice number)
string (Optional)
Required for refund transactions; references original transaction
iddatetime (ISO-8601)
required
Timestamp when transaction occurred. Can be in the past which will use historical rates (from 2023 and on), or the future, which will use the current dateโs tax rates and rules
boolean (optional, default: false)
deprecated
Indicates whether Zamp will recalculate tax when a transaction is posted to Zamp
string (Optional)
Marketplace facilitator that collected payment and assumed sales tax responsibility
string (Optional)
Customerโs entity exemption type:
EDU_PRIVATE, EDU_PUBLIC, FEDERAL_GOV, LOCAL_GOV, NON_PROFIT, STATE_GOV, TRIBALstring (Optional)
Purpose for sale:
BUSINESS_USE, PERSONAL_USE, RENTAL_USE, RESALEISO-4217 currency code (Default: USD)
The currency of the transaction.
This must match the destination country if Zamp is filing the return
number (Optional)
Transaction-level discount
number (Optional)
deprecated
Total excluding tax and shipping/handling. This is no longer required
number (Optional)
Transaction-level shipping
number (Optiona)
Transaction-level handling
number (Optional)
Combined shipping/handling
number
required
Actual tax collected amount
number
required
Total including tax and shipping / handling
address (optional)
Where transaction physically shipped from
address
required
Where shipped to or point of sale
array (Minimum 1)
required
Line item details
object (Optional)
Custom key-value pairs (max 50, keys 1-40 chars, values 1-500 chars)
Address Object
string
Street address
string (Optional)
Additional address info
string
City name
string
Two-letter state code
string
Format:
##### or #####-####string (Optional)
ISO-3166 Alpha-2 code (Default, US)
Line Item Properties
string
required
Unique line item identifier
number
required
Amount per unit
number
required
Number of units
number (Optional)
Line-item level discount
number (Optional)
Line-item level shipping
number (Optional)
Line-item level handling
number (Optional)
Combined line-item shipping/handling
string
required
Product description
string (Optional)
Product identifier
string (Optional)
Zamp tax code for product taxability
- For point-of-sale orders, set
shipFromAddressandshipToAddressto identical values. - Prefer separate
shippingandhandlingamounts; useshippingHandlingonly if combined. - Updates/deletions for transactions in closed filing periods are forbidden.
- Transactions created with
transactedAtin closed periods auto-adjust to current time.
Entity Exemption Types
EDU_PRIVATE, EDU_PUBLIC, FEDERAL_GOV, LOCAL_GOV, NON_PROFIT, STATE_GOV, TRIBAL
Marketplace Values
ALIBABA, AMAZON, APPLE, BEST_BUY, COSTCO, EBAY, ETSY, EVENTBRITE, FLIP, GOOGLE, GUNBROKER, LOWES, MACYS, META, MIRAKL, NEWEGG, NINTENDO, OVERSTOCK, POSHMARK, REVERB, SHOP, SONY, TARGET_PLUS, TIKTOK, WALMART, WAYFAIR
Example
The transaction object is the standard request shape across both the/transactions and /calculations endpoints.
List All Transactions
integer
default:"10"
Number of items to return (1-100)
string
Pagination cursor from a previous
nextCursordatetime
Exclude transactions before this timestamp
datetime
Exclude transactions after this timestamp
Request
GET /transactions
Response
200
Create a Transaction
Creates a new transaction. Uses the same request/response format as the Calculations endpoint.Request
POST /transactions
Response
Returns the transaction plustaxDue and the itemized taxes breakdown. When taxCollected is provided, it is allocated across each jurisdiction entry.
200
Create a Refund Transaction
Creates a refund transaction linked to the original viaparentId. See the Handling Refunds guide for details.
Request
POST /transactions
Response
A refund reduces previously reported liability, so the negative amounts net against the original transaction.taxDue is 0 and taxes is empty when the refund fully offsets the original.
200
Retrieve a Transaction
GET /transactions/:id
Response
Returns the transaction object plustaxDue and the full itemized taxes breakdown (same shape as the Create a Transaction response).
200
Update a Transaction
Updates a transaction by replacing the prior version with the same ID. Requires all transaction properties.PUT /transactions/:id
Delete a Transaction
Permanently deletes a transaction and all related tax information.DELETE /transactions/:id