Getting Order List
Function : order_list_basic()
Purpose
This function fetches a paginated list of all orders in the system. Each order contains metadata such as status, order ID, currency, billing/shipping details, order lines, communication preferences, tax settings, and KPIs.
Parameters
Parameter | Type | Description |
---|---|---|
order_by | String | Field name to sort the result set. |
direction | String | Sorting direction. Accepts asc or desc. |
limit | Integer | Number of records to retrieve per page. |
offset | Integer | Number of records to skip from the beginning |
Use Case
The function is used to fetch a paginated list of orders for an account to review order details such as order ID, customer name, item list, pricing, tax, billing/shipping addresses, and order properties. It helps users quickly access order history, verify records, or audit key financial and fulfillment information in a summarized format.
def ORDER_LIST_BASIC():
SDKConfig.PRINT_REQUEST_DATA = True
SDKConfig.PRINT_RAW_RESPONSE = True
EXSITED_SDK: EXSITEDSDK = EXSITEDSDK().INIT_SDK(REQUEST_TOKEN_DTO=COMMONDATA.GET_REQUEST_TOKEN_DTO())
try:
RESPONSE = EXSITED_SDK.ORDER.LIST(
LIMIT="NUMBER",
OFFSET="NUMBER",
DIRECTION="STRING",
ORDER_BY="STRING"
)
PRINT(RESPONSE)
# RESPONSETOOBJ().PROCESS(RESPONSE=RESPONSE["ACCOUNTS"][0])
except ABEXCEPTION AS AB:
PRINT(AB)
PRINT(AB.GET_ERRORS())
PRINT(AB.RAW_RESPONSE)
public function testReadAll()
{
try {
$response = $this->orderService->readAll('v3');
echo '<pre>' . json_encode($response, JSON_PRETTY_PRINT) . '</pre>';
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
}
Response
The function returns an object containing a list of entries. Each order includes full order metadata: order ID, UUID, customer details, item lines with pricing and tax, currency, addresses, communication preferences, invoice terms, and KPIs. The response also includes pagination information such as record count, limit, offset, and navigation URLs for previous and next pages.
ORDERLISTDTO(
ORDERS=[
ORDERDATADTO(
ACCOUNTID="ACCOUNT_ID",
STATUS="STATUS_VALUE",
ID="ORDER_ID",
UUID="UUID_VALUE",
VERSION="VERSION_NUMBER",
PREORDER="BOOLEAN",
QUOTEORDER="BOOLEAN",
NAME="ORDER_NAME",
DISPLAYNAME="ORDER_DISPLAY_NAME",
DESCRIPTION="DESCRIPTION_TEXT",
MANAGER="NULL",
REFERRALACCOUNT="EMPTY",
SHIPPINGCOST="NUMBER",
ORIGIN="ORIGIN_VALUE",
INVOICENOTE="INVOICE_NOTE_TEXT",
BILLINGSTARTDATE="DATE_STRING",
ORDERSTARTDATE="TIMESTAMP",
NEXTBILLINGFROMDATE="EMPTY",
NEXTBILLINGFROMDATEUTC="NULL",
TRIALREQUIRESPAYMENTMETHOD="NULL",
PRICETAXINCLUSIVE="BOOLEAN",
CREATEDBY="CREATOR_NAME",
CREATEDON="TIMESTAMP",
LASTUPDATEDBY="UPDATER_NAME",
LASTUPDATEDON="TIMESTAMP",
ALLOWCONTRACT="BOOLEAN",
LINES=[
ORDERLINEDTO(
ITEMID="ITEM_ID",
ITEMORDERQUANTITY="NUMBER",
ITEMUUID="UUID_VALUE",
ITEMNAME="ITEM_NAME",
SHIPPINGCOST="NUMBER",
ITEMINVOICENOTE="NOTE_TEXT",
ITEMDESCRIPTION="DESCRIPTION_TEXT",
ITEMTYPE="ITEM_TYPE",
ITEMCHARGETYPE="CHARGE_TYPE",
CHARGEITEMUUID="UUID_VALUE",
VERSION="VERSION_NUMBER",
ITEMPRICETAX=TAXDTO(
UUID="UUID_VALUE",
CODE="TAX_CODE",
RATE="NUMBER",
LINK="URL",
AMOUNT="NULL"
),
ISTAXEXEMPTWHENSOLD="NULL",
TAXEXEMPTWHENSOLD="NULL",
ITEMPRICESNAPSHOT=ORDERITEMPRICESNAPSHOTDTO(
PRICINGRULE=ORDERITEMPRICINGRULEDTO(
PRICE="NUMBER",
UUID="UUID_VALUE",
VERSION="VERSION_NUMBER",
PRICETYPE="PRICE_TYPE",
UOM="EMPTY",
PRICEPERIOD="EMPTY",
PRICINGSCHEDULE="EMPTY",
PRICINGLEVEL="EMPTY",
PRICINGMETHOD="NUMBER",
WAREHOUSE="WAREHOUSE_NAME"
)
),
ITEMSALETAXCONFIGURATION=ORDERITEMSALETAXCONFIGURATIONDTO(
SALEPRICEISBASEDON="TAX_BASIS",
TAXCODE=TAXDTO(UUID="EMPTY", CODE="EMPTY", RATE="EMPTY", LINK="EMPTY", AMOUNT="NULL")
),
PURCHASEORDER="NULL",
PACKAGENAME="NULL",
ITEMSERIALORBATCHNUMBER="NULL",
ITEMCUSTOMATTRIBUTES=[],
OP="NULL",
UUID="NULL",
ITEMPROPERTIES="NULL",
SUBTOTAL="NUMBER",
TOTAL="NUMBER",
TAX="NUMBER",
ITEMUOM="NULL",
ITEMWAREHOUSE="NULL",
PRICINGSNAPSHOTUUID="NULL",
CHARGINGSTARTDATE="NULL",
ALTERNATECHARGINGSTARTDATE="NULL",
CHARGINGENDDATE="NULL",
ALTERNATECHARGINGENDDATE="NULL",
ITEMPRICE="NULL",
ITEMDISCOUNTAMOUNT="NULL",
TAXAMOUNT="NULL",
OPERATION="NULL",
DISCOUNT="NUMBER",
UOM="NULL",
WAREHOUSE="NULL",
QUANTITY="NULL",
ACCOUNTINGCODE="NULL",
ITEMACCOUNTINGCODE=ORDERITEMACCOUNTINGCODEDTO(SALESREVENUE="EMPTY"),
PREORDERSTOCKDETAILS="NULL",
EXPECTEDDELIVERYDATE="EMPTY",
PURCHASEORDERID="NULL",
PURCHASEINVOICEID="NULL"
)
],
CUSTOMFORMS=CUSTOMFORMSDTO(
UUID="UUID_VALUE",
NAME="FORM_NAME"
),
CURRENCY=CURRENCYDTO(
UUID="UUID_VALUE",
NAME="CURRENCY_CODE",
LINK="URL"
),
TIMEZONE=TIMEZONEDTO(
UUID="UUID_VALUE",
NAME="TIMEZONE_NAME",
LINK="URL"
),
PROPERTIES=ORDERPROPERTIESDTO(
COMMUNICATIONPROFILE="PROFILE_NAME",
INVOICEMODE="INVOICE_MODE",
INVOICETERM="INVOICE_TERM",
BILLINGPERIOD="BILLING_PERIOD",
PAYMENTPROCESSOR="PAYMENT_PROCESSOR",
PAYMENTMODE="PAYMENT_MODE",
PAYMENTTERM="PAYMENT_TERM",
PAYMENTTERMALIGNMENT="ALIGNMENT_TYPE",
FULFILLMENTMODE="FULFILLMENT_MODE",
FULFILLMENTTERM="FULFILLMENT_TERM",
CONSOLIDATEINVOICE="BOOLEAN",
CONSOLIDATEKEY="KEY_VALUE"
),
CONTRACTPROPERTIES="NULL",
BILLINGADDRESS=ADDRESSDTO(
ADDRESSLINE1="ADDRESS_LINE",
ADDRESSLINE2="ADDRESS_LINE",
ADDRESSLINE3="ADDRESS_LINE",
ADDRESSLINE4="ADDRESS_LINE",
ADDRESSLINE5="ADDRESS_LINE",
POSTCODE="POST_CODE",
CITY="CITY_NAME",
STATE="STATE_NAME",
COUNTRY="COUNTRY_NAME",
ISDEFAULTBILLING="NULL",
ISDEFAULTSHIPPING="NULL",
UUID="NULL",
NAME="EMPTY"
),
SHIPPINGADDRESS=ADDRESSDTO(
ADDRESSLINE1="ADDRESS_LINE",
ADDRESSLINE2="ADDRESS_LINE",
ADDRESSLINE3="ADDRESS_LINE",
ADDRESSLINE4="ADDRESS_LINE",
ADDRESSLINE5="ADDRESS_LINE",
POSTCODE="POST_CODE",
CITY="CITY_NAME",
STATE="STATE_NAME",
COUNTRY="COUNTRY_NAME",
ISDEFAULTBILLING="NULL",
ISDEFAULTSHIPPING="NULL",
UUID="NULL",
NAME="EMPTY"
),
SHIPPINGPROFILE=SHIPPINGPROFILEDTO(
UUID="NULL",
STATUS="NULL",
NAME="NULL",
DISPLAYNAME="NULL",
DESCRIPTION="NULL",
INVOICENOTE="NULL",
TYPE="NULL",
FIXEDAMOUNT="NULL",
ISTAXEXEMPT="NULL",
ISTAXINCLUSIVE="NULL",
TAXCONFIGURATION="NULL",
ACCOUNTINGCODE="NULL"
),
DEFAULTWAREHOUSE="NULL",
CUSTOMOBJECTS=[],
ISTAXEXEMPTWHENSOLD="NULL",
KPIS=KPISDTO(
STARTDATE="EMPTY",
ESTIMATEDTOTAL="NUMBER",
TOTALREVENUE="NUMBER",
MONTHLYRECURRINGREVENUE="NUMBER",
TOTALCOLLECTED="NUMBER",
TOTALOUTSTANDING="NUMBER",
TOTALDUE="NUMBER",
LASTINVOICEISSUEDATE="EMPTY",
LASTINVOICETOTAL="NUMBER",
TOTALINVOICE="NUMBER",
NEXTINVOICEISSUEDATE="NULL",
LASTREACTIVATEDON="EMPTY",
LASTCANCELLEDON="EMPTY",
LASTCHANGEDON="EMPTY",
LASTDELETEDON="EMPTY"
),
LINEITEMS=[],
EFFECTIVEDATE="NULL",
CHARGE="NULL",
COMMUNICATIONPREFERENCE=[
COMMUNICATIONPREFERENCEDTO(MEDIA="MEDIA_TYPE", ISENABLED="NULL")
],
LINE="NULL",
CUSTOMATTRIBUTES=[],
CUSTOMERPURCHASEORDERID="ORDER_ID",
DISCOUNTPROFILE="NULL",
ACCOUNTNAME="ACCOUNT_NAME",
CURRENCYID="CURRENCY_ID",
TOTAL="NUMBER",
SUBTOTAL="NUMBER",
TAX="NUMBER",
INVOICEID="NULL",
PAYMENTID="NULL",
INVOICE="NULL"
)
],
PAGINATION=PAGINATIONDTO(
RECORDS="NUMBER",
LIMIT="NUMBER",
OFFSET="NUMBER",
PREVIOUSPAGE="URL",
NEXTPAGE="NULL"
)
)
{
"order": {
"status": "ACTIVE",
"id": "order_id",
"pre_order": "true_or_false",
"quote_order": "true_or_false",
"name": "order_name",
"display_name": "display_name",
"description": "description",
"manager": "manager_name",
"referral_account": "referral_account",
"customer_purchase_order_id": "customer_purchase_order_id",
"shipping_profile": {},
"shipping_cost": "shipping_cost",
"discount_profile": null,
"origin": "origin",
"custom_forms": {
"uuid": "form_uuid",
"name": "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",
"billing_start_date": "billing_start_date",
"order_start_date": "order_start_date",
"next_billing_from_date": "next_billing_from_date",
"price_tax_inclusive": "true_or_false",
"billing_address": {},
"shipping_address": {},
"created_by": "creator_name",
"created_on": "created_on_date",
"last_updated_by": "last_updated_by",
"last_updated_on": "last_updated_on_date",
"uuid": "order_uuid",
"version": "version_number",
"account_id": "account_id",
"allow_contract": "true_or_false",
"custom_attributes": [
{
"name": "attribute_name_1",
"value": "attribute_value_1"
},
{
"name": "attribute_name_2",
"value": "attribute_value_2"
},
{
"name": "attribute_name_3",
"value": "attribute_value_3"
},
{
"name": "attribute_name_4",
"value": "attribute_value_4"
},
{
"name": "attribute_name_5",
"value": "attribute_value_5"
},
{
"name": "attribute_name_6",
"value": []
},
{
"name": "attribute_name_7",
"value": []
}
],
"custom_objects": [
{
"uuid": "custom_object_uuid",
"name": "custom_object_name",
"link": "custom_object_link"
}
],
"properties": {
"communication_profile": "communication_profile",
"invoice_mode": "invoice_mode",
"invoice_term": "invoice_term",
"billing_period": "billing_period",
"payment_processor": "payment_processor",
"payment_mode": "payment_mode",
"payment_term": "payment_term",
"payment_term_alignment": "payment_term_alignment",
"fulfillment_mode": "fulfillment_mode",
"fulfillment_term": "fulfillment_term"
},
"lines": [
{
"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": "item_charge_type",
"item_custom_attributes": [
{
"name": "custom_attribute_name_1",
"value": "custom_attribute_value_1"
},
{
"name": "custom_attribute_name_2",
"value": "custom_attribute_value_2"
},
{
"name": "custom_attribute_name_3",
"value": []
},
{
"name": "custom_attribute_name_4",
"value": "custom_attribute_value_4"
},
{
"name": "custom_attribute_name_5",
"value": "custom_attribute_value_5"
},
{
"name": "custom_attribute_name_6",
"value": "custom_attribute_value_6"
},
{
"name": "custom_attribute_name_7",
"value": []
}
],
"item_price_snapshot": {
"pricing_rule": {
"uuid": "pricing_rule_uuid",
"version": "pricing_rule_version",
"price_type": "price_type",
"price": "item_price",
"uom": "unit_of_measure",
"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_based_on",
"tax_code": {
"uuid": "tax_code_uuid",
"code": "tax_code",
"rate": "tax_rate",
"link": "tax_link"
}
},
"isTaxExemptWhenSold": "true_or_false",
"item_price_tax": {
"uuid": "tax_uuid",
"code": "tax_code",
"rate": "tax_rate",
"link": "tax_link"
},
"item_accounting_code": {
"sales_revenue": "sales_revenue"
},
"version": "version"
}
],
"kpis": {
"start_date": "start_date",
"estimated_total": "estimated_total",
"total_revenue": "total_revenue",
"monthly_recurring_revenue": "monthly_recurring_revenue",
"total_collected": "total_collected",
"total_outstanding": "total_outstanding",
"total_due": "total_due",
"last_invoice_issue_date": "last_invoice_issue_date",
"last_invoice_total": "last_invoice_total",
"total_invoice": "total_invoice",
"next_invoice_issueDate": "next_invoice_issue_date",
"last_reactivated_on": "last_reactivated_on",
"last_cancelled_on": "last_cancelled_on",
"last_changed_on": "last_changed_on",
"last_deleted_on": "last_deleted_on"
},
"line_items": []
}
}
Getting All Notes for a Specific Order
Function: get_specific_order_notes()
Purpose
The Order Notes API allows developers to retrieve all notes associated with a specific order. Notes are typically used for storing comments, updates, or metadata linked to an order throughout its lifecycle. This SDK function provides a structured way to fetch notes along with pagination metadata and any custom attributes defined for the order. By using the SDK instead of making direct API calls, developers benefit from built-in authentication handling, structured response objects, and simplified error management.
Parameters
Parameter | Type | Description |
---|---|---|
order_id | string | Unique identifier of the order for which notes are to be retrieved. |
limit | integer | (Optional) Maximum number of notes to return in one response. |
offset | integer | (Optional) Pagination offset for fetching the next set of results. |
Use Case
This function is typically used in order management workflows where teams need to review or process order-related notes. For instance, when a support agent opens an order in the dashboard, the system can fetch all notes left by implementers, auditors, or automated processes. This ensures that all stakeholders have visibility into the communication history, decisions made, and contextual details tied to the order. The SDK functions in Python and PHP allow developers to easily integrate this capability into backend services, CRMs, or workflow automation without dealing with raw HTTP requests.
def get_specific_order_notes():
from exsited_sdk import ExsitedSDK, SDKConfig, FileTokenManager, CommonData
from exsited_sdk.exceptions import ABException
SDKConfig.PRINT_REQUEST_DATA = True
SDKConfig.PRINT_RAW_RESPONSE = False
token_file_path = "your_token_file.json"
file_token_mgr = FileTokenManager(token_file_path)
exsited_sdk: ExsitedSDK = ExsitedSDK().init_sdk(
request_token_dto=CommonData.get_request_token_dto(),
file_token_mgr=file_token_mgr
)
try:
response = exsited_sdk.notes.order_note_details(id="{{ORDER_ID}}")
print(response)
except ABException as ab:
print(ab)
print(ab.get_errors())
print(ab.raw_response)
public function getSpecificOrderNotes()
{
$orderId = "{{ORDER_ID}}";
try {
$response = $this->notesService->readOrderAllNotes($orderId, 'v3');
echo '<pre>' . json_encode($response, JSON_PRETTY_PRINT) . '</pre>';
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
}
Response
The response contains an order object with two main parts: notes, which is an array of note objects containing unique identifiers, versioning, HTML-supported content, attached files (if any), creator details, timestamps, and optional client-defined custom attributes; and pagination, which provides metadata about the number of records, limits, and navigation links for accessing the next or previous pages in large datasets. The Python SDK represents this data as structured DTO (Data Transfer Object) classes for easier access, while the PHP SDK returns it as a JSON-like associative array, with both approaches enabling developers to iterate through notes and extract relevant details for display, auditing, or automation purposes.
OrderNoteDetailsDTO(
order=OrderNoteDataDTO(
notes=[
NoteDataDTO(
uuid="{{NOTE_UUID}}",
version="1",
content="<p>{{NOTE_CONTENT}}</p>",
files=[],
createdBy="{{CREATED_BY}}",
createdOn="{{CREATED_ON_TIMESTAMP}}",
lastUpdatedBy="{{LAST_UPDATED_BY}}",
lastUpdatedOn="{{LAST_UPDATED_ON_TIMESTAMP}}"
)
],
pagination=PaginationDTO(
records=1,
limit=20,
offset=0,
previousPage="",
nextPage="NULL"
)
)
)
{
"order": {
"notes": [
{
"uuid": "{{NOTE_UUID}}",
"version": "1",
"content": "<p>{{NOTE_CONTENT}}</p>",
"files": [],
"created_by": "{{CREATED_BY}}",
"created_on": "{{CREATED_ON_TIMESTAMP}}",
"last_updated_by": "{{LAST_UPDATED_BY}}",
"last_updated_on": "{{LAST_UPDATED_ON_TIMESTAMP}}",
"custom_attributes": [
{
"name": "Custom_Att_One",
"value": ""
},
{
"name": "CA_TEST_ONE",
"value": ""
}
]
}
],
"pagination": {
"records": 1,
"limit": 20,
"offset": 0,
"previous_page": "",
"next_page": "NULL"
}
}
}
Getting a Specific Note from a Specific Order
Function: get_order_note_details()
Purpose
The Order Note by UUID API allows developers to retrieve detailed information for a single note belonging to a specific order. Unlike the “all notes” endpoint, which lists multiple notes, this method focuses on one note identified by its uuid. This is particularly useful in workflows where a user selects or references a specific note (for example, from a list view) and needs to view its full details, including content, creator, timestamps, attachments, and custom attributes. The SDK encapsulates this functionality in Python and PHP, enabling seamless integration without handling raw HTTP requests.
Parameters
Parameter | Type | Description |
---|---|---|
order_id | string | Unique identifier of the order to which the note belongs. |
uuid | string | Unique identifier (UUID) of the specific note to be retrieved. |
Use Case
This function is typically used in scenarios where a stakeholder wants to inspect a specific order note in detail. For example, when an auditor clicks on a note entry in an order’s activity feed, the system can call this endpoint to fetch and display the full note content along with its metadata. Developers can integrate this into dashboards, CRMs, or automated review systems where targeted note access is required, reducing the overhead of fetching all notes and filtering manually.
def get_order_note_details():
from exsited_sdk import ExsitedSDK, SDKConfig, FileTokenManager, CommonData
from exsited_sdk.exceptions import ABException
SDKConfig.PRINT_REQUEST_DATA = True
SDKConfig.PRINT_RAW_RESPONSE = False
token_file_path = "your_token_file.json"
file_token_mgr = FileTokenManager(token_file_path)
exsited_sdk: ExsitedSDK = ExsitedSDK().init_sdk(
request_token_dto=CommonData.get_request_token_dto(),
file_token_mgr=file_token_mgr
)
try:
response = exsited_sdk.notes.order_note_uuid_details(
id="{{ORDER_ID}}",
uuid="{{NOTE_UUID}}"
)
print(response)
except ABException as ab:
print(ab)
print(ab.get_errors())
print(ab.raw_response)
public function getOrderNoteDetails()
{
$orderId = "{{ORDER_ID}}";
$noteUuid = "{{NOTE_UUID}}";
try {
$response = $this->notesService->readOrderNotesDetails($orderId, $noteUuid, 'v3');
echo '<pre>' . json_encode($response, JSON_PRETTY_PRINT) . '</pre>';
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
}
Response
The response contains an order object with a nested note object. The note includes the following details: a unique identifier (uuid), version number (for concurrency control), note content (HTML-supported), any attached files, the creator of the note, creation timestamp, optional last updated details, and custom attributes (if any are defined). Unlike the “all notes” endpoint, this response contains only a single note object, making it lightweight and efficient for targeted retrieval.
OrderNoteUuidDetailsDTO(
order=OrderNoteUuidDataDTO(
note=NoteDataDTO(
uuid="{{NOTE_UUID}}",
version="1",
content="<p>{{NOTE_CONTENT}}</p>",
files=[],
createdBy="{{CREATED_BY}}",
createdOn="{{CREATED_ON_TIMESTAMP}}",
lastUpdatedBy="{{LAST_UPDATED_BY}}",
lastUpdatedOn="{{LAST_UPDATED_ON_TIMESTAMP}}"
)
)
)
{
"order": {
"note": {
"uuid": "{{NOTE_UUID}}",
"version": "1",
"content": "<p>{{NOTE_CONTENT}}</p>",
"files": [],
"created_by": "{{CREATED_BY}}",
"created_on": "{{CREATED_ON_TIMESTAMP}}",
"last_updated_by": "{{LAST_UPDATED_BY}}",
"last_updated_on": "{{LAST_UPDATED_ON_TIMESTAMP}}",
"custom_attributes": []
}
}
}
Getting All Files of an Order Note
Function: order_note_files()
Purpose
The Order Note Files API enables developers to retrieve all files attached to a specific note belonging to an order. This is particularly useful when notes include supporting documents, images, or other reference materials that need to be accessed or displayed alongside the note content. Using the SDK, developers can easily fetch the file list with metadata such as uuid, name, and version without having to make raw HTTP requests or manually parse JSON responses.
Parameters
Parameter | Type | Description |
---|---|---|
order_id |
string | Unique identifier of the order to which the note belongs. |
uuid |
string | Unique identifier (UUID) of the note whose attached files need to be retrieved. |
Use Case
This function is typically used when a user or system needs to view or process all files linked to a particular note. For example, in a field service inspection scenario, technicians might upload annotated images as files in notes. Later, a quality assurance manager may open the order and fetch all attached files to review supporting evidence. The SDK functions in Python and PHP simplify this workflow by handling authentication, structured responses, and error handling internally.
def order_note_files():
from exsited_sdk import ExsitedSDK, SDKConfig, FileTokenManager, CommonData
from exsited_sdk.exceptions import ABException
SDKConfig.PRINT_REQUEST_DATA = True
SDKConfig.PRINT_RAW_RESPONSE = False
token_file_path = "your_token_file.json"
file_token_mgr = FileTokenManager(token_file_path)
exsited_sdk: ExsitedSDK = ExsitedSDK().init_sdk(
request_token_dto=CommonData.get_request_token_dto(),
file_token_mgr=file_token_mgr
)
try:
response = exsited_sdk.notes.order_note_uuid_files_details(
id="{{ORDER_ID}}",
uuid="{{NOTE_UUID}}"
)
print(response)
except ABException as ab:
print(ab)
print(ab.get_errors())
print(ab.raw_response)
public function orderNoteFiles()
{
$orderId = "{{ORDER_ID}}";
$noteUuid = "{{NOTE_UUID}}";
try {
$response = $this->notesService->readOrderNoteAllFiles($orderId, $noteUuid, 'v3');
echo '<pre>' . json_encode($response, JSON_PRETTY_PRINT) . '</pre>';
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
}
Response
The response contains an order object with a nested note object. The note includes an array of files, each file represented by its unique identifier (uuid), filename (name), and version number (used for concurrency control or version tracking). If there are no files attached, the files array will be empty. The SDK abstracts this into structured DTOs in Python and associative arrays in PHP, allowing developers to easily iterate over files and integrate them into workflows or UI components.
OrderNoteUuidFileDetailsDTO(
order=OrderNoteUuidFileDataDTO(
note=NoteFileDataDTO(
files=[
FileDTO(
uuid="{{FILE_UUID}}",
name="{{FILE_NAME}}",
version="1"
)
]
)
)
)
{
"order": {
"note": {
"files": [
{
"uuid": "{{FILE_UUID}}",
"name": "{{FILE_NAME}}",
"version": "1"
}
],
"custom_attributes": []
}
}
}
Getting a Specific File of a Specific Order Note
Function : order_note_file_details()
Purpose
The Order Note File by UUID API provides detailed metadata about a single file attached to a specific note within an order. While the “all files” endpoint returns a list of files, this method focuses on a single file identified by its unique file_uuid. It is particularly useful in workflows where a user selects or references a specific file (e.g., from a list of attachments) and needs to view or process its details individually. Using the SDK functions, developers can easily integrate this retrieval into systems without needing to handle raw API calls.
Parameters
Parameter | Type | Description |
---|---|---|
order_id |
string | Unique identifier of the order to which the note belongs. |
uuid |
string | Unique identifier (UUID) of the note that contains the file. |
file_uuid |
string | Unique identifier (UUID) of the specific file to retrieve. |
Use Case
This function is typically used when an application or user needs to access metadata for a specific file attached to a note. For example, in a quality assurance review, a manager may click on an image linked to an inspection note, and the system can fetch the file details (filename, identifier, version) before downloading or displaying it. Developers can integrate this endpoint into document management features, audit trails, or file preview components. The SDK functions simplify the process by wrapping authentication, request handling, and structured response parsing.
def order_note_file_details():
from exsited_sdk import ExsitedSDK, SDKConfig, FileTokenManager, CommonData
from exsited_sdk.exceptions import ABException
SDKConfig.PRINT_REQUEST_DATA = True
SDKConfig.PRINT_RAW_RESPONSE = False
token_file_path = "your_token_file.json"
file_token_mgr = FileTokenManager(token_file_path)
exsited_sdk: ExsitedSDK = ExsitedSDK().init_sdk(
request_token_dto=CommonData.get_request_token_dto(),
file_token_mgr=file_token_mgr
)
try:
response = exsited_sdk.notes.order_note_uuid_files_uuid_details(
id="{{ORDER_ID}}",
uuid="{{NOTE_UUID}}",
file_uuid="{{FILE_UUID}}"
)
print(response)
except ABException as ab:
print(ab)
print(ab.get_errors())
print(ab.raw_response)
public function orderNoteFileDetails()
{
$orderId = "{{ORDER_ID}}";
$noteUuid = "{{NOTE_UUID}}";
$fileUuid = "{{FILE_UUID}}";
try {
$response = $this->notesService->readOrderNoteFileDetails($orderId, $noteUuid, $fileUuid, 'v3');
echo '<pre>' . json_encode($response, JSON_PRETTY_PRINT) . '</pre>';
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
}
Response
The response contains an order object with a nested note object. The note contains a file object representing the requested file. The file includes its unique identifier (uuid), filename (name), and version number. This lightweight response is designed for situations where only one file’s metadata is required rather than retrieving all attachments. The Python SDK represents this as a structured DTO (OrderNoteUuidFileUuidDetailsDTO), while the PHP SDK returns it as an associative array.
OrderNoteUuidFileUuidDetailsDTO(
order=OrderNoteUuidFileUuidDataDTO(
note=NoteFileUuidDataDTO(
file=FileDTO(
uuid="{{FILE_UUID}}",
name="{{FILE_NAME}}",
version="1"
)
)
)
)
{
"order": {
"note": {
"file": {
"uuid": "{{FILE_UUID}}",
"name": "{{FILE_NAME}}",
"version": "1"
},
"custom_attributes": []
}
}
}
Retrieving Order Details
Function: order_details()
Purpose
This function retrieves the full details of a specific order using its unique order ID. It provides all associated metadata, billing and shipping configuration, line items, pricing rules, and performance indicators.
Parameters
Parameter | Type | Description |
---|---|---|
order_id | String | Unique identifier of the order |
Use Case
The function is used to programmatically fetch full order details, useful for account managers, billing systems, or customer service dashboards. For instance, authenticated user might use this endpoint to verify order configurations (like billing period, items, taxes, and invoice modes), check customer preferences (email notifications), and review associated line items and totals. It supports deep visibility into every aspect of the order lifecycle for validation, auditing, and operations.
def order_details():
SDKConfig.PRINT_REQUEST_DATA = False
SDKConfig.PRINT_RAW_RESPONSE = False
exsited_sdk: ExsitedSDK = ExsitedSDK().init_sdk(
request_token_dto=CommonData.get_request_token_dto()
)
try:
response = exsited_sdk.order.details(id="ORDER_ID")
print(response)
return response
except ABException as ab:
error_code = None
if ab.get_errors() and "errors" in ab.raw_response:
error_code = ab.raw_response["errors"][0].get("code", None)
print(f" {error_code}")
public function testReadDetails()
{
$id = 'ORD-76GOU2-1261';
try {
$response = $this->orderService->readDetails($id,'v3');
echo '<pre>' . json_encode($response, JSON_PRETTY_PRINT) . '</pre>';
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
}
Response
The function response containing the order's metadata, lines, pricing configuration, tax structure, billing and shipping settings, and KPIs like total, subtotal, and MRR. Each OrderLineDTO includes item identifiers, pricing snapshot, charge type, discount, tax setup, and accounting details.
OrderDetailsDTO(
order=OrderDataDTO(
accountId='ACCOUNT_ID',
status='ORDER_STATUS',
id='ORDER_ID',
uuid='ORDER_UUID',
version='VERSION',
preOrder='BOOLEAN',
quoteOrder='BOOLEAN',
name='ORDER_NAME',
displayName='ORDER_DISPLAY_NAME',
description='ORDER_DESCRIPTION',
manager=None,
referralAccount='EMPTY',
shippingCost='DECIMAL_VALUE',
origin='ORDER_ORIGIN',
invoiceNote='INVOICE_NOTE',
billingStartDate='BILLING_START_DATE',
orderStartDate='ORDER_START_TIMESTAMP',
nextBillingFromDate='NEXT_BILLING_DATE',
nextBillingFromDateUtc='NEXT_BILLING_UTC_TIMESTAMP',
trialRequiresPaymentMethod=None,
priceTaxInclusive='BOOLEAN',
createdBy='CREATED_BY',
createdOn='CREATION_TIMESTAMP',
lastUpdatedBy='UPDATED_BY',
lastUpdatedOn='UPDATE_TIMESTAMP',
allowContract='BOOLEAN',
lines=[
OrderLineDTO(
itemId='ITEM_ID',
itemOrderQuantity='DECIMAL_VALUE',
itemUuid='ITEM_UUID',
itemName='ITEM_NAME',
shippingCost='DECIMAL_VALUE',
itemInvoiceNote='EMPTY',
itemDescription='EMPTY',
itemType='ITEM_TYPE',
itemChargeType='CHARGE_TYPE',
chargeItemUuid='CHARGE_ITEM_UUID',
version='VERSION',
itemPriceTax=TaxDTO(uuid='TAX_UUID', code='TAX_CODE', rate='TAX_RATE', link='TAX_API_LINK', amount=None),
isTaxExemptWhenSold=None,
taxExemptWhenSold=None,
itemPriceSnapshot=OrderItemPriceSnapshotDTO(
pricingRule=OrderItemPricingRuleDTO(
price='DECIMAL_VALUE',
uuid='PRICING_RULE_UUID',
version='VERSION',
priceType='PRICE_TYPE',
uom='EMPTY',
pricePeriod='EMPTY',
pricingSchedule='EMPTY',
pricingLevel='EMPTY',
pricingMethod='DECIMAL_VALUE',
warehouse='WAREHOUSE_NAME'
)
),
itemSaleTaxConfiguration=OrderItemSaleTaxConfigurationDTO(
salePriceIsBasedOn='TAX_BASIS',
taxCode=TaxDTO(uuid='EMPTY', code='EMPTY', rate='EMPTY', link='EMPTY', amount=None)
),
purchaseOrder=None,
packageName=None,
itemSerialOrBatchNumber=None,
itemCustomAttributes=[],
op=None,
uuid=None,
itemProperties=ItemPropertiesDataDTO(
billingMode=None,
chargingPeriod=None,
chargingStartDate=None,
chargingStartDayOfMonth=None,
chargingFixedStartDate=None,
chargingAndBillingAlignment=None,
proRataPartialChargingPeriod=None,
proRataPartialPricingPeriod=None,
proRataPartialUnit=None
),
subtotal='DECIMAL_VALUE',
total='DECIMAL_VALUE',
tax='DECIMAL_VALUE',
itemUom=None,
itemWarehouse=None,
pricingSnapshotUuid=None,
chargingStartDate=None,
alternateChargingStartDate=None,
chargingEndDate=None,
alternateChargingEndDate=None,
itemPrice=None,
itemDiscountAmount=None,
taxAmount=None,
operation=None,
discount='DECIMAL_VALUE',
uom=None,
warehouse=None,
quantity=None,
accountingCode=None,
itemAccountingCode=OrderItemAccountingCodeDTO(salesRevenue='EMPTY'),
preOrderStockDetails=None,
expectedDeliveryDate='EMPTY',
purchaseOrderId=None,
purchaseInvoiceId=None
)
],
customForms=CustomFormsDTO(uuid='CUSTOM_FORM_UUID', name='CUSTOM_FORM_NAME'),
currency=CurrencyDTO(uuid='CURRENCY_UUID', name='CURRENCY_CODE', link='CURRENCY_API_LINK'),
timeZone=TimeZoneDTO(uuid='TIMEZONE_UUID', name='TIMEZONE_NAME', link='TIMEZONE_API_LINK'),
properties=OrderPropertiesDTO(
communicationProfile='COMMUNICATION_PROFILE',
invoiceMode='INVOICE_MODE',
invoiceTerm='INVOICE_TERM',
billingPeriod='BILLING_PERIOD',
paymentProcessor='PAYMENT_PROCESSOR',
paymentMode='PAYMENT_MODE',
paymentTerm='PAYMENT_TERM',
paymentTermAlignment='PAYMENT_TERM_ALIGNMENT',
fulfillmentMode='FULFILLMENT_MODE',
fulfillmentTerm='FULFILLMENT_TERM',
consolidateInvoice='BOOLEAN',
consolidateKey='CONSOLIDATION_KEY'
),
contractProperties=None,
billingAddress=AddressDTO(
addressLine1=None,
addressLine2=None,
addressLine3=None,
addressLine4=None,
addressLine5=None,
postCode=None,
city=None,
state=None,
country=None,
isDefaultBilling=None,
isDefaultShipping=None,
uuid=None,
name=None
),
shippingAddress=AddressDTO(
addressLine1=None,
addressLine2=None,
addressLine3=None,
addressLine4=None,
addressLine5=None,
postCode=None,
city=None,
state=None,
country=None,
isDefaultBilling=None,
isDefaultShipping=None,
uuid=None,
name=None
),
shippingProfile=ShippingProfileDTO(
uuid=None,
status=None,
name=None,
displayName=None,
description=None,
invoiceNote=None,
type=None,
fixedAmount=None,
isTaxExempt=None,
isTaxInclusive=None,
taxConfiguration=None,
accountingCode=None
),
defaultWarehouse=None,
customObjects=[],
isTaxExemptWhenSold=None,
kpis=KpisDTO(
startDate='EMPTY',
estimatedTotal=0,
totalRevenue=0,
monthlyRecurringRevenue=0,
totalCollected=0,
totalOutstanding=0,
totalDue=0,
lastInvoiceIssueDate='EMPTY',
lastInvoiceTotal=0,
totalInvoice=0,
nextInvoiceIssueDate=None,
lastReactivatedOn='EMPTY',
lastCancelledOn='EMPTY',
lastChangedOn='EMPTY',
lastDeletedOn='EMPTY'
),
lineItems=[],
effectiveDate=None,
charge=None,
communicationPreference=[
CommunicationPreferenceDTO(media='COMMUNICATION_MEDIA', isEnabled=None)
],
line=None,
customAttributes=[],
customerPurchaseOrderId='CUSTOMER_PO_ID',
discountProfile=None,
accountName='ACCOUNT_NAME',
currencyId='CURRENCY_ID',
total='DECIMAL_VALUE',
subtotal='DECIMAL_VALUE',
tax='DECIMAL_VALUE',
invoiceId=None,
paymentId=None,
invoice=None
),
eventUuid=None
)
{
"order": {
"status": "ACTIVE",
"id": "ORDER_ID",
"pre_order": "false",
"quote_order": "false",
"name": "ORDER_NAME",
"display_name": "ORDER_DISPLAY_NAME",
"description": "ORDER_DESCRIPTION",
"manager": "MANAGER_NAME",
"referral_account": "REFERRAL_ACCOUNT",
"customer_purchase_order_id": "PURCHASE_ORDER_ID",
"shipping_profile": [],
"shipping_cost": "0.000000",
"discount_profile": null,
"origin": "ORIGIN",
"custom_forms": {
"uuid": "FORM_UUID",
"name": "FORM_NAME"
},
"currency": {
"uuid": "CURRENCY_UUID",
"name": "CURRENCY_NAME",
"link": "CURRENCY_LINK"
},
"time_zone": {
"uuid": "TIMEZONE_UUID",
"name": "TIMEZONE_NAME",
"link": "TIMEZONE_LINK"
},
"invoice_note": "INVOICE_NOTE",
"billing_start_date": "BILLING_START_DATE",
"order_start_date": "ORDER_START_DATE",
"next_billing_from_date": "NEXT_BILLING_DATE",
"price_tax_inclusive": "false",
"billing_address": [],
"shipping_address": [],
"created_by": "CREATED_BY",
"created_on": "CREATED_ON_DATE",
"last_updated_by": "LAST_UPDATED_BY",
"last_updated_on": "LAST_UPDATED_ON_DATE",
"uuid": "ORDER_UUID",
"version": "1",
"account_id": "ACCOUNT_ID",
"allow_contract": "false",
"custom_attributes": [
{
"name": "ATTRIBUTE_NAME",
"value": "ATTRIBUTE_VALUE"
}
],
"custom_objects": [
{
"uuid": "OBJECT_UUID",
"name": "OBJECT_NAME",
"link": "OBJECT_LINK"
}
],
"properties": {
"communication_profile": "COMM_PROFILE",
"invoice_mode": "INVOICE_MODE",
"invoice_term": "INVOICE_TERM",
"billing_period": "BILLING_PERIOD",
"payment_processor": "PAYMENT_PROCESSOR",
"payment_mode": "PAYMENT_MODE",
"payment_term": "PAYMENT_TERM",
"payment_term_alignment": "PAYMENT_ALIGNMENT",
"fulfillment_mode": "FULFILLMENT_MODE",
"fulfillment_term": "FULFILLMENT_TERM"
},
"lines": [
{
"charge_item_uuid": "ITEM_CHARGE_UUID",
"item_uuid": "ITEM_UUID",
"item_id": "ITEM_ID",
"item_name": "ITEM_NAME",
"item_order_quantity": "ITEM_QUANTITY",
"shipping_cost": "ITEM_SHIPPING_COST",
"item_invoice_note": "ITEM_NOTE",
"item_description": "ITEM_DESCRIPTION",
"item_type": "ITEM_TYPE",
"item_charge_type": "CHARGE_TYPE",
"item_custom_attributes": [
{
"name": "ATTRIBUTE_NAME",
"value": "ATTRIBUTE_VALUE"
}
],
"item_price_snapshot": {
"pricing_rule": {
"uuid": "PRICING_RULE_UUID",
"version": "PRICING_RULE_VERSION",
"price_type": "PRICE_TYPE",
"price": "PRICE_VALUE",
"uom": "UNIT_OF_MEASURE",
"price_period": "PRICE_PERIOD",
"pricing_schedule": "SCHEDULE",
"pricing_level": "PRICING_LEVEL",
"pricing_method": "PRICING_METHOD",
"warehouse": "WAREHOUSE_NAME"
}
},
"item_sale_tax_configuration": {
"sale_price_is_based_on": "TAX_BASIS",
"tax_code": {
"uuid": "TAX_UUID",
"code": "TAX_CODE",
"rate": "TAX_RATE",
"link": "TAX_LINK"
}
},
"isTaxExemptWhenSold": "false",
"item_price_tax": {
"uuid": "TAX_UUID",
"code": "TAX_CODE",
"rate": "TAX_RATE",
"link": "TAX_LINK"
},
"item_accounting_code": {
"sales_revenue": "REVENUE_CODE"
},
"version": "1"
}
],
"kpis": {
"start_date": "START_DATE",
"estimated_total": "ESTIMATED_TOTAL",
"total_revenue": "TOTAL_REVENUE",
"monthly_recurring_revenue": "MRR",
"total_collected": "TOTAL_COLLECTED",
"total_outstanding": "TOTAL_OUTSTANDING",
"total_due": "TOTAL_DUE",
"last_invoice_issue_date": "LAST_INVOICE_DATE",
"last_invoice_total": "LAST_INVOICE_TOTAL",
"total_invoice": "TOTAL_INVOICES",
"next_invoice_issueDate": "NEXT_INVOICE_DATE",
"last_reactivated_on": "LAST_REACTIVATED_DATE",
"last_cancelled_on": "LAST_CANCELLED_DATE",
"last_changed_on": "LAST_CHANGED_DATE",
"last_deleted_on": "LAST_DELETED_DATE"
},
"line_items": []
}
}
Creating Order Note
Function: create_order_note()
Purpose
The Create Order Note API allows you to attach a new note to an existing order. Notes can contain plain text (example: remarks, instructions, or audit comments) and may include file attachments such as images, documents, or PDFs. This endpoint is useful for scenarios where operational staff or automated workflows need to log updates, inspection results, or supporting documents against an order record. The SDK methods handle both text and file upload seamlessly, abstracting away multipart request complexity.
Parameters
Parameter | Type | Description |
---|---|---|
order_id |
string | Unique identifier of the order where the note will be added. |
datas |
string | The note content (free text). |
file_urls |
array of strings | Local file path(s) of attachments to upload along with the note. |
Use Case
This endpoint is typically used when a user or system needs to add new context to an order, such as logging a status update, inspection note, or attaching photos as evidence. For example, a field inspector may take a photo of an issue and upload it with a note describing the problem. The SDK functions make this process developer-friendly by simplifying file handling and note submission in one call.
def create_order_note():
from exsited_sdk import ExsitedSDK, SDKConfig, FileTokenManager, CommonData
from exsited_sdk.exceptions import ABException
SDKConfig.PRINT_REQUEST_DATA = True
SDKConfig.PRINT_RAW_RESPONSE = False
token_file_path = "{{TOKEN_FILE_PATH}}"
file_token_mgr = FileTokenManager(token_file_path)
exsited_sdk: ExsitedSDK = ExsitedSDK().init_sdk(
request_token_dto=CommonData.get_request_token_dto(),
file_token_mgr=file_token_mgr
)
try:
datas = "{{NOTE_TEXT}}"
file_urls = ["{{FILE_PATH_1}}", "{{FILE_PATH_2}}"] # or []
response = exsited_sdk.notes.order_add_notes(
file_urls=file_urls,
datas=datas,
order_id="{{ORDER_ID}}"
)
print(response)
except ABException as ab:
print(ab)
print(ab.get_errors())
print(ab.raw_response)
public function createOrderNotes()
{
$orderId = '{{ORDER_ID}}';
$filePath = '{{FILE_PATH}}';
$note = '{{NOTE_TEXT}}';
try {
$response = $this->notesService->createOrderNotes($filePath, $note, $orderId);
echo '<pre>' . json_encode($response, JSON_PRETTY_PRINT) . '</pre>';
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
}
Response
The response confirms creation of the note and returns its unique identifier (uuid). This uuid can then be used to retrieve the note, update it, or fetch associated files.
OrderNoteResponseDetailsDTO(
order=OrderNoteResponseDataDTO(
notes=NoteDataDTO(
uuid="{{NOTE_UUID}}",
version=None,
content=None,
files=None,
createdBy=None,
createdOn=None,
lastUpdatedBy=None,
lastUpdatedOn=None
)
)
)
{
"order": {
"notes": {
"uuid": "{{NOTE_UUID}}"
}
}
}
Removing an Order
Function: order_delete()
Purpose
This function permanently deletes an order using its unique identifier. It ensures that the order and all related data are removed from the system for cleanup or testing purposes.
Parameters
Parameter | Type | Description |
---|---|---|
order_id | String | Unique identifier of the order. |
Use Case
The function is used to programmatically remove an order from the system. This is useful in scenarios where orders were created by mistake, duplicated, or generated during testing. For example, a QA team might use this function to delete dummy orders after verifying order lifecycle features. The function confirms successful deletion through a 204 response code, ensuring no residual data is retained.
def order_delete():
SDKConfig.PRINT_REQUEST_DATA = True
SDKConfig.PRINT_RAW_RESPONSE = False
exsited_sdk: ExsitedSDK = ExsitedSDK().init_sdk(request_token_dto=CommonData.get_request_token_dto())
try:
response = exsited_sdk.order.delete(id="ORDER_ID")
print(response)
except ABException as ab:
print(ab)
print(ab.get_errors())
print(ab.raw_response)
public function testOrderDelete()
{
$id='ORD-Y1B8-000-0133';
try {
$response = $this->orderService->delete($id);
echo '<pre>' . json_encode($response, JSON_PRETTY_PRINT) . '</pre>';
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
}
Response
If the deletion is successful, the response will return a dictionary with success: True and a status_code: 204, indicating the order has been permanently deleted with no content returned.
{'SUCCESS': TRUE, 'STATUS_CODE': 204}
null
Cancelling an Order
Function: order_cancel()
Purpose
This function cancels an existing order by marking its status as INACTIVE. The cancellation can take effect immediately or be scheduled for a future date based on the effective_date provided in the request.
Parameters
Parameter | Type | Description |
---|---|---|
order_id | String | Unique identifier of the order to cancel. |
effective_date | String | Date from which the cancellation takes effect (format: YYYY-MM-DD). |
Use Case
The function is used to programmatically cancel a specific order using its unique order ID and effective cancellation date. It is typically used in billing or subscription management systems to deactivate a recurring or one-time order, while preserving full historical details such as customer data, pricing, billing terms, discounts, taxes, and item properties. The function accepts an effective_date to control when the cancellation takes place. If the date is today , the order is immediately inactivated. If it is in the future, the order remains active until the scheduled cancellation date, allowing billing or service to continue for the current cycle.
def order_cancel():
SDKConfig.PRINT_REQUEST_DATA = True
SDKConfig.PRINT_RAW_RESPONSE = True
exsited_sdk: ExsitedSDK = ExsitedSDK().init_sdk(request_token_dto=CommonData.get_request_token_dto())
try:
response = exsited_sdk.order.cancel(id="ORDER_ID", effective_date="EFFECTIVE_DATE")
print(response)
# ResponseToObj().process(response=response["accounts"][0])
except ABException as ab:
print(ab)
print(ab.get_errors())
print(ab.raw_response)
public function testCancel()
{
$params = [
"order" => [
"effective_date" => "2024-12-18"
]
];
$id='ORD-IE1DSN-1262';
try {
$response = $this->orderService->cancel($params,$id,'v3');
echo '<pre>' . json_encode($response, JSON_PRETTY_PRINT) . '</pre>';
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
}
Response
The response returns an object containing full details of the cancelled order. The order’s status is set to INACTIVE and all associated metadata such as line items, customer purchase reference, pricing rules, discount, tax configuration, and custom forms is preserved. It includes a unique eventUuid to track the cancellation event, making it easy to audit or retrieve history of cancellations.
OrderCancelResponseDTO(
eventUuid='EVENT_UUID',
order=OrderDataDTO(
accountId='ACCOUNT_ID',
status='ORDER_STATUS',
id='ORDER_ID',
uuid='ORDER_UUID',
version='VERSION',
preOrder='BOOLEAN',
quoteOrder='BOOLEAN',
name='ORDER_NAME',
displayName='ORDER_DISPLAY_NAME',
description='ORDER_DESCRIPTION',
manager=None,
referralAccount='EMPTY',
shippingCost='DECIMAL_VALUE',
origin='ORDER_ORIGIN',
invoiceNote='INVOICE_NOTE',
billingStartDate='BILLING_START_DATE',
orderStartDate='ORDER_START_TIMESTAMP',
nextBillingFromDate='EMPTY',
nextBillingFromDateUtc=None,
trialRequiresPaymentMethod=None,
priceTaxInclusive='BOOLEAN',
createdBy='CREATED_BY',
createdOn='CREATION_TIMESTAMP',
lastUpdatedBy='UPDATED_BY',
lastUpdatedOn='UPDATE_TIMESTAMP',
allowContract='BOOLEAN',
lines=[
OrderLineDTO(
itemId='ITEM_ID',
itemOrderQuantity='DECIMAL_VALUE',
itemUuid='ITEM_UUID',
itemName='ITEM_NAME',
shippingCost='DECIMAL_VALUE',
itemInvoiceNote='EMPTY',
itemDescription='EMPTY',
itemType='ITEM_TYPE',
itemChargeType='CHARGE_TYPE',
chargeItemUuid='CHARGE_ITEM_UUID',
version='VERSION',
itemPriceTax=TaxDTO(uuid='TAX_UUID', code='TAX_CODE', rate='TAX_RATE', link='TAX_API_LINK', amount=None),
isTaxExemptWhenSold=None,
taxExemptWhenSold=None,
itemPriceSnapshot=OrderItemPriceSnapshotDTO(
pricingRule=OrderItemPricingRuleDTO(
price='DECIMAL_VALUE',
uuid='PRICING_RULE_UUID',
version='VERSION',
priceType='PRICE_TYPE',
uom='EMPTY',
pricePeriod='EMPTY',
pricingSchedule='EMPTY',
pricingLevel='EMPTY',
pricingMethod='DECIMAL_VALUE',
warehouse='WAREHOUSE_NAME'
)
),
itemSaleTaxConfiguration=OrderItemSaleTaxConfigurationDTO(
salePriceIsBasedOn='TAX_BASIS',
taxCode=TaxDTO(uuid='EMPTY', code='EMPTY', rate='EMPTY', link='EMPTY', amount=None)
),
purchaseOrder=None,
packageName=None,
itemSerialOrBatchNumber=None,
itemCustomAttributes=[],
op=None,
uuid=None,
itemProperties=ItemPropertiesDataDTO(
billingMode='BILLING_MODE',
chargingPeriod='CHARGING_PERIOD',
chargingStartDate='CHARGING_START_DATE',
chargingStartDayOfMonth=None,
chargingFixedStartDate=None,
chargingAndBillingAlignment='BOOLEAN',
proRataPartialChargingPeriod='BOOLEAN',
proRataPartialPricingPeriod='BOOLEAN',
proRataPartialUnit='BOOLEAN'
),
subtotal='DECIMAL_VALUE',
total='DECIMAL_VALUE',
tax='DECIMAL_VALUE',
itemUom=None,
itemWarehouse=None,
pricingSnapshotUuid=None,
chargingStartDate=None,
alternateChargingStartDate=None,
chargingEndDate=None,
alternateChargingEndDate=None,
itemPrice=None,
itemDiscountAmount=None,
taxAmount=None,
operation=None,
discount='DECIMAL_VALUE',
uom=None,
warehouse=None,
quantity=None,
accountingCode=None,
itemAccountingCode=OrderItemAccountingCodeDTO(salesRevenue='EMPTY'),
preOrderStockDetails=None,
expectedDeliveryDate='EMPTY',
purchaseOrderId=None,
purchaseInvoiceId=None
)
],
customForms=CustomFormsDTO(uuid='CUSTOM_FORM_UUID', name='CUSTOM_FORM_NAME'),
currency=CurrencyDTO(uuid='CURRENCY_UUID', name='CURRENCY_CODE', link='CURRENCY_API_LINK'),
timeZone=TimeZoneDTO(uuid='TIMEZONE_UUID', name='TIMEZONE_NAME', link='TIMEZONE_API_LINK'),
properties=OrderPropertiesDTO(
communicationProfile='COMMUNICATION_PROFILE',
invoiceMode='INVOICE_MODE',
invoiceTerm='INVOICE_TERM',
billingPeriod='BILLING_PERIOD',
paymentProcessor='PAYMENT_PROCESSOR',
paymentMode='PAYMENT_MODE',
paymentTerm='PAYMENT_TERM',
paymentTermAlignment='PAYMENT_TERM_ALIGNMENT',
fulfillmentMode='FULFILLMENT_MODE',
fulfillmentTerm='FULFILLMENT_TERM',
consolidateInvoice='BOOLEAN',
consolidateKey='CONSOLIDATION_KEY'
),
contractProperties=None,
billingAddress=AddressDTO(
addressLine1=None,
addressLine2=None,
addressLine3=None,
addressLine4=None,
addressLine5=None,
postCode=None,
city=None,
state=None,
country=None,
isDefaultBilling=None,
isDefaultShipping=None,
uuid=None,
name=None
),
shippingAddress=AddressDTO(
addressLine1=None,
addressLine2=None,
addressLine3=None,
addressLine4=None,
addressLine5=None,
postCode=None,
city=None,
state=None,
country=None,
isDefaultBilling=None,
isDefaultShipping=None,
uuid=None,
name=None
),
shippingProfile=ShippingProfileDTO(
uuid=None,
status=None,
name=None,
displayName=None,
description=None,
invoiceNote=None,
type=None,
fixedAmount=None,
isTaxExempt=None,
isTaxInclusive=None,
taxConfiguration=None,
accountingCode=None
),
defaultWarehouse=None,
customObjects=[],
isTaxExemptWhenSold=None,
kpis=KpisDTO(
startDate='EMPTY',
estimatedTotal='DECIMAL_VALUE',
totalRevenue='DECIMAL_VALUE',
monthlyRecurringRevenue='DECIMAL_VALUE',
totalCollected='DECIMAL_VALUE',
totalOutstanding='DECIMAL_VALUE',
totalDue='DECIMAL_VALUE',
lastInvoiceIssueDate='EMPTY',
lastInvoiceTotal='DECIMAL_VALUE',
totalInvoice='DECIMAL_VALUE',
nextInvoiceIssueDate=None,
lastReactivatedOn='EMPTY',
lastCancelledOn='EMPTY',
lastChangedOn='EMPTY',
lastDeletedOn='EMPTY'
),
lineItems=[],
effectiveDate=None,
charge=None,
communicationPreference=[
CommunicationPreferenceDTO(media='COMMUNICATION_MEDIA', isEnabled=None)
],
line=None,
customAttributes=[],
customerPurchaseOrderId='CUSTOMER_PO_ID',
discountProfile=None,
accountName='ACCOUNT_NAME',
currencyId='CURRENCY_ID',
total='DECIMAL_VALUE',
subtotal='DECIMAL_VALUE',
tax='DECIMAL_VALUE',
invoiceId=None,
paymentId=None,
invoice=None
)
)
{
event_uuid: "EVENT_UUID",
order: {
status: "STATUS",
id: "ORDER_ID",
pre_order: "PRE_ORDER",
quote_order: "QUOTE_ORDER",
name: "NAME",
display_name: "DISPLAY_NAME",
description: "DESCRIPTION",
manager: "MANAGER",
referral_account: "REFERRAL_ACCOUNT",
customer_purchase_order_id: "CUSTOMER_PURCHASE_ORDER_ID",
shipping_profile: "SHIPPING_PROFILE",
shipping_cost: "SHIPPING_COST",
discount_profile: "DISCOUNT_PROFILE",
origin: "ORIGIN",
custom_forms: {
uuid: "CUSTOM_FORMS_UUID",
name: "CUSTOM_FORMS_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",
billing_start_date: "BILLING_START_DATE",
order_start_date: "ORDER_START_DATE",
next_billing_from_date: "NEXT_BILLING_FROM_DATE",
price_tax_inclusive: "PRICE_TAX_INCLUSIVE",
billing_address: "BILLING_ADDRESS",
shipping_address: "SHIPPING_ADDRESS",
created_by: "CREATED_BY",
created_on: "CREATED_ON",
last_updated_by: "LAST_UPDATED_BY",
last_updated_on: "LAST_UPDATED_ON",
uuid: "ORDER_UUID",
version: "ORDER_VERSION",
account_id: "ACCOUNT_ID",
allow_contract: "ALLOW_CONTRACT",
custom_attributes: "CUSTOM_ATTRIBUTES",
custom_objects: "CUSTOM_OBJECTS",
properties: {
communication_profile: "COMMUNICATION_PROFILE",
invoice_mode: "INVOICE_MODE",
invoice_term: "INVOICE_TERM",
billing_period: "BILLING_PERIOD",
payment_processor: "PAYMENT_PROCESSOR",
payment_mode: "PAYMENT_MODE",
payment_term: "PAYMENT_TERM",
payment_term_alignment: "PAYMENT_TERM_ALIGNMENT",
fulfillment_mode: "FULFILLMENT_MODE",
fulfillment_term: "FULFILLMENT_TERM"
},
lines: [
{
charge_item_uuid: "CHARGE_ITEM_UUID",
item_uuid: "ITEM_UUID",
item_id: "ITEM_ID",
item_name: "ITEM_NAME",
item_order_quantity: "ITEM_ORDER_QUANTITY",
shipping_cost: "SHIPPING_COST",
item_invoice_note: "ITEM_INVOICE_NOTE",
item_description: "ITEM_DESCRIPTION",
item_type: "ITEM_TYPE",
item_charge_type: "ITEM_CHARGE_TYPE",
item_custom_attributes: "ITEM_CUSTOM_ATTRIBUTES",
item_price_snapshot: {
pricing_rule: {
uuid: "PRICING_RULE_UUID",
version: "PRICING_RULE_VERSION",
price_type: "PRICE_TYPE",
price: "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_IS_BASED_ON",
tax_code: {
uuid: "TAX_CODE_UUID",
code: "TAX_CODE",
rate: "TAX_RATE",
link: "TAX_LINK"
}
},
isTaxExemptWhenSold: "IS_TAX_EXEMPT_WHEN_SOLD",
item_price_tax: {
uuid: "ITEM_PRICE_TAX_UUID",
code: "ITEM_PRICE_TAX_CODE",
rate: "ITEM_PRICE_TAX_RATE",
link: "ITEM_PRICE_TAX_LINK"
},
item_accounting_code: {
sales_revenue: "SALES_REVENUE"
},
version: "LINE_VERSION",
expected_delivery_date: "EXPECTED_DELIVERY_DATE"
}
],
kpis: {
start_date: "KPIS_START_DATE",
estimated_total: "KPIS_ESTIMATED_TOTAL",
total_revenue: "KPIS_TOTAL_REVENUE",
monthly_recurring_revenue: "KPIS_MONTHLY_RECURRING_REVENUE",
total_collected: "KPIS_TOTAL_COLLECTED",
total_outstanding: "KPIS_TOTAL_OUTSTANDING",
total_due: "KPIS_TOTAL_DUE",
last_invoice_issue_date: "KPIS_LAST_INVOICE_ISSUE_DATE",
last_invoice_total: "KPIS_LAST_INVOICE_TOTAL",
total_invoice: "KPIS_TOTAL_INVOICE",
next_invoice_issueDate: "KPIS_NEXT_INVOICE_ISSUE_DATE",
last_reactivated_on: "KPIS_LAST_REACTIVATED_ON",
last_cancelled_on: "KPIS_LAST_CANCELLED_ON",
last_changed_on: "KPIS_LAST_CHANGED_ON",
last_deleted_on: "KPIS_LAST_DELETED_ON"
},
line_items: "LINE_ITEMS"
}
Reactivating an Order
Function: order_reactivate()
Purpose
This function reactivate an order that was previously marked as inactive or cancelled. It updates the order’s status based on a provided effective date and schedules reactivation accordingly.
Parameters
Parameter | Type | Description |
---|---|---|
order_id | String | Unique identifier of the order. |
effective_date | String | Date (YYYY-MM-DD) to reactivate the order. |
Use Case
The function is used to reinstate an order in the Exsited system that has been marked as inactive. When executed, it triggers the reactivation process by sending the order ID and the effective_date. If the date is today's date, the order becomes active immediately. If the date is in the future, the system will queue the reactivation until the specified day arrives. This is particularly useful in scenarios where service continuity must be scheduled after a temporary cancellation.
def order_reactivate():
SDKConfig.PRINT_REQUEST_DATA = True
SDKConfig.PRINT_RAW_RESPONSE = False
exsited_sdk: ExsitedSDK = ExsitedSDK().init_sdk(request_token_dto=CommonData.get_request_token_dto())
try:
response = exsited_sdk.order.reactivate(id="ORDER_ID", effective_date="EFFECTIVE_DATE")
print(response)
# ResponseToObj().process(response=response["accounts"][0])
except ABException as ab:
print(ab)
print(ab.get_errors())
print(ab.raw_response)
public function testReactivate()
{
$params = [
"order" => [
"effective_date" => "2024-12-18"
]
];
$id='ORD-IE1DSN-1262';
try {
$response = $this->orderService->reactivate($params,$id,'v3');
echo '<pre>' . json_encode($response, JSON_PRETTY_PRINT) . '</pre>';
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
}
Response
The function returns an object. If successful, the eventUuid will contain the UUID of the reactivation event, and the order will contain the full reactivated order data. If the reactivation is scheduled for the future, order and eventUuid may remain null until the date is reached.
OrderCancelResponseDTO(
eventUuid="EVENT_UUID",
order="ORDER"
)
{
"event_uuid": EVENT_UUID
}
Retrieving Order Information
Function: order_get_information()
Purpose
The function retrieves complete order details by order ID, including its metadata, billing and shipping addresses, custom configurations, and linked settings.
Parameters
Parameter | Type | Description |
---|---|---|
order_id | String | The unique identifier of the order . |
Use Case
The function is used to fetch the latest configuration and metadata of an order in the system. This includes key attributes like the order's status, billing and shipping details, communication preferences, price settings ( tax-inclusive or not), time zone and currency settings, and links to the associated profile or forms. It is especially useful for reviewing or displaying order information in dashboards, summaries, or validation steps before invoice generation or fulfillment.
def order_get_information():
SDKConfig.PRINT_REQUEST_DATA = True
SDKConfig.PRINT_RAW_RESPONSE = False
exsited_sdk: ExsitedSDK = ExsitedSDK().init_sdk(request_token_dto=CommonData.get_request_token_dto())
try:
response = exsited_sdk.order.information(id="ORDER_ID")
print(response)
except ABException as ab:
print(ab)
print(ab.get_errors())
print(ab.raw_response)
public function testReadInformation()
{
$id = 'ORD-76GOU2-1261';
try {
$response = $this->orderService->readInformation($id,'v3');
echo '<pre>' . json_encode($response, JSON_PRETTY_PRINT) . '</pre>';
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
}
Response
The function returns an object that contains the full structure of the order under the order key. The response includes fields like accountId, name, status, billing/shipping address, time zone, currency, invoice note, tax settings, and metadata such as who created or last updated the order. It also includes optional configuration objects like custom forms, shipping profiles, and communication preferences.
OrderDetailsDTO(
order=OrderDataDTO(
accountId='ACCOUNT_ID',
status='ORDER_STATUS',
id='ORDER_ID',
uuid='ORDER_UUID',
version='VERSION',
preOrder='BOOLEAN',
quoteOrder='BOOLEAN',
name='ORDER_NAME',
displayName='ORDER_DISPLAY_NAME',
description='ORDER_DESCRIPTION',
manager=None,
referralAccount='EMPTY',
shippingCost='DECIMAL_VALUE',
origin='ORDER_ORIGIN',
invoiceNote='INVOICE_NOTE',
billingStartDate='BILLING_START_DATE',
orderStartDate='ORDER_START_TIMESTAMP',
nextBillingFromDate='NEXT_BILLING_DATE',
nextBillingFromDateUtc='NEXT_BILLING_UTC_TIMESTAMP',
trialRequiresPaymentMethod=None,
priceTaxInclusive='BOOLEAN',
createdBy='CREATED_BY',
createdOn='CREATION_TIMESTAMP',
lastUpdatedBy='UPDATED_BY',
lastUpdatedOn='UPDATE_TIMESTAMP',
allowContract='BOOLEAN',
lines=None,
customForms=CustomFormsDTO(
uuid='CUSTOM_FORM_UUID',
name='CUSTOM_FORM_NAME'
),
currency=CurrencyDTO(
uuid='CURRENCY_UUID',
name='CURRENCY_CODE',
link='CURRENCY_API_LINK'
),
timeZone=TimeZoneDTO(
uuid='TIMEZONE_UUID',
name='TIMEZONE_NAME',
link='TIMEZONE_API_LINK'
),
properties=None,
contractProperties=None,
billingAddress=AddressDTO(
addressLine1='ADDRESS_LINE_1',
addressLine2='EMPTY',
addressLine3='EMPTY',
addressLine4='EMPTY',
addressLine5='EMPTY',
postCode='POSTAL_CODE',
city='CITY',
state='STATE',
country='COUNTRY',
isDefaultBilling=None,
isDefaultShipping=None,
uuid=None,
name='EMPTY'
),
shippingAddress=AddressDTO(
addressLine1='ADDRESS_LINE_1',
addressLine2='EMPTY',
addressLine3='EMPTY',
addressLine4='EMPTY',
addressLine5='EMPTY',
postCode='POSTAL_CODE',
city='CITY',
state='STATE',
country='COUNTRY',
isDefaultBilling=None,
isDefaultShipping=None,
uuid=None,
name='EMPTY'
),
shippingProfile=ShippingProfileDTO(
uuid=None,
status=None,
name=None,
displayName=None,
description=None,
invoiceNote=None,
type=None,
fixedAmount=None,
isTaxExempt=None,
isTaxInclusive=None,
taxConfiguration=None,
accountingCode=None
),
defaultWarehouse=None,
customObjects=[],
isTaxExemptWhenSold=None,
kpis=None,
lineItems=None,
effectiveDate=None,
charge=None,
communicationPreference=[
CommunicationPreferenceDTO(
media='COMMUNICATION_MEDIA',
isEnabled=None
)
],
line=None,
customAttributes=[],
customerPurchaseOrderId='CUSTOMER_PO_ID',
discountProfile=None,
accountName=None,
currencyId='CURRENCY_ID',
total=None,
subtotal=None,
tax=None,
invoiceId=None,
paymentId=None,
invoice=None
),
eventUuid=None
)
{
"order": {
"status": "{STATUS}",
"id": "{ORDER_ID}",
"pre_order": "{PRE_ORDER}",
"quote_order": "{QUOTE_ORDER}",
"name": "{ORDER_NAME}",
"display_name": "{ORDER_DISPLAY_NAME}",
"description": "{DESCRIPTION}",
"manager": "{MANAGER}",
"referral_account": "{REFERRAL_ACCOUNT}",
"customer_purchase_order_id": "{CUSTOMER_PURCHASE_ORDER_ID}",
"shipping_profile": "{SHIPPING_PROFILE}",
"shipping_cost": "{SHIPPING_COST}",
"discount_profile": "{DISCOUNT_PROFILE}",
"origin": "{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}",
"billing_start_date": "{BILLING_START_DATE}",
"order_start_date": "{ORDER_START_DATE}",
"next_billing_from_date": "{NEXT_BILLING_FROM_DATE}",
"price_tax_inclusive": "{PRICE_TAX_INCLUSIVE}",
"billing_address": "{BILLING_ADDRESS}",
"shipping_address": "{SHIPPING_ADDRESS}",
"created_by": "{CREATED_BY}",
"created_on": "{CREATED_ON}",
"last_updated_by": "{LAST_UPDATED_BY}",
"last_updated_on": "{LAST_UPDATED_ON}",
"uuid": "{ORDER_UUID}",
"version": "{ORDER_VERSION}",
"account_id": "{ACCOUNT_ID}",
"allow_contract": "{ALLOW_CONTRACT}",
"custom_attributes": "{CUSTOM_ATTRIBUTES}",
"custom_objects": "{CUSTOM_OBJECTS}"
}
}
Getting Order Billing Preferences
Function: order_get_billing_preferences()
Purpose
This function retrieves the billing preferences and configurations for a specific order. It provides key financial and fulfillment settings such as invoice mode, billing period, payment method, and consolidation details for proper billing management.
Parameters
Parameter | Type | Description |
---|---|---|
order_id | String | Unique identifier of the order |
Use Case
The function is used when an admin or billing system needs to view how an order is configured for invoicing and payment. . It helps determine key properties such as invoice mode, billing cycle, fulfillment terms, and payment processor. This is useful for displaying or verifying an order’s financial setup before triggering billing actions, syncing with external systems, or performing audits.
def order_get_billing_preferences():
SDKConfig.PRINT_REQUEST_DATA = True
SDKConfig.PRINT_RAW_RESPONSE = True
exsited_sdk: ExsitedSDK = ExsitedSDK().init_sdk(request_token_dto=CommonData.get_request_token_dto())
try:
response = exsited_sdk.order.billing_preferences(id="ORDER_ID")
print(response)
except ABException as ab:
print(ab)
print(ab.get_errors())
print(ab.raw_response)
public function testReadBillingPreferences()
{
$accountID = '76GOU2';
try {
$response = $this->orderService->readBillingPreferences($accountID,'v3');
echo '<pre>' . json_encode($response, JSON_PRETTY_PRINT) . '</pre>';
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
}
Response
The response returns the billing preferences of a specific order under the order > properties section. It includes key fields such as the communication profile used for notifications, invoice mode, invoice term, and billing period . It also provides payment details like processor type, payment mode, payment term, and alignment rules. Additionally, fulfillment settings and consolidation options (including a consolidate key) are included. These preferences define how the order is billed, fulfilled, and invoiced.
ORDERDETAILSDTO(
ORDER=ORDERDATADTO(
ACCOUNTID="NULL",
STATUS="NULL",
ID="NULL",
UUID="NULL",
VERSION="NULL",
PREORDER="NULL",
QUOTEORDER="NULL",
NAME="NULL",
DISPLAYNAME="NULL",
DESCRIPTION="NULL",
MANAGER="NULL",
REFERRALACCOUNT="NULL",
SHIPPINGCOST="NULL",
ORIGIN="NULL",
INVOICENOTE="NULL",
BILLINGSTARTDATE="NULL",
ORDERSTARTDATE="NULL",
NEXTBILLINGFROMDATE="NULL",
NEXTBILLINGFROMDATEUTC="NULL",
TRIALREQUIRESPAYMENTMETHOD="NULL",
PRICETAXINCLUSIVE="NULL",
CREATEDBY="NULL",
CREATEDON="NULL",
LASTUPDATEDBY="NULL",
LASTUPDATEDON="NULL",
ALLOWCONTRACT="NULL",
LINES="NULL",
CUSTOMFORMS="NULL",
CURRENCY="NULL",
TIMEZONE="NULL",
PROPERTIES=ORDERPROPERTIESDTO(
COMMUNICATIONPROFILE="STRING_VALUE",
INVOICEMODE="STRING_VALUE",
INVOICETERM="STRING_VALUE",
BILLINGPERIOD="STRING_VALUE",
PAYMENTPROCESSOR="STRING_VALUE",
PAYMENTMODE="STRING_VALUE",
PAYMENTTERM="STRING_VALUE",
PAYMENTTERMALIGNMENT="STRING_VALUE",
FULFILLMENTMODE="STRING_VALUE",
FULFILLMENTTERM="STRING_VALUE",
CONSOLIDATEINVOICE="BOOLEAN",
CONSOLIDATEKEY="STRING_VALUE"
),
CONTRACTPROPERTIES="NULL",
BILLINGADDRESS="NULL",
SHIPPINGADDRESS="NULL",
SHIPPINGPROFILE="NULL",
DEFAULTWAREHOUSE="NULL",
CUSTOMOBJECTS="NULL",
ISTAXEXEMPTWHENSOLD="NULL",
KPIS="NULL",
LINEITEMS="NULL",
EFFECTIVEDATE="NULL",
CHARGE="NULL",
COMMUNICATIONPREFERENCE="NULL",
LINE="NULL",
CUSTOMATTRIBUTES="NULL",
CUSTOMERPURCHASEORDERID="NULL",
DISCOUNTPROFILE="NULL",
ACCOUNTNAME="NULL",
CURRENCYID="NULL",
TOTAL="NULL",
SUBTOTAL="NULL",
TAX="NULL",
INVOICEID="NULL",
PAYMENTID="NULL",
INVOICE="NULL"
),
EVENTUUID="NULL"
)
{
"order": {
"properties": {
"communication_profile": "AutoBill Communication Profile",
"invoice_mode": "AUTOMATIC",
"invoice_term": "Billing Start Date",
"billing_period": "1 Day",
"payment_processor": "Cash",
"payment_mode": "MANUAL",
"payment_term": "Net 30",
"payment_term_alignment": "BILLING_DATE",
"fulfillment_mode": "MANUAL",
"fulfillment_term": "Immediately"
}
}
}
Updating Order Billing Preferences
Function: update_order_billing_preference()
Purpose
This function updates the billing configuration of a specific order, including invoice mode, payment terms, billing period, and fulfillment preferences.
Parameters
Parameter | Type | Description |
---|---|---|
order_id | String | Unique order ID to update preferences. |
request_data | OrderCreateDTO | Contains the new properties object with updated billing configurations. |
Use Case
The function is used when an existing order's billing behavior needs to be modified. A business may want to change the invoice mode from automatic to manual, extend the billing period, update the payment processor, or align payment terms with the invoice date. This method allows such updates to be applied programmatically for precise control over invoicing and fulfillment policies.
def UPDATE_ORDER_BILLING_PREFERENCE():
SDKConfig.PRINT_REQUEST_DATA = False
SDKConfig.PRINT_RAW_RESPONSE = False
EXSITED_SDK: EXSITEDSDK = EXSITEDSDK().INIT_SDK(REQUEST_TOKEN_DTO=COMMONDATA.GET_REQUEST_TOKEN_DTO())
try:
ORDER_PROPERTIES = ORDERPROPERTIESDTO(
COMMUNICATIONPROFILE="STRING_VALUE",
INVOICEMODE="STRING_VALUE",
INVOICETERM="STRING_VALUE",
BILLINGPERIOD="STRING_VALUE",
PAYMENTPROCESSOR="STRING_VALUE",
PAYMENTMODE="STRING_VALUE",
PAYMENTTERM="STRING_VALUE",
PAYMENTTERMALIGNMENT="STRING_VALUE",
FULFILLMENTMODE="STRING_VALUE",
FULFILLMENTTERM="STRING_VALUE"
)
REQUEST_DATA = ORDERCREATEDTO(ORDER=ORDERDATADTO(PROPERTIES=ORDER_PROPERTIES))
RESPONSE = EXSITED_SDK.ORDER.UPDATE_BILLING_PREFERENCE(
ID="ORDER_ID",
REQUEST_DATA=REQUEST_DATA
)
PRINT(RESPONSE)
except ABEXCEPTION AS AB:
PRINT(AB)
PRINT(AB.GET_ERRORS())
PRINT(AB.RAW_RESPONSE)
public function testUpdateBillingPreferences()
{
$params = [
"order" => [
"properties" => [
"communication_profile" => "AutoBill Communication Profile",
"invoice_mode" => "AUTOMATIC",
"invoice_term" => "Billing Start Date",
"billing_period" => "1 Month",
"payment_processor" => "Cash",
"payment_mode" => "MANUAL",
"payment_term" => "Net 30",
"payment_term_alignment" => "BILLING_DATE",
"fulfillment_mode" => "MANUAL",
"fulfillment_term" => "IMMEDIATELY"
]
]
];
$id='ORD-76GOU2-1265';
try {
$response = $this->orderService->updateBillingPreferences($params,$id,'v3');
echo '<pre>' . json_encode($response, JSON_PRETTY_PRINT) . '</pre>';
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
}
Response
The function returns the updated order object, reflecting the new billing preferences such as invoice mode, invoice term, billing period, payment mode, processor, and fulfillment settings.
ORDERDETAILSDTO(
ORDER=ORDERDATADTO(
ACCOUNTID="NULL",
STATUS="NULL",
ID="NULL",
UUID="NULL",
VERSION="NULL",
PREORDER="NULL",
QUOTEORDER="NULL",
NAME="NULL",
DISPLAYNAME="NULL",
DESCRIPTION="NULL",
MANAGER="NULL",
REFERRALACCOUNT="NULL",
SHIPPINGCOST="NULL",
ORIGIN="NULL",
INVOICENOTE="NULL",
BILLINGSTARTDATE="NULL",
ORDERSTARTDATE="NULL",
NEXTBILLINGFROMDATE="NULL",
NEXTBILLINGFROMDATEUTC="NULL",
TRIALREQUIRESPAYMENTMETHOD="NULL",
PRICETAXINCLUSIVE="NULL",
CREATEDBY="NULL",
CREATEDON="NULL",
LASTUPDATEDBY="NULL",
LASTUPDATEDON="NULL",
ALLOWCONTRACT="NULL",
LINES="NULL",
CUSTOMFORMS="NULL",
CURRENCY="NULL",
TIMEZONE="NULL",
PROPERTIES=ORDERPROPERTIESDTO(
COMMUNICATIONPROFILE="STRING_VALUE",
INVOICEMODE="STRING_VALUE",
INVOICETERM="STRING_VALUE",
BILLINGPERIOD="STRING_VALUE",
PAYMENTPROCESSOR="STRING_VALUE",
PAYMENTMODE="STRING_VALUE",
PAYMENTTERM="STRING_VALUE",
PAYMENTTERMALIGNMENT="STRING_VALUE",
FULFILLMENTMODE="STRING_VALUE",
FULFILLMENTTERM="STRING_VALUE",
CONSOLIDATEINVOICE="BOOLEAN",
CONSOLIDATEKEY="STRING_VALUE"
),
CONTRACTPROPERTIES="NULL",
BILLINGADDRESS="NULL",
SHIPPINGADDRESS="NULL",
SHIPPINGPROFILE="NULL",
DEFAULTWAREHOUSE="NULL",
CUSTOMOBJECTS="NULL",
ISTAXEXEMPTWHENSOLD="NULL",
KPIS="NULL",
LINEITEMS="NULL",
EFFECTIVEDATE="NULL",
CHARGE="NULL",
COMMUNICATIONPREFERENCE="NULL",
LINE="NULL",
CUSTOMATTRIBUTES="NULL",
CUSTOMERPURCHASEORDERID="NULL",
DISCOUNTPROFILE="NULL",
ACCOUNTNAME="NULL",
CURRENCYID="NULL",
TOTAL="NULL",
SUBTOTAL="NULL",
TAX="NULL",
INVOICEID="NULL",
PAYMENTID="NULL",
INVOICE="NULL"
),
EVENTUUID="NULL"
)
{
"order": {
"properties": {
"communication_profile": "AutoBill Communication Profile",
"invoice_mode": "AUTOMATIC",
"invoice_term": "Billing Start Date",
"billing_period": "1 Day",
"payment_processor": "Cash",
"payment_mode": "MANUAL",
"payment_term": "Net 15",
"payment_term_alignment": "BILLING_DATE",
"fulfillment_mode": "MANUAL",
"fulfillment_term": "Immediately"
}
}
}
Getting Order Line Items
Function: order_get_lines()
Purpose
This function is used to retrieve the complete list of line items associated with a specific order. It helps extract detailed information about each ordered item, including quantities, prices, tax details, shipping costs, and related configurations.
Parameters
Attribute | Type | Description |
---|---|---|
order_id | String | Unique identifier of order. |
Use Case
The function is used to inspect the individual items included in an order. This includes the item ID, name, quantity, price per unit, total shipping cost, tax details, and any additional metadata such as custom attributes or expected delivery dates. It is especially helpful for reporting, invoicing, order audits, or fulfillment operations.
def order_get_lines():
SDKConfig.PRINT_REQUEST_DATA = False
SDKConfig.PRINT_RAW_RESPONSE = False
exsited_sdk: ExsitedSDK = ExsitedSDK().init_sdk(request_token_dto=CommonData.get_request_token_dto())
try:
response = exsited_sdk.order.lines(id="ORDER_ID")
print(response)
except ABException as ab:
print(ab)
print(ab.get_errors())
print(ab.raw_response)
public function testReadOrderLines()
{
$id = 'ORD-76GOU2-1265';
try {
$orderInfo = $this->orderService->readOrderLines($id,'v3');
echo '<pre>' . json_encode($orderInfo, JSON_PRETTY_PRINT) . '</pre>';
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
}
Response
The SDK function response includes a list of line items within the order. Each item contains attributes such as item name, UUID, quantity, charge type (ONE_OFF or RECURRING), pricing snapshot with rule details, tax configuration, accounting codes, and expected delivery date. For recurring items, additional properties such as billing mode and proration flags are included. The response also provides overall order KPIs like total revenue, estimated total, outstanding amount, and invoice metrics.
ORDERDETAILSDTO(
ORDER=ORDERDATADTO(
ACCOUNTID="NULL",
STATUS="NULL",
ID="NULL",
UUID="NULL",
VERSION="NULL",
PREORDER="NULL",
QUOTEORDER="NULL",
NAME="NULL",
DISPLAYNAME="NULL",
DESCRIPTION="NULL",
MANAGER="NULL",
REFERRALACCOUNT="NULL",
SHIPPINGCOST="NULL",
ORIGIN="NULL",
INVOICENOTE="NULL",
BILLINGSTARTDATE="NULL",
ORDERSTARTDATE="NULL",
NEXTBILLINGFROMDATE="NULL",
NEXTBILLINGFROMDATEUTC="NULL",
TRIALREQUIRESPAYMENTMETHOD="NULL",
PRICETAXINCLUSIVE="NULL",
CREATEDBY="NULL",
CREATEDON="NULL",
LASTUPDATEDBY="NULL",
LASTUPDATEDON="NULL",
ALLOWCONTRACT="NULL",
LINES=[
ORDERLINEDTO(
ITEMID="ITEM_ID",
ITEMORDERQUANTITY="NUMBER",
ITEMUUID="UUID_VALUE",
ITEMNAME="STRING_VALUE",
SHIPPINGCOST="NUMBER",
ITEMINVOICENOTE="STRING_VALUE",
ITEMDESCRIPTION="STRING_VALUE",
ITEMTYPE="STRING_VALUE",
ITEMCHARGETYPE="STRING_VALUE",
CHARGEITEMUUID="UUID_VALUE",
VERSION="VERSION_NUMBER",
ITEMPRICETAX=TAXDTO(
UUID="EMPTY",
CODE="EMPTY",
RATE="EMPTY",
LINK="EMPTY",
AMOUNT="NULL"
),
ISTAXEXEMPTWHENSOLD="NULL",
TAXEXEMPTWHENSOLD="BOOLEAN",
ITEMPRICESNAPSHOT=ORDERITEMPRICESNAPSHOTDTO(
PRICINGRULE=ORDERITEMPRICINGRULEDTO(
PRICE="NUMBER",
UUID="UUID_VALUE",
VERSION="VERSION_NUMBER",
PRICETYPE="STRING_VALUE",
UOM="EMPTY",
PRICEPERIOD="EMPTY",
PRICINGSCHEDULE="EMPTY",
PRICINGLEVEL="EMPTY",
PRICINGMETHOD="NUMBER",
WAREHOUSE="STRING_VALUE"
)
),
ITEMSALETAXCONFIGURATION=ORDERITEMSALETAXCONFIGURATIONDTO(
SALEPRICEISBASEDON="STRING_VALUE",
TAXCODE=TAXDTO(UUID="EMPTY", CODE="EMPTY", RATE="EMPTY", LINK="EMPTY", AMOUNT="NULL")
),
PURCHASEORDER="NULL",
PACKAGENAME="NULL",
ITEMSERIALORBATCHNUMBER="NULL",
ITEMCUSTOMATTRIBUTES=[],
OP="NULL",
UUID="NULL",
ITEMPROPERTIES="NULL",
SUBTOTAL="NULL",
TOTAL="NULL",
TAX="NULL",
ITEMUOM="NULL",
ITEMWAREHOUSE="NULL",
PRICINGSNAPSHOTUUID="NULL",
CHARGINGSTARTDATE="NULL",
ALTERNATECHARGINGSTARTDATE="NULL",
CHARGINGENDDATE="NULL",
ALTERNATECHARGINGENDDATE="NULL",
ITEMPRICE="NULL",
ITEMDISCOUNTAMOUNT="NULL",
TAXAMOUNT="NULL",
OPERATION="NULL",
DISCOUNT="NULL",
UOM="NULL",
WAREHOUSE="NULL",
QUANTITY="NULL",
ACCOUNTINGCODE="NULL",
ITEMACCOUNTINGCODE=ORDERITEMACCOUNTINGCODEDTO(SALESREVENUE="STRING_VALUE"),
PREORDERSTOCKDETAILS="NULL",
EXPECTEDDELIVERYDATE="EMPTY",
PURCHASEORDERID="NULL",
PURCHASEINVOICEID="NULL"
),
],
CUSTOMFORMS="NULL",
CURRENCY="NULL",
TIMEZONE="NULL",
PROPERTIES="NULL",
CONTRACTPROPERTIES="NULL",
BILLINGADDRESS="NULL",
SHIPPINGADDRESS="NULL",
SHIPPINGPROFILE="NULL",
DEFAULTWAREHOUSE="NULL",
CUSTOMOBJECTS="NULL",
ISTAXEXEMPTWHENSOLD="NULL",
KPIS=KPISDTO(
STARTDATE="EMPTY",
ESTIMATEDTOTAL="NUMBER",
TOTALREVENUE="NUMBER",
MONTHLYRECURRINGREVENUE="NUMBER",
TOTALCOLLECTED="NUMBER",
TOTALOUTSTANDING="NUMBER",
TOTALDUE="NUMBER",
LASTINVOICEISSUEDATE="EMPTY",
LASTINVOICETOTAL="NUMBER",
TOTALINVOICE="NUMBER",
NEXTINVOICEISSUEDATE="EMPTY",
LASTREACTIVATEDON="EMPTY",
LASTCANCELLEDON="EMPTY",
LASTCHANGEDON="EMPTY",
LASTDELETEDON="EMPTY"
),
LINEITEMS=[],
EFFECTIVEDATE="NULL",
CHARGE="NULL",
COMMUNICATIONPREFERENCE="NULL",
LINE="NULL",
CUSTOMATTRIBUTES="NULL",
CUSTOMERPURCHASEORDERID="NULL",
DISCOUNTPROFILE="NULL",
ACCOUNTNAME="NULL",
CURRENCYID="NULL",
TOTAL="NULL",
SUBTOTAL="NULL",
TAX="NULL",
INVOICEID="NULL",
PAYMENTID="NULL",
INVOICE="NULL"
),
EVENTUUID="NULL"
)
{
"order": {
"lines": [
{
"charge_item_uuid": "{CHARGE_ITEM_UUID}",
"item_uuid": "{ITEM_UUID}",
"item_id": "{ITEM_ID}",
"item_name": "{ITEM_NAME}",
"item_order_quantity": "{ITEM_ORDER_QUANTITY}",
"shipping_cost": "{SHIPPING_COST}",
"item_invoice_note": "{ITEM_INVOICE_NOTE}",
"item_description": "{ITEM_DESCRIPTION}",
"item_type": "{ITEM_TYPE}",
"item_charge_type": "{ITEM_CHARGE_TYPE}",
"item_custom_attributes": "{ITEM_CUSTOM_ATTRIBUTES}",
"item_price_snapshot": {
"pricing_rule": {
"uuid": "{PRICING_RULE_UUID}",
"version": "{PRICING_RULE_VERSION}",
"price_type": "{PRICE_TYPE}",
"price": "{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_BASED_ON}",
"tax_code": {
"uuid": "{TAX_CODE_UUID}",
"code": "{TAX_CODE}",
"rate": "{TAX_RATE}",
"link": "{TAX_LINK}"
}
},
"isTaxExemptWhenSold": "{IS_TAX_EXEMPT}",
"item_price_tax": {
"uuid": "{TAX_UUID}",
"code": "{TAX_CODE}",
"rate": "{TAX_RATE}",
"link": "{TAX_LINK}"
},
"item_accounting_code": {
"sales_revenue": "{SALES_REVENUE}"
},
"version": "{VERSION}"
}
],
"kpis": {
"start_date": "{KPIS_START_DATE}",
"estimated_total": "{ESTIMATED_TOTAL}",
"total_revenue": "{TOTAL_REVENUE}",
"monthly_recurring_revenue": "{MONTHLY_RECURRING_REVENUE}",
"total_collected": "{TOTAL_COLLECTED}",
"total_outstanding": "{TOTAL_OUTSTANDING}",
"total_due": "{TOTAL_DUE}",
"last_invoice_issue_date": "{LAST_INVOICE_ISSUE_DATE}",
"last_invoice_total": "{LAST_INVOICE_TOTAL}",
"total_invoice": "{TOTAL_INVOICE}",
"next_invoice_issueDate": "{NEXT_INVOICE_ISSUE_DATE}",
"last_reactivated_on": "{LAST_REACTIVATED_ON}",
"last_cancelled_on": "{LAST_CANCELLED_ON}",
"last_changed_on": "{LAST_CHANGED_ON}",
"last_deleted_on": "{LAST_DELETED_ON}"
},
"line_items": "{LINE_ITEMS}"
}
}
Getting Order a single Line Item
Function: get_order_lines_by_charge_uuid()
Purpose
This function retrieves detailed information about a specific line item in an order by referencing the order ID and the unique charge UUID. It is intended to fetch complete charge-level data such as pricing, tax settings, charge type, and item-specific metadata for auditing, reporting, or processing purposes.
Parameters
Parameter | Type | Description |
---|---|---|
order_id | String | The ID of the order . |
charge_uuid | String | Unique identifier for the specific charge in the order. |
Use Case
The function is used to extract detailed charge information from a specific line in an order. Viewing a customer’s invoice or validating tax details for a particular item, this function helps isolate and retrieve the individual charge data identified by its charge_uuid, without fetching the entire order lines list.
def get_order_lines_by_charge_uuid():
SDKConfig.PRINT_REQUEST_DATA = False
SDKConfig.PRINT_RAW_RESPONSE = False
exsited_sdk: ExsitedSDK = ExsitedSDK().init_sdk(request_token_dto=CommonData.get_request_token_dto())
try:
response = exsited_sdk.order.lines_charge(id="ORDER_ID",
charge_uuid="CHARGE_UUID")
print(response)
except ABException as ab:
print(ab)
print(ab.get_errors())
print(ab.raw_response)
public function testReadDetailsOrderLine()
{
$id = 'ORD-76GOU2-1265';
$chargeItemUUID="b2b4e5ba-b5d4-41da-81b7-a8d307cb80a1";
try {
$orderInfo = $this->orderService->readDetailsOrderLine($id,$chargeItemUUID,'v3');
echo '<pre>' . json_encode($orderInfo, JSON_PRETTY_PRINT) . '</pre>';
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
}
Response
The response returns a single charge item from an order, showing key details like item_id, item_name, quantity, and shipping_cost. It includes pricing info from the snapshot, tax settings, and charge UUID. The item is categorized as ONE_OFF and STANDARD, with optional fields such as description, invoice note, and expected delivery date. KPIs are returned but mostly empty.
ORDERDETAILSDTO(
ORDER=ORDERDATADTO(
ACCOUNTID="NULL",
STATUS="NULL",
ID="NULL",
UUID="NULL",
VERSION="NULL",
PREORDER="NULL",
QUOTEORDER="NULL",
NAME="NULL",
DISPLAYNAME="NULL",
DESCRIPTION="NULL",
MANAGER="NULL",
REFERRALACCOUNT="NULL",
SHIPPINGCOST="NULL",
ORIGIN="NULL",
INVOICENOTE="NULL",
BILLINGSTARTDATE="NULL",
ORDERSTARTDATE="NULL",
NEXTBILLINGFROMDATE="NULL",
NEXTBILLINGFROMDATEUTC="NULL",
TRIALREQUIRESPAYMENTMETHOD="NULL",
PRICETAXINCLUSIVE="NULL",
CREATEDBY="NULL",
CREATEDON="NULL",
LASTUPDATEDBY="NULL",
LASTUPDATEDON="NULL",
ALLOWCONTRACT="NULL",
LINES="NULL",
CUSTOMFORMS="NULL",
CURRENCY="NULL",
TIMEZONE="NULL",
PROPERTIES="NULL",
CONTRACTPROPERTIES="NULL",
BILLINGADDRESS="NULL",
SHIPPINGADDRESS="NULL",
SHIPPINGPROFILE="NULL",
DEFAULTWAREHOUSE="NULL",
CUSTOMOBJECTS="NULL",
ISTAXEXEMPTWHENSOLD="NULL",
KPIS=KPISDTO(
STARTDATE="EMPTY",
ESTIMATEDTOTAL="NUMBER",
TOTALREVENUE="NUMBER",
MONTHLYRECURRINGREVENUE="NUMBER",
TOTALCOLLECTED="NUMBER",
TOTALOUTSTANDING="NUMBER",
TOTALDUE="NUMBER",
LASTINVOICEISSUEDATE="EMPTY",
LASTINVOICETOTAL="NUMBER",
TOTALINVOICE="NUMBER",
NEXTINVOICEISSUEDATE="EMPTY",
LASTREACTIVATEDON="EMPTY",
LASTCANCELLEDON="EMPTY",
LASTCHANGEDON="EMPTY",
LASTDELETEDON="EMPTY"
),
LINEITEMS=[],
EFFECTIVEDATE="NULL",
CHARGE=ORDERLINEDTO(
ITEMID="ITEM_ID",
ITEMORDERQUANTITY="NUMBER",
ITEMUUID="UUID_VALUE",
ITEMNAME="STRING_VALUE",
SHIPPINGCOST="NUMBER",
ITEMINVOICENOTE="STRING_VALUE",
ITEMDESCRIPTION="STRING_VALUE",
ITEMTYPE="STRING_VALUE",
ITEMCHARGETYPE="STRING_VALUE",
CHARGEITEMUUID="UUID_VALUE",
VERSION="VERSION_NUMBER",
ITEMPRICETAX=TAXDTO(
UUID="UUID_VALUE",
CODE="STRING_VALUE",
RATE="NUMBER",
LINK="URL",
AMOUNT="NULL"
),
ISTAXEXEMPTWHENSOLD="NULL",
TAXEXEMPTWHENSOLD="BOOLEAN",
ITEMPRICESNAPSHOT=ORDERITEMPRICESNAPSHOTDTO(
PRICINGRULE=ORDERITEMPRICINGRULEDTO(
PRICE="NUMBER",
UUID="UUID_VALUE",
VERSION="VERSION_NUMBER",
PRICETYPE="STRING_VALUE",
UOM="EMPTY",
PRICEPERIOD="EMPTY",
PRICINGSCHEDULE="EMPTY",
PRICINGLEVEL="EMPTY",
PRICINGMETHOD="NUMBER",
WAREHOUSE="STRING_VALUE"
)
),
ITEMSALETAXCONFIGURATION=ORDERITEMSALETAXCONFIGURATIONDTO(
SALEPRICEISBASEDON="STRING_VALUE",
TAXCODE=TAXDTO(UUID="EMPTY", CODE="EMPTY", RATE="EMPTY", LINK="EMPTY", AMOUNT="NULL")
),
PURCHASEORDER="NULL",
PACKAGENAME="NULL",
ITEMSERIALORBATCHNUMBER="NULL",
ITEMCUSTOMATTRIBUTES=[],
OP="NULL",
UUID="NULL",
ITEMPROPERTIES="NULL",
SUBTOTAL="NULL",
TOTAL="NULL",
TAX="NULL",
ITEMUOM="NULL",
ITEMWAREHOUSE="NULL",
PRICINGSNAPSHOTUUID="NULL",
CHARGINGSTARTDATE="NULL",
ALTERNATECHARGINGSTARTDATE="NULL",
CHARGINGENDDATE="NULL",
ALTERNATECHARGINGENDDATE="NULL",
ITEMPRICE="NULL",
ITEMDISCOUNTAMOUNT="NULL",
TAXAMOUNT="NULL",
OPERATION="NULL",
DISCOUNT="NULL",
UOM="NULL",
WAREHOUSE="NULL",
QUANTITY="NULL",
ACCOUNTINGCODE="NULL",
ITEMACCOUNTINGCODE=ORDERITEMACCOUNTINGCODEDTO(SALESREVENUE="EMPTY"),
PREORDERSTOCKDETAILS="NULL",
EXPECTEDDELIVERYDATE="EMPTY",
PURCHASEORDERID="NULL",
PURCHASEINVOICEID="NULL"
),
COMMUNICATIONPREFERENCE="NULL",
LINE="NULL",
CUSTOMATTRIBUTES="NULL",
CUSTOMERPURCHASEORDERID="NULL",
DISCOUNTPROFILE="NULL",
ACCOUNTNAME="NULL",
CURRENCYID="NULL",
TOTAL="NULL",
SUBTOTAL="NULL",
TAX="NULL",
INVOICEID="NULL",
PAYMENTID="NULL",
INVOICE="NULL"
),
EVENTUUID="NULL"
)
{
"order": {
"lines": [
{
"charge_item_uuid": "{CHARGE_ITEM_UUID}",
"item_uuid": "{ITEM_UUID}",
"item_id": "{ITEM_ID}",
"item_name": "{ITEM_NAME}",
"item_order_quantity": "{ITEM_ORDER_QUANTITY}",
"shipping_cost": "{SHIPPING_COST}",
"item_invoice_note": "{ITEM_INVOICE_NOTE}",
"item_description": "{ITEM_DESCRIPTION}",
"item_type": "{ITEM_TYPE}",
"item_charge_type": "{ITEM_CHARGE_TYPE}",
"item_custom_attributes": "{ITEM_CUSTOM_ATTRIBUTES}",
"item_price_snapshot": {
"pricing_rule": {
"uuid": "{PRICING_RULE_UUID}",
"version": "{PRICING_RULE_VERSION}",
"price_type": "{PRICE_TYPE}",
"price": "{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_BASED_ON}",
"tax_code": {
"uuid": "{TAX_CODE_UUID}",
"code": "{TAX_CODE}",
"rate": "{TAX_RATE}",
"link": "{TAX_LINK}"
}
},
"isTaxExemptWhenSold": "{IS_TAX_EXEMPT}",
"item_price_tax": {
"uuid": "{TAX_UUID}",
"code": "{TAX_CODE}",
"rate": "{TAX_RATE}",
"link": "{TAX_LINK}"
},
"item_accounting_code": {
"sales_revenue": "{SALES_REVENUE}"
},
"version": "{VERSION}"
}
],
"kpis": {
"start_date": "{KPIS_START_DATE}",
"estimated_total": "{ESTIMATED_TOTAL}",
"total_revenue": "{TOTAL_REVENUE}",
"monthly_recurring_revenue": "{MONTHLY_RECURRING_REVENUE}",
"total_collected": "{TOTAL_COLLECTED}",
"total_outstanding": "{TOTAL_OUTSTANDING}",
"total_due": "{TOTAL_DUE}",
"last_invoice_issue_date": "{LAST_INVOICE_ISSUE_DATE}",
"last_invoice_total": "{LAST_INVOICE_TOTAL}",
"total_invoice": "{TOTAL_INVOICE}",
"next_invoice_issueDate": "{NEXT_INVOICE_ISSUE_DATE}",
"last_reactivated_on": "{LAST_REACTIVATED_ON}",
"last_cancelled_on": "{LAST_CANCELLED_ON}",
"last_changed_on": "{LAST_CHANGED_ON}",
"last_deleted_on": "{LAST_DELETED_ON}"
},
"line_items": "{LINE_ITEMS}"
}
}