App Docs

B2Bsellers

Documentation for the Laioutr B2Bsellers app. Integrate the B2Bsellers Suite for Shopware 6 to add enterprise B2B features like employee management, order approvals, offers, budgets, and sales representative tools.
This app is planned and currently under development. The feature set described below reflects the intended scope based on the B2Bsellers Store API. APIs and capabilities may change before release.

Overview

The @laioutr-app/b2bsellers package integrates the B2Bsellers Suite into a Laioutr-powered Nuxt app. B2Bsellers is a modular Shopware 6 plugin that transforms a standard shop into a full-featured B2B e-commerce platform — covering employee management, role-based permissions, order approval workflows, offer management, budgets, cost centers, sales representative tools, and more.

This app connects to the B2Bsellers Store API endpoints that the plugin adds to Shopware's existing Store API. All endpoints use the same authentication mechanism as the standard Shopware Store API (sw-context-token header).

Key capabilities at a glance:

  • Employee & role management with fine-grained permissions
  • Order approval workflows with multi-approver support
  • Offer creation and negotiation including document generation
  • Budget management with period-based spending limits
  • Cost center assignment and tracking
  • Product lists (wishlists, shopping lists, reorder lists)
  • Sales representative tools for managing customers, orders, and activities
  • Customer-specific pricing and custom product numbers

For detailed property-level API reference, see the official B2Bsellers Store API documentation.

Architecture

The B2Bsellers plugin extends Shopware's Store API with additional /b2b/* endpoints. Laioutr communicates with these endpoints through the same Shopware storefront connection that the @laioutr-app/shopware package establishes.

All B2Bsellers endpoints are authenticated via the sw-context-token header — the same session token that the Shopware base app manages. No separate authentication is required.

Store API Feature Overview

The B2Bsellers Store API is organized into a core plugin and several addon modules. Each addon can be enabled independently depending on your B2B requirements.

Employee Management (Core)

Manage company employees, their roles, and permissions. Employees are users within a B2B customer account that can have individual access rights.

CapabilityEndpointsDescription
CRUDPOST/GET/PATCH/DELETE /b2b/employee/{id}Create, read, update, and delete employees
ListPOST /b2b/employeesFetch all employees with optional filtering
Add to companyPOST /b2b/employee/addAssign an existing employee to a company
Import/ExportPOST /b2b/employee-import, POST /b2b/employee-exportBulk import employees via CSV or export all employees
Password recoveryPOST /b2b/employee/recovery-passwordTrigger a password reset email for an employee

Roles & Permissions (Core)

Define roles with granular permissions to control what employees can see and do.

CapabilityEndpointsDescription
Manage rolesPOST/PATCH/DELETE /b2b/employee-roles/{id}Create, update, and delete employee roles
List rolesPOST /b2b/employee-rolesFetch all available roles
PermissionsPOST /b2b/employee-permissionsFetch all available permissions
Permission groupsPOST /b2b/employee-permission-groupsFetch permission groups for organizing permissions

Invitations (Core)

Invite new employees to join the company account via email.

CapabilityEndpointsDescription
List invitationsGET /b2b/employee-invitationsView all pending invitations
Get/DeleteGET/DELETE /b2b/employee-invitation/{id}View or cancel a specific invitation
CreatePOST /create-invitationGenerate and send an invitation
RegisterPOST /invitation-employee/{hash}Register as employee from an invitation link

Authentication & Access (Core)

Additional login methods and account management beyond standard Shopware authentication.

CapabilityEndpointsDescription
Passwordless loginPOST /passwordless-login, POST /passwordless-login/{hash}Request and authenticate via a login link sent by email
Login targetsGET /login-targetsRetrieve available login targets for the current context
Account requestPOST /account-requestRequest a new B2B account (company registration)

Sales Representative (Core)

Tools for sales reps to manage their assigned customers, view orders, and track activities.

CapabilityEndpointsDescription
ProfileGET/PATCH /sales-representative/{id}View and update the current sales rep's profile
CustomersPOST /sales-representative/customers, POST /sales-representative/customer-searchList and search assigned customers
EmployeesPOST /sales-representative/employeesList employees of assigned customers
OrdersPOST /sales-representative/orders, POST /sales-representative/customer-orders/{customerId}View all orders or orders for a specific customer
StatisticsPOST /sales-representative/sales-statistics, POST /sales-representative/customer-sales-rankingSales metrics and customer rankings

