» Order PATCH API Documentation

Update Order Billing Preferences: /orders/{order_id}/billing-preferences

PATCH
https://dev-api.exsited.com/api/v3/orders/{order_id}/billing-preferences
Try It Out
Purpose

This endpoint updates the billing preferences of a specific order, including invoice settings, payment options, fulfillment rules, and consolidation behavior.

Use Case

The endpoint is used to change the billing preferences that how a specific order should be invoiced and paid. For example, if an admin wants to switch an order from manual to automatic billing, change the payment processor from cheque to cash or others, update the invoice term to "Net -7", this endpoint allows them to perform those updates dynamically.

Path Parameters
ParameterType
Description
order_id
String
Unique identifier of the order
Query Parameters

No query parameters required for this endpoint.

Request Body

The request should include a new set of billing preference values under the order > properties object.

{
  "order": {
    "properties": {
      "communication_profile": "STRING_VALUE",
      "invoice_mode": "STRING_VALUE",
      "invoice_term": "STRING_VALUE",
      "billing_period": "STRING_VALUE",
      "payment_processor": "STRING_VALUE",
      "payment_mode": "STRING_VALUE",
      "payment_term": "STRING_VALUE",
      "payment_term_alignment": "STRING_VALUE",
      "fulfillment_mode": "STRING_VALUE",
      "fulfillment_term": "STRING_VALUE",
      "pro_rata_partial_charging_period": "BOOLEAN",
      "pro_rata_partial_pricing_period": "BOOLEAN",
      "pro_rata_partial_unit": "BOOLEAN"
    }
  }
}
Attribute
Type
Description
communication_profile
String
Name of the communication profile.
invoice_mode
String
Invoicing mode (MANUAL, AUTOMATIC).
invoice_term
String
Terms of the invoice
billing_period
String
Period for recurring billing
payment_processor
String
Processor used to handle payments.
payment_mode
String
Payment mode (MANUAL, AUTOMATIC).
payment_term
String
Payment term .
payment_term_alignment
String
Alignment rule for payment terms.
fulfillment_mode
String
Mode of order fulfillment
fulfillment_term
String
Term for fulfilling the order
Response

The endpoint returns the updated billing preferences of the order, including both submitted and system-managed fields like consolidation settings. These preferences define how the order will be invoiced, paid, and fulfilled moving forward.

Response Body
{
  "order": {
    "properties": {
      "communication_profile": "STRING_VALUE",
      "invoice_mode": "STRING_VALUE",
      "invoice_term": "STRING_VALUE",
      "billing_period": "STRING_VALUE",
      "consolidate_invoice": "BOOLEAN",
      "consolidate_key": "STRING_VALUE",
      "payment_processor": "STRING_VALUE",
      "payment_mode": "STRING_VALUE",
      "payment_term": "STRING_VALUE",
      "payment_term_alignment": "STRING_VALUE",
      "fulfillment_mode": "STRING_VALUE",
      "fulfillment_term": "STRING_VALUE"
    }
  }
}
Attribute
Type
Description
communication_profile
String
Updated communication profile used for this order.
invoice_mode
String
Invoice generation mode .
invoice_term
String
Terms under which the invoice is considered due.
billing_period
String
Updated billing frequency for the order.
consolidate_invoice
String
Whether invoices should be consolidated .
consolidate_key
String
Identifier used for invoice consolidation grouping.
payment_processor
String
Payment processor to use .
payment_mode
String
Mode of payment execution .
payment_term
String
Payment due terms.
payment_term_alignment
String
Alignment for calculating payment terms.
fulfillment_mode
String
How the order will be fulfilled .
fulfillment_term
String
Timeline or terms for fulfillment .

Update Order Information: /orders/{order_id}/information

PATCH
https://dev-api.exsited.com/api/v3/orders/{order_id}/information
Try It Out
Purpose

This API is used to update general order information such as name, display name, description, purchase order reference, origin, and invoice notes. It allows partial modification of existing order data without altering billing, workflow, or order line configurations.

Use Case

This API is typically used when a user needs to modify order details after creation, for example, updating the order name to match a new version, changing the description to reflect additional details, updating customer purchase order references, or adding invoice notes. It provides flexibility to keep order information up to date as the order progresses through its lifecycle.

