Payments are experiencing issues due to temporary restrictions in Russia. If your payment does not go through, please submit a support request.Our support team is available 24/7 — we are always here to help with hosting and server issues.We are now accepting requests for dedicated server rental and colocation services in our data center.Reminder: we recommend enabling backups for additional data protection.A new VPS/VDS lineup with NVMe storage and improved performance is now available.Maintenance work on some servers has been completed. All services are operating normally.
Article5 min readViews0

How to Design a B2B Portal for Dealers: Prices, Stock, Documents, and Roles

Which processes to define before developing a B2B portal, how to separate roles and data sources, and which scenarios to use for acceptance.

Comments 0

A table with product samples, documents, and a tablet for wholesale ordering, without labels
In this article

Moving a standard online store to a restricted section and adding an "INN" field does not create a B2B portal. Dealers need their own prices, contracts, limits, warehouse stock, order repetition, and documents. Within a single company, a purchaser, accountant, and manager must see different actions.

Design begins not with the portal's homepage, but with the order path and access model. Otherwise, a beautiful interface quickly accumulates manual approvals, and managers continue exchanging tables via email.

Describe participants and their decisions

A client company is not a single user. It may have multiple legal entities, contracts, and delivery addresses. A user acts on behalf of the organization and is assigned a role.

Role

What they need

What they are often not allowed to do

Purchaser

Catalog, prices, cart, reorder

Change contract and financial limit

Approver

Approve orders and view rule violations

Edit product catalog

Accountant

Invoices, acts, settlements

Change the composition of an already approved order

Client Manager

Limits, users, history, and reports

Manage supplier settings

Supplier Manager

Customers, exceptions, comments, and statuses

Log in as a user without action auditing

The permission matrix must be validated on the server. A hidden button in the interface does not prevent a direct request. For critical operations, record who, when, and on behalf of which organization changed the data.

Separate shared and personal data

Product descriptions and images are typically shared. Prices, available stock, minimum order quantity, packaging multiples, and payment terms depend on the contract. If mixed in a single entity, catalog updates will begin to overwrite personal conditions.

  • The catalog answers what can be ordered.

  • The agreement defines the price, currency, discount, minimum order amount, and available assortment.

  • Warehouse and reservation determine how much can be confirmed and by what date.

  • Organization and contract define the billing details, limit, and payment method.

  • User and role define what can be viewed, created, and approved.

The source for each layer must be recorded separately. For example, product catalogs and stock levels come from 1C, marketing descriptions are edited on the website, and credit limits are calculated by the accounting system. The phrase "two-way exchange" does not replace these rules.

Show the buyer the origin of prices and availability

In B2B, prices are often calculated after selecting the organization, contract, quantity, and warehouse. The dashboard must explain why a price is set that way: personal pricing, volume tier, promotion, or manual approval. Do not display an estimated price as final if it still requires manager confirmation.

Stock status also requires clear definition. "In stock" may mean physical quantity available after accounting for reservations, a customer quota, or the ability to ship from a partner warehouse. Show the data freshness date and expected delivery time if updates occur in batches.

Design the order as a process

  1. The user selects the organization and contract before calculating personalized terms.

  2. The cabinet checks multiples, minimum batch size, limit, and availability.

  3. If approval is required, the order receives a separate status and does not proceed to shipment.

  4. After approval, the composition, price, and version of terms are fixed.

  5. The accounting system returns confirmation, reservation, documents, and shipment changes.

  6. Cancellations, partial shipments, and returns are saved as events and do not overwrite history.

Reordering must create a new cart based on current conditions, not copy old prices. Users benefit from seeing which items have changed, been removed, or require approval.

Documents are not a PDF folder

Invoices, acts, waybills, and reconciliations belong to a specific legal entity, contract, and order. Search must account for period, number, status, and document type. Users must not receive a document from another organization due to ID substitution in the request URL.

If documents are not generated immediately, the interface displays the preparation status and does not offer to download an empty file. Regeneration must not create different versions without a clear date and status.

What to check during acceptance testing

  • A user with two organizations sees the correct contracts and prices after switching.

  • A purchaser cannot approve an order via a bypass request if the action is available only to an approver.

  • Repeating an old order recalculates terms and displays differences.

  • Changes to stock and limits arrive within the agreed timeframe, and outdated values are not presented as current.

  • Two simultaneous orders do not reserve the same stock without conflict control.

  • Documents are accessible only to users of the relevant organization and are logged in the download journal.

  • 1C unavailability does not delete an order: it receives a clear status and retries without creating a duplicate.

The first version of the B2B cabinet may be small: a personal catalog, order, approval, and documents. However, the model for organizations, roles, contracts, and data sources must be established from the start. These entities are difficult to add painlessly after rights and prices have already been scattered across the interface and integrations.

Discussion 0

Share your experience and ask questions. Comments without links appear after editorial review.

No comments yet. Start the discussion.