Skip to main content

Invoices

Admin or project manager permissions required.

Link to documentation

List all invoices

Returns a list of your invoices. The invoices are returned sorted by issue date, with the most recently issued invoices appearing first.

The response contains an object with a invoices property that contains an array of up to per_page invoices. Each entry in the array is a separate invoice object. If no more invoices are available, the resulting array will be empty. Several additional pagination properties are included in the response to simplify paginating your invoices.

Link to documentation

hrvst invoices list
OptionDescriptionRequired
--client_idOnly return invoices belonging to the client with the given ID.false
--project_idOnly return invoices associated with the project with the given ID.false
--updated_sinceOnly return invoices that have been updated since the given date and time.false
--fromOnly return invoices with an issue_date on or after the given date.false
--toOnly return invoices with an issue_date on or before the given date.false
--stateOnly return invoices with a state matching the value provided. Options: draft, open, paid, or closed.false
--pageThe page number to use in pagination. Use all to retrieve all pages.false
--per_pageThe number of records to return per page. Can range between 1 and 2000.false
--fieldsComma separated list of fields to display in the output.false
--outputThe output format: json, tablefalse

Retrieve a specific invoice

Retrieves the invoice with the given ID. Returns an invoice object and a 200 OK response code if a valid identifier was provided.

Link to documentation

hrvst invoices get
OptionDescriptionRequired
--invoice_idThe ID of the invoice you're retrieving.true
--fieldsComma separated list of fields to display in the output.false
--outputThe output format: json, tablefalse

Create a free-form invoice

Creates a new invoice object. Returns an invoice object and a 201 Created response code if the call succeeded.

Link to documentation

hrvst invoices create
OptionDescriptionRequired
--client_idThe ID of the client this invoice belongs to.true
--retainer_idThe ID of the retainer associated with this invoice.false
--estimate_idThe ID of the estimate associated with this invoice.false
--numberIf no value is set, the number will be automatically generated.false
--purchase_orderThe purchase order number.false
--taxThis percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%.false
--tax2This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%.false
--discountThis percentage is subtracted from the subtotal. Example: use 10.0 for 10.0%.false
--subjectThe invoice subject.false
--notesAny additional notes to include on the invoice.false
--currencyThe currency used by the invoice. If not provided, the client’s currency will be used. See a list of supported currenciesfalse
--issue_dateDate the invoice was issued. Defaults to today’s date.false
--due_dateDate the invoice is due. Defaults to the issue_date if no payment_term is specified.false
--payment_termThe timeframe in which the invoice should be paid. Defaults to custom. Options: upon receipt, net 15, net 30, net 45, or net 60.false
--line_items[0]kindThe name of an invoice item category.false
--line_items[0]descriptionText description of the first line item.false
--line_items[0]unit_priceThe individual price per unit.false
--line_items[0]quantityThe unit quantity of the item.false
--line_items[0]taxedWhether the invoice’s tax percentage applies to this line item.false
--line_items[0]taxed2Whether the invoice’s tax2 percentage applies to this line item.false
--line_items[1]kindThe name of an invoice item category.false
--line_items[1]descriptionText description of the second line item.false
--line_items[1]unit_priceThe individual price per unit.false
--line_items[1]quantityThe unit quantity of the item.false
--line_items[1]taxedWhether the invoice’s tax percentage applies to this line item.false
--line_items[1]taxed2Whether the invoice’s tax2 percentage applies to this line item.false
--fieldsComma separated list of fields to display in the output.false
--outputThe output format: json, tablefalse

Update an invoice

Updates the specific invoice by setting the values of the parameters passed. Any parameters not provided will be left unchanged. Returns an invoice object and a 200 OK response code if the call succeeded.

Link to documentation

hrvst invoices update
OptionDescriptionRequired
--invoice_idThe ID of the invoice you're updating.true
--client_idThe ID of the client this invoice belongs to.false
--retainer_idThe ID of the retainer associated with this invoice.false
--estimate_idThe ID of the estimate associated with this invoice.false
--numberIf no value is set, the number will be automatically generated.false
--purchase_orderThe purchase order number.false
--taxThis percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%.false
--tax2This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%.false
--discountThis percentage is subtracted from the subtotal. Example: use 10.0 for 10.0%.false
--subjectThe invoice subject.false
--notesAny additional notes to include on the invoice.false
--currencyThe currency used by the invoice. If not provided, the client’s currency will be used. See a list of supported currenciesfalse
--issue_dateDate the invoice was issued. Defaults to today’s date.false
--due_dateDate the invoice is due.false
--payment_termThe timeframe in which the invoice should be paid. Options: upon receipt, net 15, net 30, net 45, or net 60.false
--fieldsComma separated list of fields to display in the output.false
--outputThe output format: json, tablefalse

Delete an invoice

Delete an invoice. Returns a 200 OK response code if the call succeeded.

Link to documentation

hrvst invoices delete
OptionDescriptionRequired
--invoice_idThe ID of the invoice you're deleting.true
--fieldsComma separated list of fields to display in the output.false
--outputThe output format: json, tablefalse