order


Changelog

October 27, 2025
  • GET method in the detail object added the list of item pictures URL: list_pictures_url
March 07, 2025
  • POST method added a new object list_order_redeem_points_vouchers. The object is used to pass the customer number of points to be redeemed based on third party voucher and 365 loyalty schema defined.

GET /order

To get a specific pending order.

/order?token=XXXXX&order_code_365=OI00100001


Returns the selected pending order

POST /order

To create a new order WITHOUT discount at the end of the order.

To create a new order WITH discount at the end of the order.

To create a new order WITH ZERO VALUES.


field type description
api_credentials
token string Credentials provided by Powersoft that allow access to the API
order
order_header
shopping_cart_code string The unique number of the order in your system
order_date_local datetime The local data time. This depends on the timezone. eg. Cyprus is in time zone UTC +2, but it also changes for daylight savings time
order_date_utc0 datetime This is the Coordinated Universal Time (UTC). ie at time zone +0
order_date_deliverby_utc0 datetime The date by which this order needs to be delivered in UTC0
agent_code_365 string The code of the agent in 365. Pass "" if none.
customer_code_365 string The code of the customer in 365.
user_code_365 string The user code. Not Required
customer_email string The email of the customer.
total_sub decimal The total amount of the entire order before vat, and before any discount
total_discount decimal The total discount amount applied to this order before additional discount at the end of the order, in case there is one. If there is no discount, pass 0.00
total_vat decimal The total vat amount of the entire order before additional discount at the end of the order
total_grand decimal The total that the buyer is charged for this order before additional discount at the end of the order. total_grand = total_sub - total_discount + total_vat
order_additional_discount_type string The discount type applied at the end of the order, if there is one. The accepted values are "amount" or "percentage". In case there is no discount at the end of the order pass empty string "" or do not pass this field. It is not required.
order_additional_discount_percentage decimal The additional discount percentage applied at the end of the order. The value must be between 0 and 100. If there is no additional discount at the end of the order you don't need to pass it. It is not required. If the discount applied is type amount the percentage value must be calculated as round(order_additional_discount_amount/total_grand * 100,2)
order_additional_discount_amount decimal The additional discount amount applied at the end of the order. The value must be less than total_grand. If there is no additional discount at the end of the order you don't need to pass it. It is not required. If the discount applied is type percentage the value must be calculated as round(total_grand*order_additional_discount_percentage/100,2)
order_total_value_after_additional_discount decimal The total the buyer is charged after the additional discount. If there is no additional discount at the end of the order you don't need to pass it. It is not required. order_total_value_after_additional_discount = total_grand - order_additional_discount_amount
comments string Any notes about the order, eg special requirements. Pass "" if none.
delivery_address_line_1 string The address line 1.eg. Street number and name.
delivery_address_line_2 string The address line 2. Pass "" if none.
delivery_address_line_3 string The address line 3. Pass "" if none.
delivery_postal_code string The postal code of the customer.
delivery_town string The town of the customer.
delivery_country_code_iso2 string The 2 digit ISO code of the country. eg CY for Cyprus.
delivery_country_name string The name of the country.
payment_term_code_365 string The payment term code in 365.
delivery_term_code_365 string The delivery term code in 365
is_export string Flags the order as export. Vat codes provided in the details must be the same with the vat code set for import/export in 365. Allowed values 'yes' or 'no'. Not required, if not provided the default value is 'no'.
is_euc string Flags the order as export to any country belong to EU. Allowed values 'yes' or 'no'. Not required, if not provided the default value is 'no'.
ignore_delivery_info boolean If the value is true no validation for shipping address is performed, otherwise it is a must the shipping address to be provided. For some connections the shipping address is not important and it is not necessary to be passed dummy values just to pass the validation. If is not provided in the request, the default value is false.
update_customer_address_info string It accepts only the values 'yes' or 'no'. If the value is 'yes' then the shipping address provided in the order will be saved as address information in the customer card. If is not provided in the request, the default value is 'yes'.
order_status_code_365 string The order status code in 365. Not required. If is not provided the default order status set by the user in 365 settings will be applied.
list_order_details
line_number int The position of this line in the order list. eg 1
item_code_365 string The code of the item in 365
line_quantity decimal The number of pieces of the item for this order line
line_price_incl_vat decimal The price including VAT of the item for this order line
line_total_sub decimal The total amount of this line of the order before vat, and before any discount. line_total_sub = round((it.line_price_incl_vat * it.line_quantity) / (1 + line_total_vat_percentage / 100),2)
line_total_discount decimal The total discount amount of this line of the order. If there is no discount, pass 0.00. line_total_discount = round(line_total_sub * line_total_discount_percentage / 100,2)
line_total_discount_percentage decimal The total discount percentage of this line of the order. eg. If the discount is 10%, pass 10.00 If there is no discount, pass 0.00
line_vat_code_365 string The code of the vat in 365
line_total_vat decimal The total vat amount of this line of the order. line_total_vat = round(line_total_grand - (line_total_sub - line_total_discount),2)
line_total_vat_percentage decimal The total vat percentage of this line of the order. eg. If the vat is 19%, pass 19.00
line_total_grand decimal The total amount for this line of the order. line_total_grand = round((line_price_incl_vat * line_quantity)*(1 - line_total_discount_percentage / 100),2)
line_notes string Notes per line
is_subitem boolean Indicates if in the line is a subitem
root_line_number string Indicates the parent line id to which the subitem is linked
exclude_print boolean Indicates if the subitem is excluded from the invoice printing. The value is taken from the subitems information
list_invoice_payments
payment_number string Payment number on your side
payment_type_code_365 string 365 payment type code (e.g. CASH, JCC and so on)
payment_amount decimal Payment amount
payment_description string Payment description
payment_comments string Payment comments
number_of_points_redeemed integer Number of points to be redeemed. It is required if payment_type_code_365 has the value POINTS and a 365 loyalty schema is selected. A redeem points transaction will be created for the customer when the order is submitted.
loyalty_schema_code_365 string 365 Loyalty schema code. Use the call list_loyalty_schema to get them.
list_order_redeem_points_vouchers
voucher_number string Your voucher number used to redeem points. Required.
number_of_points_redeemed integer Number of points to be redeemed. Required.
loyalty_schema_code_365 string 365 Loyalty schema code. Use the call list_loyalty_schema to get them.
comments string Additional comments for the redeem points transaction.

