The Transaction Object
Core Properties
Timestamp when transaction occurred in UTC. 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.
Indicates whether Zamp will recalculate tax when a transaction is posted to Zamp
Marketplace facilitator that collected payment and assumed sales tax responsibility
Customer’s entity type:
EDU_PRIVATE, EDU_PUBLIC, EDUCATIONAL, FEDERAL_GOV, LOCAL_GOV, NON_PROFIT, STATE_GOV, TRIBAL , WHOLESALER, MANUFACTURER, SNAP, INDUSTRIAL_PROCESSING, LESSOR, AGRICULTURAL, MEDICAL, RELIGIOUS, DATA_CENTER, DIRECT_PAY , RESELLERThe currency of the transaction.
This must match the destination country if Zamp is filing the return
Transaction-level discount. Only supports financially viable / rounded amounts (e.g. $10.30)
Transaction-level shipping. Only supports financially viable / rounded amounts (e.g. $10.30)
Transaction-level handling. Only supports financially viable / rounded amounts (e.g. $10.30)
Combined shipping/handling. Only supports financially viable / rounded amounts (e.g. $10.30)
Actual tax collected amount. Only supports financially viable / rounded amounts (e.g. $10.30)
Total including tax and shipping / handling. Only supports financially viable / rounded amounts (e.g. $10.30)
Address Object
Latitude and Longitude. Only available for the destination address. Will be returned on all posted transaction responses
Line Item Properties
- 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. - If
lineItems.amountor any amounts at the line-item level are unrounded, the transaction-level values must be rounded after determining the line-item cost.
Entity Exemption Types
EDU_PRIVATE, EDU_PUBLIC, FEDERAL_GOV, NON_PROFIT, STATE_GOV , RESELLER
Other Entity Types
WHOLESALER, MANUFACTURER, SNAP, INDUSTRIAL_PROCESSING, LESSOR, AGRICULTURAL, MEDICAL, RELIGIOUS, DATA_CENTER, DIRECT_PAY , TRIBAL , LOCAL_GOV
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
Purpose Types
RESALE , BUSINESS_USE, PERSONAL_USE, RENTAL_USE
Example
The transaction object is the standard request shape across both the/transactions and /calculations endpoints.
List All Transactions
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 original 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