1. How to read this page
Every answer on this page is drawn from what this installation is actually running, or names the command in the source code that produces it. Nothing on it is a summary somebody typed once and stopped maintaining: the subprocessor list, the hosting row and the service level figures are read again each time you open the page.
Where something has not been measured, the page says that in those words. It does not soften the gap with a hedging adjective, because a hedged gap is how an unmeasured thing comes to be read as a measured one.
This page is not a contract. The contracts are the Terms of Service, the Data Processing Agreement and the Service Level Terms, each of which has its own version number and effective date. Where this page and one of those differ, the contract is what applies.
2. Certificates, audit reports and badges
A third-party security certificate or audit report We do not have this
This service holds none. There is no ISO 27001 certificate, no SOC 2 report, no PCI DSS attestation and no equivalent third-party audit, and no badge for one is shown anywhere on this site. If your procurement process requires one, that is a question to settle before you subscribe rather than after.
Public endpoint monitoring Measured
Public endpoint checks are published at https://zabuno.github.io/status/. Five endpoints have been monitored since 2026-09-08; the figures describe only the recorded period and those endpoint checks. They do not measure complete user journeys or create a contractual availability guarantee. The service level section below identifies the commercial values still missing.
Measured by
docs/123-DEVIR-TESLIM-ENVANTERI.md
3. Where your data is kept
This is the one processing location this service can measure: the server the application, the database and the uploaded files actually live on. Where a third party keeps the data it receives is set out in that party's own terms and is not measured here — the subprocessor list below says so on every row rather than guessing.
Hosting Measured
netcup GmbH — Hosting: runs the virtual server on which the application, the database and the uploaded files live. Data seen: Everything the service stores — account data, workspace and menu content, uploaded images, logs and database backups. Processing location: Karlsruhe, Germany — outside Turkey.
Measured by
config/legal.php
4. Who else touches your data
The list below is not typed by hand. It is generated from the credentials and the measurement settings this installation is running when you open the page, so a provider with no active credential is not listed — because it is not processing anything today. Adding a provider to the software without describing it here breaks the build.
netcup GmbH — Hosting: runs the virtual server on which the application, the database and the uploaded files live. Data seen: Everything the service stores — account data, workspace and menu content, uploaded images, logs and database backups. Processing location: Karlsruhe, Germany — outside Turkey.
Mailgun — E-mail delivery: sends address-verification, team-invitation, notification and contact-form receipt messages. Data seen: The recipient e-mail address, the sender address and the content of the message that is sent. Processing location: Determined by that provider under its own terms; this service does not measure where the provider stores data.
Google (Gemini API) — AI-assisted menu import: reads the menu text or photograph you submit to that feature and returns a draft menu. Data seen: Only what is submitted to that feature — the menu text or the photograph. Account data, guest data and payment data are not sent. Processing location: Determined by that provider under its own terms; this service does not measure where the provider stores data.
Google Tag Manager — Loads the measurement tools listed below, and only after a visitor accepts measurement cookies. Data seen: Which page was opened and whether a conversion happened. Form contents, e-mail addresses and names are not sent. Processing location: Determined by that provider under its own terms; this service does not measure where the provider stores data.
Google Analytics 4 — Measurement, loaded through Google Tag Manager only after a visitor accepts measurement cookies. Data seen: Page views and events on the public site and on published menus, under that tool's own cookies. Processing location: Determined by that provider under its own terms; this service does not measure where the provider stores data.
Yandex Metrica — Measurement, loaded through Google Tag Manager only after a visitor accepts measurement cookies. Data seen: Page views and events on the public site and on published menus, under that tool's own cookies. Processing location: Determined by that provider under its own terms; this service does not measure where the provider stores data.
The measurement container in that list runs in the visitor's browser and only after the visitor allows measurement in the cookie choice. This service's own servers do not send visitor data to it.
The same list, with the contractual wording around it, is in the Data Processing Agreement at /data-processing.
5. Service level
The full text, including what is excluded and how availability would be measured, is in the Service Level Terms at /sla. What follows is the same set of facts, in short.
Availability target Not measured
No availability percentage is committed today. Public endpoint monitoring is available at https://zabuno.github.io/status/, but its recorded observations are not a contractual SLA or a measurement of complete user journeys. Four commercial values must be decided by the operator with legal advice before an availability commitment is stated. Still to be decided: the availability percentage to be committed for a calendar month (availability_target_percent); the public address at which that percentage can be read and checked (measurement_source); how quickly affected customers are told about an outage (incident_notification_minutes); the share of the month's fee credited when the target is missed (service_credit_percent).
Incident notification Not measured
No notification time has been entered for this installation (incident_notification_minutes), so this page states none. Public endpoint observations can be checked at https://zabuno.github.io/status/; they do not establish a customer notification deadline.
Service credit when the target is missed Not measured
No service credit rate has been entered for this deployment (service_credit_percent), so these terms commit to none. Until it is entered, treat the remedy for a missed month as cancellation under the cancellation terms.
6. Backups: how the drill is measured
The operator's own rule is that an untested backup is not a backup, so what this service has is not a backup setting but a drill: a command that takes a backup, restores it somewhere isolated, compares what came back with what went in, and records the result.
For the database, the drill opens a repeatable-read transaction, exports a snapshot, counts the rows and digests their content from that snapshot, then archives the same snapshot. It restores the archive into a throwaway database created for the run, compares table list, row counts and content digest against the source, then drops the copy and deletes the archive. Nothing is ever written to the source database.
For uploaded files, the drill archives the media root, unpacks it somewhere isolated and compares the files that came back with the files that went in. A corrupted archive fails the drill rather than passing it quietly.
A drill has three outcomes and all three are recorded. "Passed" means the comparison held. "Failed" means a step broke or the comparison did not hold. "Unknown" means the drill could not be attempted at all — the tool was missing, the client was older than the server, the source could not be read. "Unknown" is never reported as a pass, and the command does not exit successfully while claiming it.
The backup and restore drill Measured
One command runs both drills and appends one evidence record each, recording the driver, the row counts, the digest of what was backed up, the digest of what was restored, the archive size and the timings. It exits successfully only when every selected drill passed.
Measured by
artisan security:evidence:backup-restore
A drill result for the installation you would be buying Not measured
This page publishes no drill result. A drill writes its record into the installation it runs in, and this page does not read that record — a result printed here would be a snapshot of one moment, with no way for you to tell when it was taken. Ask for the latest record in writing and you will be told what it says, including if it says "unknown".
7. Security evidence you can run yourself
This software is open source, so the checks below are not claims you have to take on trust: they are commands in the repository, and you can read what they do and run them against an installation of your own.
Tenant isolation Measured
Runs the frozen tenant-isolation suite — the tests that check one workspace cannot read, list or act on another workspace's data — and appends one evidence record with the outcome. It exits unsuccessfully when the suite fails, so it cannot record a pass it did not get.
Measured by
artisan security:evidence:tenant-isolation
Host capability Measured
Probes the server the software is installed on for the capabilities the product depends on, records one evidence row and prints the degradation plan — which features run in reduced form on that host and which do not run at all. A missing capability is reported as a planned degradation rather than as a failure, because a host that lacks one is a fact to state, not a fault to hide.
Measured by
artisan platform:evidence:host-capability
The results of those commands, published here Not measured
This page names what each command measures. It does not print what they returned on any particular installation, for the same reason the backup section does not: a result with no date on it is read as a permanent property, and it is not one.
8. Questions this page cannot answer
Three things are decided by a person, not by this page, and each of them is worth settling before you subscribe rather than after: an availability commitment with a figure in it, a data processing agreement signed with your own organisation named in it, and any certificate or audit report your procurement process requires.
The identity of the seller — the legal entity, the registered address and the tax details — is on the About page at /about, drawn from the same configuration as the contracts. The way to ask any of the above is the contact form at /contact, which stores your message and gives you a reference to quote.