One framework, and it is yours
We do not reason in European law. Our filing, notification and retention obligations are the ones set by Senegalese law.
You hand us your books, your customers and your payroll. This page says what we do to protect them — and, at the end, what we do not do yet.
It is our most concrete difference, so we put it first.
Futurize S.A.S is a Senegalese company. The processing of your data falls under the Senegalese Data Protection Act (Law No. 2008-12 of 25 January 2008), and the competent authority is the CDP — Senegal's Data Protection Commission, in Dakar.
What that changes on the day something goes wrong: the difference between filing with an authority in Dakar and starting proceedings on another continent is not a legal one, it is a practical one. Same time zone, same language of procedure, same body of law. A remedy you can actually use beats a right that is theoretically stronger but out of reach.
We do not reason in European law. Our filing, notification and retention obligations are the ones set by Senegalese law.
The CDP is your route of appeal if you believe we are handling your data badly. We do nothing to make that road longer.
Our accounting is natively SYSCOHADA — not a localisation module bolted onto a chart of accounts designed elsewhere. That is not security, it is accounting integrity.
Your data is hosted in data centres located in Germany, operated by Hetzner Online GmbH, which holds ISO 27001 certification for its facilities. This transfer outside Senegal is declared, and we explain it in section 9.
The architecture rests on one simple principle: the databases cannot be reached from the internet by any path. They have no public address. Everything arriving from outside crosses a filtering edge first, then the application — never the data directly.
Every record carries the company it belongs to, and the filter is applied in the application foundation rather than screen by screen — so one forgotten screen cannot open a breach between two customers.
Our operations interfaces cannot be reached from the internet. They live on a private network entered with a named identity.
The list of what answers from the internet is kept as a contract checked automatically. A service that showed up without being on that list fails the check.
An attack that never reaches the application is an attack there is nothing to fix. Most of what aims at us is turned away before it gets to us.
Application rules turn away injection attempts and known attack patterns, on top of the managed rule set our edge provider runs. They block — they do not merely record.
Application-layer denial-of-service protection sits in front of our servers. A flood does not have to cross our network to be shed, and our machines never see it.
Attempts using a credential known to appear in a public breach are blocked at the edge. That is the counter-measure to credential stuffing — the most ordinary and most effective attack against any online service.
The edge proves its identity to our servers with a client certificate. A request that went around the edge to hit the origin directly is not served: it cannot present that certificate.
Many intrusions succeed not because a door was open, but because once inside, everything was reachable. Here, every machine refuses inbound connections by default and opens only the paths that are declared, one at a time.
The interfaces used to operate the platform answer on no public address. They are reached from a private network, with a named identity — not a shared account, not a team password.
Administrative access is restricted to a list of named addresses, held in the infrastructure code. Knowing a password is not enough: you also have to arrive from a declared place.
Our operations consoles will move behind a single identity provider with mandatory two-factor authentication. Planned for the end of September 2026 — so it is not in place today, and we would rather date it than let it be assumed.
| Where | What is applied |
|---|---|
| Between you and us | HTTPS with systematic redirection. Nothing travels in the clear. |
| Between our components | Internal traffic runs over an encrypted private network, and the edge proves its identity to the origin. |
| Backups | AES-256. A backup that left our hands would be unreadable. |
| Passwords | Never stored — only a one-way fingerprint, computed with an algorithm designed to be slow. |
| Technical secrets | Centralised in a dedicated vault and injected at run time. No secret is written into our code, and an automated check blocks the release if it finds one. |
Two-factor authentication through a mobile app is available for all your users — including the highest administrative accounts. You decide who turns it on.
We would rather be accurate: this protection is available, not yet mandatory. So we cannot quote you an adoption rate. If your internal policy requires two-factor authentication for everyone, today it rests on your own discipline, not on a constraint we enforce — and we would rather tell you that than let you believe otherwise.
Rights are composed by role and by module. An accountant does not need to see payroll in order to keep the books.
Who, what, when. Without that, an incident notification would be guesswork: we could say neither which data, nor which people, nor since when.
Our staff reach production through a named identity, on a private network. No shared access, no generic accounts.
The right question is not "do you take backups?" — everyone says yes. It is "how much can I lose, and when did you last verify it?"
| Property | Where we stand |
|---|---|
| Maximum data loss | 5 minutes — and that is not an estimate: a point-in-time restore was decrypted and replayed to verify it. |
| Immutability | A backup can be neither modified nor deleted during its protection window, including by us. That is the defence against ransomware that goes after the backups rather than the data. |
| Encryption | AES-256, before the backup even leaves the machine that produces it. |
| Time to restore service | ⚠️ The procedure has been validated in a test environment, but never timed on the real infrastructure. So we do not quote a figure. The exercise is scheduled. |
| Copy in a second region | ⚠️ Not in place. Our backups live in the same region as the platform. That is a cost trade-off we own, and would rather write down. |
We commit to 99.7% monthly uptime, effective 1 November 2026. That is 130 minutes a month — we write the minutes, because a percentage is easy to promise and hard to picture.
| Item | What we hold ourselves to |
|---|---|
| Scope | The application service. Adjacent services — documents, messaging, real time — are outside this commitment, and we say so. |
| "Available" | A valid response obtained by a probe outside our own network. |
| "Unavailable" | Two consecutive failed checks. The consequence we accept: an outage shorter than two minutes is not counted. |
| Maintenance | Announced 72 hours in advance and capped at 4 hours a month. Past the cap, the time counts as downtime. |
| Publication | The monthly figure appears on our public status page — including the months we miss the target. |
The four-hour cap is what makes the commitment real. Without it, "excluding announced maintenance" lets you hold any figure you like: you just have to announce. That is the clause we invite you to check elsewhere.
Credits exist at most large providers. Three things are true of them: you have to claim them, they are capped, and they repair nothing. A 10% credit does not give back the day of invoicing your team lost.
Known vulnerabilities in components are looked for at every build. A build that crosses the threshold does not ship.
Every build is cryptographically signed, and the deployment refuses anything that is not. That is what stops a build swapped along the way from reaching production.
A blocking check looks for secrets on every proposed change. It does not warn: it stops.
Changes go through review and automated tests before they reach production.
The tokens that grant access to a file go through a test that mutates them methodically and requires every alteration to be refused. The detail that matters is the witness: the test also fails when a mutation changed nothing — which is what stops a check from returning a reassuring result without having looked at anything.
We hold no certification. We hold real audits, dated, whose findings are tracked — and whose results we publish, including when they are bad.
Seventeen vulnerabilities — 4 critical, 6 high, 5 medium, 2 low. All closed by 26 April, twelve days. What matters is not how many were found, it is how long they took to close and the fact that seven automated tests now reproduce the scenarios: without them, a penetration test closes the same doors year after year.
A remediation plan that is tracked, and whose findings feed our risk register and our security policy. It is what plays the counterweight today: our security lead is also our founder, and an outside pair of eyes is what keeps us from judging our own case.
A new penetration test and a new infrastructure audit are commissioned. We put a date on what is not done yet rather than leaving it out.
For the data you put into the ERP, you are the data controller and we are the processor. That distinction is not administrative: it settles who decides and who executes. We do not use your data for anything other than providing the service.
If a data breach affects you, we tell you within 72 hours, alongside the notification to the CDP — even when it originates with one of our own subprocessors.
Your data is hosted in Germany. That transfer falls under articles 49 and 50 of Law 2008-12 and is part of our filings with the Commission.
Any change of subprocessor with access to your data is communicated to you before it happens, not in a later report.
We do not yet have a full export you could trigger yourself. Extracting your company alone is done manually today, with no turnaround time we can promise. The tooling is committed and dated; until then, we do not promise what we have not built.
For any question about your data or the exercise of your rights: [email protected].
Write to us at [email protected]. We would rather hear it from you.
The researchers who helped us fix a vulnerability, with their consent.
Our disclosure programme opens with this page. The first line is still to be written — and if it is yours, it will carry the name you choose.
This section is unusual on a page like this. We keep it because a security expert knows that a page without one is hiding it — and because every line here would be found out anyway, by your auditor or by an incident.
We name here what an observer already sees from the outside. The rest of our architecture is not secret on principle, but publishing it would amount to listing the components worth watching — and it would give you nothing.
We maintain a Security Assurance Plan: the detailed version of this page — governance, risk analysis, controls, incident handling, continuity, and the dated list of our gaps. It is shared to a named recipient, under a confidentiality agreement, because it contains the map of our exposure.