Customer Activity Tracking

Sales reps can log and track customer interactions (calls, visits, emails, etc.).

CapabilityEndpointsDescription
Activity typesGET /sales-representative/customer-activity-typeList available activity types
CRUD activitiesPOST/PUT/GET/DELETE /sales-representative/customer-activity/{id}Create, update, view, and delete activity records
List activitiesGET /sales-representative/customer-activity/listList all activities with filtering

Customer Features (Core)

CapabilityEndpointsDescription
Customer pricingPOST /customer-pricesRetrieve customer-specific prices
DocumentsPOST /customer-documents/, GET /customer-document/{fileName}List and download customer documents
Employee ordersPOST /b2b/employee-orders, GET /b2b/employee-order/{id}List orders placed by employees
Employee customersPOST /b2b/employee-customersGet customers assigned to an employee

Product Catalog & Ordering (Core)

CapabilityEndpointsDescription
Fast order searchPOST /b2b/fast-order-product-searchQuick product search for fast ordering
Product detailsPOST /b2b/product-detailsRetrieve detailed product information
Ordered productsPOST /ordered-productsFetch previously ordered items for reordering
Product table listingPOST /product-table-listingTabular product listing view
Price calculationPOST /product-price/{id}/{quantity}Calculate pricing for a specific product and quantity
Add to cartPOST /b2b/add-to-cartAdd items to the shopping cart
Express checkoutGET/PATCH /express-checkout-settingRetrieve or update express checkout configuration

Order Approval (Addon)

A multi-step approval workflow for orders. Employees can submit their cart for approval, and designated approvers can review, modify, approve, or decline.

CapabilityEndpointsDescription
Create approvalPOST /order-approval/createCreate a new order approval from the current cart
List approvalsPOST /order-approval/listList all approvals for the logged-in customer
View detailsGET /b2b/order-approval/{id}Get detailed information about an approval
Approve/DeclinePOST /b2b/order-approval/{id}/approve, POST /b2b/order-approval/{id}/declineApprove or decline an order approval request
ExecutePOST /b2b/order-approval/{id}/executeConvert an approved order into a real Shopware order
Edit line itemsPATCH/DELETE /b2b/order-approval/{id}/line-items/{lineItemId}Update quantity or remove line items from an approval
Refresh pricesPOST /b2b/order-approval/{id}/refreshRecalculate prices and check stock availability
RemindersPOST /b2b/order-approval/{id}/remind, POST /b2b/order-approval/{id}/remind/allSend reminder emails to pending approvers
Activity historyGET /b2b/order-approval/{id}/activityView the full history of actions on an approval
ApproversGET /b2b/order-approval/{id}/approversView approver status and decisions
SettingsGET/POST /b2b/order-approval/customer-settingsConfigure approval mode (e.g. which employees are approvers)
Pending countGET /b2b/order-approval/settings/count-pendingCount pending approvals

Offers (Addon)

Create, manage, and negotiate offers (quotes). Offers can be converted into orders once accepted.

CapabilityEndpointsDescription
Create offerPOST /offer/Create a new offer
List offersGET /offer/, POST /offer/listList all offers with optional filtering
View/UpdateGET/PUT /offer/{id}View or update a specific offer
Request offerPOST /offer-request, POST /offer-item-requestRequest an offer (empty or with specific line items)
Convert to orderPOST /offer-order/{id}Convert an accepted offer into a Shopware order
Add productsPOST /offer-add-products/{offerId}Add products to an existing offer
ClonePOST /sales-representative/clone-offer/{id}Duplicate an offer (sales rep)
DeleteDELETE /sales-representative/offer/{id}Delete an offer (sales rep)
DocumentsGET /offer-document/{id}Download the offer document (PDF)
MailGET/POST /offer-mail/{id}Preview or send an offer email
Extend validityPOST /offer/{id}/request-validity-extensionRequest to extend an offer's validity period
Offer statesPOST /offer-statesList available offer states
Reference productsGET /b2b/offer-reference-product/{productId}Get a product referenced in an offer

Budgets (Addon)

Define spending budgets with configurable periods. Track spending against budgets and require approval when limits are exceeded.

