---
title: "Creating a new Invoice"
method: POST
path: "/invoices"
tags: ["Invoices"]
---

# Creating a new Invoice

`POST /invoices`

## Request

- Base URL: `https://api.mavenlink.com/api/v1`
- URL: `https://api.mavenlink.com/api/v1/invoices`
- Auth: none declared

This endpoint returns structured Invoice objects.
As with all Kantata OX API endpoints, the returned data will be referenced in sorted order in the `results` array
and will be indexed by ID in the `invoices` top-level JSON key.
Please see our [Response Format](#section/Response-Format) section for more information.

## Query parameters

- `include` string

## Request body

- object
  - `invoice` object
    - `time_entry_ids` integer[]: [Time Entry](/tag/Time-Entries) IDs. (At least one of the following is required: time_entry_ids, expense_ids, additional_items, fixed_fee_items, or billing_milestone_ids.).
    - `expense_ids` integer[]: [Expense](/tag/Expenses) IDs. (At least one of the following is required: time_entry_ids, expense_ids, additional_items, fixed_fee_items, or billing_milestone_ids.).
    - `fixed_fee_items` object[]: Fixed fee item objects to create (At least one of the following is required: time_entry_ids, expense_ids, additional_items, fixed_fee_items, or billing_milestone_ids.).
      - `notes` string: Notes to display on the fixed fee item.
      - `amount` integer: The value of the fixed fee item, in the currency's main unit. Dollars, for example.
      - `taxable` boolean: Whether the fixed fee item is taxable.
      - `story_id` integer: The ID of the [Story](/tag/Stories) associated with the fixed fee item.
      - `workspace_id` integer: The ID of the [Workspace](/tag/Workspaces) associated with the fixed fee item.
    - `additional_items` object[]: Additional item objects to create (At least one of the following is required: time_entry_ids, expense_ids, additional_items, fixed_fee_items, or billing_milestone_ids.).
      - `notes` string: Notes to be displayed on the additional item.
      - `amount` integer: The value of the additional item, in the currency's main unit. Dollars, for example.
      - `taxable` boolean: Whether the additional item is taxable.
      - `workspace_id` integer: The ID of the [Workspace](/tag/Workspaces) associated with the additional item.
    - `workspace_id` integer: The ID of the [Workspace](/tag/Workspaces) in which to create the invoice. (Either `workspace_id` or `workspace_ids` is required.).
    - `workspace_ids` integer[]: The IDs of the [Workspaces](/tag/Workspaces) in which to create the (multi-project) invoice. (Either `workspace_id` or `workspace_ids` is required.).
    - `payment_schedule` integer, required: The number of days within which the total amount of the invoice is expected to be paid. For example, use `30` for a Net 30 payment schedule. See https://en.wikipedia.org/wiki/Net_D.
    - `invoice_date` string, date: The invoice date. The date must be in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format.
    - `user_invoice_number` integer: The invoice number (defined by the user).
    - `draft` boolean: Whether the invoice is a draft.
    - `message` string: Notes to be displayed on the invoice.
    - `user_invoice_title` string: The invoice title (defined by the user).
    - `purchase_order` string: The invoice purchase order (defined by the user).
    - `project_code` string: The invoice project code (defined by the user).
    - `suppress_emails` boolean: Setting suppress_emails to true will prevent creation emails from being sent.
    - `billing_milestone_ids` integer[]: The IDs of [billing milestones](/tag/Billing-Milestones) to add to the invoice. (At least one of the following is required: time_entry_ids, expense_ids, additional_items, fixed_fee_items, or billing_milestone_ids.).
    - `external_reference` object: Typically populated programmatically by a third party system via an integration, this is an optional object that holds data from an external system. It connects objects in an external system with objects in Kantata OX (for example, to connect a Jira issue to a Kantata OX Project).
      - `service_name` string, required: The provider name of the integration. If you are adding multiple external references to the same object, the `service_name` must be unique.
      - `service_model` string, required: The object type of the external object this external reference belongs to.
      - `service_model_ref` string, required: The object ID of the external object this external reference belongs to.
      - `status` string: The status of the integration. Options are `successful`, `pending`, or `failed`.
      - `external_message` string: The message on the external object.
      - `external_link` string: The link to the external object.
      - `external_status` string: The status of the external object in the external system.
      - `locked` boolean: Whether the subject is locked.

## Response `200`

Invoice has been created.

- object
  - `count` integer
  - `meta` object
    - `count` integer
    - `page_count` integer
    - `page_number` integer
    - `page_size` integer
  - `results` object[]
    - `key` string
    - `id` string
  - `invoices` object
  - `external_references` object
  - `users` object
  - `workspaces` object
  - `additional_items` object
  - `time_entries` object
  - `expenses` object
  - `expense_budgets` object
  - `fixed_fee_items` object
  - `billing_milestones` object

## Other responses

- `400`: Bad Request
- `401`: Unauthorized request
- `403`: Forbidden request
- `404`: Page Not Found
- `422`: Unprocessable Entity
- `503`: Service is unavailable

---

[API](https://skmtc.dev/kantata/apis/kantata-ox-api-documentation.md) - [All operations](https://skmtc.dev/kantata/apis/kantata-ox-api-documentation/llms.txt) - [OpenAPI document](https://skmtc.dev/kantata/apis/kantata-ox-api-documentation/revisions/9d4ebed2fa98?raw)
