GetProductInformation

Description

With this method, we want to receive real time product information from the ERP system. It contains customer-specific product information like pricing and discount information. Also stock information is returned. We will use this method to show real time product information on the product detail page in the web shop.

Action

http://shoxl.com/ShoxlService/GetProductInformation

Please note: this is not a working url, but a combination of namespace and method. Do not expect the url to return a result.

Style

Document

Input (Literal)

The input of this method is the document element GetProductInformation having the structure defined by the following table.

Element

Type

Occurs

Description

Sequence

1..1

request

tns:GetProductInformationRequest

0..1

Complex Type: tns: GetProductInformationRequest

Description

The GetProductInformationRequest contains all the information to get the real

time product information like prices and stock from the ERP.

Component

Type

Occurs

Description

Sequence

1..1

AccountNumber

s:string

1..1

This is the (project) account number of the customer.

ProductNumber

s:string

1..1

The product number for the requested product details, this can be a customer-specific product number

Output (Literal)

The output of this method is the document element tns:GetProductInformationResponse having the structure defined by the following table.

Element

Type

Occurs

Description

Sequence

1..1

GetProductInformationResult

tns:GetProductInformationResult

0..1

Complex Type: tns:GetProductInformationResult

Description

The GetProductInformationResult contains prices and stock of the given product

and account number.

Component

Type

Occurs

Description

Sequence

1..1

QuantityDiscountPrices

tns:ArrayOfQuantityDiscountPrice

0..1

A list of QuantityDiscountPrices. For the complete description check the QuantityDiscountPrice section in the documentation. The QuantityDiscountPrices is used to return quantity price breaks, example; from quantity x use the unit price = y

Request

tns:GetProductInformationRequest

1..1

The sent request by Shoxl Shop.

Stock

s:decimal

0..1

The amount of stock still available for the product

StockIndicationCode

s:int

1..1

A stock indication, 1 = in stock (green), 2 = not in stock, short delivery time (orange), 3 = not in stock, longer delivery time (red)

VatCode

s:int

1..1

The VAT Code of the product, 1 = percentage from the customer settings, 2 = LOW (6%), 3 = ZERO (0%). This VAT code must be set by the ERP taking into account that this VAT code can be overrulled by the customer settings, for example foreign customers use ZERO as a VAT code, in this case the ERP will return 3 to Shoxl Shop.

BaseUnit

s:string

0..1

The base unit of the product, eg pce or meter.

PriceUnit

s:decimal

0..1

The quantity on which price is based

Complex Type: tns:ArrayOfQuantityDiscountPrice

Component

Type

Occurs

Description

Sequence

1..1

QuantityDiscountPrice

tns:QuantityDiscountPrice

0..*

Complex Type: tns:QuantityDiscountPrice

The QuantityDiscountPrice contains the information of a quantity range and the connected price per item.

Component

Type

Occurs

Description

Sequence

1..1

DiscountAmountPerItemExclVat

s:decimal

0..1

This field can be used to give the calculated Discount Amount using a discount percentage. Or just give a discount amount when no discount percentage is used for the calculation.

DiscountPercentagePerItem

s:decimal

0..1

A percentage of the give discount on the default netto price per item excluding VAT. When this field is set, the field DiscountAmountPerItemExclVat is required.

FromQuantity

s:int

0..1

The from quantity where the discount price is valid from

NettoPricePerItemExclVat

s:decimal

0..1

The calculated netto price per item. This is the price including discounts.

ToQuantity

s:int

0..1

The to quantity where the discount price is valid to

REST API:

URL: /Shoxl​/v1​/GetProductInformation Method: POST

Request body:

GetProductInformationRequest{

parameter

type

accountNumber

string

required

productNumber

string required

}

Example:

{
  "accountNumber": "string",
  "productNumber": "string"
}

Response body:

GetProductInformationResult{

parameter

type

quantityDiscountPrices

[QuantityDiscountPrice]

nullable: true

request

GetProductInformationRequest

stock

number($double)

nullable: true

stockIndicationCode

integer($int32)

vatCode

integer($int32)

baseUnit

string nullable: true

priceUnit

number($double)

nullable: true

}

QuantityDiscountPrice{

parameter

type

discountAmountPerItemExclVat

number($double) nullable: true

discountPercentagePerItem

number($double) nullable: true

fromQuantity

integer($int32) nullable: true

nettoPricePerItemExclVat

number($double)

toQuantity

integer($int32) nullable: true

}

Example:

{
  "quantityDiscountPrices": [
    {
      "discountAmountPerItemExclVat": 0,
      "discountPercentagePerItem": 0,
      "fromQuantity": 0,
      "nettoPricePerItemExclVat": 0,
      "toQuantity": 0
    }
  ],
  "request": {
    "accountNumber": "string",
    "productNumber": "string"
  },
  "stock": 0,
  "stockIndicationCode": 0,
  "vatCode": 0,
  "baseUnit": "string",
  "priceUnit": 0
}

Last updated