Open2b versione 7.2

quotes

quotes.find

Returns the quotes that meet the given conditions.

Request

Admin SDK
Admin.api('commerce.quotes.find', request, function(response) { … });
HTTP POST
/api/v8/commerce.quotes.find
{
  "conditions" : { // returns only the quotes …
    "ids" : [ 1167942543, … ], // … with these identifiers - int(1…)
    "status" : [ "New", … ], // … with these statuses, a status can be "New", "Open", "Sent", "Accepted", "Expired" or "Cancelled" - string
    "fromNumber" : "2020/7890", // … with a number greater or equal to this - string(1…32)
    "toNumber" : "2020/8152", // … with a number lower ot equal to this - string(1…32)
    "fromCreationTime" : "2020-05-01 12:00:00", // … with creation time equal or next to this - datetime
    "toCreationTime" : "2020-12-31 23:59:59", // … with creation time equal or previous to this - datetime
    "fromUpdateTime" : "2020-05-01 12:00:00", // … with last update time equal or previous to this - datetime
    "toUpdateTime" : "2020-12-31 23:59:59", // … with last update time equal or next to this - datetime
    "customer" : 4907, // … of this customer (id) - int(1…)
    "address" : "Baker Street", // … with this phrase in the address - string(1…30)
    "labels" : [ 1, 3, … ], // … with these labels - int(1…64)
    "after" : 1167942543 // … with identifier after this value - int(0…)
  },
  "fields" : [ "number", "status", … ], // returns only these fields - string
  "order" : [ "number" ], // sort order of returned quotes, can contain "id", "-id", "number", "-number", "status", "-status",
                          // "creationTime", "-creationTime", "updateTime", "-updateTime", "dueDate", "-dueDate", total", "-total",
                          // "taxedTotal", "-taxedTotal", "isPaidFor", "-isPaidFor", "customerName" and "-customerName" - string
  "limit" : 10, // maximum number of quotes to return - int(1…)
  "first" : 0 // index of the first quote to return - int(0…)
}

Response

