1. Product Quantity
Image
Salla Platform Docs
  • Welcome 👋
  • Get Started
  • Create Your First App
  • Authorization
  • Webhooks
  • Conditional Webhooks
  • Security Considerations
  • Multi-Language Support
  • Responses
  • Pagination
  • Rate Limiting
  • Versioning
  • Change Log
  • Support
  • APIs
    • Orders
      • Create Order
      • Relocate Order Stock
      • External Orders
      • List Orders
      • Order Details
      • Create Drafted Order
      • Update Order
      • Duplicate Order
      • Order Actions
    • Order Status
      • Update Order Status
      • Create Custom Order Status
      • List Order Statuses
      • Order Status Details
      • Update Custom Order Status
      • Update Bulk Orders Statuses
      • Sort Orders Statuses
    • Order Histories
      • List Order Histories
      • Create Order History
    • Order Options
      • Create Order Option
      • Update Order Option
      • List Order Options
      • Delete Order Options
      • Order Option Details
    • Order Assignment
      • List Auto Assignment Rules
      • Update Auto Assignment Rule
      • Create Auto Assignment Rules
      • Order Assigned Employees Details
    • Order Invoice
      • Create Invoice
      • List Invoices
      • Invoice Details
      • Send Order Invoice
      • Create Order Invoice
    • Order Reservations
      • List Order Reservations
    • Order Items
      • List Order Items
      • Create Order Item
      • Update Order Item
      • Delete Order Item
      • Attach Digital Item
    • Products
      • Create Product
      • List Products
      • Product Details
      • Update Product
      • Delete Product
      • Change Product Status
      • Product Details By SKU
      • Update Product By SKU
      • Delete Product By SKU
      • Update Product Price By SKU
      • Update Bulk Product Prices
      • Import Products
      • Bulk Product Actions
    • Product Tags
      • Create Product Tag
      • List Product Tags
    • Product Options
      • Create Product Option
      • Product Option Details
      • Update Product Option
      • Delete Product Option
    • Product Images
      • Attach Image by SKU
      • Attach Video by SKU
      • Attach Youtube Video
      • Attach Image
      • Update Image
      • Delete Image
    • Product Option Values
      • Create Product Option Value
      • Product Option Value Details
      • Update Product Option Value
      • Delete Product Option Value
    • Digitals Product
      • Attach Digital Code
      • Attach Digital File
      • Delete Digital File
    • Product Quantity
      • Update Bulk Quantities
        POST
      • List Product Quantities
        GET
      • List Quantity Change Reasons
        GET
      • List Quantity Audit
        GET
    • Product Variants
      • List Product Variants
      • Product Variant Details
      • Update Product Variant
      • Update Product Variant Quantity
    • Settlements
      • List Instant Settlements
      • Create Instant Settlement
      • Update Instant Settlement
      • Instant Settlement Details
      • Delete Instant Settlement
    • Customers
      • Create Customer
      • List Customers
      • Customer Details
      • Update Customer
      • Delete Customer
      • Ban Customer
      • Un-Ban customer
      • Import Customers
    • Customer Groups
      • Create Customer Group
      • List Customer Groups
      • Add Customers To Group Customer
      • Update Default Customer Group
      • Update Customer Group
      • Delete Customer Group
    • Customer Wallet
      • Deposit to Wallet
      • Withdraw from Wallet
    • Abandoned Carts
      • List Abandoned Carts
      • Abandoned Cart Details
    • Special Offers
      • Create Special Offer
      • List Special Offers
      • Special Offer Details
      • Update Special Offer
      • Delete Special Offer
      • Change Special Offer Status
    • Affiliates
      • Create Affiliate
      • List Affiliates
      • Affiliate Details
      • List Affiliate Links
      • Update Affiliate
      • Delete Affiliate
    • Coupons
      • Coupon Statistics Details
      • Create Coupon
      • List Coupons
      • Coupon Details
      • Update Coupon
      • Delete Coupon
      • List Coupon Codes
    • Reviews
      • List Reviews
      • Review Details
      • Update Review
    • Feedbacks
      • List Feedbacks
      • Feedback Details
      • Update Feedback
      • Store Feedback
      • Feedback Reply
      • Update Feedback Reply
    • Branches
      • Create Branch
      • List Branches
      • Branch Details
      • Update Branch
      • Delete Branch
    • Branches Allocations
      • List Branches Allocations
      • Create Branches Allocations
      • Update Branches Allocations
      • Delete Branches Allocations
      • Branch Allocation Details
      • Allocation Branch Settings
    • Shipments
      • Create Shipment
      • List Shipments
      • Update Shipment Details
      • Shipment Details
      • Cancel Shipment
      • Return Shipment
      • Shipment Tracking
    • Shipping Companies
      • Create Shipping Company
      • Shipping Company Options
      • List Shipping Companies
      • Shipping Company Details
      • Update Shipping Company
      • Delete Shipping Company
      • List Estimate Rates
    • Shipping Zones
      • Create Shipping Zone
      • List Shipping Zones
      • Shipping Zone Details
      • Update Shipping Zone
      • Delete Shipping Zone
    • Shipping Routes
      • Routes List
      • Route Details
      • Create Route
      • Update Route
      • Default Route
      • Delete Route
    • Countries
      • List Countries
      • Country Details
    • Districts
      • List Districts
    • Cities
      • List Cities
    • Product Option Templates
      • List Option Templates
      • Option Template Details
      • Delete Option Template
      • Update Option Template
      • Create Option Template
    • Shipping Delivery Promises
      • List Delivery Promises
      • Delivery Promise Details
      • Update Delivery Promise
    • Categories
      • Create Category
      • List Categories
      • Category Details
      • Update Category
      • Delete Category
      • Category Children
      • Categories Search
      • List Category Products
    • Settings
      • Settings List
      • Update Setting Slug
      • Setting Details
    • Store Scopes
      • List Store Scopes
      • Store Scope Details
    • Brands
      • Create Brand
      • List Brands
      • Brand Details
      • Update Brand
      • Delete Brand
    • Exports
      • Export Orders
      • Exports Logs
      • List Export Templates
      • Create Export Template
      • Update Export Template
      • Delete Export Template
      • List Export Columns
      • Export Customers
      • Export Custom URLs
      • Export Products
    • Transactions
      • List Transactions
      • Transaction Details
      • Print Transaction Invoice
      • Update Transaction
    • Payments
      • Available Payment Methods
      • List Banks
      • Payment Bank Details
    • Currencies
      • Activate Currencies
      • List Currencies
      • List Available Currencies
    • Merchant
      • User Information Details
      • Store Information
    • Taxes
      • Create Tax
      • List Taxes
      • Tax Details
      • Update Tax
      • Delete Tax
    • SEO
      • List SEO Settings
      • Update SEO Settings
    • DNS Records
      • List DNS Records
      • Create DNS Record
      • Delete DNS Record
    • Languages
      • Add Language
      • List Languages
      • Update Language
    • Employees
      • List Employees
    • Advertisements
      • Create Advertisement
      • List Advertisements
      • Advertisement Details
      • Update Advertisement
      • Delete Advertisement
    • Webhooks
      • Register Webhook
      • Update Webhook
      • List Active Webhooks
      • List Events
      • Deactivate Webhook
    • Custom URLs
      • Import Custom URLs
    • Loyalty Points
      • Customer Loyalty Points
      • Update Customer Loyalty Points
    • Branch Delivery Zones
      • List Branch Delivery Zones
      • Branch Delivery Zone Details
      • Create Branch Delivery Zone
      • Update Branch Delivery Zone
      • Delete Branch Delivery Zone
  • Webhooks
    • Shippings
    • Brand
    • Cart
    • Miscellaneous
    • Customer
    • Customer Wallet
    • Invoice
    • Store
    • Shipments
    • Product
    • Category
    • Special Offer
    • Order
    • Communication Webhooks
