Tax Transactions

The Tax Transaction object

Attributes

  • idstring

    Unique identifier for the transaction.

  • objectstring

    String representing the object’s type. Objects of the same type share the same value.

  • currencystring

    Three-letter ISO currency code, in lowercase. Must be a supported currency.

  • customer_detailsobject

    The customer’s details, such as address and tax IDs.

  • line_itemsnullable objectExpandable

    The tax collected or refunded, by line item.

  • metadatanullable object

    Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

  • referencestring

    A custom unique identifier, such as ‘myOrder_123’.

  • typeenum

    If reversal, this transaction reverses an earlier transaction.

    Possible enum values
    reversal

    Represents a partial or full reversal of an earlier transaction.

    transaction

    Represents a customer sale or order.

More attributes

  • createdtimestamp

  • customernullable string

  • livemodeboolean

  • reversalnullable object

  • shipping_costnullable object

  • tax_datetimestamp

The Tax Transaction object
{
"id": "tax_1NaS0I2eZvKYlo2CRuMhUcmz",
"object": "tax.transaction",
"created": 1690932566,
"currency": "usd",
"customer": null,
"customer_details": {
"address": {
"city": "South San Francisco",
"country": "US",
"line1": "354 Oyster Point Blvd",
"line2": "",
"postal_code": "94080",
"state": "CA"
},
"address_source": "shipping",
"ip_address": null,
"tax_ids": [],
"taxability_override": "none"
},
"line_items": {
"object": "list",
"data": [
{
"id": "tax_li_ONCP443tgfS8I1",
"object": "tax.transaction_line_item",
"amount": 1499,
"amount_tax": 148,
"livemode": false,
"metadata": null,
"product": null,
"quantity": 1,
"reference": "Pepperoni Pizza",
"reversal": null,
"tax_behavior": "exclusive",
"tax_code": "txcd_40060003",
"type": "transaction"
}
],
"has_more": false,
"url": "/v1/tax/transactions/tax_1NaS0I2eZvKYlo2CRuMhUcmz/line_items"
},
"livemode": false,
"metadata": null,
"reference": "myOrder_123",
"reversal": null,
"shipping_cost": {
"amount": 300,
"amount_tax": 0,
"tax_behavior": "exclusive",
"tax_code": "txcd_92010001"
},
"ship_from_details": {
"address": {
"postal_code": "75001",
"state": "TX",
"country": "US"
}
},
"tax_date": 1690932566,
"type": "transaction"
}

Create a reversal transaction

Partially or fully reverses a previously created Transaction.

Parameters

  • modeenumRequired

    If partial, the provided line item or shipping cost amounts are reversed. If full, the original transaction is fully reversed.

    Possible enum values
    full

    The original transaction is fully reversed.

    partial

    The provided line item amounts are reversed.

  • original_transactionstringRequired

    The ID of the Transaction to partially or fully reverse.

  • referencestringRequired

    A custom identifier for this reversal, such as myOrder_123-refund_1, which must be unique across all transactions. The reference helps identify this reversal transaction in exported tax reports.

  • flat_amountintegerRequired if mode=partial and line_items nor shipping_cost provided

    A flat amount to reverse across the entire transaction, in the smallest currency unit in negative. This value represents the total amount to refund from the transaction, including taxes.

  • line_itemsarray of objectsRequired if mode=partial and neither shipping_cost nor flat_amount is provided

    The line item amounts to reverse.

  • metadataobject

    Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.

More parameters

  • shipping_costobjectRequired if mode=partial and neither line_items nor flat_amount is provided

Returns

A new Tax Transaction object representing the reversal.

POST /v1/tax/transactions/create_reversal
curl https://api.stripe.com/v1/tax/transactions/create_reversal \
-u "sk_test_4eC39Hq...arjtT1zdp7dcsk_test_4eC39HqLyjWDarjtT1zdp7dc:" \
-d mode=partial \
-d original_transaction=tax_1NaTVd2eZvKYlo2CoOX2Nf7P \
-d reference=myOrder_123-refund_1 \
-d "line_items[0][amount]"=-1499 \
-d "line_items[0][amount_tax]"=-148 \
-d "line_items[0][original_line_item]"=tax_li_ONDxh8JZw14sP8 \
-d "line_items[0][reference]"="refund of Pepperoni Pizza" \
-d "expand[0]"=line_items
Response
{
"id": "tax_1NaTVd2eZvKYlo2CoOX2Nf7P",
"object": "tax.transaction",
"created": 1690938353,
"currency": "usd",
"customer": null,
"customer_details": {
"address": {
"city": null,
"country": "US",
"line1": "354 Oyster Point Blvd",
"line2": "",
"postal_code": "94080",
"state": "CA"
},
"address_source": "shipping",
"ip_address": null,
"tax_ids": [],
"taxability_override": "none"
},
"line_items": {
"object": "list",
"data": [
{
"id": "tax_li_ONDxh8JZw14sP8",
"object": "tax.transaction_line_item",
"amount": 1499,
"amount_tax": 148,
"livemode": false,
"metadata": null,
"product": null,
"quantity": 1,
"reference": "Pepperoni Pizza",
"reversal": null,
"tax_behavior": "exclusive",
"tax_code": "txcd_40060003",
"type": "transaction"
}
],
"has_more": false,
"url": "/v1/tax/transactions/tax_1NaTVd2eZvKYlo2CoOX2Nf7P/line_items"
},
"livemode": false,
"metadata": null,
"reference": "myOrder_123",
"reversal": null,
"shipping_cost": {
"amount": 300,
"amount_tax": 0,
"tax_behavior": "exclusive",
"tax_code": "txcd_92010001"
},
"tax_date": 1690938353,
"type": "transaction"
}