{
  "status" : "ok",
  "quotes" : [ {
    "id" : 1167942543, // identifier - int(1…)
    "number" : "2020/7301", // Number - string(0…32)
    "status" : "Open", // status, can be "New", "Open", "Sent", "Accepted", "Expired" or "Cancelled" - string
    "creationTime" : "2020-09-03 13:13:47", // creation time - datetime
    "updateTime" : "2020-09-07 16:08:11", // last update time - datetime
    "dueDate" : "2020-09-30", // due date (can be null) - date
    "referenceType" : "Order", // reference type, can be "Order", "Quote", "Invoice", "ShippingInvoice", "Proforma", "CreditNote", "Receipt" or "PackingSlip" (can be null) - string
    "referenceNumber" : "700251", // reference number - string(0…32)
    "order" : 1771949227, // order (id) created from this quote (can be null) - int(1…)
    "token" : "2cca8d0160a82b52a61d36d6ea4e8002", // token - string(32)
    "customer" : 4907, // customer (id) (can be null) - int(1…)
    "rounding" : { // rounding
      "mode" : "HalfUp", // mode, can be "Down", "HalfDown", "HalfEven" or "HalfUp" - string
      "rule" : "PerItem"  // rule, can be "PerItem", "PerLine" or "Total" - string
    },
    "locale" : "en-GB", // locale (ISO code) of the customer, region is not mandatory - string(2…5)
    "taxArea" : 7, // tax area (id) used for tax calculations - int(1…)
    "items" : [ { // items
      "id" : 219871, // identifier - int(1…)
      "sku" : "A927TP", // SKU - string(0…40)
      "name" : "Shirt", // name - string(0…255)
      "quantity" : 3.00, // quantity - decimal[8,2](0…)
      "price" : 56.330, // price (excluded taxes) - decimal[10,3]
      "totalPrice" : 168.99, // total price (excluded taxes) - decimal[10,2]
      "weight" : 0.450, // weight - decimal[8,3](0…)
      "taxCode" : "VAT", // tax code - string(0…32)
      "taxRate" : 19.00, // percent tax - decimal[4,2](0…)
      "taxAmount" : 112.66, // tax amount - decimal[10,2]
      "requests" : "…" // customer requests - string(0…255)
    }, … ],
    "prediscountSubtotal" : 69.54, // prediscount subtotal - decimal[10,2]
    "taxedPrediscountSubtotal" : 110.89, // prediscount subtotal, taxes included - decimal[10,2]
    "discounts" : [ { // discounts, up to 5
      "type" : "PercentOff", // type, can be "PercentOff" or "AmountOff" - string
      "value" : 20.000 // value, must be greater than zero and if percentage must be less than or equal to 100 - decimal[8,3](0…)
    }, {
      "type" : "AmountOff",
      "value" : 10.450
    }, … ],
    "discountsIncludeTaxes" : false, // indicates if discounts include taxes - bool
    "subtotal" : 69.54, // subtotal - decimal[10,2]
    "taxedSubtotal" : 110.89, // subtotal, taxes included - decimal[10,2]
    "shippingMethod" : { // shipping method (can be null)
      "id" : 14, // identifier (can be null) - int(1…)
      "name" : "FedEx", // name - string(0…80)
      "cost" : 8.572, // cost - decimal[8,3](0…)
      "taxCode" : "TVA", // tax code - string(0…32)
      "taxRate" : 19.00, // percent tax - decimal[4,2](0…)
      "taxAmount" : 1.63 // tax amount - decimal[8,2](0…)
    },
    "paymentMethod" : { // payment method (can be null)
      "id" : 3, // identifier (can be null) - int(1…)
      "name" : "Credit Card", // name - string(0…80)
      "cost" : 1.200, // cost (fee) - decimal[8,3](0…)
      "taxCode" : "TVA", // tax code - string(0…32)
      "taxRate" : 19.00, // percent tax - decimal[4,2](0…)
      "taxAmount" : 0.23 // tax amount - decimal[8,2](0…)
    },
    "taxes" : [ { // taxes for each tax class
      "code" : "VAT", // tax class code - string(0…32)
      "name" : "Generic", // tax class name - string(0…60)
      "rate" : 19.00, // percent tax - decimal[4,2](0…)
      "taxableTotal" : 89.23, // taxable total - decimal[10,2]
      "amount" : 31.25 // tax amount - decimal[10,2]
    }, … ],
    "taxAmount" : 31.25, // tax amount - decimal[10,2]
    "total" : 89.23, // total - decimal[10,2]
    "taxedTotal" : 120.48, // total, taxes included - decimal[10,2]
    "quantity" : 7.00, // total number of items quantity - decimal[10,2](0…)
    "weight" : 1.351, // total weight of items - decimal[8,3](0…)
    "customerName" : "Investigations Inc", // customer name ( last and first name or company name ) - string(1…100)
    "invoiceRecipient" : "AB7TR6K", // electronic invoice recipient code or PEC email address - string(0…256)
    "billingAddress" : { // billing address 
      "firstName" : "Sherlock", // first name - string(1…25)
      "lastName" : "Holmes", // last name - string(1…25)
      "personalCode" : "SH239IBA", // personal code - string(0…20)
      "companyName" : "Investigations Inc", // company name - string(0…100)
      "companyCode" : "INV8403MC1", // company code number - string(0…20)
      "companyCode2" : "7J BA3 006", // second company code number - string(0…20)
      "street1" : "221b Baker Street", // street, first row - string(1…60)
      "street2" : "", // street, second row - string(0…60)
      "city" : "London", // city - string(1…25)
      "postalCode" : "NW1 6XE", // postal code - string(1…20)
      "stateProv" : "LND", // state, province or county - string(0…3)
      "country" : "GB", // country (ISO code) - string(2)
      "phoneNumber" : "+44+207 2243688", // phone number - string(0…15)
      "mobileNumber" : "", // mobile number - string(0…15)
      "faxNumber" : "", // fax number - string(0…15)
      "email" : "holmes@inv-london.com" // email address - string(3…120)
    },
    "shippingAddress" : { // shipping address (can be null)
      "name" : "John", // recipient name - string(1…100)
      "street1" : "221b Baker Street", // street, first row - string(1…60)
      "street2" : "", // street, second row - string(0…60)
      "city" : "London", // city - string(1…25)
      "postalCode" : "NW1 6XE", // postal code - string(1…20)
      "stateProv" : "LND", // province, state or county - string(0…3)
      "country" : "GB" // country (ISO code) - string(2)
    },
    "sellerAddress" : { // seller address
      "companyName" : "Investigations Inc", // company name - string(0…100)
      "companyCode" : "INV8403MC1", // company code number - string(0…20)
      "personalCode" : "SH239IBA", // personal code - string(0…20)
      "street1" : "221b Baker Street", // street, first row - string(0…60)
      "street2" : "", // street, second row - string(0…60)
      "city" : "London", // city - string(0…25)
      "postalCode" : "NW1 6XE", // postal code - string(0…20)
      "stateProv" : "LND", // state, province or county - string(0…3)
      "country" : "GB", // country (ISO code) - string(0…2)
      "phoneNumber" : "+44+207 2243688", // phone number - string(0…15)
      "mobileNumber" : "", // mobile number - string(0…15)
      "faxNumber" : "", // fax number - string(0…15)
      "email" : "holmes@inv-london.com" // email address - string(0…120)
    },
    "requests" : "", // customer requests - string(0…65535)
    "terms" : "" // terms and conditions - string(0…65535)
  }, … ]
}

