Runoff Studio · Proposal

Propuesta · Página de pedidos B2B · Fase 1

Un enlace para todos los partners

Un único enlace de pedido para todos los partners B2B. El contacto entra con su email de trabajo, rellena un formulario corto calcado del intake B2C y envía el pedido desde el móvil, en el concesionario. A partir de ahí, el pedido sigue exactamente la misma ruta que un pedido B2C.

  • Alcance · Login + formulario + back end en Airtable
  • Horizonte · 2–3 semanas
  • Dónde vive · Nuestro sistema + la base Airtable de siempre

01Un enlace, tres pantallas

El partner abre el enlace genérico en el móvil, entra con su email y pide. Tres pantallas, ninguna más.

1 · Entrar · solo el email, sin contraseña

2 · Pedir · una sola página, calcada del intake

3 · Listo · confirmación y otro pedido

Mobile-first: los partners harán la foto del coche con el móvil y pedirán en el momento. La sesión se recuerda por dispositivo — los pedidos repetidos son un clic — y una sesión compartida en un dispositivo de tienda no supone problema. La cabecera dice quién es y de qué empresa, con la opción de salir.

02El formulario, campo a campo

Misma estructura y mismo aspecto que el intake B2C, con NL / EN. Los campos condicionales aparecen y desaparecen sin recargar; los ocultos no se envían.

CampoTipoSe muestra
Seleccionar productoTarjetas con miniatura + nombre: obra postal · obra de volumen · obra únicaSolo con 2+ productosCon un solo producto viene preseleccionado y oculto.
Tipo de composiciónFondo reutilizado / fondo personalizadoSolo obra única
Foto del cocheSubida de archivoSiempre
Foto del fondoSubida de archivoSolo fondo personalizado
Marca y modeloTextoSiempreRellena previamente el título.
Título de la impresiónTexto, máx. 30 caracteresSiempre
Subtítulo de la impresiónTexto, máx. 30 caracteres, opcionalSiempre
Vista previa de la impresiónTítulo + subtítulo en vivo, tal y como se imprimenSiempreJunto a los dos campos de texto.
Nombre del destinatarioTextoSiempreVa en el certificado de autenticidad. Con nota: solo para el certificado, nunca se comparte.
NotasTexto largo, opcionalSiempre

03Después del envío: la ruta de siempre

El pedido entra en el pipeline existente. Sin variante B2B separada: mismo flujo, con Source = B2B como etiqueta.

El móvil del partnerformulario enviado
Nuestro sistemaCloudflare
Nace el pedidoE26184 · Source B2B · empresa
Dos emailsconfirmación al contacto · aviso interno a ti
Pedido B2B 03 Form submitted Photo review Composition Drawing Print Client review Production Shipping

En el paso 03 Formulario enviado recibes la página de revisión de fotos con toda la información aportada por el partner, exactamente igual que con un pedido B2C — y con el nombre de la empresa a la vista, para saber de un vistazo de qué partner procede.

04El back end: Airtable, la base de siempre

Tres tablas nuevas junto a Orders. Dar de alta un contacto es todo lo que hace falta para que pueda pedir por el enlace genérico; se le retira el acceso marcándolo inactivo, con su historial intacto.

Runoff
Un registro por partner: qué productos puede pedir y cuál sale por defecto
ANameAvailable productsDefault product🔗Contacts#Orders📎Logo
De Waal AutomotivePostcardVolumeOne-offPostcardSanne de Waal, Joris Bakker12
Classic Garage ZeistOne-offOne-offPieter Vos4
Premium Lease GroupVolumeOne-offVolumeLotte Jansen, Mark Smit27

Si una empresa se queda con un solo producto, el selector desaparece solo del formulario. Sin precios ni pagos: el catálogo solo dice qué puede pedir cada empresa. Los campos exactos se cierran al arrancar.

05Dónde encaja en el sistema actual

Casi todo el portal ya existe en alguna forma. Construimos sobre lo que funciona hoy.

Ya existe · lo reutilizamos

  • El login por email del dashboard de equipo: enlace de 15 minutos, sesión de 7 días, sin contraseña.
  • El formulario del intake: mismos campos, contadores de 30 caracteres, vista previa en vivo, foto directa del móvil a OneDrive.
  • El motor que crea pedidos, el mismo que recibe los de Shopify: numeración, carpetas OneDrive, enlaces de paneles, aviso interno.
  • Las plantillas de email en Airtable (confirmación NL/EN, aviso interno) y todo el pipeline.

