A transaction records a completed sale. Numeral files and remits tax based on the transactions recorded in each jurisdiction and period. Create one from a calculation after the customer pays: you need its
id, which keeps the tax and accounting information together for filing. Record returns against the transaction as refunds.Where transactions fit
The Transaction object
Attributes
string
The ID of the transaction,
tr_…. Store it: refunds and lookups use it.string, value is "tax.transaction"
String representing the object’s type.
string
The calculation this transaction was created from.
string
Your order ID, as sent when creating the transaction.
string
ISO 4217 currency code of the transaction.
string
Currency the tax on this transaction will be filed and remitted in.
array of objects
The line items from the calculation.
string
Numeral-generated ID for this line item.
object
reference_line_item_id, reference_product_id, reference_product_name and product_tax_code, as on the calculation.array of objects
One row per taxing jurisdiction:
tax_rate, rate_type, jurisdiction_name, fee_amount, and note. Same fields as on the calculation.number
Tax on the line, in the currency’s smallest unit.
number
Line amount before tax.
number
Line amount including tax.
number
Quantity sold.
timestamp
Unix seconds when the sale was made. If you didn’t send it, when the transaction was created.
boolean
true if made with a test API key. Live transactions count toward your nexus totals, and Numeral files them where you’re registered and collecting.object
Key-value pairs from the request, echoed unchanged. Only present when sent.
The Transaction object
Create a transaction
Records a sale from a calculation. Create it after the customer pays. The payload is small because the tax details come from the calculation. Try it in the API reference.Parameters
string
required
The
id of the calculation to record as a sale.string
required
Your order ID.
number
When the sale was made, Unix seconds. Defaults to when the transaction is created.
object
String key-value pairs, echoed back in the response. Same limits as on the calculation.
Returns
A Transaction object.POST /tax/transactions
Response
Retrieve a transaction
Returns a transaction by itsid. Try it in the API reference.string
required
The transaction’s
id.Returns
A Transaction object.GET /tax/transactions/:id
Delete a transaction
Deletes a transaction, for example one recorded by mistake. To record a return, create a refund instead. Try it in the API reference.string
required
The transaction’s
id.Returns
The deleted object type and when it was deleted.DELETE /tax/transactions/:id
Response
The Refund object
A refund records money returned to the customer against a transaction.Attributes
string
The ID of the refund,
ref_tr_…. Store it: reversing the refund needs it.string, value is "tax.refund"
String representing the object’s type.
enum
full or partial. Returned when the refund is created or reversed, not when listed.timestamp
Unix seconds when the refund was made. If you didn’t send it, when the refund was created.
boolean
true if made with a test API key.array of objects
The refunded line items. Same fields as the transaction’s line items.
The Refund object
Create a refund
Records a full or partial refund against a transaction. Try it in the API reference.Parameters
string
required
The
id of the transaction to refund, as returned when you created it.enum
required
full refunds everything and needs no line_items. partial refunds the line_items you send.number
When the refund was made, Unix seconds. Defaults to now.
array of objects
Required for
partial refunds. Identify each line by reference_product_id.string
The product to refund. Numeral finds the line on the original transaction with this
reference_product_id.number
Sale amount refunded on this line, excluding tax, as a negative number (e.g.
-200).number
Tax refunded on this line, as a negative number (e.g.
-14).number
Quantity refunded.
string
Your line item ID, used only for reporting.
Returns
A Refund object.POST /tax/refunds
List refunds for a transaction
Returns every refund recorded against a transaction. Try it in the API reference.string
required
The transaction’s
id.Returns
An object with arefunds array of Refund objects, without refund_type.GET /tax/transactions/:id/refunds
Response
Reverse a refund
Undoes a refund you created, for example one recorded by mistake. Try it in the API reference.string
The
id of the refund to reverse.Returns
A Refund object.POST /tax/refund_reversals
Errors
Errors in this version return anerror object with error_code and error_message, and sometimes error_meta with details such as the offending field. The request ID is in the X-Request-Id response header, not the body.400