quotes.get

Returns a quote given its identifier.

Request

Admin SDK
Admin.api('commerce.quotes.get', request, function(response) { … });
HTTP POST
/api/v8/commerce.quotes.get
{
  "id" : 1167942543, // identifier (required) - int(1…)
  "fields" : [ "id", "number", "status", … ] // fields to return - string
}

Response

{
  "status" : "ok",
  "quote" : { // (can be null)
    "id" : 1167942543, // identifier - int(1…)
    "number" : "2020/7301", // Number - string(0…32)
    "status" : "Open", // status, can be "New", "Open", "Sent", "Accepted", "Expired" or "Cancelled" - string
    "creationTime" : "2020-09-03 13:13:47", // creation time - datetime
    "updateTime" : "2020-09-07 16:08:11", // last update time - datetime
    "dueDate" : "2020-09-30", // due date (can be null) - date
    "referenceType" : "Order", // reference type, can be "Order", "Quote", "Invoice", "ShippingInvoice", "Proforma", "CreditNote", "Receipt" or "PackingSlip" (can be null) - string
    "referenceNumber" : "700251", // reference number - string(0…32)
    "order" : 1771949227, // order (id) created from this quote (can be null) - int(1…)
    "token" : "2cca8d0160a82b52a61d36d6ea4e8002", // token - string(32)
    "customer" : 4907, // customer (id) (can be null) - int(1…)
    "rounding" : { // rounding
      "mode" : "HalfUp", // mode, can be "Down", "HalfDown", "HalfEven" or "HalfUp" - string
      "rule" : "PerItem"  // rule, can be "PerItem", "PerLine" or "Total" - string
    },
    "locale" : "en-GB", // locale (ISO code) of the customer, region is not mandatory - string(2…5)
    "taxArea" : 7, // tax area (id) used for tax calculations - int(1…)
    "items" : [ { // items
      "id" : 219871, // identifier - int(1…)
      "sku" : "A927TP", // SKU - string(0…40)
      "name" : "Shirt", // name - string(0…255)
      "quantity" : 3.00, // quantity - decimal[8,2](0…)
      "price" : 56.330, // price (excluded taxes) - decimal[10,3]
      "totalPrice" : 168.99, // total price (excluded taxes) - decimal[10,2]
      "weight" : 0.450, // weight - decimal[8,3](0…)
      "taxCode" : "VAT", // tax code - string(0…32)
      "taxRate" : 19.00, // percent tax - decimal[4,2](0…)
      "taxAmount" : 112.66, // tax amount - decimal[10,2]
      "requests" : "…" // customer requests - string(0…255)
    }, … ],
    "prediscountSubtotal" : 69.54, // prediscount subtotal - decimal[10,2]
    "taxedPrediscountSubtotal" : 110.89, // prediscount subtotal, taxes included - decimal[10,2]
    "discounts" : [ { // discounts, up to 5
      "type" : "PercentOff", // type, can be "PercentOff" or "AmountOff" - string
      "value" : 20.000 // value, must be greater than zero and if percentage must be less than or equal to 100 - decimal[8,3](0…)
    }, {
      "type" : "AmountOff",
      "value" : 10.450
    }, … ],
    "discountsIncludeTaxes" : false, // indicates if discounts include taxes - bool
    "subtotal" : 69.54, // subtotal - decimal[10,2]
    "taxedSubtotal" : 110.89, // subtotal, taxes included - decimal[10,2]
    "shippingMethod" : { // shipping method (can be null)
      "id" : 14, // identifier (can be null) - int(1…)
      "name" : "FedEx", // name - string(0…80)
      "cost" : 8.572, // cost - decimal[8,3](0…)
      "taxCode" : "TVA", // tax code - string(0…32)
      "taxRate" : 19.00, // percent tax - decimal[4,2](0…)
      "taxAmount" : 1.63 // tax amount - decimal[8,2](0…)
    },
    "paymentMethod" : { // payment method (can be null)
      "id" : 3, // identifier (can be null) - int(1…)
      "name" : "Credit Card", // name - string(0…80)
      "cost" : 1.200, // cost (fee) - decimal[8,3](0…)
      "taxCode" : "TVA", // tax code - string(0…32)
      "taxRate" : 19.00, // percent tax - decimal[4,2](0…)
      "taxAmount" : 0.23 // tax amount - decimal[8,2](0…)
    },
    "taxes" : [ { // taxes for each tax class
      "code" : "VAT", // tax class code - string(0…32)
      "name" : "Generic", // tax class name - string(0…60)
      "rate" : 19.00, // percent tax - decimal[4,2](0…)
      "taxableTotal" : 89.23, // taxable total - decimal[10,2]
      "amount" : 31.25 // tax amount - decimal[10,2]
    }, … ],
    "taxAmount" : 31.25, // tax amount - decimal[10,2]
    "total" : 89.23, // total - decimal[10,2]
    "taxedTotal" : 120.48, // total, taxes included - decimal[10,2]
    "quantity" : 7.00, // total number of items quantity - decimal[10,2](0…)
    "weight" : 1.351, // total weight of items - decimal[8,3](0…)
    "customerName" : "Investigations Inc", // customer name ( last and first name or company name ) - string(1…100)
    "invoiceRecipient" : "AB7TR6K", // electronic invoice recipient code or PEC email address - string(0…256)
    "billingAddress" : { // billing address 
      "firstName" : "Sherlock", // first name - string(1…25)
      "lastName" : "Holmes", // last name - string(1…25)
      "personalCode" : "SH239IBA", // personal code - string(0…20)
      "companyName" : "Investigations Inc", // company name - string(0…100)
      "companyCode" : "INV8403MC1", // company code number - string(0…20)
      "companyCode2" : "7J BA3 006", // second company code number - string(0…20)
      "street1" : "221b Baker Street", // street, first row - string(1…60)
      "street2" : "", // street, second row - string(0…60)
      "city" : "London", // city - string(1…25)
      "postalCode" : "NW1 6XE", // postal code - string(1…20)
      "stateProv" : "LND", // state, province or county - string(0…3)
      "country" : "GB", // country (ISO code) - string(2)
      "phoneNumber" : "+44+207 2243688", // phone number - string(0…15)
      "mobileNumber" : "", // mobile number - string(0…15)
      "faxNumber" : "", // fax number - string(0…15)
      "email" : "holmes@inv-london.com" // email address - string(3…120)
    },
    "shippingAddress" : { // shipping address (can be null)
      "name" : "John", // recipient name - string(1…100)
      "street1" : "221b Baker Street", // street, first row - string(1…60)
      "street2" : "", // street, second row - string(0…60)
      "city" : "London", // city - string(1…25)
      "postalCode" : "NW1 6XE", // postal code - string(1…20)
      "stateProv" : "LND", // province, state or county - string(0…3)
      "country" : "GB" // country (ISO code) - string(2)
    },
    "sellerAddress" : { // seller address
      "companyName" : "Investigations Inc", // company name - string(0…100)
      "companyCode" : "INV8403MC1", // company code number - string(0…20)
      "personalCode" : "SH239IBA", // personal code - string(0…20)
      "street1" : "221b Baker Street", // street, first row - string(0…60)
      "street2" : "", // street, second row - string(0…60)
      "city" : "London", // city - string(0…25)
      "postalCode" : "NW1 6XE", // postal code - string(0…20)
      "stateProv" : "LND", // state, province or county - string(0…3)
      "country" : "GB", // country (ISO code) - string(0…2)
      "phoneNumber" : "+44+207 2243688", // phone number - string(0…15)
      "mobileNumber" : "", // mobile number - string(0…15)
      "faxNumber" : "", // fax number - string(0…15)
      "email" : "holmes@inv-london.com" // email address - string(0…120)
    },
    "requests" : "", // customer requests - string(0…65535)
    "terms" : "" // terms and conditions - string(0…65535)
  }
}