Existe · lo adaptamos

  • El login comprueba B2B Contacts en vez del equipo, con sesión propia: partner y equipo nunca se mezclan.
  • El formulario crea el pedido en vez de completar uno ya existente.
  • La confirmación sale sin el enlace de intake: ya está todo rellenado.
  • La revisión de fotos muestra la empresa; Source = B2B monta sobre la etiqueta de origen que ya distingue Shopify de manual.

Nuevo

  • Tablas Companies · B2B Contacts · Products.
  • Selector de producto por empresa, con producto por defecto.
  • El código de acceso junto al enlace: hoy el dashboard entra solo por enlace.
  • El enlace público con pantalla de entrada y mensaje neutro.
  • Confirmación en pantalla con «Hacer otro pedido».
Runoff Studio · Pedidos B2B Propuesta · Noura · sep 2026

Proposal · B2B order page · Phase 1

One link for every partner

A single shared order link for all B2B partners. The contact signs in with their work email, fills in a short form modelled on the B2C intake and sends the order from their phone, right at the dealership. From there, the order follows exactly the same route as a B2C order.

  • Scope · Sign-in + order form + Airtable back end
  • Horizon · 2–3 weeks
  • Lives on · Our system + the Airtable base you already use

01One link, three screens

The partner opens the shared link on their phone, signs in with their email and orders. Three screens, nothing more.

1 · Sign in · email only, no password

2 · Order · one page, modelled on the intake

3 · Done · confirmation and another order

Mobile-first: partners will photograph the car with their phone and order on the spot. The session is remembered per device — repeat orders are one tap — and a shared session on a showroom device is not a problem. The header shows who they are and which company, with a way to log out.

02The form, field by field

Same structure and same look as the B2C intake, with NL / EN. Conditional fields appear and disappear without a reload; hidden fields are not sent.

FieldTypeShown
Select productCards with thumbnail + name: postcard artwork · volume artwork · one-off artworkOnly with 2+ productsWith a single product it is preselected and hidden.
Composition typeReused background / custom backgroundOnly one-off artwork
Car photoFile uploadAlways
Background photoFile uploadOnly custom background
Brand and modelTextAlwaysPre-fills the title.
Print titleText, max. 30 charactersAlways
Print subtitleText, max. 30 characters, optionalAlways
Print previewLive title + subtitle, exactly as printedAlwaysNext to the two text fields.
Recipient nameTextAlwaysGoes on the certificate of authenticity. With a note: certificate only, never shared.
NotesLong text, optionalAlways

03After submit: the usual route

The order enters the existing pipeline. No separate B2B variant: same flow, with Source = B2B as a label.

The partner's phoneform submitted
Our systemCloudflare
The order is bornE26184 · Source B2B · company
Two emailsconfirmation to the contact · internal notice to you
B2B order 03 Form submitted Photo review Composition Drawing Print Client review Production Shipping

At step 03 Form submitted you get the photo review page with everything the partner provided, exactly like a B2C order — with the company name in view, so you see at a glance which partner it comes from.

04The back end: Airtable, the base you already use

Three new tables next to Orders. Adding a contact is all it takes for them to order through the shared link; access is removed by marking them inactive, with their history intact.

Runoff
One record per partner: which products they can order and which one is the default
ANameAvailable productsDefault product🔗Contacts#Orders📎Logo
De Waal AutomotivePostcardVolumeOne-offPostcardSanne de Waal, Joris Bakker12
Classic Garage ZeistOne-offOne-offPieter Vos4
Premium Lease GroupVolumeOne-offVolumeLotte Jansen, Mark Smit27

If a company is left with a single product, the picker disappears from the form on its own. No prices, no payments: the catalogue only says what each company can order. The exact fields get closed at kick-off.

05Where it fits in the current system

Almost all of the portal already exists in some form. We build on what works today.

Already there · reused

  • The email sign-in of the team dashboard: 15-minute link, 7-day session, no password.
  • The intake form: same fields, 30-character counters, live preview, photo straight from the phone to OneDrive.
  • The engine that creates orders, the same one that receives Shopify orders: numbering, OneDrive folders, panel links, internal notice.
  • The email templates in Airtable (NL/EN confirmation, internal notice) and the whole pipeline.

There · adapted

  • Sign-in checks B2B Contacts instead of the team, with its own session: partners and team never mix.
  • The form creates the order instead of completing an existing one.
  • The confirmation goes out without the intake link: everything is already filled in.
  • Photo review shows the company; Source = B2B rides on the origin label that already tells Shopify from manual.

New

  • Companies · B2B Contacts · Products tables.
  • Product picker per company, with a default product.
  • The sign-in code next to the link: today the dashboard signs in by link only.
  • The public link with a sign-in screen and neutral message.
  • On-screen confirmation with "Place another order".
