Documentation OrderService (1.1)

The Orders namespace has Entities and Operations used for orders and other related Entities such as DeliveryNotes and Invoices. This namespace has nothing to do with the Checkout process where orders are created, but is more related to order history shown on pages like MyPage and such. The Order history in Storm is mostly a snapshot view of the orders as they looked when they got created in Storm, unless process integrations exists where DeliveryNotes and Invoices are passed to Storm.

Download OpenAPI description
Languages
Servers
https://demo.storm.io/api/1.1/

DeliveryNotes

Operations

InfoTypes

Operations

Invoices

Operations

Get an invoice

Request

Returns an Invoice by internal id. Returns null if the Invoice does not exist.

Query
idstringrequired

The internal id of the invoice.

cultureCodestring

Specifies in which language to display culture specific information. If none is supplied, value is resolved from Application.

curl -i -X GET \
  'https://demo.storm.io/api/1.1/OrderService.svc/rest/GetInvoice?id=string'

Responses

Success

Body
Idstring

The internal id of the Invoice.

InvoiceNostring

The external invoice number of the Invoice. Usually a number from the ERP system. MaxLength: 50.

InvoiceDatestring(date-time)

The invoice date of the Invoice.

InvoiceDueDatestring or null(date-time)

The invoice due date of the Invoice.

InvoiceTextstring

InvoiceText is taken from InvoiceMark in Storm. MaxLength: 255.

OrderIdstring

The internal id of the Order related to the Invoice.

OrderNostring

The external order number of the Order related to the Invoice. The order number usually comes from an ERP. MaxLength: 50.

OrderDatestring(date-time)

The order date of the Order related to the Invoice.

Sourcestring

The Source of the Invoice. 'WEB' is used for all invoices created though Storm. MaxLength: 255.

DeliveryDatestring or null(date-time)

The delivery date of the DeliveryNote related to the Invoice.

DeliveryMethodstring

The delivery method of the Order. MaxLength: 50.

PaymentMethodstring

The payment method of the Order. MaxLength: 50.

BillToobject(CustomerData)(CustomerData)
OrderFreightnumber(decimal)

The total amount for freight on the Invoice.

InvoiceChargenumber(decimal)

The total amount for invoice charge on the Invoice.

InvoiceAmountExVatnumber(decimal)

The total amount invoiced ex VAT.

VatAmountnumber(decimal)

The total VAT amount invoiced.

ItemsArray of objects(InvoiceItem)(InvoiceItem)

The invoiced items.

InfoArray of objects(Info)(Info)

A list of infos used to keep application specific data on the invoice. Not used for credit invoices.

InvoiceNoPspstring

The invoice number from the PSP. This is only used when the PSP issues invoices. MaxLength: 50.

CreditedInvoiceNostring

The credited invoice number. This is only used for credit invoices and this is the number of the original invoice being credited. MaxLength: 50.

IsDebitboolean

Indicates if this is a debit invoice (true) or a credit invoice (false).

GroupByKeystring

GroupByKey can be used to group invoices. All individual invoices on one summary invoice will have this set to the same value. Normal non-summary invoices will have this value set to null. MaxLength: 50.

Commentstring

Free text comment on the Invoice. MaxLength: 250.

InvoiceAmountIncVatnumber(decimal)

The total amount invoiced inc VAT.

Response
{ "Id": "string", "InvoiceNo": "string", "InvoiceDate": "2019-08-24T14:15:22Z", "InvoiceDueDate": "2019-08-24T14:15:22Z", "InvoiceText": "string", "OrderId": "string", "OrderNo": "string", "OrderDate": "2019-08-24T14:15:22Z", "Source": "string", "DeliveryDate": "2019-08-24T14:15:22Z", "DeliveryMethod": "string", "PaymentMethod": "string", "BillTo": { "Company": {}, "Customer": {}, "Address": {}, "DropPointCode": "string" }, "OrderFreight": 0, "InvoiceCharge": 0, "InvoiceAmountExVat": 0, "VatAmount": 0, "Items": [ {} ], "Info": [ {} ], "InvoiceNoPsp": "string", "CreditedInvoiceNo": "string", "IsDebit": true, "GroupByKey": "string", "Comment": "string", "InvoiceAmountIncVat": 0 }

Get invoice by invoice number

Request

Returns an Invoice by external invoice number. Returns null if the Invoice does not exist.

Query
invoiceNostringrequired

The external invoice number of the invoice.

cultureCodestring

Specifies in which language to display culture specific information. If none is supplied, value is resolved from Application.

curl -i -X GET \
  'https://demo.storm.io/api/1.1/OrderService.svc/rest/GetInvoiceByNo?invoiceNo=string'

