Megaventory API v2017a

<back to all web services

PricingRuleUpdate

Inserts a pricing rule or updates a current pricing rule.Uses your API Key and applies a mvRecordAction value on an mvPricingRule object. We can insert the mvPricingRule object we specified using "Insert" as our mvRecordAction. We can update a current one using "Update", we can insert it if it doesn't already exist, update it if it does using "InsertOrUpdate" and we can insert new fields or update non-empty fields of the object using "InsertOrUpdateNonEmptyFields". Optionally, you can use mvInsertUpdateDeleteSourceApplication when an external application ( eg WooCommerce ) is the one that triggers the PricingRuleUpdate call. PricingRuleId cannot be updated.

Examples:



A.

Insert a new pricing rule.
PricingRuleUsedByModule field is required for the insert operation and its value should be either 1 for Sales Pricing Rule or 2 for Purchase Pricing Rule.

Value:

 {
   "mvPricingRule": {
      "PricingRuleName": "Sales Pricing Rule",
      "PricingRuleCurrency": "EUR",
      "PricingRuleBasePrice": "DefaultSalesPrice",
      "PricingRuleSpExchangeRate": 2,
      "PricingRuleUsedByModule": 1
   },
   "mvRecordAction": "Insert"
}
  


Response:

 {
   "mvPricingRule": {
      "PricingRuleID": 174,
      "PricingRuleName": "Sales Pricing Rule",
      "PricingRuleCurrency": "EUR",
      "PricingRuleBasePrice": "DefaultSalesPrice",
      "PricingRuleSpExchangeRate": 2,
      "PricingRuleSpecificEntities": false,
      "PricingRuleSpecificProducts": false,
      "PricingRuleSpecificProductCategories": false,
      "PricingRuleDateModified": "/Date(-62135596800000-0000)/",
      "PricingRuleDateCreated": "/Date(1576844453705+0200)/",
      "PricingRuleUsedByModule": 1
   },
   "ResponseStatus": {
      "ErrorCode": "0"
   },
   "entityID": 174
}
 

B.

Update information on the pricing rule above. PricingRuleID is mandatory and cannot be updated.

Value:

 {
   "mvPricingRule": {
      "PricingRuleID": 174,
      "PricingRuleName": "Sales Pricing Rule",
      "PricingRuleCurrency": "EUR",
      "PricingRuleBasePrice": "DefaultSalesPrice",
      "PricingRuleSpExchangeRate": 2,
      "PricingRuleSpecificEntities": true,
      "PricingRuleSpecificProductCategories": false,
      "PricingRuleStartDate": "3/28/2021, 1:33:11 PM",
      "PricingRuleEndDate": "5/28/2021, 1:33:11 PM"
   },
   "mvRecordAction": "Update"
}
  


Response:

 {
   "mvPricingRule": {
    "PricingRuleID": 174,
    "PricingRuleName": "Sales Pricing Rule",
    "PricingRuleCurrency": "EUR",
    "PricingRuleBasePrice": "DefaultSalesPrice",
    "PricingRuleSpExchangeRate": 2,
    "PricingRuleSpecificEntities": true,
    "PricingRuleSpecificProducts": false,
    "PricingRuleSpecificProductCategories": false,
    "PricingRuleStartDate": "/Date(1546639200000+0200)/",
    "PricingRuleEndDate": "/Date(1548367200000+0200)/",
    "PricingRuleDateModified": "/Date(-62135596800000-0000)/",
    "PricingRuleDateCreated": "/Date(-62135596800000-0000)/",
    "PricingRuleUsedByModule": 1
   },
   "ResponseStatus": {
      "ErrorCode": "0"
   },
   "entityID": 174
}
 

To override the Content-type in your clients HTTP Accept Header, append the .soap11 suffix or ?format=soap11

HTTP + SOAP11

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /soap11 HTTP/1.1 
Host: api.megaventory.com 
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: PricingRuleUpdate

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>

