Keep PrestaShop. Add WeRefund.
WeRefund reads your PrestaShop orders, credit slips and return policy page, read‑only, and shows WeRefund Verified ✓ on the product page and in the cart, in themes that call its two display hooks, as Classic and Hummingbird do.
$0 for the merchant; the read-only key is created in your own PrestaShop back office.
- Access
- Read-onlyA webservice key with View (GET) only, on five resources
- Orders & credit slips
- Scheduled reads
ordersorder_historiesorder_slipthrough the webservice - Policy changes
- Scheduled readsYour return policy page, captured for each order and compared language by language on each read
- Badge
- Product page & cartA module on two display hooks, no template edits; in themes that call them, as Classic and Hummingbird do
How the connection works
PrestaShop's own webservice: you create the key in your back office, you choose what it can do, and with only View (GET) ticked it is read-only.
ordersYour orders: products ordered, order and delivery dates, current status.order_historiesEach change of status on an order, with its date.order_statesThe names of your order statuses, and whether each counts as paid, shipped or delivered.order_slipYour credit slips: the order, the amounts, partial or not, and the date created.content_management_systemYour pages, including the page that holds your return policy.Tick only View (GET). Leave every other permission — Modify (PUT), Add (POST), Delete (DELETE), Fast view (HEAD) and PATCH — unticked on every resource. In multistore mode, associate the key only with the store you connect.
-
01
Enable the webservice
In your back office, go to Advanced Parameters › Webservice, set Enable PrestaShop Webservice to Yes and save. The webservice needs URL rewriting to be on.
-
02
Create a read-only key
On the same page, click Add new webservice key, then Generate for a 32-character key. Describe it, keep its status enabled, and tick View (GET) on the five resources, nothing else.
-
03
Paste it into WeRefund
When you connect your store, you enter your store address and the key, and tell WeRefund which page holds your return policy. WeRefund sends the key the way the webservice expects it — as the user name of HTTP Basic authentication, with no password — and asks for JSON.
-
04
First read, then stay current
WeRefund reads your return policy page as it stands today, in each of your store's languages and whether it is displayed — the version verification is based on — and your recent orders with their status history and credit slips. From then on, orders, status changes, credit slips and the policy page are read again on a schedule, and your policy page is captured for each order: when the WeRefund module signals that an order was placed, or when a scheduled read records it.
What WeRefund reads, and how it stays current
Four things, read-only. PrestaShop documents no outgoing webhook for store orders or credit slips, so they are read on a schedule; the WeRefund module, once installed, can also signal a new order from inside your store.
| What WeRefund reads | From PrestaShop | How it stays current |
|---|---|---|
| Orders — products, dates, current status | orders · View (GET) | Recently updated orders read again on a schedule |
| Status changes on those orders | order_histories order_states · View (GET) | Status changes read on a schedule, by date; status names read with them |
| Credit slips recorded on those orders | order_slip · View (GET) | New credit slips read on a schedule, by creation date |
| Your return policy page — PrestaShop has no separate return policy type | content_management_system · View (GET) | Captured for each order, and read on a schedule. The webservice documents no update date for a page, so its content is compared language by language, together with whether the page is displayed. A change is recorded as a new version and verified again, and a page that isn't displayed isn't treated as your published policy |
In PrestaShop, a credit slip is the store's acknowledgment that a refund has been issued, and generating one is optional. If your store takes payments through Stripe, PayPal, Adyen, Checkout.com or Airwallex, WeRefund also reads each order's payment and your refund events from that provider. PrestaShop keeps a return policy as an ordinary page, so you tell WeRefund which page it is when you connect. Each time an order reaches WeRefund — when the WeRefund module signals it through PrestaShop's actionValidateOrder hook, or when a scheduled read records the order — WeRefund captures your published policy page, on top of its regular scheduled check, and that order keeps the version captured for it.
Where the badge appears
The WeRefund Verified ✓ badge comes as a PrestaShop module. You upload it from the Module Manager, and it attaches to two display hooks: one on the product page, one on the cart page. It shows nothing in the quick view or at checkout. No template edits. The same module also uses PrestaShop's actionValidateOrder action hook to signal WeRefund when an order is placed.
It shows no number: the exact terms stay in your policy, and each shopper sees the real deadline after the purchase.
Through displayProductAdditionalInfo in the product's additional information area, in the Classic and Hummingbird themes. The Classic theme's quick view calls the same hook; the module leaves it out, so the badge stays on the product page.
Through displayShoppingCartFooter on the shopping cart page, in the Classic and Hummingbird themes.
The Classic theme's product quick view calls the same hook as the product page; the module shows nothing there.
The badge needs the theme to call these two hooks. Design › Positions shows the modules attached to each hook.
The module attaches to no checkout hook.
What WeRefund never does
Hold your customers' payments
Shoppers pay through your checkout and your payment provider. WeRefund never holds your customers' payment funds.
Refund in your place
You refund as you do today, from the order page in your PrestaShop back office or with your payment provider. WeRefund reads any credit slip and, if your store takes payments through Stripe, PayPal, Adyen, Checkout.com or Airwallex, your refund events from that provider; it never creates either.
Change your checkout
The badge lives on the product page and in the cart, in themes that call its two hooks; nothing is added to the checkout steps.
Write to your orders, pages or credit slips
WeRefund asks you to tick View (GET) and nothing else, and you can switch the key's status off at any time. The module adds the badge to its two display hooks and signals WeRefund when an order is placed; uninstalling it removes both.
Three steps on PrestaShop
-
01
Create your WeRefund account
$0 setup, $0 monthly fee, $0 processing surcharge.
-
02
Connect your store & payment provider
Choose PrestaShop, enable the webservice and create a key with View (GET) only, then paste it with your store address and tell WeRefund which page holds your return policy. If your store takes payments through Stripe, PayPal, Adyen, Checkout.com or Airwallex, connect that provider too.
-
03
Get Verified
WeRefund reads your return policy page and verifies it. Once it passes, upload the WeRefund module from the Module Manager; the badge appears on the product page and in the cart in themes that call its two hooks, as Classic and Hummingbird do, and the module signals WeRefund when an order is placed. Nothing shows in the quick view or at checkout.
Add the banner to your theme
Paste it once before the closing body tag: it reads your after-sales score from your WeRefund profile and turns itself off the day verification stops.
<script src="https://js.werefund.com/badge.js" data-store="your-store" data-format="strip" async></script>
PrestaShop questions
Five payment providers and seven store platforms.
IntegrationsEndpoints, fields and examples, in preview.
API referenceNo template edits. The badge is a module attached to two display hooks: displayProductAdditionalInfo on the product page and displayShoppingCartFooter on the cart page. The Classic theme's quick view calls the product page hook too, and the module shows nothing there; it attaches to no checkout hook. The same module also uses the actionValidateOrder action hook to signal WeRefund when an order is placed. From Design › Positions you can move it within a hook or list pages where it should not appear.
More store platforms
Shopify
shopify.comReads your orders, the refunds recorded on them and your Refund policy from your Shopify store. The badge renders on the product page and in the cart, as a theme app block or app embed.
Store platforms
WooCommerce
woocommerce.comReads your orders through the WooCommerce REST API and webhooks, and your return policy page through the WordPress REST API. The badge renders on the product page and in the cart, where your theme's templates allow it.
Store platforms
Magento
magento.comReads your orders, their refunded totals and your return policy page from your Magento store. In Luma and themes that keep its layout containers, the badge renders on the product page and in the cart.
Store platforms
BigCommerce
bigcommerce.comReads your orders, their refunds and your returns policy page from your BigCommerce store. On Stencil themes, the badge renders on the product page and in the cart.
Store platforms
Wix
wix.comReads your orders, their refunds and the Return policy in your Wix checkout settings. The badge renders on the product page and, where your store uses it, in the side cart.
Store platforms
Custom / Headless
WeRefund APIFor a custom or headless store, your orders reach WeRefund through the API, in preview.
Store platforms
Verification, not a migration
Keep your PSP. Add trust.
$0 setup. $0 monthly fee. $0 processing surcharge. Your store, your provider and your merchant account stay as they are.