Responses

Success

Body
Idstring

The internal id of the Invoice.

InvoiceNostring

The external invoice number of the Invoice. Usually a number from the ERP system. MaxLength: 50.

InvoiceDatestring(date-time)

The invoice date of the Invoice.

InvoiceDueDatestring or null(date-time)

The invoice due date of the Invoice.

InvoiceTextstring

InvoiceText is taken from InvoiceMark in Storm. MaxLength: 255.

OrderIdstring

The internal id of the Order related to the Invoice.

OrderNostring

The external order number of the Order related to the Invoice. The order number usually comes from an ERP. MaxLength: 50.

OrderDatestring(date-time)

The order date of the Order related to the Invoice.

Sourcestring

The Source of the Invoice. 'WEB' is used for all invoices created though Storm. MaxLength: 255.

DeliveryDatestring or null(date-time)

The delivery date of the DeliveryNote related to the Invoice.

DeliveryMethodstring

The delivery method of the Order. MaxLength: 50.

PaymentMethodstring

The payment method of the Order. MaxLength: 50.

BillToobject(CustomerData)(CustomerData)
OrderFreightnumber(decimal)

The total amount for freight on the Invoice.

InvoiceChargenumber(decimal)

The total amount for invoice charge on the Invoice.

InvoiceAmountExVatnumber(decimal)

The total amount invoiced ex VAT.

VatAmountnumber(decimal)

The total VAT amount invoiced.

ItemsArray of objects(InvoiceItem)(InvoiceItem)

The invoiced items.

InfoArray of objects(Info)(Info)

A list of infos used to keep application specific data on the invoice. Not used for credit invoices.

InvoiceNoPspstring

The invoice number from the PSP. This is only used when the PSP issues invoices. MaxLength: 50.

CreditedInvoiceNostring

The credited invoice number. This is only used for credit invoices and this is the number of the original invoice being credited. MaxLength: 50.

IsDebitboolean

Indicates if this is a debit invoice (true) or a credit invoice (false).

GroupByKeystring

GroupByKey can be used to group invoices. All individual invoices on one summary invoice will have this set to the same value. Normal non-summary invoices will have this value set to null. MaxLength: 50.

Commentstring

Free text comment on the Invoice. MaxLength: 250.

InvoiceAmountIncVatnumber(decimal)

The total amount invoiced inc VAT.

Response
{ "Id": "string", "InvoiceNo": "string", "InvoiceDate": "2019-08-24T14:15:22Z", "InvoiceDueDate": "2019-08-24T14:15:22Z", "InvoiceText": "string", "OrderId": "string", "OrderNo": "string", "OrderDate": "2019-08-24T14:15:22Z", "Source": "string", "DeliveryDate": "2019-08-24T14:15:22Z", "DeliveryMethod": "string", "PaymentMethod": "string", "BillTo": { "Company": {}, "Customer": {}, "Address": {}, "DropPointCode": "string" }, "OrderFreight": 0, "InvoiceCharge": 0, "InvoiceAmountExVat": 0, "VatAmount": 0, "Items": [ {} ], "Info": [ {} ], "InvoiceNoPsp": "string", "CreditedInvoiceNo": "string", "IsDebit": true, "GroupByKey": "string", "Comment": "string", "InvoiceAmountIncVat": 0 }

Insert an invoice [Obsolete("Not used. Invoices are inserted through integrations.")]

Request

Not implemented.

Bodyrequired

The Invoice to insert.

Idstring

The internal id of the Invoice.

InvoiceNostring

The external invoice number of the Invoice. Usually a number from the ERP system. MaxLength: 50.

InvoiceDatestring(date-time)

The invoice date of the Invoice.

InvoiceDueDatestring or null(date-time)

The invoice due date of the Invoice.

InvoiceTextstring

InvoiceText is taken from InvoiceMark in Storm. MaxLength: 255.

OrderIdstring

The internal id of the Order related to the Invoice.

OrderNostring

The external order number of the Order related to the Invoice. The order number usually comes from an ERP. MaxLength: 50.

OrderDatestring(date-time)

The order date of the Order related to the Invoice.

Sourcestring

The Source of the Invoice. 'WEB' is used for all invoices created though Storm. MaxLength: 255.

DeliveryDatestring or null(date-time)

The delivery date of the DeliveryNote related to the Invoice.

DeliveryMethodstring

The delivery method of the Order. MaxLength: 50.

PaymentMethodstring

The payment method of the Order. MaxLength: 50.

BillToobject(CustomerData)(CustomerData)
OrderFreightnumber(decimal)

