Invoices

Preview invoice

Changed on

The preview endpoint lets you simulate invoice line item generation without persisting any changes. It returns the exact line items and invoice attributions that would be created for a given invoice based on the selected invoicing method and options.

  • Builds line items using the same logic as the line items "generate" method
  • Returns data only, does not modify the invoice
get/api/v2/invoices/{id}/preview

Request

  • Base URL
    https://developer.productive.io (the document declares no server; this is the origin it was published from)
  • URL
    https://developer.productive.io/api/v2/invoices/{id}/preview
  • Auth
    none declared

Path parameters

idstring required

ID

Response

Single invoice

Example response

{
  "data": {
    "id": "234",
    "type": "invoices",
    "attributes": {
      "number": "INV-2026-001",
      "status": "draft",
      "due_date": "2026-04-15",
      "date": "2026-03-15",
      "created_at": "2026-03-15T09:00:00.000+00:00",
      "updated_at": "2026-03-15T09:00:00.000+00:00",
      "total": "12500.00",
      "subtotal": "11363.64",
      "tax": "1136.36",
      "currency": "USD",
      "notes": "Payment due within 30 days",
      "last_activity_at": "2026-03-15T09:00:00.000+00:00"
    },
    "relationships": {
      "company": {
        "data": {
          "type": "companies",
          "id": "65111"
        }
      },
      "deal": {
        "data": {
          "type": "deals",
          "id": "89"
        }
      },
      "subsidiary": {
        "data": null
      }
    }
  },
  "included": []
}

Changes

    • info

      added the non-success response with the status

    • info

      added the non-success response with the status

    • info

      added the non-success response with the status

    • info

      added the non-success response with the status

    • info

      added the non-success response with the status

    • info

      added the non-success response with the status

    • info

      added the non-success response with the status

    • breaking

      the response property // became nullable for the status

    • breaking

      the response property // became nullable for the status

    • breaking

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

    • breaking

      the // response's property type changed from integer to no type for status

    • breaking

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

    • breaking

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

    • breaking

      the // response's property type changed from string to no type, and format from date-time to no format for status

    • breaking

      the // response's property type changed from string to no type, and format from date to no format for status

    • breaking

      the // response's property type changed from number to no type for status

    • breaking

      the // response's property type changed from number to no type for status

    • breaking

      the // response's property type changed from string to no type for status

    • breaking

      the // response's property type changed from integer to no type for status

    • breaking

      the // response's property type changed from string to no type for status

    • breaking

      the // response's property type changed from string to no type, and format from date-time to no format for status

    • breaking

      the // response's property type changed from string to no type, and format from date-time to no format for status

    • breaking

      the // response's property type changed from string to no type, and format from date to no format for status

    • breaking

      the // response's property type changed from integer to no type for status

    • breaking

      the // response's property type changed from string to no type for status

    • breaking

      the // response's property type changed from string to no type for status

    • breaking

      the // response's property type changed from string to no type, and format from date to no format for status

    • breaking

      the // response's property type changed from integer to no type for status

    • breaking

      the // response's property type changed from string to no type for status

    • breaking

      the // response's property type changed from string to no type for status

    • breaking

      the // response's property type changed from string to no type, and format from date to no format for status

    • breaking

      the // response's property type changed from string to no type for status

    • breaking

      the // response's property type changed from string to no type for status

    • breaking

      the // response's property type changed from string to no type for status

    • breaking

      the // response's property type changed from number to no type for status

    • breaking

      the // response's property type changed from string to no type for status

    • breaking

      the // response's property type changed from number to no type for status

    • warning

      deleted the header request parameter X-Organization-Id

    • warning

      removed the optional property // from the response with the status

    • info

      added to the // response property anyOf list for the response status

    • info

      added to the // response property anyOf list for the response status

    • info

      added to the // response property anyOf list for the response status

    • info

      added to the // response property anyOf list for the response status

    • info

      added to the // response property anyOf list for the response status

    • info

      added to the // response property anyOf list for the response status

    • info

      added to the // response property anyOf list for the response status

    • info

      added to the // response property anyOf list for the response status

    • info

      added to the // response property anyOf list for the response status

    • info

      added to the // response property anyOf list for the response status

    • info

      added to the // response property anyOf list for the response status

    • info

      added to the // response property anyOf list for the response status

    • info

      added to the // response property anyOf list for the response status

    • info

      added to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 subschema #3 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 subschema #3 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      added subschema #2 to the // response property anyOf list for the response status

    • info

      removed subschema #1: Collection data from the // response property anyOf list for the response status

    • info

      removed subschema #1: Collection data from the // response property anyOf list for the response status

    • info

      removed subschema #1: Collection data from the // response property anyOf list for the response status

    • info

      removed subschema #1: Single data from the // response property anyOf list for the response status

    • info

      removed subschema #1: Single data from the // response property anyOf list for the response status

    • info

      removed subschema #1: Single data from the // response property anyOf list for the response status

    • info

      removed subschema #1: Single data from the // response property anyOf list for the response status

    • info

      removed subschema #1: Single data from the // response property anyOf list for the response status

    • info

      removed subschema #1: Single data from the // response property anyOf list for the response status

    • info

      removed subschema #1: Single data from the // response property anyOf list for the response status

    • info

      removed subschema #1: Single data from the // response property anyOf list for the response status

    • info

      removed subschema #1: Single data from the // response property anyOf list for the response status

    • info

      removed subschema #1: Single data from the // response property anyOf list for the response status

    • info

      removed subschema #1: Single data from the // response property anyOf list for the response status

    • info

      the response property //// became required for the status

    • info

      the response property ///// became required for the status

    • info

      the response property //// became required for the status

    • info

      the response property ///// became required for the status

    • info

      the response property //// became required for the status

    • info

      the response property ///// became required for the status

    • info

      the response property //// became required for the status

    • info

      the response property ///// became required for the status

    • info

      the response property //// became required for the status

    • info

      the response property ///// became required for the status

    • info

      the response property //// became required for the status

    • info

      the response property ///// became required for the status

    • info

      the response property //// became required for the status

    • info

      the response property ///// became required for the status

    • info

      the response property //// became required for the status

    • info

      the response property ///// became required for the status

    • info

      the response property //// became required for the status

    • info

      the response property ///// became required for the status

    • info

      the response property //// became required for the status

    • info

      the response property ///// became required for the status

    • info

      the response property //// became required for the status

    • info

      the response property ///// became required for the status

    • info

      the response property //// became required for the status

    • info

      the response property ///// became required for the status

    • info

      the response property //// became required for the status

    • info

      the response property ///// became required for the status

    • info

      the response property //// became required for the status

    • info

      the response property ///// became required for the status

    • info

      removed the 1.00 enum value from the // response property for the response status

    • info

      removed the 10.00 enum value from the // response property for the response status

    • info

      removed the 11.00 enum value from the // response property for the response status

    • info

      removed the 2.00 enum value from the // response property for the response status

    • info

      removed the 3.00 enum value from the // response property for the response status

    • info

      removed the 4.00 enum value from the // response property for the response status

    • info

      removed the 5.00 enum value from the // response property for the response status

    • info

      removed the 6.00 enum value from the // response property for the response status

    • info

      removed the 7.00 enum value from the // response property for the response status

    • info

      removed the 8.00 enum value from the // response property for the response status

    • info

      removed the 9.00 enum value from the // response property for the response status

    • info

      removed the days_after_invoice_date enum value from the // response property for the response status

    • info

      removed the due_upon_receipt enum value from the // response property for the response status

    • info

      removed the end_of_month enum value from the // response property for the response status

    This list may be incomplete.