Real profit for PrestaShop 8.2 and 9.x: cost prices, shipping cost, payment fees and expenses frozen on each order, an overview with comparison, and nine reports by order, product, category, brand, customer, payment, carrier, voucher and tax, with CSV export. No overrides.
Tested on 9.2.0 & 8.2.8Updated Nov 2, 2026Version 1.0.0Compatible with PrestaShop 8.2 – 9.x No core file edits
Built forPrestaShop
See what you really earned (sample data)1 of 7
What it does
Real profit for PrestaShop 8.2 and 9.x: cost prices, shipping cost, payment fees and expenses frozen on each order, an overview with comparison, and nine reports by order, product, category, brand, customer, payment, carrier, voucher and tax, with CSV export. No overrides.
Know what you really earned. PrestaShop tells you what you sold. Profit Reports takes off what it cost you: the cost of goods, shipping, payment fees, packaging and your expenses.
Features
See it at a glance
Sales, gross profit, margin, net profit, orders and average order, compared with the period before
A chart, and every step from sales to net profit
Warnings for lines without a cost, estimated orders and orders that lost money
Nine reports
Orders, products, categories, brands, customers, payment, carriers, vouchers, taxes per country
CSV export of every report
The real costs
Payment fees per module, percent plus fixed
Shipping cost by rule, or the courier's real invoice on the order
A fixed cost per order, and expenses over any period
Frozen on each order: a new rule never rewrites last month
Cost book
Every product in one list, the ones without a cost at a click
CSV import and export
Clean
No storefront output, no overrides, no outside service
A product without a cost shows "no cost", never a flattering 100 %
What you get
Download & installOne module .zip for PrestaShop 8.2 and 9.x, installed in Modules > Module Manager > Upload a module. Download it from My licenses right after payment.
12 months of updates & supportNew versions and help for 12 months (24 or 36 months at checkout). After that the module keeps working; renew anytime at 50%.
License for your storeOne production domain with all its subdomains; staging and local development hosts are free. How licensing works
30-day refundFull refund within 30 days of your first purchase, no reason needed. Refund policy
Tested buildsPrestaShop 8.2 – 9.x. Tested on PrestaShop 9.2.0 and PrestaShop 8.2.8.
Documentation & supportFull guide (Installation, Configuration, Usage, FAQ) on this page. Tickets from your account, first reply within 1 business day.
Compatibility
Profit Reports works with PrestaShop 8.2 – 9.x.
We list the builds we install and test on. “Tested” means the test plan ran on that build; “Supported” means the build is inside the supported range.
Compatibility
Version
Range
Runs on
Status
PrestaShop 9
9.0 – 9.2
PHP 8.1 – 8.4
Tested on 9.2.0
PrestaShop 8.2
8.2.0 – 8.2.x
PHP 7.2.5 – 8.1
Tested on 8.2.8
1.0.0
Nov 2, 2026
Latest
First release for PrestaShop 8.2.x and 9.x, one code base.
Overview with comparison, chart and where the money went.
Shipping cost, payment fees and fixed cost frozen per order; real figures on the order page.
Cost book with CSV import and export; expenses over any period.
Refunds taken back; warnings for missing costs, estimated orders and orders that lost money.
How do I install the module?
Upload. Modules > Module Manager > Upload a module: drop the .zip from My licenses. One package for PrestaShop 8.2 and 9.x.
Configure. Click Configure. Settings follow the shop context, so in a multistore you set them for all shops or per shop.
Enter the license key. Paste the key from My licenses in the License panel and save. You have 14 days to do it; local and staging addresses are included.
PrestaShop 8.2 – 9.x. Tested on PrestaShop 9.2.0 and PrestaShop 8.2.8. The Compatibility tab lists every version range.
Do the modules use overrides?
No. They work through PrestaShop hooks, widgets and the core product customization system. Nothing is written to /override and no core file is changed, so PrestaShop updates and other modules keep working.
Which themes do they work with?
They are tested on Classic and Hummingbird, the two themes PrestaShop ships. Themes based on them work; a theme that removes the standard product page containers may need a small CSS adjustment, and support helps with that.
Do they work with multistore?
Yes. Settings follow the shop context, like PrestaShop's own modules. A license covers one production domain with its subdomains, so shops on other domains need a license each.
What does the license cover?
One production store domain with every subdomain (www, shop., staging.), plus local development hosts such as localhost, *.local and *.test. A store on another domain needs its own license; a second-store license is 40% off. You have 14 days after installing to enter the key. 12 months of updates and support are included; after that the module keeps working and renewals are 50% off. How licensing works
Can I get a refund?
Yes. Ask for a full refund within 30 days of your first purchase, no reason needed: open a ticket or write to [email protected] with your order number. The money goes back to the card or bank account you paid with within 5 business days of approval. Refund policy
How do I get help?
Open a ticket from your account, so your license details are attached. We answer Monday to Friday: bug reports within 1 business day, how-to questions within 2. Support policy. Not a customer yet? Ask a pre-sales question.
PrestaShop knows what you sold, and it copies the cost price to each order line. It does not tell you what you earned: there is no report per order, product or customer, and it knows nothing about your shipping cost, payment fees or rent. Profit Reports turns your orders into profit figures.
Overview: sales, gross profit, margin, net profit, orders and average order, compared with the period before; a chart; and a line-by-line view of where the money went
Nine reports: orders, products, categories, brands, customers, payment, carriers, vouchers and taxes per country. CSV export of each
The real costs of an order: shipping cost by rule, payment fees per module, a fixed cost per order, and fields on the order page for the courier's real invoice
Frozen on the order: a new supplier price or a new fee rule never rewrites last month
Cost book: every product in one list, the ones without a cost at a click, CSV import and export
Expenses: rent, advertising, software. An amount over several days counts per day
Refunds: refunded amounts come off the sales; returned items take their cost back when they go back to stock
Warnings: lines without a cost, estimated orders and orders that lost money. A product without a cost shows "no cost", never a flattering 100 %
Panel on the order page
Customers see nothing: the module adds no storefront output. No outside service, no overrides.
Figures, in one place
Figure
Meaning
Sales
Products without tax, minus vouchers, minus refunded products
Cost of goods
Cost price on the order line times the quantity that stayed sold
Gross profit
Sales minus cost of goods
Gross margin
Gross profit as a share of sales
Net profit
Gross profit, plus shipping charged, minus refunded shipping, shipping cost, payment fees, fixed and other costs, and expenses
All figures are without tax, in your default currency, at the rate of the order.
Tested on
PrestaShop
9.2.0 and 8.2.8
Themes
The module is back office only; Hummingbird and Classic checked for the real test order
Speed
10,000 orders: totals of a year 118 ms, orders report 10 ms, products 227 ms, customers 163 ms, on a development machine
Overview
Installation
Requirements
PrestaShop 8.2.0 to 9.x (tested on 8.2.8 and 9.2.0)
PHP 7.2.5 to 8.5, as your PrestaShop version allows
Install
Go to Modules > Module Manager > Upload a module and choose kvprofitreports-1.0.0.zip.
Open Stats > Profit reports > Settings and enter your license key. The module runs for 14 days without a key.
Set your payment fees and shipping cost in Settings.
Open Cost book and fill the products without a cost.
Older orders get today's fee and shipping rules the first time you open a report. Their cost price comes from the order line. Where that is empty, the current product cost is used and the order is marked as estimated.
Update
Upload the new zip the same way. Costs, expenses and settings stay.
Uninstall
Uninstall deletes the shipping costs, fees and expenses you entered. Cost prices stay on the products and on the orders, because they belong to PrestaShop.
Configuration
Stats > Profit reports > Settings, or Configure in the Module Manager.
What counts
Order statuses: orders in these statuses count. By default the statuses PrestaShop counts as valid (logable).
Returned items go back to stock: on by default, so a refunded item takes its cost back. Switch it off when returned goods are written off.
Costs per order
These are frozen on each order when it is placed. A new rule does not change older orders.
Setting
Example
Effect
Shipping cost, percent of the shipping charged
80
You charge 10, it costs you 8
Shipping cost, fixed per order
2
Added to the percent
Fixed cost per order
1.20
Packaging, handling
Payment fees per module
2.5 % + 0.30
On the order total with tax
The real figures can be typed on the order page, in the Profit panel: shipping cost, payment fee, another cost and a note. They replace the rule for that order.
Permissions
Employees need rights on Profit reports in Advanced Parameters > Team > Permissions. With View only they can read every screen; saving is refused on the server.
Multistore
Reports follow the shop context of the back office. Costs and rules are shared. A real multistore setup is not part of our tests.
License
Enter the key from your Kavio Labs account under Settings. A 14-day start period runs without a key. Without a valid license the reports stop; the cost book, expenses and settings stay available, and costs keep being frozen on new orders, so there is no hole when the license returns.
Usage
Overview
Choose a period. The tiles compare it with the period of the same length before it. Where the money went shows every step from sales to net profit.
Warnings appear above the tiles:
Lines without a cost: their profit is overstated. The link opens the cost book
Estimated orders: the order line had no cost, so the current product cost is used
Orders that lost money: the link opens the orders report, where they are red
Reports
Report
Shows
Orders
Sales, cost, margin, shipping cost, fee and net profit per order
Taxable amount and tax per delivery country and rate
Vouchers are shared over the lines of an order by value. Export CSV gives every row of the report. To print, use the print command of your browser.
Orders report
Cost book
Lists every product with its price and cost. Only without a cost shows what is missing. Type the costs and press Save costs. Combinations with their own cost are set in the product page, or by CSV.
Import CSV takes the columns reference, cost. A reference of a combination sets that combination. Lines that cannot be read are listed with their number. Export CSV gives the list for editing.
A new cost changes future orders only. The order line keeps the cost of the day.
Expenses
Add rent, advertising or software with an amount and dates. An amount over several days counts per day, so a monthly rent falls into each week. Expenses come off the net profit, not the gross profit.
On the order page
The Profit panel shows the figures of the order. Type the courier's real invoice there when you have it.
Refunds
Use the refund buttons of PrestaShop. The report takes the refunded amount off the sales, refunded shipping off the shipping, and the returned quantity off the cost unless you switched that off. Credit slips are not changed.
FAQ
Does it change my orders or products?
Orders, no. The cost book writes the same cost price field as the product page.
Why is a product shown with "no cost"?
Neither the order line nor the product has a cost price. Showing a margin would mean showing 100 %, so the report does not.
Why does the net profit differ from the dashboard of PrestaShop?
The dashboard uses its own rule for margin and knows nothing of your shipping cost, fees and expenses.
Is tax included?
No. Every figure is without tax. The Taxes report lists the tax itself.
Which currency?
Your default currency, at the conversion rate stored on each order.
Can I change a fee rule for past orders?
Rules apply to new orders. For one order, type the real figures on the order page.
Does it work with many orders?
Reports read the core order tables live. Tested with 10,000 orders on a development machine: every report under 400 ms. Stores with hundreds of thousands of orders are not tested.
Does it include Excel export?
CSV, which Excel opens.
Does it send data anywhere?
No, apart from the license check from the back office.
The department store theme for PrestaShop 8.2 and 9.x: colour-coded departments, a department list beside the hero slider with two side promos, a big search with a department picker, tabbed product grids, a 2 + 1 + 2 offer grid, deals of the day with real countdowns, a department showcase, a promotions band and a three-column product page with a sticky buy box. Four styles (Meridian, Harbor, Citrus, Night), every colour editable. A child theme of Classic, no core changes.
Stop AI crawlers, scrapers, vulnerability scanners and unwanted countries before PrestaShop 8.2 or 9.x builds a page. Googlebot and Bingbot are verified by DNS and always allowed; 50+ bots get one switch each; country rules use free GeoIP databases and can close only the checkout; IP and network lists, rate limits for search, filters and forms, honeypots and the add to cart flood fix; a one-second challenge instead of a captcha; learning mode, dashboard, log, IP tester and Cloudflare export. Two hooks, no overrides.
Import and update products from supplier CSV, XML and JSON feeds in PrestaShop 8.2 or 9.x on a schedule: URL, FTP, SFTP or upload; field mapping with real sample values; match by reference, EAN-13, supplier reference or MPN; markup by price band and category with .99 rounding; a price guard that holds back big drops and below-cost prices; combinations from feed rows; stock-only syncs; products missing for N runs set to stock 0 with a safety limit; a dry-run preview with old and new values, run history with a row log and undo. No overrides, no storefront hooks.