openapi: 3.2.0 info: title: Monite Payable line items API contact: name: Monite team url: https://monite.com/about/ email: developers@monite.com termsOfService: https://monite.com/terms version: '1.0' description: 'Operations tagged Payable line items across 3 of this provider''s published API definitions: monite-openapi-2023-09-01.json, monite-openapi-2024-05-25.json, monite-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - url: https://api.dev.monite.com/v1 description: Development environment - url: https://api.sandbox.monite.com/v1 description: Sandbox environment - url: https://api.monite.com/v1 description: Production environment (Europe) - url: https://us.api.monite.com/v1 description: Production environment (North America) - url: https://api.monite.oaknorth.co.uk/v1 description: Oak POC environment tags: - name: Payable line items paths: /payables/{payable_id}/line_items: get: tags: - Payable line items summary: Get the line items of a payable description: 'Get a list of all line items related to a specific payable. Related guide: List all payable line items See also: Manage line items Collect payables' operationId: get_payables_id_line_items parameters: - required: true schema: type: string format: date example: '2023-09-01' name: x-monite-version in: header - required: true schema: type: string format: uuid name: payable_id in: path - description: Sort order (ascending by default). Typically used together with the `sort` parameter. required: false schema: allOf: - $ref: '#/components/schemas/OrderEnum' default: asc name: order in: query - description: The number of items (0 .. 100) to return in a single page of the response. The response may contain fewer items if it is the last or only page. required: false schema: type: integer maximum: 100.0 minimum: 1.0 default: 100 name: limit in: query - description: 'A pagination token obtained from a previous call to this endpoint. Use it to get the next or previous page of results for your initial query. If `pagination_token` is specified, all other query parameters are ignored and inferred from the initial query. If not specified, the first page of results will be returned.' required: false schema: type: string name: pagination_token in: query - description: The field to sort the results by. Typically used together with the `order` parameter. required: false schema: allOf: - $ref: '#/components/schemas/LineItemCursorFields' name: sort in: query - required: false schema: type: string format: uuid name: was_created_by_user_id in: query - description: The ID of the entity that owns the requested resource. required: true schema: type: string format: uuid examples: - 9d2b4c8f-2087-4738-ba91-7359683c49a4 name: x-monite-entity-id in: header responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/LineItemPaginationResponse' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '406': description: Not Acceptable content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] post: tags: - Payable line items summary: Add a line item to a payable description: 'Add a new line item to a specific payable. The `subtotal` and `total` fields of line items are automatically calculated based on the `unit_price`, `quantity`, and `tax` fields, therefore, are read-only and appear only in the response schema. The field `ledger_account_id` is required **only** for account integration, otherwise, it is optional. Related guide: Add line items to a payable See also: Manage line items Collect payables' operationId: post_payables_id_line_items parameters: - required: true schema: type: string format: date example: '2023-09-01' name: x-monite-version in: header - required: true schema: type: string format: uuid name: payable_id in: path - description: The ID of the entity that owns the requested resource. required: true schema: type: string format: uuid examples: - 9d2b4c8f-2087-4738-ba91-7359683c49a4 name: x-monite-entity-id in: header requestBody: content: application/json: schema: $ref: '#/components/schemas/LineItemRequest' required: true responses: '201': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/LineItemResponse' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '406': description: Not Acceptable content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] put: tags: - Payable line items summary: Replaces the lines items in a payable description: 'Replaces the information of all line items of a specific payable. Related guide: Replace all line items See also: Manage line items Collect payables' operationId: put_payables_id_line_items parameters: - required: true schema: type: string format: date example: '2023-09-01' name: x-monite-version in: header - required: true schema: type: string format: uuid name: payable_id in: path - description: The ID of the entity that owns the requested resource. required: true schema: type: string format: uuid examples: - 9d2b4c8f-2087-4738-ba91-7359683c49a4 name: x-monite-entity-id in: header requestBody: content: application/json: schema: $ref: '#/components/schemas/LineItemsReplaceRequest' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/LineItemsReplaceResponse' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '406': description: Not Acceptable content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '409': description: Business logic error content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] servers: - url: https://api.dev.monite.com/v1 description: Development environment - url: https://api.sandbox.monite.com/v1 description: Sandbox environment - url: https://api.monite.com/v1 description: Production environment (Europe) - url: https://us.api.monite.com/v1 description: Production environment (North America) - url: https://api.monite.oaknorth.co.uk/v1 description: Oak POC environment /payables/{payable_id}/line_items/{line_item_id}: get: tags: - Payable line items summary: Get a single line item of a payable description: 'Get information about a specific line item with a given ID. Related guide: Retrieve a line item See also: Manage line items Collect payables' operationId: get_payables_id_line_items_id parameters: - required: true schema: type: string format: date example: '2023-09-01' name: x-monite-version in: header - required: true schema: type: string format: uuid name: line_item_id in: path - required: true schema: type: string format: uuid name: payable_id in: path - description: The ID of the entity that owns the requested resource. required: true schema: type: string format: uuid examples: - 9d2b4c8f-2087-4738-ba91-7359683c49a4 name: x-monite-entity-id in: header responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/LineItemResponse' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '406': description: Not Acceptable content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] patch: tags: - Payable line items summary: Update a line item in a payable description: 'Edits the information of a specific line item. Related guide: Update a line item See also: Manage line items Collect payables' operationId: patch_payables_id_line_items_id parameters: - required: true schema: type: string format: date example: '2023-09-01' name: x-monite-version in: header - required: true schema: type: string format: uuid name: line_item_id in: path - required: true schema: type: string format: uuid name: payable_id in: path - description: The ID of the entity that owns the requested resource. required: true schema: type: string format: uuid examples: - 9d2b4c8f-2087-4738-ba91-7359683c49a4 name: x-monite-entity-id in: header requestBody: content: application/json: schema: $ref: '#/components/schemas/LineItemRequest' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/LineItemResponse' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '406': description: Not Acceptable content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] delete: tags: - Payable line items summary: Delete a line item from a payable description: 'Delete the line item with the given ID. Related guide: Remove a line item See also: Manage line items Collect payables' operationId: delete_payables_id_line_items_id parameters: - required: true schema: type: string format: date example: '2023-09-01' name: x-monite-version in: header - required: true schema: type: string format: uuid name: line_item_id in: path - required: true schema: type: string format: uuid name: payable_id in: path - description: The ID of the entity that owns the requested resource. required: true schema: type: string format: uuid examples: - 9d2b4c8f-2087-4738-ba91-7359683c49a4 name: x-monite-entity-id in: header responses: '204': description: Successful Response '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '406': description: Not Acceptable content: application/json: schema: $ref: '#/components/schemas/ErrorSchemaResponse2' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] servers: - url: https://api.dev.monite.com/v1 description: Development environment - url: https://api.sandbox.monite.com/v1 description: Sandbox environment - url: https://api.monite.com/v1 description: Production environment (Europe) - url: https://us.api.monite.com/v1 description: Production environment (North America) - url: https://api.monite.oaknorth.co.uk/v1 description: Oak POC environment components: schemas: OrderEnum: type: string enum: - asc - desc ErrorSchema2: properties: message: type: string type: object required: - message LineItemPaginationResponse: properties: data: items: $ref: '#/components/schemas/LineItemResponse' type: array next_pagination_token: type: string description: A token that can be sent in the `pagination_token` query parameter to get the next page of results, or `null` if there is no next page (i.e. you've reached the last page). prev_pagination_token: type: string description: A token that can be sent in the `pagination_token` query parameter to get the previous page of results, or `null` if there is no previous page (i.e. you've reached the first page). type: object required: - data HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array type: object ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array msg: type: string type: type: string type: object required: - loc - msg - type LineItemRequest: properties: accounting_tax_rate_id: type: string format: uuid description: ID of the tax rate reference used for accounting integration. May be used to override auto-picked tax rate reference in accounting platform in case of any platform-specific constraints. example: dd13735f-ef3a-4312-8c37-835d70341375 description: type: string description: Description of the product. ledger_account_id: type: string format: uuid description: ID of the account record used to store bookkeeping entries for balance-sheet and income-statement transactions. example: 7df884fd-8be8-4eba-b6ff-417b66efe033 name: type: string description: Name of the product. quantity: type: number minimum: 0.0 description: The quantity of each of the goods, materials, or services listed in the payable. example: 1.22 tax: type: integer maximum: 10000.0 minimum: 0.0 description: 'VAT rate in percent [minor units](https://docs.monite.com/references/currencies#minor-units). Example: 12.5% is 1250.' example: 1250 unit: type: string description: The unit of the product example: meter unit_price: type: integer description: The unit price of the product, in [minor units](https://docs.monite.com/references/currencies#minor-units). For example, $12.50 is represented as 1250. example: 1200 additionalProperties: false type: object ErrorSchemaResponse2: properties: error: $ref: '#/components/schemas/ErrorSchema2' type: object required: - error LineItemsReplaceRequest: properties: data: items: $ref: '#/components/schemas/LineItemInternalRequest' type: array type: object required: - data LineItemInternalRequest: properties: accounting_tax_rate_id: type: string format: uuid description: ID of the tax rate reference used for accounting integration. May be used to override auto-picked tax rate reference in accounting platform in case of any platform-specific constraints. example: dd13735f-ef3a-4312-8c37-835d70341375 description: type: string description: Description of the product. ledger_account_id: type: string format: uuid description: ID of the account record used to store bookkeeping entries for balance-sheet and income-statement transactions. example: 7df884fd-8be8-4eba-b6ff-417b66efe033 name: type: string description: Name of the product. quantity: type: number minimum: 0.0 description: The quantity of each of the goods, materials, or services listed in the payable. example: 1.22 subtotal: type: integer tax: type: integer maximum: 10000.0 minimum: 0.0 description: 'VAT rate in percent [minor units](https://docs.monite.com/references/currencies#minor-units). Example: 12.5% is 1250.' example: 1250 total: type: integer unit: type: string description: The unit of the product example: meter unit_price: type: integer description: The unit price of the product, in [minor units](https://docs.monite.com/references/currencies#minor-units). For example, $12.50 is represented as 1250. example: 1200 additionalProperties: false type: object LineItemCursorFields: type: string enum: - created_at - updated_at LineItemsReplaceResponse: properties: data: items: $ref: '#/components/schemas/LineItemResponse' type: array type: object required: - data LineItemResponse: properties: id: type: string format: uuid accounting_tax_rate_id: type: string format: uuid description: ID of the tax rate reference used for accounting integartion. May be used to override auto-picked tax rate reference in accounting platform in case of any platform-specific constraints. example: dd13735f-ef3a-4312-8c37-835d70341375 description: type: string description: Description of the product. ledger_account_id: type: string format: uuid description: ID of the account record used to store bookkeeping entries for balance-sheet and income-statement transactions. example: 7df884fd-8be8-4eba-b6ff-417b66efe033 name: type: string description: Name of the product. ocr_set_quantity_to_one: type: boolean description: Indicates whether the item's `unit_price` and `quantity` were adjusted by OCR. default: false example: false payable_id: type: string format: uuid quantity: type: number description: The quantity of each of the goods, materials, or services listed in the payable. example: 1.22 subtotal: type: integer description: The subtotal (excluding VAT), in [minor units](https://docs.monite.com/references/currencies#minor-units). example: 1250 tax: type: integer description: 'VAT rate in percent [minor units](https://docs.monite.com/references/currencies#minor-units). Example: 12.5% is 1250.' example: 2000 tax_amount: type: integer description: Tax amount in [minor units](https://docs.monite.com/references/currencies#minor-units). For example, $12.50 is represented as 1250. example: 250 total: type: integer description: The actual price of the product. example: 1200 unit: type: string description: The unit of the product example: meter unit_price: type: integer description: The unit price of the product, in [minor units](https://docs.monite.com/references/currencies#minor-units). For example, $12.50 is represented as 1250. example: 1500 was_created_by_user_id: type: string format: uuid description: ID of the user who created the tag. example: ea837e28-509b-4b6a-a600-d54b6aa0b1f5 type: object required: - id - payable_id securitySchemes: HTTPBearer: type: http scheme: bearer x-refined-from: - monite-openapi-2023-09-01.json - monite-openapi-2024-05-25.json - monite-openapi.yml