quotes.count

Number of quotes that meet the given conditions.

Request

Admin SDK
Admin.api('commerce.quotes.count', request, function(response) { … });
HTTP POST
/api/v8/commerce.quotes.count
{
  "conditions" : { // counts the quotes …
    "ids" : [ 1167942543, … ], // … with these identifiers - int(1…)
    "status" : [ "New", … ], // … with these statuses, a status can be "New", "Open", "Sent", "Accepted", "Expired" or "Cancelled" - string
    "fromNumber" : "2020/7890", // … with a number greater or equal to this - string(1…32)
    "toNumber" : "2020/8152", // … with a number lower ot equal to this - string(1…32)
    "fromCreationTime" : "2020-05-01 12:00:00", // … with creation time equal or next to this - datetime
    "toCreationTime" : "2020-12-31 23:59:59", // … with creation time equal or previous to this - datetime
    "fromUpdateTime" : "2020-05-01 12:00:00", // … with last update time equal or previous to this - datetime
    "toUpdateTime" : "2020-12-31 23:59:59", // … with last update time equal or next to this - datetime
    "customer" : 4907, // … of this customer (id) - int(1…)
    "address" : "Baker Street", // … with this phrase in the address - string(1…30)
    "labels" : [ 1, 3, … ], // … with these labels - int(1…64)
    "after" : 1167942543 // … with identifier after this value - int(0…)
  }
}