Path Parameters
ParameterTypeDescription
order_idStringUnique identifier of the order whose information is being updated.
Query Parameters

This endpoint does not accept query parameters.

Request Body
{
    "order": {
        "name": "ORDER_NAME_PLACEHOLDER",
        "display_name": "DISPLAY_NAME_PLACEHOLDER",
        "description": "ORDER_DESCRIPTION_PLACEHOLDER",
        "customer_purchase_order_id": "CUSTOMER_PO_ID_PLACEHOLDER",
        "origin": "ORDER_ORIGIN_PLACEHOLDER",
        "invoice_note": "INVOICE_NOTE_PLACEHOLDER"
    }
}
Attribute Type Description
order Object Root object that contains all order details to be updated.
name String Updated name of the order.
display_name String Display name of the order visible in user interfaces or reports.
description String Detailed description or note providing context for the order.
customer_purchase_order_id String Customer’s external purchase order reference ID linked to this order.
origin String Specifies the origin or source context from which the order was created.
invoice_note String Note or comment that appears on the invoices related to this order.
Response

A successful request returns the updated order object with all modified attributes. The response includes essential order information such as name, display name, description, invoice note, purchase order reference, and metadata like timestamps, user details, and currency. It confirms that the order’s information has been successfully updated while maintaining its active status and preserving all other order properties, billing data, and associations.

Response Body
{
  "order": {
    "status": "ORDER_STATUS",
    "id": "ORDER_ID",
    "pre_order": "BOOLEAN",
    "quote_order": "BOOLEAN",
    "name": "ORDER_NAME",
    "display_name": "DISPLAY_NAME",
    "description": "ORDER_DESCRIPTION",
    "referral_account": "REFERRAL_ACCOUNT",
    "customer_purchase_order_id": "CUSTOMER_PO_ID",
    "shipping_profile": {},
    "shipping_cost": "SHIPPING_COST",
    "discount_profile": "DISCOUNT_PROFILE",
    "origin": "ORDER_ORIGIN",
    "custom_forms": {
      "uuid": "CUSTOM_FORM_UUID",
      "name": "CUSTOM_FORM_NAME"
    },
    "currency": {
      "uuid": "CURRENCY_UUID",
      "name": "CURRENCY_NAME",
      "link": "CURRENCY_LINK"
    },
    "time_zone": {
      "uuid": "TIME_ZONE_UUID",
      "name": "TIME_ZONE_NAME",
      "link": "TIME_ZONE_LINK"
    },
    "invoice_note": "INVOICE_NOTE",
    "communication_preference": [
      {
        "media": "COMM_MEDIA",
        "isEnabled": "BOOLEAN"
      }
    ],
    "billing_start_date": "BILLING_START_DATE",
    "order_start_date": "ORDER_START_DATE",
    "next_billing_from_date": "NEXT_BILLING_DATE",
    "price_tax_inclusive": "BOOLEAN",
    "billing_address": {
      "name": "BILLING_NAME",
      "address_line_1": "ADDRESS_LINE_1",
      "address_line_2": "ADDRESS_LINE_2",
      "address_line_3": "ADDRESS_LINE_3",
      "address_line_4": "ADDRESS_LINE_4",
      "address_line_5": "ADDRESS_LINE_5",
      "post_code": "POST_CODE",
      "city": "CITY",
      "state": "STATE",
      "country": "COUNTRY"
    },
    "shipping_address": {},
    "created_by": "CREATED_BY",
    "created_on": "CREATED_TIMESTAMP",
    "last_updated_by": "LAST_UPDATED_BY",
    "last_updated_on": "LAST_UPDATED_TIMESTAMP",
    "uuid": "ORDER_UUID",
    "version": "ORDER_VERSION",
    "account_id": "ACCOUNT_ID",
    "account_name": "ACCOUNT_NAME",
    "allow_contract": "BOOLEAN",
    "custom_attributes": [
      { "name": "CUSTOM_ATTRIBUTE_NAME", "value": "CUSTOM_ATTRIBUTE_VALUE" }
    ],
    "custom_objects": [],
    "currency_id": "CURRENCY_ID",
    "invoice_id": "INVOICE_ID",
    "total": "ORDER_TOTAL",
    "subtotal": "ORDER_SUBTOTAL",
    "tax": "ORDER_TAX"
  }
}
Attribute Type Description
order Object The main object containing updated order information.
status String Current status of the order (example: ACTIVE).
id String System-generated unique order identifier.
pre_order Boolean Indicates whether the order was created as a pre-order.
quote_order Boolean Indicates whether the order originated from a quote.
name String Updated order name after modification.
display_name String Updated display name of the order.
description String Updated order description.
referral_account String Linked referral account, if applicable.
customer_purchase_order_id String Updated external purchase order reference.
shipping_profile Object Contains shipping profile details associated with the order.
shipping_cost String Total shipping cost applied to the order.
discount_profile Object Applied discount configuration, if any.
origin String Updated order origin source.
custom_forms Object Form configuration attached to this order.
currency Object Currency information including reference links.
time_zone Object Time zone information associated with the order.
invoice_note String Updated note added for invoicing purposes.
billing_start_date String Reference to when billing begins relative to the order.
order_start_date DateTime The order’s activation or start date.
next_billing_from_date DateTime Date for the next billing cycle initiation.
next_billing_from_date_utc DateTime UTC version of the next billing date.
price_tax_inclusive Boolean Indicates if the order price includes tax.
billing_address Object Billing address details for the order.
shipping_address Object Shipping address details for the order.
created_by String Username or system that created the order.
created_on DateTime Timestamp when the order was originally created.
last_updated_by String User or process that last updated the order.
last_updated_on DateTime Timestamp of the most recent update.
uuid UUID Universal unique identifier for the order.
version String Version number of the order record.
account_id String Associated account identifier.
account_name String Display name of the account related to the order.
allow_contract Boolean Indicates if contracts are allowed for this order.
custom_attributes Array List of custom attribute fields associated with the order.
custom_objects Array List of custom objects linked to the order.
currency_id String Internal currency identifier.
invoice_id String Identifier of the related invoice.
total String Total order amount after taxes and discounts.
subtotal String Total order amount before taxes and discounts.
tax String Tax amount applied to the order.