Runoff Studio · B2B orders Proposal · Noura · Sep 2026

El brief · tal como nos llegó

Página de pedidos B2B

Fase 1 · qué debe hacer. Tu esquema, sección a sección, para comprobar que lo hemos entendido igual. Un único enlace compartido, acceso por email, un formulario breve basado en el intake B2C, y el pedido sigue la ruta de un pedido B2C.

1En resumen

  • Un enlace genérico para todos los partners — sin enlace único por empresa ni por persona.
  • El acceso se decide por la dirección de email, no por el enlace: solo pueden pedir las personas que figuran en el sistema como contacto B2B de una empresa.
  • Los productos disponibles se configuran por empresa en el back end.
  • Tras el envío, el pedido entra en el pipeline existente y recibimos el enlace de revisión habitual.

2Inicio de sesión

  • Igual que el dashboard de equipo actual: solo la dirección de email, sin contraseña.
  • Email conocido → correo de acceso con un enlace mágico y un código, para que funcione en cualquier dispositivo.
  • Email desconocido → mensaje neutro más una línea sobre cómo ponerse en contacto. El enlace es público, así que la página no debe revelar qué direcciones existen.
  • La sesión se recuerda por dispositivo, de modo que los pedidos repetidos se hacen con un clic. Una sesión compartida en un dispositivo de tienda no supone problema.
  • La cabecera muestra el nombre del contacto y su empresa, con la opción de cerrar sesión.

3Formulario de pedido

Una sola página, sin pasos — misma estructura y mismo aspecto que el intake B2C, con el selector de idioma NL / EN.

CampoTipoSe muestra cuando
Seleccionar productoTarjetas con miniatura + nombre: obra postal / obra de volumen / obra únicaSolo si la empresa tiene 2 o más productos disponibles. Con un solo producto, viene preseleccionado y oculto.
Tipo de composiciónFondo reutilizado / fondo personalizadoSolo para la obra única.
Foto del cocheSubida de archivoSiempre.
Foto del fondoSubida de archivoSolo con fondo personalizado.
Marca y modeloTextoSiempre. Rellena previamente el título.
Título de la impresiónTexto, máx. 30 caracteresSiempre.
Subtítulo de la impresiónTexto, máx. 30 caracteres, opcionalSiempre.
Vista previa de la impresiónVista previa en vivo del título + subtítulo tal y como se imprimenSiempre, junto a los dos campos de texto.
Nombre del destinatarioTextoSiempre. Va en el certificado de autenticidad. Con una nota: solo usamos este nombre para el certificado y nunca lo compartimos.
NotasTexto largo, opcionalSiempre.
  • Los campos aparecen y desaparecen sin recargar la página; los campos ocultos no se envían.
  • Mobile-first — los partners harán la foto del coche con el móvil y harán el pedido en el momento.

4Después del envío

  • Pantalla de confirmación con el número de pedido y un resumen de lo enviado.
  • Botón «Hacer otro pedido» — la sesión sigue activa, de modo que un comercial puede hacer varios pedidos seguidos.
  • Email de confirmación al contacto y notificación interna para nosotros.
  • El pedido entra en el flujo normal. En el paso actual 03 Formulario enviado recibimos la página de revisión de fotos con toda la información aportada por el cliente B2B, exactamente igual que con un pedido B2C. Sin variante B2B separada — mismo pipeline, con Source = B2B como etiqueta.
  • En esa página de revisión, mostrar también el nombre de la empresa cuando esté rellenado, para ver de un vistazo de qué partner procede el pedido.

5Back end (por empresa)

  • Empresa: nombre, qué productos están disponibles, producto por defecto.
  • Contacto: nombre, email, empresa. Desde ese momento la persona puede iniciar sesión a través del enlace genérico — no hace falta nada más. El acceso se retira marcando el contacto como inactivo, de modo que su historial de pedidos se conserva intacto.
  • Productos: nombre, descripción, miniatura, orden de clasificación. Si una empresa se queda con un solo producto, la elección de producto se oculta automáticamente en el formulario.

6Dónde viven los datos

Airtable, la misma base que el intake B2C.

TablaContiene
CompaniesUn registro por partner: productos disponibles, producto por defecto.
B2B ContactsUn registro por cada persona que puede hacer pedidos. El email es la clave de acceso, vinculada a una empresa.
ProductsLos tres tipos de obra, con su miniatura y si requieren elección de composición.
OrdersLa tabla de pedidos existente, ampliada con los campos B2B, la empresa y Source = B2B.

