# B2B & B2C Workflows

Customer workflows are for the people who log in from outside your organisation — buyers, account holders, business contacts. The two most common shapes are **B2B** (business-to-business) and **B2C** (business-to-consumer). They serve very different buying patterns.

## When you'd use each

* **B2B** — business customers ordering on account, with company-specific pricing, invoice payment, and recurring orders.
* **B2C** — individual consumers placing standard retail orders without account-level concepts.

The product also supports many other Customer-side roles (Business Customer, Accounting, Client Manager, Direct Consumer, Purchasing). They're variations on the B2B / B2C patterns — pick the closest base and customise.

## B2B workflow

For business customers who:

* Order on account or under a company entity.
* See company-specific pricing or price levels.
* Place larger or recurring orders.
* Need to view and pay open invoices online.

### Typical module structure

| Position | Module                 | Type               | Purpose                                                        |
| -------- | ---------------------- | ------------------ | -------------------------------------------------------------- |
| 1        | **Dashboard**          | Dashboard          | Account overview — recent orders, open invoices, quick actions |
| 2        | **Header Navigation**  | Header Navigation  | Header with branding                                           |
| 3        | **Sidebar Navigation** | Sidebar Navigation | Navigation links                                               |
| 4        | **Place Order**        | Order Form         | Order entry with account pricing applied                       |
| 5        | **Catalog**            | Catalog            | Product browse, filtered to the assigned catalog               |
| 6        | **Order History**      | Page               | Past and pending orders                                        |
| 7        | **Pay Invoice**        | Order Form         | View and pay open invoices                                     |
| 8        | **Account**            | Page               | Contact and company details                                    |

### Key behaviours

* **Account pricing** — B2B customers see prices drawn from their NetSuite price level or customer-specific price group. Configured on the workflow's Settings tab via **Default Price Level**, and overridden by the customer's NetSuite record where applicable.
* **Invoice payment** — most B2B portals include a Pay Invoice module so account holders can settle balances without calling in.
* **Catalog restrictions** — B2B buyers see only the catalog assigned to their subsidiary (the workflow's **Catalog** field on Settings).

## B2C workflow

For individual consumers who:

* Browse and purchase as individuals, not on a company account.
* Need a straightforward shopping and checkout experience.
* Don't need invoice or account-management features.

### Typical module structure

| Position | Module                 | Type               | Purpose                                      |
| -------- | ---------------------- | ------------------ | -------------------------------------------- |
| 1        | **Dashboard**          | Dashboard          | Personal landing — recent orders, promotions |
| 2        | **Header Navigation**  | Header Navigation  | Header bar                                   |
| 3        | **Sidebar Navigation** | Sidebar Navigation | Navigation links                             |
| 4        | **Catalog**            | Catalog            | Product browse                               |
| 5        | **Place Order**        | Order Form         | Standard order entry                         |
| 6        | **Order History**      | Page               | Past orders                                  |
| 7        | **Account**            | Page               | Profile and address management               |

### Key behaviours

* **Standard pricing** — B2C customers see the workflow's default price level (or none) rather than account-specific pricing.
* **Lighter navigation** — fewer modules than B2B, no invoice management.
* **Pay-now, not pay-on-account** — B2C transactions are typically completed at checkout.

## B2B vs B2C side by side

| Feature            | B2B                          | B2C                   |
| ------------------ | ---------------------------- | --------------------- |
| Entity type        | Customer (Company / Contact) | Customer (Individual) |
| Pricing            | Account / price level        | Standard              |
| Invoice management | ✅                            | ❌                     |
| Catalog filtering  | Catalog assigned to account  | Default catalog       |
| Order approval     | Configurable                 | Not typical           |
| History depth      | Full                         | Recent orders         |

## Configure either

{% stepper %}
{% step %}

### Open or create the workflow

**Workflow Builder** → find a B2B or B2C default workflow under the Customer group, or click **Create Workflow** with Customer entity type.
{% endstep %}

{% step %}

### Set the catalog

On the **Settings** tab, set the **Catalog** field. B2B accounts often need a specific catalog with negotiated pricing; B2C usually uses the subsidiary default.
{% endstep %}

{% step %}

### Set Default Price Level

On the **Settings** tab, set **Default Price Level**. B2B → match the account's price level convention. B2C → leave at *None (use existing hierarchy)* or pick the standard retail level.
{% endstep %}

{% step %}

### Configure the Order Form module

Open the **Place Order** module in the Page Builder. Verify the transaction type is right (Sales Order vs Cash Sale). Add or remove fields as needed.
{% endstep %}

{% step %}

### Save and publish

Click **Save All Settings & Variables** on the Settings tab, then go back to the Workflows page and click **Publish**.
{% endstep %}
{% endstepper %}

## Assign to users

In **User Management**, find the customer entity and edit their row. Set Entity Type = *Customer* (or *Customer Contact*) and Role = the role linked to your B2B or B2C workflow. Save.

For first-time access use **Give User Access**. See [Give User Access](/client-admin-guide/managing-users/creating-users.md).

## Other Customer-side roles

Each of these is a variation on B2B or B2C — pick the closest pattern and customise:

| Role                  | Closer to | Notes                                              |
| --------------------- | --------- | -------------------------------------------------- |
| **Business Customer** | B2B       | Named accounts with custom pricing arrangements.   |
| **Accounting**        | B2B       | Finance contacts focused on invoices and payments. |
| **Client Manager**    | B2B       | Account managers with cross-portfolio visibility.  |
| **Direct Consumer**   | B2C       | Consumers with a direct named account.             |
| **Purchasing**        | B2B       | Procurement agents placing orders for their org.   |

## Common issues

* **Pricing looks wrong for a B2B customer** — confirm the customer's NetSuite price level matches what the workflow expects. The Default Price Level on Settings is the fallback when the customer record doesn't carry one.
* **B2B customer can't see invoices** — verify the Pay Invoice module is in the workflow and Published.
* **Wrong catalog** — Settings → Catalog. Save & Publish.

## Related

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Cashier Workflow</strong></td><td>For internal POS staff (Employee entity type).</td><td><a href="/pages/a473DeoiPpQL2j2vS6ZH">/pages/a473DeoiPpQL2j2vS6ZH</a></td></tr><tr><td><strong>Roles &#x26; Permissions</strong></td><td>How customer roles map to entity types.</td><td><a href="/pages/90JTHrYiNFq2sGVsSqGI">/pages/90JTHrYiNFq2sGVsSqGI</a></td></tr><tr><td><strong>Pricing &#x26; Availability</strong></td><td>How catalog pricing settings drive what customers see.</td><td><a href="/pages/XS6DzIqISW38kzuST0nO">/pages/XS6DzIqISW38kzuST0nO</a></td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.in8sync.com/client-admin-guide/workflow-builder-overview/workflow-examples/b2b-b2c-workflow.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
