Click or drag to resize

ESDocumentPrice Class

Ecommerce standards document that contains a list of pricing records for either products, downloads, or labour
Inheritance Hierarchy

Namespace:  EcommerceStandardsDocuments
Assembly:  EcommerceStandardsDocuments.Library (in EcommerceStandardsDocuments.Library.dll) Version: 1.4.0.0 (1.0.0.0)

The ESDocumentPrice type exposes the following members.

Constructors
  NameDescription
Public methodESDocumentPrice
Constructor
Top
Properties
  NameDescription
Public propertypriceGroups
Dictionary that contains records keyed on keyPriceGroupID, containing arrays of customer accounts for each group, based on setting the customer account's keyCustomerAccountID in each array
Top
Fields
  NameDescription
Public fieldconfigs
A dictionary of additional configurations and settings to include with each Ecommerce Standard Document. Typically documents would contain the "dataFields" key that would have a comma delimited list of record properties that are expected to contain data when reading the document's records. Any records not containing data for properties in list could then have the data set to a default when saved to a database.
(Inherited from ESDocument.)
Public fielddataRecords
List of product price records
Public fielddataTransferMode
Denotes if the data being placed into document is a complete data set, or partial data being transferred containing only data changes.
(Inherited from ESDocument.)
Public fieldmessage
Message providing details of if the data could be obtained when requesting the document. The message gives meaning to the result status.
(Inherited from ESDocument.)
Public fieldresultStatus
Code that denotes if the data could be successfully obtained for the document, and if not why. See ESDocumentConstants Class for the list of status codes
(Inherited from ESDocument.)
Public fieldtotalDataRecords
The total number of records placed within document. For documents that contain multiple record lists, please check the relevant documentation to see how this number applies.
(Inherited from ESDocument.)
Public fieldversion
Version of the Ecommerce Standards Document. Verifying the version of the document is critical for systems transferring and manipulating the data.
(Inherited from ESDocument.)
Top
Examples
An example of the Product Pricing Ecommerce Standards document in its JSON serialised form, containing product price-level data
{
    "version": 1.4,
    "resultStatus": 1,
    "message":"The product price-level pricing data has been successfully obtained.",
    "dataTransferMode": "COMPLETE",
    "totalDataRecords": 4,
    "configs":{"dataFields":"keyProductID,keyPriceLevelID,keySellUnitID,price"},
    "dataRecords":
     [
        {
            "keyProductID":"PROD-123",
            "keyPriceLevelID":"PL-001",
            "keySellUnitID": "EACH",
            "price": 10.00
        },
        {
            "keyProductID":"PROD-123",
            "keyPriceLevelID":"PL-002",
            "keySellUnitID": "EACH",
            "price": 8.00
        },
        {
            "keyProductID":"PROD-123",
            "keyPriceLevelID":"PL-003",
            "keySellUnitID": "EACH",
            "price": 5.00
        },
        {
            "keyProductID":"PROD-456",
            "keyPriceLevelID":"PL-001",
            "keySellUnitID": "EACH",
            "price": 22.00
        },
        {
            "keyProductID":"PROD-456",
            "keyPriceLevelID":"PL-001",
            "keySellUnitID": "PACK",
            "price": 80.00
        }
    ]
}
An example of the Product Pricing Ecommerce Standards document in its JSON serialised form, containing product price-level quantity break data
{
    "resultStatus":"1",
    "message":"The product price-level quantity break pricing data has been successfully obtained.",
    "configs":{"dataFields":"keyProductID,keyPriceLevelID,price,quantity"},
    "dataTransferMode": "COMPLETE",
    "version": 1.4,
    "totalDataRecords": 4,
    "dataRecords":
     [
        {
            "keyProductID":"PROD-123",
            "keyPriceLevelID":"PL-001",
            "keySellUnitID": "EACH",
            "price": 10.00,
            "quantity": 5
        },
        {
            "keyProductID":"PROD-123",
            "keyPriceLevelID":"PL-001",
            "keySellUnitID": "EACH",
            "price": 5.00,
            "quantity": 10
        },
        {
            "keyProductID":"PROD-123",
            "keyPriceLevelID":"PL-001",
            "keySellUnitID": "EACH",
            "price": 2.00,
            "quantity": 20
        },
        {
            "keyProductID":"PROD-123",
            "keyPriceLevelID":"PL-002",
            "keySellUnitID": "EACH",
            "price": 4.10,
            "quantity": 5
        }
    ]
}
An example of the Product Pricing Ecommerce Standards document in its JSON serialised form, containing customer account product pricing data
{
    "resultStatus":"1",
    "message":"The product customer account pricing data has been successfully obtained.",
    "configs":{"dataFields":"keyProductID,keyAccountID,price,quantity,referenceID,referenceType"},
    "dataTransferMode": "COMPLETE",
    "version": 1.4,
    "totalDataRecords": 4,
    "dataRecords":
     [
        {
            "keyProductID":"PROD-123",
            "keyAccountID":"ACC-123",
            "keySellUnitID": "EACH",
            "price": 70.00,
            "quantity": 5,
            "referenceID": "FORCED-CONTRACT-1",
            "referenceType": "CF"
        },
        {
            "keyProductID":"PROD-123",
            "keyAccountID":"ACC-123",
            "keySellUnitID": "EACH",
            "price": 1.00,
            "quantity": 20,
            "referenceID": "FORCED-CONTRACT-1",
            "referenceType": "CF"
        },
        {
            "keyProductID":"PROD-123",
            "keyAccountID":"ACC-456",
            "keySellUnitID": "EA",
            "price": 7.30,
            "quantity": 1,
            "referenceID": "CONTRACT-222",
            "referenceType": "C"
        },
        {
            "keyProductID":"PROD-456",
            "keyAccountID":"ACC-456",
            "price": 3.30
        }
    ]
}
An example of the Product Pricing Ecommerce Standards document in its JSON serialised form, containing product pricing data that has been grouped and applied to multiple customer accounts assigned to each group
{
    "resultStatus":"1",
    "message":"The product customer account pricing data has been successfully obtained.",
    "configs":{"dataFields":"keyProductID,keyPriceGroupID,keySellUnitID,price,quantity,referenceID,referenceType"},
    "dataTransferMode": "COMPLETE",
    "version": 1.4,
    "totalDataRecords": 4,
    "priceGroups":
    {
        "PRICE-GROUP-1": ["ACC-1","ACC-2","ACC-3","ACC-4"],
        "PRICE-GROUP-2": ["ACC-5","ACC-6","ACC-7","ACC-8"]
    },
    "dataRecords":
     [
        {
            "keyProductID":"PROD-123",
            "keyPriceGroupID":"PRICE-GROUP-1",
            "price": 3.30,
            "quantity": 1
        },
        {
            "keyProductID":"PROD-123",
            "keyPriceGroupID":"PRICE-GROUP-2",
            "keySellUnitID": "1",
            "price": 2.90,
            "quantity": 1,
            "referenceID": "FORCED-CONTRACT-1",
            "referenceType": "CF"
        },
        {
            "keyProductID":"PROD-456",
            "keyPriceGroupID":"PRICE-GROUP-2",
            "keySellUnitID": "EACH",
            "price": 0.255,
            "quantity": 50
        }
    ]
}
An example of the Product Pricing Ecommerce Standards document in its JSON serialised form, containing product price-level data with only record changes
{
    "resultStatus":"1",
    "message":"The product price-level pricing data has been successfully obtained.",
    "configs":{"dataFields":"keyProductID,keyPriceLevelID,keySellUnitID,drop"},
    "dataTransferMode": "INCREMENT",
    "version": 1.4,
    "totalDataRecords": 5,
    "dataRecords":
     [
        {
            "keyProductID":"PROD-123",
            "keyPriceLevelID":"PL-006",
            "keySellUnitID": "EACH",
            "price": 22.00,
            "drop": 1
        },
        {
            "keyProductID":"PROD-123",
            "keyPriceLevelID":"PL-002",
            "keySellUnitID": "EACH",
            "price": 11.00,
            "drop": 2
        },
        {
            "keyProductID":"PROD-123",
            "keyPriceLevelID":"PL-003",
            "keySellUnitID": "EACH",
            "drop": 3
        },
        {
            "keyProductID":"PROD-456",
            "keyPriceLevelID":"PL-001",
            "keySellUnitID": "EACH",
            "drop": 4
        }
    ]
}
See Also