Order with zero values can be created only if the application in 365 is configured to allow orders with zero totals.

If order is unpaid the list_order_payments must be passed as null value.

If there are not points to redeem based on your voucher and 365 loyalty schema the list_order_redeem_points_vouchers must be passed as null value. Before passing the list_order_redeem_points_vouchers it is recommended to check the customer balance points.


Returns

Returns the standard api_response object. The Powersoft365 code is returned in the response_id field.


PUT /order

To modify an existing order.

field type description
api_credentials
token string Credentials provided by Powersoft that allow access to the API
order
shopping_cart_code string The unique number of the order in your system. Required.
customer_email string The email of the customer. Not required.
delivery_address_line_1 string The address line 1.eg. Street number and name. Not required
delivery_address_line_2 string The address line 2. Not required.
delivery_address_line_3 string The address line 3. Not required.
delivery_postal_code string The postal code of the customer. Not required.
delivery_town string The town of the customer. Not required.
delivery_country_code_iso2 string The 2 digit ISO code of the country. eg CY for Cyprus. Not required.
delivery_country_name string The name of the country. Not required.
payment_term_code_365 string The payment term code in 365. Not required.
delivery_term_code_365 string The delivery term code in 365. Not required.
order_status_code_365 string The order status code in 365. Not required.
comments string Any notes about the order, eg special requirements. Not required.

Returns

Returns the standard api_response object. The Powersoft365 order code is returned in the response_id field.

If you don't want to update one of the fields above, do not pass it in the parameters, otherwise it is mandatory to have a value. Only the pending orders can be modified.