Merchant
Merchant
  • Merchant API
  • Embedded SDK
  • Salla OAuth 2.0
Storefront
Storefront
  • Twilight Engine
  • Twilight SDK
  • Web Components
  • Ecommerce Events
  • Component Bundle
  • Checkout APIs
  • Change Log
App Functions
Partner APIs
Partner APIs
  • App API
  • Shipments & Fulfillment APIs
  • Salla AWB
  • Recurring Payments API
  • Billing System Salla partners
  • Communication Apps
Dev Tools
Dev Tools
  • Partners Agent Kit
  • Salla CLI
Merchant
Merchant
  • Merchant API
  • Embedded SDK
  • Salla OAuth 2.0
Storefront
Storefront
  • Twilight Engine
  • Twilight SDK
  • Web Components
  • Ecommerce Events
  • Component Bundle
  • Checkout APIs
  • Change Log
App Functions
Partner APIs
Partner APIs
  • App API
  • Shipments & Fulfillment APIs
  • Salla AWB
  • Recurring Payments API
  • Billing System Salla partners
  • Communication Apps
Dev Tools
Dev Tools
  • Partners Agent Kit
  • Salla CLI
Salla - Opensource
Salla - Developers Community
  1. Product Quantity

Update Bulk Quantities

Production
https://api.salla.dev/admin/v2
Production
https://api.salla.dev/admin/v2
POST
https://api.salla.dev/admin/v2
/products/quantities/bulk
Last modified:2025-06-05 12:37:10
This endpoint allows you to update bulk quantities by providing the IDs or Skus of the products you want to update its quantity in your body request

Modes#

ModeBest Used ForExample Use Cases
incrementAdding stock• Receiving new inventory
• Restocking returned items
• Correcting undercounted stock
decrementRemoving stock• Processing sales
• Handling damaged goods
• Inventory adjustments
overwriteInitial setup only• Setting initial stock levels
• Complete inventory resets
• Syncing with external systems (use with caution)
When updating product quantities, we strongly recommend using the increment and decrement modes instead of the overwrite mode for better inventory management and data integrity.