Response

{
  "status" : "ok",
  "count" : 547 // number of quotes - int(0…)
}

quotes.create

Creates a new quote.

Request

Admin SDK
Admin.api('commerce.quotes.create', request, function(response) { … });
HTTP POST
/api/v8/commerce.quotes.create
{
  "quote" : { // quote to create (required)
    "number" : "2020/7496", // number - string(0…32)
    "status" : "Open", // status, can be "New", "Open", "Sent", "Accepted", "Expired" or "Cancelled" - string
    "creationTime" : "2020-09-01 12:00:00", // creation time, if empty it takes the current time - datetime
    "dueDate" : "2020-09-31", // due date (can be null) - date
    "referenceType" : "Order", // reference type, can be "Order", "Quote", "Invoice", "ShippingInvoice", "Proforma", "CreditNote", "Receipt" or "PackingSlip" (can be null) - string
    "referenceNumber" : "2020/7301", // reference number - string(0…32)
    "customer" : 4907, // customer (id) (can be null) - int(1…)
    "rounding" : { // rounding
      "mode" : "HalfUp", // mode, can be "Down", "HalfDown", "HalfEven" or "HalfUp" - string
      "rule" : "PerItem" // rule, can be "PerItem", "PerLine" or "Total" - string
    },
    "locale" : "en-GB", // locale (ISO code) of the customer, region is not mandatory - string(2…5)
    "items" : [ { // items
      "sku" : "A927TP", // SKU - string(0…40)
      "name" : "Shirt", // name - string(0…255)
      "quantity" : 3.00, // quantity - decimal[8,2](0…)
      "price" : 56.330, // price (excluded taxes) - decimal[10,3]
      "weight" : 0.450, // weight - decimal[8,3](0…)
      "taxClass" : 2, // tax class (id) (can be null) - int(1…)
      "requests" : "…" // customer requests - string(0…255)
    }, … ],
    "discounts" : [ { // discounts, up to 5
      "type" : "PercentOff", // type, can be "PercentOff" or "AmountOff" - string
      "value" : 20.000 // value, must be greater than zero and if percentage must be less than or equal to 100 - decimal[8,3](0…)
    }, {
      "type" : "AmountOff",
      "value" : 10.450
    }, … ],
    "discountsIncludeTaxes" : false, // indicates if discounts include taxes - bool
    "shippingMethod" : 3, // shipping method (id) (can be null) - int(1…)
    "shippingCost" : 8.572, // shipping cost, if null it is calculated by the shipping method (can be null) - decimal[8,3](0…)
    "paymentMethod" : 8, // payment method (id) (can be null) - int(1…)
    "paymentCost" : 1.200, // payment cost, if null it is calculated by the payment method (can be null) - decimal[8,3](0…)
    "invoiceRecipient" : "AB7TR6K", // electronic invoice recipient code or PEC email address - string(0…256)
    "billingAddress" : { // billing address (required)
      "firstName" : "Sherlock", // first name (required) - string(1…25)
      "lastName" : "Holmes", // last name (required) - string(1…25)
      "personalCode" : "SH239IBA", // personal code - string(0…20)
      "companyName" : "Investigations Inc", // company name - string(0…100)
      "companyCode" : "INV8403MC1", // company code number - string(0…20)
      "companyCode2" : "7J BA3 006", // second company code number - string(0…20)
      "street1" : "221b Baker Street", // street, first row (required) - string(1…60)
      "street2" : "", // street, second row - string(0…60)
      "city" : "London", // city  (required) - string(1…25)
      "postalCode" : "NW1 6XE", // postal code (required) - string(1…20)
      "stateProv" : "LND", // state, province or county - string(0…3)
      "country" : "GB", // country (ISO code) (required) - string(2)
      "phoneNumber" : "+44+207 2243688", // phone number - string(0…15)
      "mobileNumber" : "", // mobile number - string(0…15)
      "faxNumber" : "", // fax number - string(0…15)
      "email" : "holmes@inv-london.com" // email address (required) - string(3…120)
    },
    "shippingAddress" : { // shipping address (can be null)
      "name" : "John", // recipient name (required) - string(1…100)
      "street1" : "221b Baker Street", // street, first row (required) - string(1…60)
      "street2" : "", // street, second row - string(0…60)
      "city" : "London", // city (required) - string(1…25)
      "postalCode" : "NW1 6XE", // postal code (required) - string(1…20)
      "stateProv" : "LND", // province, state or county - string(0…3)
      "country" : "GB" // country (ISO code) (required) - string(2)
    },
    "sellerAddress" : { // seller address
      "companyName" : "Investigations Inc", // company name - string(0…100)
      "companyCode" : "INV8403MC1", // company code number - string(0…20)
      "personalCode" : "SH239IBA", // personal code - string(0…20)
      "street1" : "221b Baker Street", // street, first row - string(0…60)
      "street2" : "", // street, second row - string(0…60)
      "city" : "London", // city - string(0…25)
      "postalCode" : "NW1 6XE", // postal code - string(0…20)
      "stateProv" : "LND", // state, province or county - string(0…3)
      "country" : "GB", // country (ISO code) - string(0…2)
      "phoneNumber" : "+44+207 2243688", // phone number - string(0…15)
      "mobileNumber" : "", // mobile number - string(0…15)
      "faxNumber" : "", // fax number - string(0…15)
      "email" : "holmes@inv-london.com" // email address - string(0…120)
    },
    "requests" : "", // customer requests - string(0…65535)
    "terms" : "" // terms and conditions - string(0…65535)
  }
}

