Repository navigation
Edit Product
Update the global details of an existing product: title, pricing, identifiers, inventory limits, shipping profiles
and display options. Send only the fields you want to change. Your token needs the backoffice:product:write scope,
and the user behind the token needs access to the shop's Products permission region.
PUT https://api.selldone.com/shops/{shop_id}/products/{product_id}/edit
The SDK URL catalog registers this route as
PUT(window.API.PUT_EDIT_PRODUCT(shop_id, product_id)). Earlier versions of this page showedPOST; usePUTfor new integrations.
In a multi-vendor marketplace, vendor-specific price, stock and lead time are not changed by this endpoint. Use the vendor product endpoints instead.
| Parameter | Type | Description |
|---|---|---|
title |
string | Product title (HTML tags are stripped). |
price |
float | Base price of the product. |
currency |
string | Currency code (for example USD, RIAL). |
type |
string | Product type: PHYSICAL, VIRTUAL, SERVICE, FILE, SUBSCRIPTION. |
status |
string |
Open or Close (Pending and Rejected are only allowed in marketplace workflows). |
condition |
string | Product condition: new, refurbished, used, used_fair, used_good, used_like_new. |
| Parameter | Type | Description |
|---|---|---|
sku |
string | Stock Keeping Unit. |
mpn |
string | Manufacturer Part Number. |
gtin |
string | Global Trade Item Number. |
hsn |
string | HSN code. |
gpc |
number | Google Product Category. |
title_en |
string | English subtitle. |
category_id |
integer | Product category ID. |
brand |
string | Product brand. |
warranty |
string | Product warranty text. |
original |
boolean | Whether the product is original. |
return_warranty |
boolean | Return warranty availability. |
lead |
integer | Lead time in hours. |
slug |
string | Custom URL slug (auto-generated from the title). |
video |
string | Product video URL. |
blog |
string | External blog or info link. |
message |
string | Message for virtual products. |
inputs |
JSON | Virtual product input fields. |
outputs |
JSON | Virtual product output fields. |
| Parameter | Type | Description |
|---|---|---|
commission |
float | Commission added on top of the base price. |
discount |
float | Discount amount. |
dis_start |
datetime | Discount start (UTC, YYYY-MM-DD HH:mm:ss). |
dis_end |
datetime | Discount end (UTC, YYYY-MM-DD HH:mm:ss). |
price_label |
string | Label displayed near the price. |
price_input |
string | Variable price input mode: default, area, volume, custom. |
pricing |
string | Pricing model: FIX (fixed price), ESTIMATION or AGREEMENT (service pricing set by the seller), BID. |
Enum values on this page come from the Product model in Selldone Core
(ProductType, ProductCondition, PriceInputType, ProductPricing, ProductStatus).
To change only the price, use the price endpoint described in Edit Product's Variant.
| Parameter | Type | Description |
|---|---|---|
limit_min |
int | Minimum order quantity. |
limit_max |
int | Maximum order quantity. |
extra |
JSON |
weight, width, height, length. |
map_id |
int | Geo-tag (map tag ID). |
shipping_id |
int | Shipping profile ID. |
warranty_id |
int | Warranty profile ID. |
return_policy_id |
int | Return policy profile ID. |
guide_id |
int | Shopping guide profile ID. |
tax_id |
int | Tax profile ID. |
To change only the stock, use POST /shops/{shop_id}/products/{product_id}/quantity with { "quantity": 50 }
(window.$backoffice.product.setQuantity() in the SDK).
| Parameter | Type | Description |
|---|---|---|
style |
JSON | Product display style configuration. |
action |
string | Product call to action (for example "Buy Now"). |
external |
string | External link (needs a Company or Enterprise license). |
property_set_id |
int | Associated property set ID. |
shortcuts[] |
array | Up to 5 extra category shortcut IDs. |
vendor_id |
int | Set the vendor (marketplace only; must follow the marketplace rules). |
- You cannot change the product
typeafter creation. - Vendor permissions are strictly enforced.
- Changing
vendor_idrequires removing all existing vendors if the product is multi-vendor. - Setting
externallinks requires a special shop license. -
PendingandRejectedstatuses are limited to marketplace workflows. - Fields you do not send stay unchanged. If a field you did not send is cleared, report it to Selldone Support.
PUT https://api.selldone.com/shops/12345/products/9876/edit
Authorization: Bearer YOUR_ACCESS_TOKEN
Content-Type: application/json
{
"title": "Eco-Friendly Yoga Mat",
"price": 19.95,
"currency": "USD",
"type": "PHYSICAL",
"status": "Open",
"condition": "new",
"sku": "YOGA-2024-ECO",
"category_id": 12,
"brand": "ZenMotion",
"lead": 24,
"original": true,
"warranty": "12-month replacement",
"return_warranty": true,
"map_id": 7,
"limit_min": 1,
"limit_max": 5,
"price_label": "Limited Offer",
"discount": 5,
"dis_start": "2025-06-01 00:00:00",
"dis_end": "2025-06-10 23:59:59"
}const { data } = await window.axios.put(
window.API.PUT_EDIT_PRODUCT(12345, 9876),
{ sku: "YOGA-2024-ECO", brand: "ZenMotion" },
);Guides
Products
- Fetch Products List
- Edit Product
- Edit Product's Variant
- Add Images to Products/Variants
- Upload Products Category Image
Marketplace vendors
- Get Vendors List
- Vendor Products List
- Vendor Product Add
- Vendor Product Update
- Vendor Product Delete
Ecosystem
Links