Cotización B2B mayorista → borrador de pedido, automatizado
Cada pedido mayorista implica 10+ correos manuales y un Draft Order construido a mano. Los Draft Orders funcionan en todos los planes de Shopify — este es el patrón de automatización.

El problema
Un comprador mayorista te escribe: “200 unidades del SKU-14, 75 del SKU-22, las necesito antes del día 20, aquí está nuestro número de identificación fiscal.”
Lo que ocurre después es siempre lo mismo. Tu persona de operaciones responde pidiendo la dirección de envío. El comprador pregunta por el precio mayorista. Construyes un Draft Order a mano dentro de Shopify — línea por línea, cantidad por cantidad. Envías al comprador un enlace para pagar. Piden que modifiques una cantidad. Reconstruyes el pedido. Otro correo, otra reconstrucción.
Para una tienda que hace cinco pedidos mayoristas a la semana, eso son decenas de correos manuales y media docena de Draft Orders construidos a mano — cada semana. Ninguna de esas tareas necesita a una persona en el circuito, y ninguna debería requerir que cambies de plan.
El error: “necesitamos Shopify Plus para B2B”
El sistema B2B nativo de Shopify — con listas de precios mayoristas, perfiles de empresa y cuentas de clientes exentas de impuestos — es una función de Plus. Con un coste de aproximadamente 2.300 $/mes, la mayoría de las pymes no pueden pagarlo, y razonablemente asumen que “el B2B es cosa de Plus”.
Esa suposición es errónea, y es cara.
Los Draft Orders funcionan en todos los planes de Shopify. La mutación draftOrderCreate de la Admin API no es exclusiva de Plus. La carencia de una tienda con plan estándar no es la plataforma — es que el flujo de trabajo es manual: alguien recopila los detalles por correo y luego reconstruye el mismo pedido a mano. En el momento en que automatizas el flujo, obtienes cotización B2B en un plan Basic o Shopify sin pagar por Plus.
Este es el argumento honesto: los Draft Orders son gratuitos en tu plan actual. El valor está en automatizar los 10+ correos y el Draft Order construido a mano, no en pasarse a Plus.
Lo que cuesta realmente el flujo manual
| Paso | Quién lo hace | Tiempo |
|---|---|---|
| El comprador envía cantidades + número de identificación fiscal | La persona de operaciones lee y responde | 5 min |
| Recoger la dirección de envío | Correos de ida y vuelta | 15–30 min |
| Aplicar el precio mayorista a mano | Operaciones consulta la lista de precios | 10 min |
| Construir el Draft Order (línea por línea) | Operaciones en el admin de Shopify | 10–20 min |
| Enviar el enlace de pago seguro | Operaciones | 5 min |
| Modificar cantidades cuando el comprador cambia de opinión | Reconstruir + reenviar | 10–20 min |
Por pedido mayorista: aproximadamente 1 hora de trabajo manual y 10+ correos. A cinco pedidos a la semana, eso son unas 5 horas de tiempo de operaciones y 50+ correos — cada semana, solo para mover pedidos del correo del comprador a Shopify.
El patrón: formulario de cotización → Draft Order al enviar
La solución es un formulario de alta de venta mayorista en autoservicio que construye el Draft Order por ti.
Wholesale buyer opens a public quote form
↓
Picks products, enters quantities, tax ID, notes
↓
Form POSTs to your server
↓
Your server creates a Draft Order via the Shopify Admin API
↓
Shopify returns a Draft Order with a secure invoice URL
↓
Send the invoice link to the buyer · log the order
↓
Buyer pays → Draft Order completes → real Order created
La llamada clave a la API es la mutación GraphQL draftOrderCreate, que requiere el ámbito de acceso write_draft_orders:
mutation draftOrderCreate($input: DraftOrderInput!) {
draftOrderCreate(input: $input) {
draftOrder {
id
orderUrl
}
userErrors {
field
message
}
}
}
{
"input": {
"note": "Wholesale order — 200 x SKU-14, 75 x SKU-22",
"email": "buyer@example.com",
"taxExempt": false,
"lineItems": [
{ "variantId": "gid://shopify/ProductVariant/808950810", "quantity": 200 },
{ "variantId": "gid://shopify/ProductVariant/655441491", "quantity": 75 }
],
"appliedDiscount": { "value": 25, "valueType": "PERCENTAGE", "title": "Wholesale" }
}
}
(Nota: el endpoint REST /draft_orders.json todavía existe, pero la API REST de Admin quedó obsoleta en octubre de 2024 — los nuevos desarrollos deberían usar la API GraphQL de Admin.)
El ciclo de vida, de principio a fin
Una vez que existe el Draft Order, el resto son tres pasos documentados:
draftOrderCreate— construye el pedido con cliente, líneas de detalle y descuento mayorista.draftOrderInvoiceSend— envía al comprador un enlace de pago seguro. Sin correo manual, sin copiar y pegar la URL.draftOrderComplete— cuando el comprador paga (o confirmas un pago fuera de Shopify), el Draft Order se convierte en un pedido real.
Los Draft Orders fueron creados exactamente para esto: vender a tarifas mayoristas, facturar mediante un enlace seguro y cobrar fuera del checkout si así lo requiere tu relación mayorista.
¿Y el número de identificación fiscal y el precio mayorista?
Dos detalles del B2B que parecen bloqueantes y cómo los maneja el patrón:
Número de identificación fiscal / exención
Los compradores mayoristas suelen estar exentos de impuestos. Tu formulario de alta captura el número de identificación fiscal y las notas, y estableces taxExempt en la entrada del Draft Order. También puedes adjuntar el número de identificación fiscal como nota de línea o de pedido para que quede registrado en el pedido — no más búsquedas en hilos de correo para encontrar “de quién era esta orden de compra”.
Precio mayorista
Empieza con un descuento mayorista fijo por producto o un porcentaje global (el appliedDiscount de la mutación). La lista de precios vive en tu código, no en la cabeza de alguien o en una hoja de cálculo desactualizada — cuando cambia una tarifa, la cambias una vez y cada futura cotización es correcta.
Si creces hacia listas de precios específicas por empresa, es una extensión natural: una pequeña tabla empresa → descuento que tu servidor consulta antes de construir el Draft Order. Mismo patrón, solo más lógica entre el formulario y la llamada a la API.
La comparación de costes
| Enfoque | Coste mensual | Quién construye el pedido | Correos por pedido | Tiempo por pedido |
|---|---|---|---|---|
| Manual (correo + construir a mano en el admin) | 0 $ (pero horas de operaciones) | Tu equipo, a mano | 10+ | ~1 hora |
| Shopify Plus B2B | ~2.300 $/mes | Sistema B2B nativo | Menos, pero configuración manual | Menos, pero limita la función |
| Automatización cotización → Draft Order | 0 $ (funciona en tu servidor actual) | Automatizado al enviar | 1 (el enlace de la factura) | ~15 segundos |
El enfoque personalizado no cuesta nada al mes porque funciona en la misma infraestructura que gestiona tus otros webhooks de Shopify. El coste único de desarrollo suele ser de 8–12 horas, y funciona en el plan que ya pagas.
Esto no es teoría
Este es el flujo de trabajo exacto que hay detrás de la demo de automatización en vivo — automatización de Shopify que sustituye el manejo manual de pedidos. La dirección de Draft Order es el caso de uso insignia de ese desarrollo: un formulario público de cotización que convierte la sesión del navegador de un comprador en un pedido real sin que una persona de operaciones lo toque.
Nada de esto requiere Shopify Plus. Requiere un plan (cualquier plan), el ámbito write_draft_orders en una app personalizada y un pequeño servidor que traduzca el envío de un formulario en la llamada a la API correcta.
Resumen
| Aspecto | Manual | Automatizado |
|---|---|---|
| Correos por pedido mayorista | 10+ | 1 (el enlace de la factura) |
| Tiempo por pedido | ~1 hora de operaciones | ~15 segundos |
| Plan requerido | Cualquiera (de todos modos manual) | Cualquiera — no hace falta Plus |
| Precio mayorista | Consulta a mano | Aplicado en la llamada a la API |
| Número de identificación fiscal / notas | Perdidos en hilos de correo | Guardados en el pedido |
| Escalar más allá de 10 pedidos/semana | Se rompe | Diseñado para ello |
Si tu equipo sigue copiando cantidades del correo de un comprador y reconstruyendo Draft Orders a mano, la solución es un desarrollo de unos días — no una actualización de plan de 2.300 $/mes.
Este artículo forma parte de la serie de automatización de Shopify. Si gestionas una línea mayorista en un plan estándar de Shopify, reserva una llamada de encaje de 20 minutos — analizaré tu flujo de cotización→pedido y te diré exactamente qué automatiza.