Response

{
  "status" : "ok",
  "id" : 1167942543 // identifier of the new quote - int(1…)
}

Errors

Field Type Description
country InvalidValue No tax areas for country '<country>'
country MissingCombination Country of seller address is required if 'stateProv' is provided
creationTime InvalidValue Creation time '<creationTime>' is in the future
customer NotFound Customer <customer> does not exist
discounts InvalidValue Amount off discount can not be applied to a zero subtotal
discounts Malformed There can be no more than 5 discounts
id InvalidValue Quotes are not available for this installation
invoiceRecipient Malformed '<invoiceRecipient>' is not a recipient code or email address
locale Malformed '<locale>' is not a valid locale code
paymentMethod InvalidCombination Payment method is required if payment cost is provided
paymentMethod InvalidValue No payment methods can be used if total is zero or negative
paymentMethod InvalidValue Payment method <paymentMethod> can not be used in combination with shipping method <shippingMethod>
paymentMethod InvalidValue Payment method <paymentMethod> is not suitable for this quote
paymentMethod NotFound Payment method <paymentMethod> does not exist
shippingMethod InvalidCombination Shipping method is required if shipping cost is provided
shippingMethod InvalidValue Shipping method <shippingMethod> is not suitable for this quote
shippingMethod MissingCombination Shipping method is required because the payment method is on delivery
shippingMethod NotFound Shipping method <shippingMethod> does not exist
taxClass NotFound Tax class <taxClass> does not exist