The total amount for freight on the Invoice.

InvoiceChargenumber(decimal)

The total amount for invoice charge on the Invoice.

InvoiceAmountExVatnumber(decimal)

The total amount invoiced ex VAT.

VatAmountnumber(decimal)

The total VAT amount invoiced.

ItemsArray of objects(InvoiceItem)(InvoiceItem)

The invoiced items.

InfoArray of objects(Info)(Info)

A list of infos used to keep application specific data on the invoice. Not used for credit invoices.

InvoiceNoPspstring

The invoice number from the PSP. This is only used when the PSP issues invoices. MaxLength: 50.

CreditedInvoiceNostring

The credited invoice number. This is only used for credit invoices and this is the number of the original invoice being credited. MaxLength: 50.

IsDebitboolean

Indicates if this is a debit invoice (true) or a credit invoice (false).

GroupByKeystring

GroupByKey can be used to group invoices. All individual invoices on one summary invoice will have this set to the same value. Normal non-summary invoices will have this value set to null. MaxLength: 50.

Commentstring

Free text comment on the Invoice. MaxLength: 250.

InvoiceAmountIncVatnumber(decimal)

The total amount invoiced inc VAT.

curl -i -X POST \
  https://demo.storm.io/api/1.1/OrderService.svc/rest/InsertInvoice \
  -H 'Content-Type: application/json' \
  -d '{
    "Id": "string",
    "InvoiceNo": "string",
    "InvoiceDate": "2019-08-24T14:15:22Z",
    "InvoiceDueDate": "2019-08-24T14:15:22Z",
    "InvoiceText": "string",
    "OrderId": "string",
    "OrderNo": "string",
    "OrderDate": "2019-08-24T14:15:22Z",
    "Source": "string",
    "DeliveryDate": "2019-08-24T14:15:22Z",
    "DeliveryMethod": "string",
    "PaymentMethod": "string",
    "BillTo": {
      "Company": {
        "Id": 0,
        "No": "string",
        "Name": "string",
        "OrgNo": "string"
      },
      "Customer": {
        "Id": 0,
        "No": "string",
        "FirstName": "string",
        "LastName": "string",
        "SSN": "string",
        "Email": "string",
        "Phone": "string",
        "CellPhone": "string"
      },
      "Address": {
        "Line1": "string",
        "Line2": "string",
        "CareOf": "string",
        "City": "string",
        "ZipCode": "string",
        "Country": "string",
        "CountryCode": "string",
        "Region": "string",
        "ShippingPhoneNumber": "string",
        "GlobalLocationNo": "string"
      },
      "DropPointCode": "string"
    },
    "OrderFreight": 0,
    "InvoiceCharge": 0,
    "InvoiceAmountExVat": 0,
    "VatAmount": 0,
    "Items": [
      {
        "RowNumber": 0,
        "ItemNo": "string",
        "ItemDescription": "string",
        "Quantity": 0,
        "UnitPrice": 0,
        "UnitDiscount": 0,
        "RowAmount": 0,
        "RowAmountVat": 0,
        "DeliveryDate": "2019-08-24T14:15:22Z",
        "VatRate": 0,
        "UnitPriceIncVat": 0
      }
    ],
    "Info": [
      {
        "Code": "string",
        "Name": "string",
        "Description": "string",
        "Value": "string"
      }
    ],
    "InvoiceNoPsp": "string",
    "CreditedInvoiceNo": "string",
    "IsDebit": true,
    "GroupByKey": "string",
    "Comment": "string",
    "InvoiceAmountIncVat": 0
  }'

Responses

Success

Body
Idstring

The internal id of the Invoice.

InvoiceNostring

The external invoice number of the Invoice. Usually a number from the ERP system. MaxLength: 50.

InvoiceDatestring(date-time)

The invoice date of the Invoice.

InvoiceDueDatestring or null(date-time)

The invoice due date of the Invoice.

InvoiceTextstring

InvoiceText is taken from InvoiceMark in Storm. MaxLength: 255.

OrderIdstring

The internal id of the Order related to the Invoice.

OrderNostring

The external order number of the Order related to the Invoice. The order number usually comes from an ERP. MaxLength: 50.

OrderDatestring(date-time)

The order date of the Order related to the Invoice.

Sourcestring

The Source of the Invoice. 'WEB' is used for all invoices created though Storm. MaxLength: 255.

DeliveryDatestring or null(date-time)

The delivery date of the DeliveryNote related to the Invoice.

DeliveryMethodstring

The delivery method of the Order. MaxLength: 50.

PaymentMethodstring

The payment method of the Order. MaxLength: 50.