Update Order Line Information: /orders/{order_id}/lines/{line_uuid}/information

PATCH
https://dev-api.exsited.com/api/v3/orders/{order_id}/lines/{line_uuid}/information
Try It Out
Purpose

This API is used to update specific details of an existing line item within an order, such as the item name, invoice note, or description. It allows users to modify line-level information after an order has been created, ensuring that all item-related data remains accurate and consistent with operational requirements.

Use Case

Businesses may use this API to adjust details of products or services listed in an order when updates occur. For example, renaming an item, adding additional descriptions, or appending invoice notes for billing clarity. This is commonly used in order management systems where line items need correction or enrichment before invoicing or fulfillment.

Path Parameters
ParameterTypeDescription
order_idStringUnique identifier of the order to which the line belongs.
line_uuidStringUnique identifier of the specific order line item to be updated.
Query Parameters

This endpoint does not accept query parameters.

Request Body
{
  "order": {
    "line": {
      "item_name": "ITEM_NAME",
      "item_invoice_note": "ITEM_INVOICE_NOTE",
      "item_description": "ITEM_DESCRIPTION"
    }
  }
}
Attribute Type Description
order Object Container for order-related information.
line Object Contains data specific to the order line being updated.
item_name String The display name of the item to be updated.
item_invoice_note String A note to be added to the item’s invoice details.
item_description String A detailed description of the item.
Response

The API returns the updated order and line details. It includes the modified item information along with related charge details, pricing structure, tax information, and key performance indicators (KPIs) associated with the order. This comprehensive response allows systems to synchronize order data in real time, ensuring financial and operational accuracy across billing, inventory, and reporting modules.