Create a transaction from a calculation

Creates a Tax Transaction from a calculation.

Parameters

  • calculationstringRequired

    Tax Calculation ID to be used as input when creating the transaction.

  • referencestringRequired

    A custom order or sale identifier, such as ‘myOrder_123’. Must be unique across all transactions, including reversals.

  • metadataobject

    Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.

Returns

A Tax Transaction object.

POST /v1/tax/transactions/create_from_calculation
curl https://api.stripe.com/v1/tax/transactions/create_from_calculation \
-u "sk_test_4eC39Hq...arjtT1zdp7dcsk_test_4eC39HqLyjWDarjtT1zdp7dc:" \
-d calculation=taxcalc_1NaTVT2eZvKYlo2CsqGeLeU2 \
-d reference=myOrder_123 \
-d "expand[]"=line_items
Response
{
"id": "tax_1NaTVd2eZvKYlo2CoOX2Nf7P",
"object": "tax.transaction",
"created": 1690938353,
"currency": "usd",
"customer": null,
"customer_details": {
"address": {
"city": null,
"country": "US",
"line1": "354 Oyster Point Blvd",
"line2": "",
"postal_code": "94080",
"state": "CA"
},
"address_source": "shipping",
"ip_address": null,
"tax_ids": [],
"taxability_override": "none"
},
"line_items": {
"object": "list",
"data": [
{
"id": "tax_li_ONDxh8JZw14sP8",
"object": "tax.transaction_line_item",
"amount": 1499,
"amount_tax": 148,
"livemode": false,
"metadata": null,
"product": null,
"quantity": 1,
"reference": "Pepperoni Pizza",
"reversal": null,
"tax_behavior": "exclusive",
"tax_code": "txcd_40060003",
"type": "transaction"
}
],
"has_more": false,
"url": "/v1/tax/transactions/tax_1NaTVd2eZvKYlo2CoOX2Nf7P/line_items"
},
"livemode": false,
"metadata": null,
"reference": "myOrder_123",
"reversal": null,
"shipping_cost": {
"amount": 300,
"amount_tax": 0,
"tax_behavior": "exclusive",
"tax_code": "txcd_92010001"
},
"tax_date": 1690938353,
"type": "transaction"
}

Retrieve a transaction's line items

Retrieves the line items of a committed standalone transaction as a collection.

Parameters

  • ending_beforestring

    A cursor for use in pagination. ending_before is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with obj_bar, your subsequent call can include ending_before=obj_bar in order to fetch the previous page of the list.

  • limitinteger

    A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.

  • starting_afterstring

    A cursor for use in pagination. starting_after is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include starting_after=obj_foo in order to fetch the next page of the list.

Returns

A list of Line Item objects if the Tax Transaction is found. Otherwise returns a ‘not found’ error.

GET /v1/tax/transactions/:id/line_items
curl https://api.stripe.com/v1/tax/transactions/tax_1NaTVd2eZvKYlo2CoOX2Nf7P/line_items \
-u "sk_test_4eC39Hq...arjtT1zdp7dcsk_test_4eC39HqLyjWDarjtT1zdp7dc:"
Response
{
"id": "tax_1NaTVd2eZvKYlo2CoOX2Nf7P",
"object": "list",
"url": "/v1/tax/transactions/tax_1NaTVd2eZvKYlo2CoOX2Nf7P/line_items",
"has_more": false,
"data": [
{
"id": "tax_li_ONDxh8JZw14sP8",
"object": "tax.transaction_line_item",
"amount": 1499,
"amount_tax": 148,
"livemode": false,
"metadata": null,
"product": null,
"quantity": 1,
"reference": "Pepperoni Pizza",
"reversal": null,
"tax_behavior": "exclusive",
"tax_code": "txcd_40060003",
"type": "transaction"
}
]
}
Stripe Shell
Test mode
Welcome to the Stripe Shell! Stripe Shell is a browser-based shell with the Stripe CLI pre-installed. Log in to your Stripe account and press Control + Backtick (`) on your keyboard to start managing your Stripe resources in test mode. - View supported Stripe commands: - Find webhook events: - Listen for webhook events: - Call Stripe APIs: stripe [api resource] [operation] (e.g., )
The Stripe Shell is best experienced on desktop.
$