Over 60 modules. One admin panel.
Endora Commerce is not a single tool but a complete B2B ecosystem: catalog, pricing, warehouses, orders, quotes, payments, invoices, content, search, marketing and AI. Every area is its own module you switch on, configure and extend without rewriting the rest of the platform.
- 60+
- modules out of the box
- 1
- admin panel for every sales channel
- i18n
- multi-language storefront and admin
- API
- OpenAPI, webhooks, custom fields
What you get as standard
Every module owns its data, its permissions, its settings and its translations. Each one can be switched on, switched off or extended without touching the others.
Selling and orders
The whole path from cart to order to return — in the “buy now” flow and in the negotiated one.
-
Orders
Order placement from the cart and on the customer’s behalf, your own statuses and transitions between them, business events on every transition, and a full change history.
-
Carts
Anonymous and signed-in carts that merge on login, a lifecycle (active, abandoned, completed), coupons, up-sell suggestions and an approval gate for the organization administrator.
-
Checkout
Address, delivery and payment choices narrowed to what the organization is actually allowed to use, plus coupons, an order comment and your own order-number format.
-
Quote requests (RFQ)
The full negotiation loop: the customer submits a request, the sales rep prices it, either side can change the terms, and an accepted quote becomes an order without re-typing line items.
-
Quick order
Cart import from a CSV or Excel file or a pasted list, search by SKU, name and selected attributes, default ordering preferences (payment, delivery, addresses), and one-click reordering of a previous order.
-
One-click buy
For customers with a complete set of default preferences, the order is placed without going through the cart or checkout. Switched on globally or per sales channel.
-
Shopping lists
Named product bundles saved on the customer’s side, converted whole or in part into a cart or a quote request.
-
Product comparison
Buyers line products up parameter by parameter, pick a display mode, share the comparison by link and export it to PDF.
-
Returns and complaints
Submission, verification, RMA number assignment, reverse logistics and settlement: refund, replacement, repair or a corrective invoice.
Catalog and content
A deep technical catalog and editorial content in the same admin panel, with separate versions per channel and language.
-
Product catalog
Products, variants, categories and attributes, separate visibility and pricing per sales channel, and search and filtering by technical parameters.
-
Attributes and attribute sets
Your own product fields with types and option lists, grouped into reusable sets assigned to products.
-
Per-channel and per-language overrides
The same product attribute can hold a different value globally, in one language, in one channel, and in a channel and language at once.
-
Composite products
Grouped, bundle and virtual types alongside simple and configurable — kits, sets and non-physical items handled natively on the product page.
-
Packaging units
Selling by pallet, carton or pack: the buyer orders a unit, the platform converts it into pieces and carries that context into the order and the quote.
-
Product links
Related, up-sell and cross-sell links driving the suggestions shown on the product page and in the cart.
-
Product attachments
Certificates, datasheets and technical documentation attached to a product and shared across products without duplicating files.
-
Assets library
A central file store with a folder tree, public or private visibility, and protection against deleting an asset that is still in use.
-
Search
An index built separately for each sales channel and kept current by catalog events, with type-ahead suggestions, search-phrase analytics and optional semantic search.
-
CMS and Page Builder
Pages, blocks, templates and hooks composed by drag and drop, with a separate version for each channel and language.
-
Blog
Posts edited in the same Page Builder, with a category tree, tags, related posts and related products.
-
Megamenu
A configurable storefront navigation tree, bound separately for every channel and language pair.
-
SEO
Meta data per entity and per language, overrides from the admin panel, and a cached XML sitemap.
Pricing and billing
Everything money touches: from a pricing rule, through tax and credit limits, to an invoice filed with the tax authority.
-
Pricelists and pricing engine
Pricelists per customer group and individual contracts, quantity brackets, base and sale pricelists, time windows, and deterministic resolution of overlapping rules.
-
Promotions
Percentage discounts, amount discounts and free delivery driven by rules: cart value, payment and delivery method, country, postal code, category, customer group, product attribute.
-
Taxes
Rates resolved by country, product type and the buyer’s VAT status, with a preview of the effective rate before you save the rule.
-
Credit limits
A credit limit granted to an organization, reserved atomically at order placement and released once the invoice is paid or the order is cancelled.
-
Invoices
Proforma and final PDF invoices generated after order confirmation, with your own numbering scheme and customer-side download.
-
Payments
A payment-driver layer: bank transfer, cash on pickup, credit limit and the Stripe, PayU and tpay gateways, with settlement, failure and refund events.
-
KSeF e-invoicing
Automatic submission of invoices and corrections to Poland’s national e-invoicing system in the FA(3) format, the KSeF number on the document, downloadable confirmation and a QR code on the PDF.
-
Currencies
A pool of accepted ISO 4217 currencies with a default, configurable separately for individual sales channels.
Customers and organizations
In B2B the buyer is a company, not a person — the platform models that directly, branch structure included.
-
Organizations
Company registration with email verification, member management, invitations, roles inside the organization, and a suspension state.
-
Organization hierarchy
Head office and branches as a tree: order visibility flows down, and commercial terms (pricelist, credit limit) are inherited from the nearest ancestor.
-
Customer accounts
Login, password change and reset, TOTP two-factor authentication with backup codes, and the user’s role inside the organization.
-
Individual customers
Support for buyers operating without an organization, with their own address book and features matched to that context.
-
Addresses
Shipping and billing addresses within the organization, one default per kind, with an address snapshot stored on the order.
-
Custom fields
Extra fields on orders, organizations, customer accounts, categories, products and quote requests — added as data, with no database migration and no code deployment.
Warehousing and delivery
Real logistics: many warehouses, reservations, carriers and retryable shipments.
-
Warehouses and stock
Many warehouses, stock and reservations tracked per product and warehouse, warehouse-to-channel assignment, low-stock thresholds and availability bands.
-
Backorder and notifications
Selling beyond stock, products excluded from stock management, and letting customers subscribe to a back-in-stock notification.
-
Delivery methods
A delivery-method registry fed by carrier adapters — enabling an adapter module creates a configurable method visible at checkout on its own.
-
Shipments
A shipment as a separate, retryable record linked to the order, with the carrier reference, status, failure reason and the history of dispatch attempts.
-
CSV import and export
Bulk data editing through CSV files: streaming export and an import applied in a single transaction, so a half-broken file breaks nothing.
Sales channels and languages
One installation serves several places of sale, currencies and languages at the same time.
-
Sales channels
Storefront, marketplace, distributor portal, POS or a mobile app as separate channels. Products, prices, promotions, content and customers are assigned to them, and every request resolves to exactly one channel.
-
Languages
Any number of BCP-47 languages: the pool this installation supports, a default language, and a fallback rule for values nobody has translated yet. Another market is a new entry on the list, not another rollout.
-
Dictionaries
A shared registry of countries, currencies and languages used by addresses, taxes, warehouses, promotions, navigation and content.
-
Multi-language admin
Every admin user picks their own language, and the choice follows them across devices. Polish and English are ready out of the box; further languages are added as translation bundles shipped by the modules. The change applies immediately, with no sign-out.
-
PWA
Storefront and admin installable on the home screen, with a configurable name and icon per channel, asset caching and optional push notifications.
Administration and security
Who can do what, who changed what, and how to configure it — without reaching into the database.
-
Admin users
Administrator accounts kept separate from customer accounts, with login, enforced 2FA on selected roles, and soft delete.
-
Roles and permissions
A module-and-action permission matrix assigned to roles. Every protected operation checks the permission server-side, not just in the interface.
-
Audit log
An append-only record of sensitive operations: who, what, when and on whose behalf, with the state before and after the change.
-
Impersonation
Step into a customer’s context to see their prices and orders through their eyes — with a visible banner and an entry in the audit log.
-
Settings
Platform configuration declared by modules in their manifests, set globally or separately per channel, and read through one API.
-
Credentials
One credential configuration reused in many places: encrypted at rest, masked on read, and redacted in the audit log.
-
Module lifecycle
Install, upgrade, enable and disable modules with dependency validation — without restarting the process and without hand-editing configuration.
-
Monitoring
A readiness probe covering the database, cache and search engine, ready for a container orchestrator and a load balancer.
Customer communication
Messages leaving the platform and notifications for your team, on the providers you choose.
-
Transactional emails
The content, subject and look of every message edited in the admin panel, globally and per channel, in an editor safe for email clients.
-
Newsletter
Your own subscriber list with tags and custom fields, campaigns and multi-step automations, per-channel consent and a working unsubscribe link.
-
In-app notifications
A shared notification feed under the bell in the admin panel: a new organization signing up, a failed feed run, and whatever else modules write into it.
Marketing and analytics
Measurement, ad tags and product feeds — all configured per sales channel and all gated on the buyer’s consent.
-
Analytics
An event log from the storefront and admin, with summaries available inside the admin panel, independent of whether any external tool is switched on.
-
Google Analytics 4
A per-channel switch and measurement ID, Enhanced Ecommerce, a configurable custom-events builder and optional server-side tagging.
-
Google Tag Manager
A GTM container per sales channel, a documented commerce event vocabulary on the data layer, Consent Mode v2, and optional relaying of those events from the backend to your server container — exactly once per event.
-
Meta Ads
A per-channel Meta Pixel with the standard commerce events (ViewContent, AddToCart, InitiateCheckout, Purchase, Lead) plus your own events fired alongside them, never instead of them.
-
LinkedIn Ads
A per-channel Insight Tag and mapping of storefront actions (product viewed, added to cart, added to a quote request, order placed, contact form submitted) onto conversion IDs from Campaign Manager.
-
Cookie consent
One banner and one stored decision for every marketing tool. Until the visitor accepts, no script, cookie or request goes out, and consent given mid-session takes effect without a page reload.
-
Product feeds
A channel’s catalog published as a file for Google Merchant Center, the Meta catalog or a marketplace, at a stable tokenised URL, regenerated on a schedule and narrowed with the same rule builder as promotions.
AI and automation
Artificial intelligence where it actually saves time: in day-to-day admin work and in search.
-
AI assistant in the admin
Describe in the command palette what should happen — in Polish or English. The assistant shows the exact plan, executes only after you confirm, stays inside your permissions and writes every action to the audit log.
-
Command palette actions
Every module contributes its own actions to the command palette, so the most frequent operations are two keystrokes away instead of a walk through menus.
-
Semantic search
Optional hybrid search: classic phrase matching enriched with an embedding model, switched on separately for each sales channel.
-
Events and webhooks
Modules talk to each other through events, and those same events can be pushed outside as signed webhooks to automate work in other systems.
An ecosystem, not a single tool
The difference is not the length of the feature list but how those features are put together.
A module, not a plugin
Every capability is a separate module with its own data, permissions, settings and translations. You switch on what you use and do not pay in complexity for the rest.
Configuration instead of a release
A new pricelist, order status, delivery method or extra field on an order is a change in the admin panel, not a ticket to your software vendor and a wait for the next release.
Everything scoped per channel
Products, prices, promotions, content, settings and analytics hold separate values per sales channel. One admin panel runs the storefront, the marketplace and the distributor portal at once.
Every change leaves a trace
Sensitive operations land in the audit log with the state before and after. You always know who changed a price, when, and on whose behalf.
Events instead of hard wiring
Modules talk through events rather than reaching into each other. The same event that updates stock levels can go out as a webhook to your ERP.
The code is yours
The platform lives in your repository. A new payment, carrier or integration adapter is added as another module, with no core fork and no waiting on a vendor.
See these modules in action
The admin panel and the storefront are live. Sign in with a demo account and click through the features you have just read about — or book a workshop and see them on your own data.