Invoices

Updates invoice taxes

Changed on

Recalculates or replaces tax lines on an existing invoice using the supplied tax payload. Use after changing taxable addresses or when integrating an external tax engine result. Returns 400 when the supplied taxes would turn an invoice total that is zero or positive into a negative total. Invoices whose total is already negative can still be updated.

post/invoices/{invoice_id}/taxes

Request

Path parameters

invoice_idstring required

UUID of the invoice whose taxes should be recomputed.

Request body

taxes_calculated_atstring date-time required

ISO 8601 timestamp in UTC timezone (must end with 'Z')

Example request

{
  "items": [
    {
      "tax_rates": [
        {
          "percentage": "0",
          "tax_amount": {
            "amount": "1.01",
            "currency": "USD"
          },
          "country": "US"
        }
      ]
    }
  ]
}

Response

OK

OR

Example response

{
  "invoice_number": "INV01",
  "items": [
    {
      "description": "Description",
      "revenue": {
        "account_code": "11112"
      },
      "total_amount": {
        "amount": "1.01",
        "currency": "USD"
      },
      "total_discount": {
        "amount": "1.01",
        "currency": "USD"
      },
      "taxed_amount": {
        "amount": "1.01",
        "currency": "USD"
      },
      "gross_rate": {
        "amount": "1.01",
        "currency": "USD"
      },
      "quantity": "1.0000",
      "external_references": [
        {
          "type": "xyzSystemId",
          "id": "234",
          "url": "https://xyzsystempage.com/ids/234"
        }
      ]
    }
  ],
  "address": {
    "line1": "123 Main St",
    "line2": "Apt 4B",
    "city": "Nashville",
    "state": "TN",
    "zip_code": "37201",
    "country": "US"
  },
  "customer_address": {
    "line1": "123 Main St",
    "line2": "Apt 4B",
    "city": "Nashville",
    "state": "TN",
    "zip_code": "37201",
    "country": "US"
  },
  "shipping_address": {
    "line1": "123 Main St",
    "line2": "Apt 4B",
    "city": "Nashville",
    "state": "TN",
    "zip_code": "37201",
    "country": "US"
  },
  "net_amount": {
    "amount": "1.01",
    "currency": "USD"
  },
  "amount_due": {
    "amount": "1.01",
    "currency": "USD"
  },
  "total": {
    "amount": "1.01",
    "currency": "USD"
  },
  "subtotal": {
    "amount": "1.01",
    "currency": "USD"
  },
  "total_discount": {
    "amount": "1.01",
    "currency": "USD"
  },
  "purchase_order_number": "1",
  "exchange_rate": {
    "base": "USD",
    "target": "USD"
  },
  "taxed_amount": {
    "amount": "1.01",
    "currency": "USD"
  },
  "external_references": [
    {
      "type": "xyzSystemId",
      "id": "234",
      "url": "https://xyzsystempage.com/ids/234"
    }
  ]
}

Changes

    • breaking

      the //////// request property type changed from number to string, and format from no format to number

    • breaking

      added to the response body oneOf list for the response status

    • breaking

      the response's body type changed from object to no type for status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • info

      added the success response with the status