Privacy Policy: Shopatch Specfinder
Last updated: 24 August 2026
This policy covers the Shopify app Shopatch Specfinder, running at finder.shopatch.com. The website shopatch.com is covered by a separate policy, because a different relationship applies there: towards site visitors Shopatch is the controller, while inside the app Shopatch processes shop data on behalf of the merchant.
Who is responsible
Shopatch, Werner Mathias Bundschuh, an Individual Entrepreneur registered in Georgia (IE Reg. No. B25175473, see Legal Notice). Contact: [email protected].
The place of business is outside the EU, so a representative under Art. 27 GDPR has been appointed. For data subjects in the EU, that representative is the direct route.
Representative in the EU
We value your privacy and your rights as a data subject and have therefore appointed Prighter Group with its local partners as our privacy representative and your point of contact for the following regions:
- European Union (EU)
Prighter gives you an easy way to exercise your privacy-related rights (e.g. requests to access or erase personal data). If you want to contact us via our representative, Prighter or make use of your data subject rights, please visit the following website: https://app.prighter.com/portal/shopatch
The short version
The app processes no personal data of your customers. That is not a promise, it is a design decision you can read off the permissions it asks for:
read_products · write_products · read_metaobjects · write_metaobjects · write_metaobject_definitions · read_themes · read_locales · read_translations · write_translations · unauthenticated_read_product_listings
Deliberately not requested: read_customers, read_orders, read_all_orders, read_customer_events. The app cannot retrieve customer data at all. What we do not hold, we cannot mishandle.
This app writes, and it says so plainly
Unlike a pure checker, Specfinder changes things in your shop, because that is what it is for. Filters cannot exist unless fields exist. Specifically, it creates and updates:
- Metafield definitions on products, in its own
specsnamespace, for specifications, exclusions, part numbers and documents. - Metafield values on your products, from what you entered or imported.
- Metaobjects for compatibility data, such as the vehicle tree the picker reads.
- Translations of the labels it created itself, when you ask it to.
It never writes to your theme. The storefront blocks are app blocks placed by you in the theme editor, so no code of ours ends up in your theme files, and removing the app removes the blocks cleanly.
Every bulk import shows you what it would do before it does anything, and the result of a run is recorded so you can see afterwards what happened.
Two roles, and they are not the same
For your shop data (products, metafields, metaobjects, translations, theme information) Shopatch acts as your processor. The data is yours; it is processed only to build the fields and filters you asked for, and only on your instruction, which you give by installing the app and starting a run.
For your own contact details (the shop domain, and the address a notification goes to) Shopatch is the controller, because that data serves our relationship with you as a customer, not the running of your shop.
What the app reads
| What | Why | Stored |
|---|---|---|
| Product fields, metafields, handles | to derive filters from your values | no, counts and timestamps only |
| Metaobjects and their definitions | compatibility data for the picker | no, entry count only |
| Theme name and generation | so the guide can name the right editor path | yes, name and id |
| Shop languages and translations | so labels are created in your storefront language | no |
| Your shop contact address | so a notification can be sent to it | no, fetched, used, dropped |
Product data is fetched, used and dropped. It is not written to disk and not sent anywhere else.
What the app stores
- Your setup: which trade packs you installed, which theme is active (name and id), how many compatibility entries were precomputed and when.
- Import runs: the file name you uploaded, how many rows there were, how many were taken, how many failed, and the error messages. An error message names the row it failed on, so it can quote a small fragment of your file, such as a product handle. It never contains the file.
- Derivations: which field was derived, how many filters and values resulted, when it ran, and how many product changes have happened since.
- The session: your shop domain and an access token, so the app can work at all.
There is no copy of your catalogue in our database. The fields and values live in your shop as metafields, which is also why they stay yours when you uninstall.
Notification emails
When products change after filters were derived, the derived filters go stale, and a stale exclusion filter can leave a wrong claim standing on your storefront. The app writes to you about that, at most once per property per day.
The message contains the name of the property and a number, nothing else. No product names, no values, no customer data. The address it goes to is your shop contact address; it is fetched at the moment of sending and not stored, so our records hold no email address of yours.
Delivery runs through Scaleway Transactional Email from [email protected]. The sending domain accepts no replies at MX level, so every message carries a Reply-To that reaches a real mailbox.
Legal basis
- Building fields, deriving filters, keeping the run history: performance of a contract, Art. 6(1)(b) GDPR. This is the service you install the app for.
- The notification email: performance of a contract, Art. 6(1)(b) GDPR. It reports a defect in the service you are using.
- Shop data: processed on your behalf under Art. 28 GDPR. Towards your own customers you remain the controller.
Who else processes the data
The app runs entirely on infrastructure we operate ourselves. One processor is involved in operating it:
| Processor | What for | Where |
|---|---|---|
| Scaleway SAS | application hosting (Serverless Containers) | Paris, France (fr-par) |
| Scaleway SAS | database (PostgreSQL) | Paris, France (fr-par) |
| Scaleway SAS | delivery of notification emails (Transactional Email) | Paris, France (fr-par) |
Scaleway SAS is a French company; the data stays inside the EU and no transfer to a third country takes place. Shopify itself is not our processor: it is the source of the data, and you already have your own agreement with it.
There is no transfer to advertising networks, analytics services or AI providers. No part of your shop data is used to train a model.
How long it is kept
- While the app is installed, your setup, import runs and derivations stay, so the app can tell you what is already done and what is stale.
- When you uninstall the app, the session is deleted immediately (
app/uninstalled). - On erasure (
shop/redact, which Shopify sends 48 hours after uninstallation) everything belonging to your shop is deleted: setup, import runs, derivations and the session. - Your fields and values are not deleted, because they are not ours to delete. They are metafields in your shop, and they remain there for you to keep or remove yourself.
The webhooks the app listens to
| Webhook | What happens |
|---|---|
customers/data_request | we confirm that no customer data is held |
customers/redact | there is nothing to delete, see above |
shop/redact | setup, import runs, derivations and the session of that shop are deleted |
app/uninstalled | the session is deleted |
app/scopes_update | the stored permissions are brought in line |
products/update | derived filters are marked as stale, so you can be told about it |
themes/publish | the noted theme is updated, so the guide names the right one |
bulk_operations/finish | a long-running import is recorded as completed |
Every one of them verifies Shopify's signature before doing anything. A request without a valid signature is rejected.
Your rights
You have the right of access, rectification, erasure, restriction, data portability and objection, and the right to lodge a complaint with a supervisory authority. The quickest route is the Prighter portal linked above, or [email protected].
What the app deliberately does not do
- It writes nothing into your theme. Theme files are read to recognise which theme is active, never written.
- It injects no script into your storefront. The blocks are app blocks you place yourself, and nothing runs outside them.
- It stores no email address of yours. The contact address is fetched when a notification is sent and dropped again.
- It keeps no copy of your catalogue. What it keeps are counts, timestamps and your setup.
- It sends nothing to an AI provider.
Changes to this policy
If what the app does with data changes, this page changes with it, and the date at the top moves. This is the first version, written when the app went into production hosting at Scaleway on 23 August 2026.