<PricingRuleUpdate xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Megaventory.APIEndpoints.Operations">
  <APIKEY>String</APIKEY>
  <mvPricingRule xmlns:d2p1="https://api.megaventory.com/types">
    <d2p1:PricingRuleID>0</d2p1:PricingRuleID>
    <d2p1:PricingRuleName>String</d2p1:PricingRuleName>
    <d2p1:PricingRuleCurrency>String</d2p1:PricingRuleCurrency>
    <d2p1:PricingRuleBasePrice>DefaultSalesPrice</d2p1:PricingRuleBasePrice>
    <d2p1:PricingRuleSpExchangeRate>0</d2p1:PricingRuleSpExchangeRate>
    <d2p1:PricingRuleAddFixedAmount>0</d2p1:PricingRuleAddFixedAmount>
    <d2p1:PricingRuleAddPercent>0</d2p1:PricingRuleAddPercent>
    <d2p1:PricingRuleUnitPriceRoundingDigits>0</d2p1:PricingRuleUnitPriceRoundingDigits>
    <d2p1:PricingRuleDefaultDiscountId>0</d2p1:PricingRuleDefaultDiscountId>
    <d2p1:PricingRuleDefaultTaxId>0</d2p1:PricingRuleDefaultTaxId>
    <d2p1:PricingRuleSpecificEntities>false</d2p1:PricingRuleSpecificEntities>
    <d2p1:PricingRuleSpecificProducts>false</d2p1:PricingRuleSpecificProducts>
    <d2p1:PricingRuleSpecificProductCategories>false</d2p1:PricingRuleSpecificProductCategories>
    <d2p1:PricingRuleStartDate>0001-01-01T00:00:00</d2p1:PricingRuleStartDate>
    <d2p1:PricingRuleEndDate>0001-01-01T00:00:00</d2p1:PricingRuleEndDate>
    <d2p1:PricingRuleMinQty>0</d2p1:PricingRuleMinQty>
    <d2p1:PricingRuleMaxQty>0</d2p1:PricingRuleMaxQty>
    <d2p1:PricingRuleDateModified>0001-01-01T00:00:00</d2p1:PricingRuleDateModified>
    <d2p1:PricingRuleDateCreated>0001-01-01T00:00:00</d2p1:PricingRuleDateCreated>
    <d2p1:PricingRuleUsedByModule>0</d2p1:PricingRuleUsedByModule>
  </mvPricingRule>
  <mvRecordAction>Insert</mvRecordAction>
  <mvInsertUpdateDeleteSourceApplication>String</mvInsertUpdateDeleteSourceApplication>
</PricingRuleUpdate>

    </soap:Body>
</soap:Envelope>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>

<PricingRuleUpdateResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Megaventory.APIEndpoints.Operations">
  <mvPricingRule xmlns:d2p1="https://api.megaventory.com/types">
    <d2p1:PricingRuleID>0</d2p1:PricingRuleID>
    <d2p1:PricingRuleName>String</d2p1:PricingRuleName>
    <d2p1:PricingRuleCurrency>String</d2p1:PricingRuleCurrency>
    <d2p1:PricingRuleBasePrice>DefaultSalesPrice</d2p1:PricingRuleBasePrice>
    <d2p1:PricingRuleSpExchangeRate>0</d2p1:PricingRuleSpExchangeRate>
    <d2p1:PricingRuleAddFixedAmount>0</d2p1:PricingRuleAddFixedAmount>
    <d2p1:PricingRuleAddPercent>0</d2p1:PricingRuleAddPercent>
    <d2p1:PricingRuleUnitPriceRoundingDigits>0</d2p1:PricingRuleUnitPriceRoundingDigits>
    <d2p1:PricingRuleDefaultDiscountId>0</d2p1:PricingRuleDefaultDiscountId>
    <d2p1:PricingRuleDefaultTaxId>0</d2p1:PricingRuleDefaultTaxId>
    <d2p1:PricingRuleSpecificEntities>false</d2p1:PricingRuleSpecificEntities>
    <d2p1:PricingRuleSpecificProducts>false</d2p1:PricingRuleSpecificProducts>
    <d2p1:PricingRuleSpecificProductCategories>false</d2p1:PricingRuleSpecificProductCategories>
    <d2p1:PricingRuleStartDate>0001-01-01T00:00:00</d2p1:PricingRuleStartDate>
    <d2p1:PricingRuleEndDate>0001-01-01T00:00:00</d2p1:PricingRuleEndDate>
    <d2p1:PricingRuleMinQty>0</d2p1:PricingRuleMinQty>
    <d2p1:PricingRuleMaxQty>0</d2p1:PricingRuleMaxQty>
    <d2p1:PricingRuleDateModified>0001-01-01T00:00:00</d2p1:PricingRuleDateModified>
    <d2p1:PricingRuleDateCreated>0001-01-01T00:00:00</d2p1:PricingRuleDateCreated>
    <d2p1:PricingRuleUsedByModule>0</d2p1:PricingRuleUsedByModule>
  </mvPricingRule>
  <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
    <d2p1:ErrorCode>String</d2p1:ErrorCode>
    <d2p1:Message>String</d2p1:Message>
    <d2p1:StackTrace>String</d2p1:StackTrace>
    <d2p1:Errors>
      <d2p1:ResponseError>
        <d2p1:ErrorCode>String</d2p1:ErrorCode>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:Message>String</d2p1:Message>
      </d2p1:ResponseError>
    </d2p1:Errors>
  </ResponseStatus>
  <entityID>0</entityID>
  <InternalErrorCode>String</InternalErrorCode>
</PricingRuleUpdateResponse>

    </soap:Body>
</soap:Envelope>