Quickstart
Esta guía te lleva desde cero hasta crear tu primera orden en Pickwise. Tiempo estimado: 5 minutos.
Prerrequisitos
Sección titulada «Prerrequisitos»- Un subdominio asignado por Pickwise (ej:
api-acme.pickwise.com.ar) - Una API Key productiva con formato
pk_live_xxxx. Pedila a soporte si todavía no la tenés. - Herramienta para hacer HTTP requests: terminal con
curl, Postman, o tu lenguaje de preferencia.
-
Verificar conectividad (sin auth)
El endpoint
/healthno requiere autenticación. Úsalo para confirmar que tu subdominio está correctamente configurado.Ventana de terminal curl https://api-{CLIENTE}.pickwise.com.ar/api/v1/public/healthconst res = await fetch('https://api-{CLIENTE}.pickwise.com.ar/api/v1/public/health');const data = await res.json();console.log(data);<?php$ch = curl_init('https://api-{CLIENTE}.pickwise.com.ar/api/v1/public/health');curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);$response = curl_exec($ch);curl_close($ch);echo $response;Respuesta esperada:
{"status": "ok","timestamp": "2026-03-07T14:30:00Z","version": "v1"} -
Validar tu API Key
Hacer una request autenticada al endpoint de productos (listado vacío). Si tu key es inválida, vas a recibir
401 Unauthorized.Ventana de terminal curl https://api-{CLIENTE}.pickwise.com.ar/api/v1/public/products?limit=1 \-H "Authorization: Bearer pk_live_xxxx"const res = await fetch('https://api-{CLIENTE}.pickwise.com.ar/api/v1/public/products?limit=1',{ headers: { 'Authorization': 'Bearer pk_live_xxxx' } });console.log(await res.json());<?php$ch = curl_init('https://api-{CLIENTE}.pickwise.com.ar/api/v1/public/products?limit=1');curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer pk_live_xxxx']);$response = curl_exec($ch);echo $response; -
Crear tu primer producto
Upsert por
externalId. Si no existe, lo crea; si existe, lo actualiza.Ventana de terminal curl -X POST https://api-{CLIENTE}.pickwise.com.ar/api/v1/public/products \-H "Authorization: Bearer pk_live_xxxx" \-H "Content-Type: application/json" \-d '{"externalId": "DEMO-PROD-001","sku": "SKU-AURICULAR-BT","name": "Auricular Bluetooth BT500","stock": 150}'const res = await fetch('https://api-{CLIENTE}.pickwise.com.ar/api/v1/public/products',{method: 'POST',headers: {'Authorization': 'Bearer pk_live_xxxx','Content-Type': 'application/json'},body: JSON.stringify({externalId: 'DEMO-PROD-001',sku: 'SKU-AURICULAR-BT',name: 'Auricular Bluetooth BT500',stock: 150})});console.log(await res.json());<?php$payload = json_encode(['externalId' => 'DEMO-PROD-001','sku' => 'SKU-AURICULAR-BT','name' => 'Auricular Bluetooth BT500','stock' => 150]);$ch = curl_init('https://api-{CLIENTE}.pickwise.com.ar/api/v1/public/products');curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_POST, true);curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer pk_live_xxxx','Content-Type: application/json']);$response = curl_exec($ch);echo $response; -
Crear tu primera orden
Ventana de terminal curl -X POST https://api-{CLIENTE}.pickwise.com.ar/api/v1/public/orders \-H "Authorization: Bearer pk_live_xxxx" \-H "Content-Type: application/json" \-d '{"externalId": "DEMO-ORDEN-001","orderNumber": "OC-2026-00001","items": [{"productExternalId": "DEMO-PROD-001","productSku": "SKU-AURICULAR-BT","quantity": 2}],"customer": {"externalId": "CUST-001","name": "Juan Perez","email": "juan@example.com"}}'const res = await fetch('https://api-{CLIENTE}.pickwise.com.ar/api/v1/public/orders',{method: 'POST',headers: {'Authorization': 'Bearer pk_live_xxxx','Content-Type': 'application/json'},body: JSON.stringify({externalId: 'DEMO-ORDEN-001',orderNumber: 'OC-2026-00001',items: [{productExternalId: 'DEMO-PROD-001',productSku: 'SKU-AURICULAR-BT',quantity: 2}],customer: {externalId: 'CUST-001',name: 'Juan Perez',email: 'juan@example.com'}})});console.log(await res.json());<?php$payload = json_encode(['externalId' => 'DEMO-ORDEN-001','orderNumber' => 'OC-2026-00001','items' => [['productExternalId' => 'DEMO-PROD-001','productSku' => 'SKU-AURICULAR-BT','quantity' => 2]],'customer' => ['externalId' => 'CUST-001','name' => 'Juan Perez','email' => 'juan@example.com']]);$ch = curl_init('https://api-{CLIENTE}.pickwise.com.ar/api/v1/public/orders');curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_POST, true);curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer pk_live_xxxx','Content-Type: application/json']);$response = curl_exec($ch);echo $response;
Próximos pasos
Sección titulada «Próximos pasos» Autenticación Permisos granulares, rotación de keys, seguridad.
Webhooks Recibí eventos en tiempo real en lugar de hacer polling.
Idempotencia Cómo evitar duplicados en caso de retry.
Manejo de errores Formato estándar de errores y estrategia de retry.