Response Body
{
  "order": {
    "invoice_id": "INVOICE_ID",
    "charge": {
      "charge_item_uuid": "CHARGE_ITEM_UUID",
      "item_uuid": "ITEM_UUID",
      "item_id": "ITEM_ID",
      "item_name": "ITEM_NAME",
      "item_order_quantity": "ITEM_QUANTITY",
      "shipping_cost": "SHIPPING_COST",
      "item_invoice_note": "ITEM_INVOICE_NOTE",
      "item_description": "ITEM_DESCRIPTION",
      "item_type": "ITEM_TYPE",
      "item_charge_type": "CHARGE_TYPE",
      "item_custom_attributes": [],
      "item_price_snapshot": {
        "pricing_rule": {
          "uuid": "PRICING_RULE_UUID",
          "version": "PRICING_RULE_VERSION",
          "price_type": "PRICE_TYPE",
          "price": "ITEM_PRICE",
          "uom": "UOM",
          "price_period": "PRICE_PERIOD",
          "pricing_schedule": "PRICING_SCHEDULE",
          "pricing_level": "PRICING_LEVEL",
          "pricing_method": "PRICING_METHOD",
          "warehouse": "WAREHOUSE"
        }
      },
      "item_sale_tax_configuration": {
        "sale_price_is_based_on": "SALE_PRICE_BASIS",
        "tax_code": {
          "uuid": "TAX_CODE_UUID",
          "code": "TAX_CODE",
          "rate": "TAX_RATE",
          "link": "TAX_LINK"
        }
      },
      "isTaxExemptWhenSold": "BOOLEAN",
      "item_price_tax": {
        "uuid": "TAX_UUID",
        "code": "TAX_CODE",
        "rate": "TAX_RATE",
        "link": "TAX_LINK"
      },
      "item_accounting_code": {
        "sales_revenue": {
          "name": "SALES_REVENUE"
        }
      },
      "version": "CHARGE_VERSION",
      "expected_delivery_date": "DELIVERY_DATE",
      "purchase_order_id": "PURCHASE_ORDER_ID",
      "purchase_invoice_id": "PURCHASE_INVOICE_ID",
      "flat_discount": "FLAT_DISCOUNT",
      "item_sales_rate_id": "SALES_RATE_ID",
      "latestData0": "LATEST_DATA"
    }
  }
}
Attribute Type Description
order Object Contains the updated order and related details.
invoice_id String/Null Identifier for the associated invoice, if available.
charge Object Contains information about the specific order line’s charge details.
charge_item_uuid UUID Unique identifier for the charged item.
item_uuid UUID Unique identifier for the item.
item_id String System-generated identifier of the item.
item_name String Updated name of the item.
item_order_quantity String Quantity of the item ordered.
shipping_cost String Shipping cost associated with the item.
item_invoice_note String Updated invoice note for the item.
item_description String Updated item description.
item_type String Classification type of the item (example: FAMILY).
item_charge_type String Type of item charge (example: RECURRING).
item_custom_attributes Array List of custom attributes related to the item.
item_properties Object Key-value properties that describe item billing and pricing behavior.
item_price_snapshot Object Contains snapshot details of pricing rules and structure.
item_sale_tax_configuration Object Contains configuration related to sales tax for the item.
isTaxExemptWhenSold Boolean Indicates if the item is exempt from tax when sold.
item_price_tax Object Contains tax details applicable to the item price.
item_accounting_code Object Contains accounting codes related to item sales revenue.
version String Version number of the line record.
expected_delivery_date String Expected date of item delivery.
package_name String Name of the package or group the item belongs to.
purchase_order_id String ID of the associated purchase order.
purchase_invoice_id String ID of the associated purchase invoice.
flat_discount String Flat discount applied to the item.
item_sales_rate_id String Identifier for the sales rate configuration.
latestData0 String Additional internal or temporary data.
shipping_profile_id String Identifier of the shipping profile used.
pro_rata_partial_unit String Indicates whether partial unit prorating applies.
id Integer Numeric identifier for the order line.
perUnitPrice0 String Per-unit price of the item.
total0 String Total calculated price for the item.
warehouse_applicable Boolean Indicates whether the warehouse configuration applies.
rule_excess_price String Additional price for exceeding configured rules.
price_tax_inclusive Boolean Indicates whether the price includes tax.
back_order_quantity String Quantity of items on backorder.
tax_inclusive_rate String Tax-inclusive rate applied.
sales_rate_option String Method used to calculate sales rate (example: PER_UNIT).
price String Base price of the item.
tax_inclusive_based_on String Indicates whether tax is based on sales or purchase tax.
salesTaxName0 String Name of the tax applied.
tax0 String Tax amount applied.
sales_tax_code_id String Identifier of the applied tax code.
sales_tax_rate String Applied sales tax rate.
kpis Object Contains order-level key performance indicators and summary data.
line_items Array List of line items included in the order.