Why Choose Increment/Decrement Modes?#

1. Concurrency Safety#

When multiple systems or users update inventory simultaneously, increment/decrement operations provide better concurrency control:
Safe: "mode": "decrement", "quantity": 5 removes exactly 5 units regardless of concurrent operations
Risky: "mode": "overwrite", "quantity": 95 might overwrite changes made by other processes

2. Prevents Race Conditions#

In high-traffic scenarios where inventory updates happen frequently:
// Scenario: Current stock is 100 units
// Two simultaneous operations occur:

// Operation A (GOOD - using decrement)
{
  "mode": "decrement",
  "quantity": 3  // Safely removes 3 units
}

// Operation B (GOOD - using decrement) 
{
  "mode": "decrement", 
  "quantity": 2  // Safely removes 2 units
}
// Final result: 95 units (100 - 3 - 2) ✅

// VS

// Operation A (RISKY - using overwrite)
{
  "mode": "overwrite",
  "quantity": 97  // Sets to 97 (100-3)
}

// Operation B (RISKY - using overwrite)
{
  "mode": "overwrite",
  "quantity": 98  // Sets to 98 (100-2), overwrites Operation A
}
// Final result: 98 units (incorrect, should be 95) ❌

3. Better Audit Trail#

Increment/decrement operations provide clearer tracking of inventory changes:
Clear intent: "Decremented by 10 due to lost" vs "Set to 40 for unknown reason"
Easier debugging: You can trace each quantity change and its impact
Better reporting: Sum all increments/decrements to understand total movement

4. Improved Data Integrity#

Atomic operations: Each increment/decrement is a single, indivisible operation
Consistent state: Inventory levels remain accurate even with concurrent updates
Error recovery: Easier to reverse specific operations if needed

Implementation Example#

{
  "products": [
    {
      "identifer_type": "id",
      "identifer": "613398835",
      "quantity": 5,
      "mode": "decrement",  // ✅ Recommended: Remove 5 units from current stock
      "branch": "349994915",
      "reason_id": 566146469
    },
    {
      "identifer_type": "id", 
      "identifer": "9834759404",
      "quantity": 20,
      "mode": "increment",  // ✅ Recommended: Add 20 units to current stock
      "branch": "349994915",
      "reason_id": 566146469
    }
  ]
}
Scopes
products.read_write- Products Read & Write

Request

Authorization
Add the parameter
Authorization
to Headers
,whose value is to concatenate the Token after the Bearer.
Example:
Authorization: Bearer ********************
Body Params application/json

Example
{
    "products": [
        {
            "identifer_type": "id",
            "identifer": "613398835",
            "quantity": 60,
            "mode": "increment",
            "branch": "349994915",
            "reason_id": 566146469,
            "unlimited_quantity": true
        },
                {
            "identifer_type": "id",
            "identifer": "9834759404",
            "quantity": 80,
            "mode": "overwrite",
            "branch": "349994915",
            "reason_id": 566146469,
            "unlimited_quantity": true
        },
        {
            "identifer_type": "variant_id",
            "identifer": "3498732894",
            "quantity": 14,
            "mode": "decrement",
            "branch": "349994915",
            "reason_id": 566146469
        },
        {
            "identifer_type": "variant_id",
            "identifer": "8439405958",
            "quantity": 140,
            "branch": "349994915",
            "reason_id": 566146469
        }
    ]
}

Request Code Samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location 'https://api.salla.dev/admin/v2/products/quantities/bulk' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
    "products": [
        {
            "identifer_type": "id",
            "identifer": "613398835",
            "quantity": 60,
            "mode": "increment",
            "branch": "349994915",
            "reason_id": 566146469,
            "unlimited_quantity": true
        },
                {
            "identifer_type": "id",
            "identifer": "9834759404",
            "quantity": 80,
            "mode": "overwrite",
            "branch": "349994915",
            "reason_id": 566146469,
            "unlimited_quantity": true
        },
        {
            "identifer_type": "variant_id",
            "identifer": "3498732894",
            "quantity": 14,
            "mode": "decrement",
            "branch": "349994915",
            "reason_id": 566146469
        },
        {
            "identifer_type": "variant_id",
            "identifer": "8439405958",
            "quantity": 140,
            "branch": "349994915",
            "reason_id": 566146469
        }
    ]
}'

Responses

🟢201Created
application/json
Bodyapplication/json

Example
{
    "status": 201,
    "success": true,
    "data": {
        "message": "The details has been queued to update, it may take several minutes to finish the process",
        "code": 201
    }
}
🟠422Error Validation
🟠401unauthorized
Modified at 2025-06-05 12:37:10
Previous
Delete Digital File
Next
List Product Quantities
Advertisement
Advertisement