CreateInvoiceForOrder
Changed on:
8 Aug 2025
Overview
The rule creates an Invoice for the order.
| Plugin Name | Order Reference Module | 
|---|---|
| Namespace | [[account.id]].order | 
The Order Reference Module is the foundation for order-related implementations. It provides reference workflows for click & collect, home delivery and mixed baskets and those needed to build your own. Extensible by design, use this Module as a base to build a solution to your customers' needs.
UI Description
Creates an Invoice for the order. This rule has the following two props PROP_INVOICE_TYPE and PROP_INVOICE_ITEM_TYPE. If they are not provided it will take the respective default values.
Accepts
- ORDER
Actions
- This rule produces an action that triggers a GraphQL createInvoice mutation
Rule parameters
| Parameter | Description | 
| invoiceType | Invoice Type, default value = INVOICE | 
| invoiceItemType | Invoice Item Type, default value = INVOICE_ITEM | 
Event attributes
| Parameter | Description | Data Type | Required? | 
| entityReference | The billing account ref | Entity Reference object | Required | 
Exceptions
This rule will throw an IllegalArgumentException
- if the `accountId/retailerId/entityId/entityType/entitySubtype/eventName/entityReference in event attributes`property is not provided
- if the order with the `orderId`not found
- if the setting `DEFAULT_TAX_TYPE`not found or invalid
- if an invoice item is not created
All generated exceptions will be wrapped with RubixException: 422.
Configuration example
1{
2  "name": "<ACCOUNTID>.order.CreateInvoiceForOrder",
3  "props": {
4    "invoiceType": "INVOICE",
5    "invoiceItemType": "INVOICE_ITEM"
6  }
7}