Notes

  • Non indicare rounding se si vuole utilizzare l'impostazione globale.

quotes.update

Updates a quote. Any fields left out of the request will remain unchanged.

Request

Admin SDK
Admin.api('commerce.quotes.update', request, function(response) { … });
HTTP POST
/api/v8/commerce.quotes.update
{
  "id" : 1167942543, // identifier of the quote to update (required) - int(1…)
  "quote" : { // quote's fields to update (required)
    "number" : "2020/7496", // number - string(0…32)
    "status" : "Open", // status, can be "New", "Open", "Sent", "Accepted", "Expired" or "Cancelled" - string
    "creationTime" : "2020-09-01 12:00:00", // creation time - datetime
    "dueDate" : "2020-09-31", // due date (can be null) - date
    "referenceType" : "Order", // reference type, can be "Order", "Quote", "Invoice", "ShippingInvoice", "Proforma", "CreditNote", "Receipt" or "PackingSlip" (can be null) - string
    "referenceNumber" : "2020/7301", // reference number - string(0…32)
    "order" : 1771949227, // order (id) created from this quote (can be null) - int(1…)
    "customer" : 4907, // customer (id) (can be null) - int(1…)
    "rounding" : { // rounding
      "mode" : "HalfUp", // mode, can be "Down", "HalfDown", "HalfEven" or "HalfUp" - string
      "rule" : "PerItem" // rule, can be "PerItem", "PerLine" or "Total" - string
    },
    "locale" : "en-GB", // locale (ISO code) of the customer, region is not mandatory - string(2…5)
    "items" : [ { // items
      "id" : 219871, // identifier, if it is not left out an item with this identifier must exist - int(1…)
      "sku" : "A927TP", // SKU - string(0…40)
      "name" : "Shirt", // name - string(0…255)
      "quantity" : 3.00, // quantity - decimal[8,2](0…)
      "price" : 56.330, // price (excluded taxes) - decimal[10,3]
      "weight" : 0.450, // weight - decimal[8,3](0…)
      "taxClass" : 2, // tax class (id) (can be null) - int(1…)
      "requests" : "…" // customer requests - string(0…255)
    }, … ],
    "discounts" : [ { // discounts, up to 5
      "type" : "PercentOff", // type, can be "PercentOff" or "AmountOff" - string
      "value" : 20.000 // value, must be greater than zero and if percentage must be less than or equal to 100 - decimal[8,3](0…)
    }, {
      "type" : "AmountOff",
      "value" : 10.450
    }, … ],
    "discountsIncludeTaxes" : false, // indicates if discounts include taxes - bool
    "shippingMethod" : 3, // shipping method (id) (can be null) - int(1…)
    "shippingCost" : 8.572, // shipping cost, if null it is calculated by the shipping method (can be null) - decimal[8,3](0…)
    "paymentMethod" : 8, // payment method (id) (can be null) - int(1…)
    "paymentCost" : 1.200, // payment cost, if null it is calculated by the payment method (can be null) - decimal[8,3](0…)
    "invoiceRecipient" : "AB7TR6K", // electronic invoice recipient code or PEC email address - string(0…256)
    "billingAddress" : { // billing address
      "firstName" : "Sherlock", // first name (required) - string(1…25)
      "lastName" : "Holmes", // last name (required) - string(1…25)
      "personalCode" : "SH239IBA", // personal code - string(0…20)
      "companyName" : "Investigations Inc", // company name - string(0…100)
      "companyCode" : "INV8403MC1", // company code number - string(0…20)
      "companyCode2" : "7J BA3 006", // second company code number - string(0…20)
      "street1" : "221b Baker Street", // street, first row (required) - string(1…60)
      "street2" : "", // street, second row - string(0…60)
      "city" : "London", // city  (required) - string(1…25)
      "postalCode" : "NW1 6XE", // postal code (required) - string(1…20)
      "stateProv" : "LND", // state, province or county - string(0…3)
      "country" : "GB", // country (ISO code) (required) - string(2)
      "phoneNumber" : "+44+207 2243688", // phone number - string(0…15)
      "mobileNumber" : "", // mobile number - string(0…15)
      "faxNumber" : "", // fax number - string(0…15)
      "email" : "holmes@inv-london.com" // email address (required) - string(3…120)
    },
    "shippingAddress" : { // shipping address (can be null)
      "name" : "John", // recipient name (required) - string(1…100)
      "street1" : "221b Baker Street", // street, first row (required) - string(1…60)
      "street2" : "", // street, second row - string(0…60)
      "city" : "London", // city (required) - string(1…25)
      "postalCode" : "NW1 6XE", // postal code (required) - string(1…20)
      "stateProv" : "LND", // province, state or county - string(0…3)
      "country" : "GB" // country (ISO code) (required) - string(2)
    },
    "sellerAddress" : { // seller address
      "companyName" : "Investigations Inc", // company name - string(0…100)
      "companyCode" : "INV8403MC1", // company code number - string(0…20)
      "personalCode" : "SH239IBA", // personal code - string(0…20)
      "street1" : "221b Baker Street", // street, first row - string(0…60)
      "street2" : "", // street, second row - string(0…60)
      "city" : "London", // city - string(0…25)
      "postalCode" : "NW1 6XE", // postal code - string(0…20)
      "stateProv" : "LND", // state, province or county - string(0…3)
      "country" : "GB", // country (ISO code) - string(0…2)
      "phoneNumber" : "+44+207 2243688", // phone number - string(0…15)
      "mobileNumber" : "", // mobile number - string(0…15)
      "faxNumber" : "", // fax number - string(0…15)
      "email" : "holmes@inv-london.com" // email address - string(0…120)
    },
    "requests" : "", // customer requests - string(0…65535)
    "terms" : "" // terms and conditions - string(0…65535)
  }
}

