Yumi

API de Yumi para comercios

Conectá tu sistema de caja, de comandas o una planilla con tu tienda: leé los pedidos que entran, cambiá su estado y actualizá precios y stock sin entrar al panel.

$9.990 por mes

Es un adicional, aparte del plan de tu tienda. Para activarla, escribinos por WhatsApp; una vez activa, creás tus claves desde el panel en Configuración → Plan → API para tu sistema.

Pedir la API por WhatsApp

Cómo se usa

Todas las direcciones empiezan con https://yumi.ar/api/v1. Mandá tu clave en el encabezado Authorization de cada pedido:

Authorization: Bearer yk_tu_clave

También se acepta el encabezado X-Api-Key: yk_tu_clave. Los datos van y vuelven en JSON. Guardá la clave como una contraseña: quien la tenga puede ver tus pedidos. Si se filtra, revocala desde el panel y creá otra.

Límite: 120 pedidos por minuto por clave. Si lo pasás, la respuesta es 429; esperá un minuto.

GET/me

Para probar que la clave funciona. Devuelve los datos de tu tienda.

curl https://yumi.ar/api/v1/me -H "Authorization: Bearer yk_tu_clave"

{ "slug": "mi-rotiseria", "businessName": "Mi Rotisería", "storeUrl": "https://yumi.ar/t/mi-rotiseria", "plan": "pro" }

Pedidos

GET/orders

Lista los pedidos del más nuevo al más viejo. Filtros opcionales:

ParámetroQué hace
statusSolo los de ese estado: pending, preparing, ready, delivered o cancelled.
sinceSolo los creados después de esa fecha (ISO 8601). Ideal para traer los nuevos cada minuto.
limitCuántos traer, de 1 a 200. Por defecto 50.
curl "https://yumi.ar/api/v1/orders?status=pending&since=2026-10-29T18:00:00-03:00" \
  -H "Authorization: Bearer yk_tu_clave"

{
  "orders": [
    {
      "id": "order_1793305409549_5le3nw",
      "createdAt": "2026-10-29T21:43:29.549Z",
      "status": "pending",
      "customerName": "Juan Pérez",
      "customerPhone": "3364555777",
      "deliveryMethod": "delivery",
      "address": "Calle 9 n° 450",
      "paymentMethod": "efectivo",
      "cashChangeFor": 30000,
      "items": [ { "productId": "p_1793000000000_abc123", "name": "Pizza muzzarella", "qty": 2, "price": 9000, "variants": {}, "extras": [], "lineTotal": 18000 } ],
      "deliveryZoneName": "Envío ~11 cuadras",
      "deliveryZoneCost": 4000,
      "discountAmount": 0,
      "total": 22000,
      "notes": ""
    }
  ]
}

GET/orders/{id}

Un pedido con todo su detalle.

PATCH/orders/{id}

Cambia el estado del pedido. El cliente lo ve en su seguimiento, igual que si lo cambiaras desde el panel. Cancelar devuelve el stock.

curl -X PATCH https://yumi.ar/api/v1/orders/order_1793305409549_5le3nw \
  -H "Authorization: Bearer yk_tu_clave" -H "Content-Type: application/json" \
  -d '{"status": "preparing"}'

Productos

GET/products

Todos los productos de la tienda, con su id, nombre, categoría, precio y stock.

PATCH/products/{id}

Actualiza precio, precio anterior (el tachado), stock o nombre. Mandá solo lo que cambia. Las fotos, variantes y extras se editan desde el panel.

CampoQué es
pricePrecio nuevo (número, 0 o más).
oldPricePrecio tachado de oferta, o null para sacarlo.
stockUnidades disponibles (entero, 0 o más). No aplica a productos con stock por variante.
nameNombre del producto.
curl -X PATCH https://yumi.ar/api/v1/products/p_1793000000000_abc123 \
  -H "Authorization: Bearer yk_tu_clave" -H "Content-Type: application/json" \
  -d '{"price": 19500, "stock": 40}'

Errores

CódigoCuándo
400Algún dato está mal: el mensaje en error dice cuál.
401Falta la clave, es incorrecta o fue revocada.
403La API no está activada para tu tienda, o la tienda está pausada.
404El pedido o producto no existe en tu tienda.
429Pasaste el límite de 120 pedidos por minuto.
{ "error": "Clave de API inválida o revocada" }

¿Dudas para conectar tu sistema? Escribinos por WhatsApp y te ayudamos.