CapabilityEndpointsDescription
CRUDPOST/GET/PUT/PATCH/DELETE /budget/{id}Create, read, update, and delete budgets
ListPOST /budget/listList budgets with optional filtering
Period typesPOST /budget-period-typesRetrieve available budget period types (monthly, quarterly, etc.)
Approval employeesGET /budget-approval-employeesList employees eligible for budget approval
Employee budgetsGET /b2b/employee-budgetRetrieve all budgets for the current employee
Budget ordersGET/POST /budget/{budgetId}/ordersList orders charged against a specific budget

Cost Centers (Addon)

Assign cost centers to employees and track spending by organizational unit.

CapabilityEndpointsDescription
CRUDPOST/GET/PUT/PATCH/DELETE /b2b/cost-center/{id}Create, read, update, and delete cost centers
ListPOST /b2b/cost-center/listList cost centers with optional filtering

Product Lists (Addon)

Manage reusable product lists (shopping lists, wishlists, reorder lists) that employees can share within the organization.

CapabilityEndpointsDescription
CreateGET/POST /product-lists/createCreate a new product list
View/Update/DeleteGET/PATCH/DELETE /product-lists/{id}Manage a specific product list
List allPOST /product-lists, POST /product-list/listRetrieve all product lists
Manage itemsPOST/PUT/PATCH/DELETE /product-lists/{id}/itemsAdd, update, or remove products from a list
Remove single productDELETE /product-lists/{id}/product/{productId}Remove a specific product from a list
View itemsPOST /product-list/{id}/items, GET /product-list-item/{id}List items or get a specific item

Customer Product Numbers (Addon)

Let customers define their own product numbers (custom SKUs) for easier ordering and ERP integration.

CapabilityEndpointsDescription
CreatePOST /b2b/customer-product-numberCreate a new custom product number
DeleteDELETE /b2b/customer-product-number/{id}Delete a custom product number
ListPOST /b2b/customer-product-numbersList all custom product numbers with filtering
ImportPOST /b2b/customer-product-number-importBulk import custom product numbers via CSV

Sales Representative Fast Order (Addon)

Allows sales reps to place orders on behalf of customers in a single API call.

CapabilityEndpointsDescription
Create fast orderPOST /sales-representative/fast-orderPlace a complete order with billing/shipping addresses, payment/shipping methods, and line items in one request

PDP Variant List (Addon)

Retrieve a tabular list of product variants for use on product detail pages.

CapabilityEndpointsDescription
List variantsPOST /store-api/variant-list/{productId}Get all variants for a product with optional filtering

Spare Parts (Addon)

Find similar or related products based on shared properties.

CapabilityEndpointsDescription
Similar productsPOST /b2b/property-similar-products/{productId}Get products with similar properties

Product Request (Addon)

Allow visitors or customers to request information about products that may not be directly purchasable.

CapabilityEndpointsDescription
Request productPOST /product-request/{productId}/sendSubmit a product inquiry with contact details

Integration with Laioutr

Prerequisites

The B2Bsellers app requires the @laioutr-app/shopware package to be installed and configured, as it relies on the Shopware Store API connection and session management (sw-context-token).

Extending B2Bsellers features

Developers can interact with B2Bsellers endpoints through the Laioutr orchestr by registering custom queries and actions. Since B2Bsellers endpoints follow the same Shopware Store API conventions (authentication, criteria filtering, entity responses), you can use the existing Shopware API client infrastructure to call them.

Typical extension points:

  • Custom queries — Wrap B2Bsellers endpoints as orchestr queries to make B2B data available to your sections and blocks.
  • Custom actions — Register orchestr actions for B2B operations (e.g. creating an offer, approving an order) so they can be triggered from your UI components.
  • Section/Block definitions — Build custom sections that display B2B-specific data (employee dashboards, approval lists, budget overviews, offer management).

Filtering and pagination

Most list endpoints accept a Criteria object in the request body for filtering, sorting, and pagination — the same format used by the standard Shopware Store API. Refer to the Shopware Criteria documentation for the full filter syntax.

Reference

Changelog

All changelogs are managed in CHANGELOG.md in the package’s GitHub repository. This app does not currently have a public repository under the Laioutr organization; when it is published there, use that repo’s CHANGELOG.md for release notes.