The product
The order flows through the system the way it flows through your shop
A practitioner composes and orders. The shop floor weighs, mixes and ships. The owner settles and steers. Each section below is one hand-off along that path.
For practitioners
Compose, price, order — without the email back-and-forth
A herb browser that speaks the medicine
Filter by taste, meridian tropism and actions — 52 codified therapeutic actions — with search that forgives diacritics. Product cards carry the TCM properties, not just a price. This is not a supplement store: the system knows this medicine.
The formula builder with live pricing
Raw herbs, decoction or extract — switch the form and doses convert. The practitioner sees the price as the formula grows, before ordering. No more quoting by reply email.
Private formulas and shop templates
Practitioners keep their own formulary; the shop curates templates anyone can clone and adapt.
Patients and visits
Interview notes, pulse and tongue records, up to eight tongue photos per visit — and prescription and dosage PDFs the patient takes home.
The order wizard
Cart, recipient, shipping, payment. An order, once placed, is a snapshot — whatever changes in the catalog later, that order stands.
For the shop floor
Weigh, mix, ship — with nothing to guess
A catalog with three kinds of product
Raw herbs, extracts and finished products, each with TCM attributes and multilingual content. CSV import and export mean you can start with no integration at all — your current spreadsheet is the on-ramp.
Stock with a full audit trail
Inventory changes happen only through a recorded adjustment. Who changed what, when and why is answerable by construction, not by asking around.
Orders with an explicit state machine
Draft → new → paid → in progress → completed or canceled. Every transition is deliberate, filterable and visible.
A packing slip without prices
It's a preparation card for the person at the scale, not an invoice. Deliberately.
Transactional email that retries
Order confirmations and status mail are queued and retried, sent through your own SMTP, in the order's language.
For the owner
Settle, steer, configure — without writing code
A dashboard that says something
Orders and revenue, gross and net, month over month, with a 12-month trend and lifetime totals.
Monthly settlements that stay settled
Practitioner settlements freeze an immutable snapshot with a statement PDF. A late order cannot quietly change a settled month.
Optional modules, off by default
Loyalty rebates for practitioners, practitioner surcharge, monthly settlements, consultations, cash on delivery, manual discounts, family orders. A disabled module disappears from the menu entirely.
Everything shop-specific is a setting
Currency, named VAT rates, languages, branding, shipping methods, module switches — configured for your shop, not coded into it. That's why a deployment takes weeks, not quarters.
Payments and integrations
Payments your practitioners already use
Stripe Checkout brings a wide set of local payment methods with it. Offline methods — bank transfer, cash on delivery, pay at pickup — come with a manual “mark as paid”. For EUR with an IBAN, the order PDF carries a scannable SEPA transfer QR code.
Integrations as plug-ins, never as surgery
The core is fully functional with no integration at all. Baselinker is ready today; CSV is the zero-integration adapter; a new ERP or payment provider is a plug-in that registers itself without touching the core. “But we already use system X” is a line item in the offer, not a wall.
GDPR, built in rather than bolted on
- Patient data export in one request, and hard cascade deletion — prescriptions and files included, while placed orders survive with the patient detached.
- Payment-attempt logs carry no personal data.
- Files and photos are never served without authentication.
- Each client is a physically separate database with a user that has rights to nothing else.
What we can deliver when you need it
None of this ships in the base product — each is a named piece of work we will gladly implement for you, with a known structure and a clear offer.
Multiple currencies
Multi-currency inside one instance is deliberately not a feature — exchange rates have no business in a shop system. Selling in two currencies means two instances, and we will stand up the second one for you.
Your language
English, German, French, Spanish, Italian and Polish ship with the product. Any other language is a translation project with a known structure — we scope it, price it and deliver it as part of the contract.
Invoicing and accounting
That is your ERP's and accountant's job — and we will connect HerbaPortal to them. The system hands over clean data: integer cents, VAT in named rates, orders as immutable snapshots.
A native mobile app
The groundwork exists in the product. When you need an app, we will build it — with a timeline in the offer, not a vague promise.
Retail to patients
Your customer today is the practitioner. Selling directly to patients is a different product — and we can deliver it as an extension of your instance.
Multiple warehouses
One warehouse per instance, by design. When you grow to a second location, we will extend your setup to match.
See your own shop in it, not a demo
Send us a CSV export of your catalog and we'll set up a trial instance with your actual products — your currency, your VAT rates. Or ask for access to the live demo and start a conversation.