Response

{
  "status" : "ok"
}

Errors

Field Type Description
country InvalidValue No tax areas for country '<country>'
country MissingCombination Country of seller address is required if 'stateProv' is provided
creationTime InvalidValue Creation time '<creationTime>' is in the future
customer NotFound Customer <customer> does not exist
discounts InvalidValue Amount off discount can not be applied to a zero subtotal
discounts Malformed There can be no more than 5 discounts
id InvalidValue Quotes are not available for this installation
id NotFound Quote <id> does not exist
invoiceRecipient Malformed '<invoiceRecipient>' is not a recipient code or email address
items Malformed An item id is repeated
items NotFound Quote <id> does not have item <id>
locale Malformed '<locale>' is not a valid locale code
order NotFound Order <order> does not exist
paymentCost InvalidValue Quote <id> has not a payment method
paymentMethod InvalidValue No payment methods can be used if total is zero or negative
paymentMethod InvalidValue Payment method <paymentMethod> can not be used in combination with shipping method <shippingMethod>
paymentMethod InvalidValue Payment method <paymentMethod> is not suitable for this quote
paymentMethod NotFound Payment method <paymentMethod> does not exist
shippingCost InvalidValue Quote <id> has not a shipping method
shippingMethod InvalidValue Shipping method <shippingMethod> is not suitable for this quote
shippingMethod MissingCombination Shipping method is required because the payment method is on delivery
shippingMethod NotFound Shipping method <shippingMethod> does not exist
taxClass NotFound Tax class <taxClass> does not exist

quotes.delete

Deletes one or more quotes.

Request

Admin SDK
Admin.api('commerce.quotes.delete', request, function(response) { … });
HTTP POST
/api/v8/commerce.quotes.delete
{
  "ids" : [ 1167942543, … ] // identifiers of the quotes to delete (required) - int(1…)
}

Response

{
  "status" : "ok"
}