BillToobject(CustomerData)(CustomerData)
OrderFreightnumber(decimal)

The total amount for freight on the Invoice.

InvoiceChargenumber(decimal)

The total amount for invoice charge on the Invoice.

InvoiceAmountExVatnumber(decimal)

The total amount invoiced ex VAT.

VatAmountnumber(decimal)

The total VAT amount invoiced.

ItemsArray of objects(InvoiceItem)(InvoiceItem)

The invoiced items.

InfoArray of objects(Info)(Info)

A list of infos used to keep application specific data on the invoice. Not used for credit invoices.

InvoiceNoPspstring

The invoice number from the PSP. This is only used when the PSP issues invoices. MaxLength: 50.

CreditedInvoiceNostring

The credited invoice number. This is only used for credit invoices and this is the number of the original invoice being credited. MaxLength: 50.

IsDebitboolean

Indicates if this is a debit invoice (true) or a credit invoice (false).

GroupByKeystring

GroupByKey can be used to group invoices. All individual invoices on one summary invoice will have this set to the same value. Normal non-summary invoices will have this value set to null. MaxLength: 50.

Commentstring

Free text comment on the Invoice. MaxLength: 250.

InvoiceAmountIncVatnumber(decimal)

The total amount invoiced inc VAT.

Response
{ "Id": "string", "InvoiceNo": "string", "InvoiceDate": "2019-08-24T14:15:22Z", "InvoiceDueDate": "2019-08-24T14:15:22Z", "InvoiceText": "string", "OrderId": "string", "OrderNo": "string", "OrderDate": "2019-08-24T14:15:22Z", "Source": "string", "DeliveryDate": "2019-08-24T14:15:22Z", "DeliveryMethod": "string", "PaymentMethod": "string", "BillTo": { "Company": {}, "Customer": {}, "Address": {}, "DropPointCode": "string" }, "OrderFreight": 0, "InvoiceCharge": 0, "InvoiceAmountExVat": 0, "VatAmount": 0, "Items": [ {} ], "Info": [ {} ], "InvoiceNoPsp": "string", "CreditedInvoiceNo": "string", "IsDebit": true, "GroupByKey": "string", "Comment": "string", "InvoiceAmountIncVat": 0 }

List invoices

Request

Returns a paged invoice list for a specified orderId, customer or company.

Query
orderIdstringrequired

The internal order id for which invoices are fetched. Either this or a customerId, companyId must be specified.

companyIdstringrequired

The internal company id for which invoices are fetched. Either this or a customerId, orderId must be specified.

customerIdstringrequired

The internal customer id for which invoices are fetched. Either this or a companyId, orderId must be specified.

fromDatestring

A from date used to filter the invoices. Format: yyyy-mm-ddThh:mm:ss.nnn[z], example 2024-08-01T12:59:59.000Z

toDatestring

A to date used to filter the invoices. Format: yyyy-mm-ddThh:mm:ss.nnn[z], example 2024-08-01T12:59:59.000Z

pageNostring

Page numbers start with 1. Default is 1. If you specify a pageNo outside the range of items, an empty list will be returned. PageSize is mandatory for pageNo to work.

pageSizestring

Number of items to display per page. Mandatory if using pageNo.

cultureCodestring

Specifies in which language to display culture specific information. If none is supplied, value is resolved from Application.

curl -i -X GET \
  'https://demo.storm.io/api/1.1/OrderService.svc/rest/ListInvoices?companyId=string&customerId=string&orderId=string'

Responses

Success

Body
ItemCountinteger(int32)

The total number of invoices. Can be used to manage paging. Use PageSize to calculate number of pages.

ItemsArray of objects(InvoiceListItem)(InvoiceListItem)

Current list of invoices for the current page if paging is used. Otherwise all invoices will be in the list.

Response
{ "ItemCount": 0, "Items": [ {} ] }

List invoices by basket

Request

Returns a paged invoice list for specified basket internal id

Query
basketIdinteger(int32)required

The basket internal id for which invoices are fetched.

cultureCodestring

Specifies in which language to display culture specific information. If none is supplied, value is resolved from Application.

curl -i -X GET \
  'https://demo.storm.io/api/1.1/OrderService.svc/rest/ListInvoicesByBasket?basketId=0'

Responses

Success

Body
ItemCountinteger(int32)

The total number of invoices. Can be used to manage paging. Use PageSize to calculate number of pages.

ItemsArray of objects(InvoiceListItem)(InvoiceListItem)

Current list of invoices for the current page if paging is used. Otherwise all invoices will be in the list.

Response
{ "ItemCount": 0, "Items": [ {} ] }

Orders

Operations