Skip to content

Managing Offers

When selling on Depop, offers are a common way buyers engage with your products. The Selling API provides automated ways to handle offers without requiring manual intervention, allowing you to scale your listed inventory efficiently.

Understanding Offer Automation

The Selling API supports two types of offer automation:

  1. Auto-send offers to users who have liked or bagged your items
  2. Auto-negotiate offers from buyers who make an offer on your items

Both features can be configured on a per-product basis, giving you granular control over your pricing strategy.

Setting Up Automated Offers

To enable offer automation, use the following fields when creating or updating a product:

  • auto_send_offer_price: The price that will be automatically offered to users who like or bag your item
  • auto_negotiate_offer_price: The threshold price for automatically accepting or countering buyer offers

These fields are optional. You can use one, both, or neither depending on your strategy for each product.

Note

These fields are both in the product PUT endpoint and also in the more efficient PATCH endpoint

Auto-Send Offer Price

When you set an auto_send_offer_price, Depop will automatically send an offer to:

  • Users who like your product
  • Users who save your product
  • Users who add your product to their bag

The offer will be sent one hour after the user likes or bags the item. This delay is not configurable.

Requirements:

  • The offer price must be at least 5% lower than the product's listing price.
  • The price should be specified with up to 2 decimal places (e.g., "20.00").

Example:

{
  "price_amount": "25.99",
  "auto_send_offer_price": "20.00",
  // other product fields...
}

Auto-Negotiate Offer Price

The auto_negotiate_offer_price field lets you define how the system responds when a buyer sends an offer:

  • If the buyer's offer is equal to or higher than your auto_negotiate_offer_price, the system will automatically accept the offer.
  • If the buyer's offer is lower than your auto_negotiate_offer_price, the system will automatically counter with your specified price.

This automation continues if the buyer sends additional counter-offers, using the same logic.

Note

There's a small delay (around 1 minute) before the offer is sent. So when testing this, you'll not see the offer immediately after sending it.

Requirements:

  • The auto-negotiate price must be at least 5% lower than the product's listing price.
  • The price should be specified with up to 2 decimal places (e.g., "20.00").

Example:

{
  "price_amount": "25.99",
  "auto_negotiate_offer_price": "20.00",
  // other product fields...
}

Setting Both Auto-Offer Prices

You can set both auto-offer fields at the same time. They can be the same value or different values depending on your strategy:

{
  "price_amount": "25.99",
  "auto_send_offer_price": "22.00",  // Higher value to engage buyers
  "auto_negotiate_offer_price": "20.00",  // Lower so it's more attractive
  // other product fields...
}

Disabling Auto-Offers

These fields are optional and can be set to null to disable the auto-offer features for a product:

In the PATCH endpoint, you can:

{
  "auto_send_offer_price": null,  // Disable auto-send offers
  "auto_negotiate_offer_price": null,  // Disable auto-negotiate offers
}

And for the PUT endpoint, you can omit these fields altogether to disable both features.

Re-pricing strategy

As your inventory ages, it's common to adjust prices to encourage sales. Keep your auto-offer prices in mind when re-pricing products.

Manually Submitting Offers

In addition to automated offers, you can manually submit offers to specific buyers using the offer submission endpoints. This gives you more control over the negotiation process for individual transactions.

Note

You can only send offers to buyers who have shown interest in your products (likes, bags, messages)

When to Use Manual Offer Submission

Manual offer submission is useful when:

  • You want to target specific buyers with personalized offers
  • You're running targeted promotions for specific customers
  • You want to send offers for products with sizes

Submitting an Offer

You can submit offers using either the product ID or SKU:

By Product ID:

POST /api/v1/products/by-product-id/{productId}/offer

By SKU:

POST /api/v1/products/by-sku/{sku}/offer

Required OAuth Scope: offers_write

Fields:

  • offer_recipient_id (required): The user ID of the buyer who will receive the offer
  • offer_value (required): The offer amount (must be at least 5% lower than the product price)
  • offer_currency (required): Currency code (e.g., "GBP", "USD", "EUR") - must match the product's currency
  • size_id (optional): The size ID (see size handling below)

Handling Product Sizes

Products can have different size configurations, and the size_id field requirements depend on the product:

Products without sizes: - Do not provide size_id in the request

Products with a single size: - The size_id is not required and will be automatically populated.

Products with multiple variants: - You must provide a valid size_id that exists for the product - You'll receive a 422 error if the size_id is invalid or missing

Example - Offer for a product with multiple sizes:

{
  "offer_recipient_id": 456789,
  "offer_value": 45.00,
  "offer_currency": "GBP",
  "size_id": 3  // Specific size variant
}