> ## Documentation Index
> Fetch the complete documentation index at: https://ayuda.gudink.com/llms.txt
> Use this file to discover all available pages before exploring further.

# API: conectar una plataforma de e-commerce

> Lo que todo conector entre una plataforma de e-commerce (WooCommerce, una tienda propia, un ERP) y la API de Gudink termina resolviendo: cuándo crear el pedido, el external_id, dónde guardar la cotización, el retiro en sucursal, provincias, direcciones, carritos mixtos, el pago y el seguimiento.

Si armás un conector entre una plataforma (WooCommerce, una tienda propia, un ERP) y Gudink, hay decisiones que todo conector termina resolviendo. Esta página las junta, y cada punto remite a la página que tiene el detalle.

| Tema | Qué hacer | Detalle |
| - | - | - |
| Cuándo crear el pedido en Gudink | Cuando la plata de tu comprador está acreditada, no cuando el pedido se registra. Con transferencia, efectivo o pago contra entrega, esperá a confirmar el cobro (en WooCommerce, el pago completo o el paso a "procesando" de un medio que cobra en el momento) | [Crear un pedido](/api/pedidos#crear-un-pedido) |
| `external_id` | Un prefijo propio de la instalación más tu número de pedido, por ejemplo `woo-k7p2-10432`. Nunca el número de pedido solo | [Un id único por instalación](/api/pedidos#un-id-unico-por-instalacion) |
| Dónde guardar la cotización | `quote_id`, `service_code` y `province` (y `pickup_point_id` en un retiro) junto al pedido de tu plataforma, en el mismo lugar que el envío elegido (en WooCommerce, los metadatos de la línea de envío). Y el cuerpo exacto que mandaste, para reintentar | [Reintentar sin duplicar](/api/pedidos#reintentar-sin-duplicar) |
| Retiro en sucursal en tu checkout | Mostrá cada opción de la cotización como un método de envío, con su `label` y su `price`. Si tu comprador elige la de `type: "pickup"`, mostrale la lista de `pickup_points` (nombre, dirección, horario y operador, en el orden en que vienen: la más cercana primero) y que elija una antes de pagar. Guardá la sucursal elegida como dirección de envío del pedido de tu plataforma (o en una nota visible): es adónde va a ir a buscarlo. Al crear el pedido en Gudink mandá `shipping.pickup_point_id` y **no** mandes `shipping_address`, aunque tu plataforma tenga una dirección cargada. Si no querés ofrecer retiro, ignorá las opciones `pickup` | [Retiro en sucursal](/api/pedidos#retiro-en-sucursal) |
| Provincia | Si tu plataforma guarda la provincia como código ISO 3166-2 (WooCommerce usa `C`, `B`, `X`, ...), mandalo tal cual o con `AR-` delante | [Provincias](/api/productos-y-envio#provincias) |
| Dirección en una sola línea | Separá la calle de la altura antes de cobrar; piso y departamento largos van en `notes` | [Dirección en una sola línea](/api/pedidos#si-tu-plataforma-guarda-la-direccion-en-una-sola-linea) |
| Carritos mixtos | Cotizá y pedí sólo las líneas de Gudink; el envío del resto lo calculás vos | [Reglas de la cotización](/api/productos-y-envio#reglas-de-la-cotizacion) |
| Imágenes | Las URLs no tienen extensión: si tu plataforma la exige, bajá el archivo y ponésela según el `Content-Type` | [Imágenes](/api/productos-y-envio#imagenes) |
| Pagar a tiempo | Una alarma propia antes de `expires_at`. La API no paga pedidos: se pagan en tu panel | [Pagar es una tarea de todos los días](/api/pedidos#pagar-es-una-tarea-de-todos-los-dias) |
| Seguimiento | Gudink no le escribe a tu comprador. Con `order.shipped` u `order.tracking_updated`, guardá `tracking` en el pedido de tu plataforma y mandáselo vos | [Avisos](/api/avisos#eventos) |
| Cancelado después de que tu comprador pagó | Mirá `cancel_reason`, poné el pedido de tu plataforma en espera y decidí: volver a pedirlo con un `external_id` nuevo, o devolverle la plata a tu comprador | [Estados](/api/pedidos#estados) |
| Tareas programadas | Sincronización y alarmas con el cron del servidor, no con uno que dependa de las visitas (como WP-Cron de WordPress) | [Cada cuánto sincronizar](/api/productos-y-envio#cada-cuanto-sincronizar) |
| `User-Agent` | Uno propio en cada solicitud, por ejemplo `MiTienda/1.0 (+https://mitienda.com)`. Sin él, la red puede responder un 403 que no es JSON | [Respuestas que no son de la API](/api/errores-y-limites#respuestas-que-no-son-de-la-api) |

Antes de pasar a producción, corré el [recorrido de prueba de punta a punta](/api/entorno-de-pruebas#recorrido-de-prueba-de-punta-a-punta) y repasá el [checklist](/api/errores-y-limites#checklist-antes-de-pasar-a-produccion).

Si te lo conecta un agente de IA, las instrucciones para pegarle están en [Conectar con un agente de IA](/api/conectar-con-un-agente).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.