Drop · API de Integraciones
Guías

Catálogo

Listar tus productos, leer sus variantes y revalidar existencias antes de crear una orden.

El catálogo que devuelve el API es el tuyo: los productos que agregaste a tu tienda, con tu precio de venta y tu costo. Esta guía explica qué significa cada dato y cómo usarlo; los parámetros y esquemas exactos están en la referencia de cada endpoint.

Listar productos

curl -X GET '{BASE_URL}/integrations/v1/products?limit=50&page=1&active=true' \
  -H 'X-Drop-Key: …' -H 'X-Drop-Timestamp: …' \
  -H 'X-Drop-Nonce: …' -H 'X-Drop-Signature: …'
FiltroNotas
searchBusca por nombre o SKU
vendorIdSolo los productos de ese proveedor
originvendor (productos de proveedor) o seller_owned (tus productos propios). Sin el filtro vienen los dos
activeDefault true. Poné false para ver los dados de baja
page, limitPaginación, ver Formato de las respuestas

El listado viene ordenado por fecha de alta, del más reciente al más antiguo.

Lo que conviene tener claro de cada ítem:

CampoNotas
idEl identificador que va en items[].catalogId al crear una orden, si el producto no tiene variantes. Si las tiene, se usa el id de la variante
priceLo que cobrás vos a tu cliente final. Es el mismo número que la columna "Precio" del catálogo en la app
costLo que pagás vos al proveedor, por unidad. Es la columna "Costo proveedor" de la app. Si tenés un costo negociado para ese producto, viene ese. En un producto propio es 0
suggestedPricePrecio de venta sugerido por el proveedor. Es una sugerencia: el precio que cobrás es price. 0 si no se definió
currencyPar nombre/símbolo del país del producto, no un código ISO
stockConsultarlo no lo reserva: entre que consultás y creás la orden puede cambiar
visibilityprivate significa que el producto está reservado en exclusiva para vos, y entonces cost y stock son los pactados para vos. price no cambia: siempre es tu precio de venta
originvendor si es un producto de proveedor que guardaste en tu catálogo; seller_owned si es un producto propio tuyo. Un producto propio no tiene proveedor: cost es 0 y vendorId viene vacío
activefalse en un producto dado de baja. Crear una orden con uno inactivo devuelve 400
sellerIdTu identificador de dropshipper. Es el mismo en todos los ítems, porque el catálogo que devuelve el API es el tuyo
hasVariantsSi es true, pedí el detalle: el listado no incluye las variantes

Tus productos propios, los que creás en la pestaña "Productos propios" de la app, aparecen en el catálogo apenas los creás, sin necesidad de sincronizarlos con Shopify. Se piden y se venden igual que cualquier otro ítem.

Referencia: GET /products.

Cómo calcular tu margen

Tu margen por unidad es price − cost. No uses suggestedPrice: es solo una sugerencia del proveedor.

Cuando agregás un producto a tu catálogo, Drop te calcula un price inicial. Podés cambiarlo cuando quieras desde la plataforma de Drop. Ese precio inicial ya incluye el envío y algunas comisiones, así que price − cost es un margen bruto, no tu ganancia final. Para calcular la ganancia real de cada pedido, usá el costo de envío y la comisión que trae la orden: ver Costos de la orden.

Detalle de un producto

Devuelve los mismos campos del listado más variants.

Con variantes, el id que va en la orden es el de la variante

variants[].id es el que va en items[].catalogId, no el del producto padre. productVariantId es la variante del proveedor de la que sale y no se usa para crear órdenes.

Cada variante trae su propio price (lo que cobrás por esa variante), cost, stock y active.

Referencia: GET /products/{id}.

Existencias en lote

Pensado para revalidar justo antes de crear una orden. Acepta ids de producto y de variante mezclados, hasta 100 por llamada, y omite los que no existen en vez de fallar el lote entero.

curl -X GET '{BASE_URL}/integrations/v1/products/stock?ids=65b0…c1&ids=65b0…01' \
  -H 'X-Drop-Key: …' -H 'X-Drop-Timestamp: …' \
  -H 'X-Drop-Nonce: …' -H 'X-Drop-Signature: …'

Un id que no existe no aparece en la respuesta: compará contra los que mandaste en lugar de asumir que el arreglo viene completo. isInStock es quantity > 0, está por comodidad.

Recordá firmar ids con claves repetidas, no con corchetes (ver Cadena canónica).

Referencia: GET /products/stock.

En esta página