7Fase 2 (no ahora)

  • Dashboard por empresa: volumen de pedidos por comercial (contacto de la empresa), por mes, trimestre y año, como informe visual limpio.
  • Vista propia de pedidos para el contacto — el email de confirmación es suficiente para la fase 1.
  • Gestión de usuarios en autoservicio (opcional): uno o más contactos como administradores, capaces de añadir o quitar comerciales. Si esto se complica, seguimos haciéndolo manualmente en el back end.
  • Selector de empresa (opcional) para un contacto que trabaje para dos empresas. Primero queremos ver si eso ocurre de verdad.

8Deliberadamente fuera de alcance

  • Precios, pagos, presupuestos y facturación.
  • Seguimiento del estado del pedido para el cliente.
  • Edición de un pedido después de enviarlo — si algo está mal, nos llaman o nos escriben.
  • Un campo propio de referencia o de número de pedido (PO).
Runoff Studio · El brief Fase 1 · sep 2026

The brief · as it reached us

B2B order page

Phase 1 · what it must do. Your outline, section by section, so we can check we understood it the same way. One shared link, access by email, a short form based on the B2C intake, and the order follows the route of a B2C order.

1In short

  • One generic link for all partners — no unique link per company or per person.
  • Access is decided by the email address, not by the link: only people listed in the system as a B2B contact of a company can order.
  • The available products are configured per company in the back end.
  • After submit, the order enters the existing pipeline and we receive the usual review link.

2Sign-in

  • Same as the current team dashboard: email address only, no password.
  • Known email → access email with a magic link and a code, so it works on any device.
  • Unknown email → neutral message plus a line on how to get in touch. The link is public, so the page must not reveal which addresses exist.
  • The session is remembered per device, so repeat orders are done in one click. A shared session on a showroom device is not a problem.
  • The header shows the contact's name and company, with the option to log out.

3Order form

One single page, no steps — same structure and same look as the B2C intake, with the NL / EN language switch.

FieldTypeShown when
Select productCards with thumbnail + name: postcard artwork / volume artwork / one-off artworkOnly if the company has 2 or more products available. With a single product it is preselected and hidden.
Composition typeReused background / custom backgroundOnly for the one-off artwork.
Car photoFile uploadAlways.
Background photoFile uploadOnly with a custom background.
Brand and modelTextAlways. Pre-fills the title.
Print titleText, max. 30 charactersAlways.
Print subtitleText, max. 30 characters, optionalAlways.
Print preview windowLive preview of title + subtitle exactly as printedAlways, next to the two text fields.
Recipient nameTextAlways. Goes on the certificate of authenticity. With a note: we only use this name for the certificate and never share it with anyone.
NotesLong text, optionalAlways.
  • Fields appear and disappear without reloading the page; hidden fields are not sent.
  • Mobile-first — partners will photograph the car with their phone and place the order on the spot.

4After submit

  • Confirmation screen with the order number and a summary of what was sent.
  • "Place another order" button — the session stays active, so a salesperson can place several orders in a row.
  • Confirmation email to the contact and internal notification for us.
  • The order enters the normal flow. At the current step 03 Form submitted we receive the photo review page with all the information provided by the B2B customer, exactly like a B2C order. No separate B2B variant — same pipeline, with Source = B2B as a label.
  • On that review page, also show the company name when filled in, to see at a glance which partner the order comes from.

5Back end (per company)

  • Company: name, which products are available, default product.
  • Contact: name, email, company. From that moment the person can sign in through the generic link — nothing else needed. Access is removed by marking the contact inactive, so their order history stays intact.
  • Products: name, description, thumbnail, sort order. If a company is left with a single product, the product choice is hidden automatically in the form.

6Where the data lives

Airtable, the same base as the B2C intake.

TableContains
CompaniesOne record per partner: available products, default product.
B2B ContactsOne record per person who can place orders. The email is the access key, linked to a company.
ProductsThe three artwork types, with their thumbnail and whether they require a composition choice.
OrdersThe existing orders table, extended with the B2B fields, the company and Source = B2B.

7Phase 2 (not now)

  • Dashboard per company: order volume per salesperson (company contact), per month, quarter and year, as a clean visual report.
  • Own order overview for the contact — the confirmation email is enough for phase 1.
  • Self-service user management (optional): one or more contacts as admins, able to add or remove salespeople. If this gets complicated, we keep doing it manually in the back end.
  • Company switcher (optional) for a contact who works for two companies. First we want to see whether that really happens.

8Deliberately out of scope

  • Prices, payments, quotes and invoicing.
  • Order status tracking for the customer.
  • Editing an order after sending it — if something is wrong, they call or write to us.
  • A dedicated reference or purchase order (PO) number field.