URL analysée
https://zentract.io
Mesuré il y a 2 semaines
Score AI-Ready
Excellent
sur 100
Économie de tokens
Détail du score
Protocoles émergents
6 sur 6 détectésEndpoints well-known recherchés par les agents IA. Détecté signifie qu’un agent peut découvrir et se connecter automatiquement à votre service.
-
OAuth Protected Resource RFC 9728
/.well-known/oauth-protected-resource- resource: https://zentract.io
- 1 authorization server(s)
-
OAuth Discovery RFC 8414
/.well-known/oauth-authorization-server- issuer: https://zentract.io
- token_endpoint: https://zentract.io/api/oauth2/token
- 3 grant type(s)
-
MCP Server Card SEP-1649 draft
/.well-known/mcp/server-card.json- v1.0
- 15 tool(s)
-
A2A Agent Card A2A v1.0
/.well-known/agent-card.json- name: Zentract Agent Discovery
- v0.1.1
- 3 capabilities
- 15 skill(s)
-
API Catalog RFC 9727
/.well-known/api-catalog- 1 API(s)
-
Agent Skills index Discovery RFC v0.2.0 draft
/.well-known/agent-skills/index.json- 2 skill(s)
- zentract-public-api, zentract-public-site
Cela ne reste pas en place. La surveillance n'existe pas encore : inscrivez-vous, on vous préviendra.
Vous êtes sur la liste ! Nous vous préviendrons lors du lancement.
Ce que nous avons mesuré CDN level (Cloudflare) — Content negotiation
Votre site ne prend en charge Markdown pour les agents qu'en partie — « ce que nous avons mesuré », ci-dessus, liste les mécanismes déjà présents. Ajouter les autres permet à plus d'agents de demander du markdown au lieu d'analyser le HTML, réduisant les tokens d'environ 80%.
Comment implémenter
- Servez un jumeau Markdown à une seconde URL, par ex. /page.md à côté de /page.
- Ajoutez <link rel="alternate" type="text/markdown" href="…"> dans le head HTML.
- Ajoutez un en-tête HTTP Link vers la version Markdown : Link: <…>; rel="alternate"; type="text/markdown".
Ce que nous avons mesuré 14 semantic elements, 190 divs (ratio: 7%)
Votre page repose fortement sur les éléments <div>. Les éléments sémantiques comme <section>, <nav>, <header>, <footer> et <aside> fournissent une structure significative pour les AI agents.
Comment implémenter
Remplacez les conteneurs <div> génériques par les éléments sémantiques appropriés. Utilisez <section> pour les groupes thématiques, <nav> pour la navigation, <header>/<footer> pour les en-têtes et pieds de page ou de section.
Ce que nous avons mesuré 61/676 elements with inline styles (9.0%)
De nombreux éléments ont des attributs de style en ligne. Ils ajoutent du bruit pour les AI agents lors de l’extraction du contenu.
Comment implémenter
Déplacez tous les styles en ligne vers des classes CSS dans votre feuille de style. Utilisez des frameworks CSS utilitaires comme Tailwind si vous avez besoin de nombreux styles uniques.

# Run client work
from the proposal to the paid invoice.
Keep clients, projects, and tasks in one place. Your team logs time on the work. You send proposals and quotes, turn billable hours into invoices, and see what is still unpaid, over budget, or running out of retainer hours.
[Get started](https://zentract.io/sign-up)[Sign in](https://zentract.io/sign-in)
No credit card required.
In Aruba, Bonaire, Curaçao, Saba, Sint Eustatius or Sint Maarten? [Your island's tax is built in](https://zentract.io/#dutch-caribbean).

Built forDesign agenciesDev shopsHourly contractorsConsulting firmsFractional teamsMarketing studios
## What you do in Zentract.
- ### Clients, projects, and tasks
A project holds the budget, the tasks, and, when you bill that way, a retainer with included hours.
- ### Time on the work
Start a timer from the dashboard or log time on the task. Each entry keeps the client, the project, and whether it is billable. The iOS and Android apps are for logging time away from the desk.
- ### Proposals
Describe the scope, timeline, team, and budget, then share the proposal.
- ### Quotes and invoices
Send a quote for the work. Draft an invoice from billable hours, or write one by hand. It stays a draft until you send it.
- ### Reports
Time summary, project status, timesheet, and invoice report.
- ### Financials
What you invoiced, what you collected, what is still owed, and how much of each retainer is used.
## Local tax and payments for the Dutch Caribbean.
In Aruba, Curaçao, Sint Maarten, Bonaire, Saba or Sint Eustatius, Zentract puts your island's tax on every invoice and gets you paid in ways that work there.
### Local tax, worked out for each client
OB, ABB, and BBO on invoices, quotes, and proposals, with the details each island requires and statements like “ABB verlegd” where the law asks for them. Included in every plan.
Taxes Zentract applies, by island
| [Aruba](https://zentract.io/help/taxes/aruba) | BBO/BAVP/BAZV | 7% |
| [Curaçao](https://zentract.io/help/taxes/curacao) | OB | 6% |
| [Sint Maarten](https://zentract.io/help/taxes/sint-maarten) | BBO | 5% |
| [Bonaire](https://zentract.io/help/taxes/bonaire) | ABB | 6% |
| [Saba](https://zentract.io/help/taxes/saba) | ABB | 4% |
| [Sint Eustatius](https://zentract.io/help/taxes/sint-eustatius) | ABB | 4% |
[How tax works in Zentract](https://zentract.io/help/taxes)
### Getting paid on the islands
Clients pay XCG and AWG invoices with Sentoo, from their own banking app, straight from the invoice link. The money goes to your account, and the invoice is marked paid.
Invoicing in US dollars? Add your bank details and they print on every invoice; mark it paid when the transfer arrives.
[Get paid with Sentoo](https://zentract.io/help/sentoo)
## From logged hours to a paid invoice.
A month of work for a hotel group in Curaçao: invoiced with OB, paid with Sentoo, and in Financials as soon as it clears. Wherever you are, the flow is the same; the tax and how clients pay follow your location.
01Log the workThe team tracks time on the client's tasks.02Draft the invoiceHours become invoice lines, with Curaçao OB worked out.03Send itThe client gets a link to the invoice.04Get paid with SentooThey approve the payment in their own banking app.05See it in FinancialsCollected and outstanding update at once.
Pause
The team tracks time on the client's tasks.
KKKas Kolor StudioTime
This month
Brisa Hotel Group
AM
Booking page design
Ana Martis · recording
00:48:12
AM
Brand refresh: logo and type
Ana Martis
4h 30m
RI
Booking page design
Ruben Isenia
3h 15m
SD
Launch social kit
Shirley Doran
2h
Billable for Brisa Hotel Group0h
Invoice (factuur)
INV-2026-0142 · Brisa Hotel Group
Draft
Brand refresh: logo and type
12h × XCG 175.00
XCG 2,100.00
Booking page design
9h 30m × XCG 175.00
XCG 1,662.50
Launch social kit
5h × XCG 175.00
XCG 875.00
Subtotal (excl. OB)XCG 4,637.50
OB 6%Curaçao rules appliedXCG 278.25
Total (incl. OB)XCG 0.00
Invoice (factuur)
INV-2026-0142 · Brisa Hotel Group
Draft
Total
XCG 4,915.75
Due
Oct 28, 2026
From Kas Kolor Studio
Invoice (factuur) INV-2026-0142
Balance due
XCG 4,915.75
Due Oct 28, 2026
Pay with Sentoo
Your banking app · Sentoo
Approve payment to Kas Kolor Studio
XCG 4,915.75
Reference INV-2026-0142
Approve
September 2026
All clients
Invoiced
XCG 18,240.00
Collected
XCG 12,560.25
Outstanding
XCG 10,595.75
Payments
Kas di Pan Bakery
INV-2026-0137 · Bank transfer · 2 days ago
XCG 1,250.00
Seru Coffee Roasters
INV-2026-0131 · Sentoo · Last week
XCG 860.00
## See retainers running low and projects heading over budget, before they cost you.
After the invoice is paid, Zentract keeps watching: the hours left on each retainer, and a written report on money at risk once there is enough history.
01Watch retainer hoursHours used against what each retainer includes, with the ones running low called out.02Read the Agency Health ReportMoney at risk, the month's forecast, and projects heading over budget, once there is enough history.
Pause
Hours used against what each retainer includes, with the ones running low called out.
KKKas Kolor StudioFinancials
Active retainers
This month
Brisa Hotel Group
Website care
2h left18 / 20h
Seru Coffee Roasters
Content retainer
11 / 40h
Kas di Pan Bakery
Social media
6 / 15h
Brisa Hotel Group has 2 hours left on website care this month.
Agency Health Report
Latest period
Revenue at riskXCG 0.00
Adjusted forecastXCG 0.00
Billable utilization0%
Heading over budget
Booking platform · Brisa Hotel Group92% of budget
Menu redesign · Kas di Pan Bakery81% of budget
You get a notification when a new report is ready.
## Free to start.
Add people, clients, and projects when the team grows.
The free plan has no time limit and does not ask for a card. Time tracking, proposals, quotes, invoices, reports, financials, and Dutch Caribbean tax are included. Growth ($99 a month) and Scale ($299 a month) raise how many people, clients, and projects you can have.
[Compare plans](https://zentract.io/pricing)
### Free
$0/ month
- ✓3 team members
- ✓5 clients
- ✓10 projects
- ✓Unlimited time tracking
- ✓Invoice generation
- ✓Dutch Caribbean tax
- ✓iOS & Android apps
[Get started](https://zentract.io/sign-up)
## Common questions
Details on time tracking, billing, and the free plan.
Where does my team log time?
Can I bill hours we have already tracked?
What is the difference between a proposal, a quote, and an invoice?
Who on the team sees invoices and Financials?
What does Financials show?
What is the Agency Health Report?
Does Zentract handle tax in the Dutch Caribbean?
Does Zentract add VAT or sales tax elsewhere?
Can clients pay with Sentoo?
How do clients pay my invoices?
Which currencies can I invoice in?
What does the free plan include?
## From the work your team did
to the invoice the client pays.
Keep the client, the project, and the hours together, then bill from that record.
[Get started](https://zentract.io/sign-up)
Free plan · No credit card
Already using Zentract? [Sign in →](https://zentract.io/sign-in)
Zentract: From the proposal to the paid invoice

# Run client work
from the proposal to the paid invoice.
Keep clients, projects, and tasks in one place. Your team logs time on the work. You send proposals and quotes, turn billable hours into invoices, and see what is still unpaid, over budget, or running out of retainer hours.
[Get started](https://zentract.io/sign-up)[Sign in](https://zentract.io/sign-in)
No credit card required.
In Aruba, Bonaire, Curaçao, Saba, Sint Eustatius or Sint Maarten? [Your island's tax is built in](https://zentract.io/#dutch-caribbean).

Built forDesign agenciesDev shopsHourly contractorsConsulting firmsFractional teamsMarketing studios
## What you do in Zentract.
- ### Clients, projects, and tasks
A project holds the budget, the tasks, and, when you bill that way, a retainer with included hours.
- ### Time on the work
Start a timer from the dashboard or log time on the task. Each entry keeps the client, the project, and whether it is billable. The iOS and Android apps are for logging time away from the desk.
- ### Proposals
Describe the scope, timeline, team, and budget, then share the proposal.
- ### Quotes and invoices
Send a quote for the work. Draft an invoice from billable hours, or write one by hand. It stays a draft until you send it.
- ### Reports
Time summary, project status, timesheet, and invoice report.
- ### Financials
What you invoiced, what you collected, what is still owed, and how much of each retainer is used.
## Local tax and payments for the Dutch Caribbean.
In Aruba, Curaçao, Sint Maarten, Bonaire, Saba or Sint Eustatius, Zentract puts your island's tax on every invoice and gets you paid in ways that work there.
### Local tax, worked out for each client
OB, ABB, and BBO on invoices, quotes, and proposals, with the details each island requires and statements like “ABB verlegd” where the law asks for them. Included in every plan.
Taxes Zentract applies, by island
| [Aruba](https://zentract.io/help/taxes/aruba) | BBO/BAVP/BAZV | 7% |
| [Curaçao](https://zentract.io/help/taxes/curacao) | OB | 6% |
| [Sint Maarten](https://zentract.io/help/taxes/sint-maarten) | BBO | 5% |
| [Bonaire](https://zentract.io/help/taxes/bonaire) | ABB | 6% |
| [Saba](https://zentract.io/help/taxes/saba) | ABB | 4% |
| [Sint Eustatius](https://zentract.io/help/taxes/sint-eustatius) | ABB | 4% |
[How tax works in Zentract](https://zentract.io/help/taxes)
### Getting paid on the islands
Clients pay XCG and AWG invoices with Sentoo, from their own banking app, straight from the invoice link. The money goes to your account, and the invoice is marked paid.
Invoicing in US dollars? Add your bank details and they print on every invoice; mark it paid when the transfer arrives.
[Get paid with Sentoo](https://zentract.io/help/sentoo)
## From logged hours to a paid invoice.
A month of work for a hotel group in Curaçao: invoiced with OB, paid with Sentoo, and in Financials as soon as it clears. Wherever you are, the flow is the same; the tax and how clients pay follow your location.
01Log the workThe team tracks time on the client's tasks.02Draft the invoiceHours become invoice lines, with Curaçao OB worked out.03Send itThe client gets a link to the invoice.04Get paid with SentooThey approve the payment in their own banking app.05See it in FinancialsCollected and outstanding update at once.
Pause
The team tracks time on the client's tasks.
KKKas Kolor StudioTime
This month
Brisa Hotel Group
AM
Booking page design
Ana Martis · recording
00:48:12
AM
Brand refresh: logo and type
Ana Martis
4h 30m
RI
Booking page design
Ruben Isenia
3h 15m
SD
Launch social kit
Shirley Doran
2h
Billable for Brisa Hotel Group0h
Invoice (factuur)
INV-2026-0142 · Brisa Hotel Group
Draft
Brand refresh: logo and type
12h × XCG 175.00
XCG 2,100.00
Booking page design
9h 30m × XCG 175.00
XCG 1,662.50
Launch social kit
5h × XCG 175.00
XCG 875.00
Subtotal (excl. OB)XCG 4,637.50
OB 6%Curaçao rules appliedXCG 278.25
Total (incl. OB)XCG 0.00
Invoice (factuur)
INV-2026-0142 · Brisa Hotel Group
Draft
Total
XCG 4,915.75
Due
Oct 28, 2026
From Kas Kolor Studio
Invoice (factuur) INV-2026-0142
Balance due
XCG 4,915.75
Due Oct 28, 2026
Pay with Sentoo
Your banking app · Sentoo
Approve payment to Kas Kolor Studio
XCG 4,915.75
Reference INV-2026-0142
Approve
September 2026
All clients
Invoiced
XCG 18,240.00
Collected
XCG 12,560.25
Outstanding
XCG 10,595.75
Payments
Kas di Pan Bakery
INV-2026-0137 · Bank transfer · 2 days ago
XCG 1,250.00
Seru Coffee Roasters
INV-2026-0131 · Sentoo · Last week
XCG 860.00
## See retainers running low and projects heading over budget, before they cost you.
After the invoice is paid, Zentract keeps watching: the hours left on each retainer, and a written report on money at risk once there is enough history.
01Watch retainer hoursHours used against what each retainer includes, with the ones running low called out.02Read the Agency Health ReportMoney at risk, the month's forecast, and projects heading over budget, once there is enough history.
Pause
Hours used against what each retainer includes, with the ones running low called out.
KKKas Kolor StudioFinancials
Active retainers
This month
Brisa Hotel Group
Website care
2h left18 / 20h
Seru Coffee Roasters
Content retainer
11 / 40h
Kas di Pan Bakery
Social media
6 / 15h
Brisa Hotel Group has 2 hours left on website care this month.
Agency Health Report
Latest period
Revenue at riskXCG 0.00
Adjusted forecastXCG 0.00
Billable utilization0%
Heading over budget
Booking platform · Brisa Hotel Group92% of budget
Menu redesign · Kas di Pan Bakery81% of budget
You get a notification when a new report is ready.
## Free to start.
Add people, clients, and projects when the team grows.
The free plan has no time limit and does not ask for a card. Time tracking, proposals, quotes, invoices, reports, financials, and Dutch Caribbean tax are included. Growth ($99 a month) and Scale ($299 a month) raise how many people, clients, and projects you can have.
[Compare plans](https://zentract.io/pricing)
### Free
$0/ month
- ✓3 team members
- ✓5 clients
- ✓10 projects
- ✓Unlimited time tracking
- ✓Invoice generation
- ✓Dutch Caribbean tax
- ✓iOS & Android apps
[Get started](https://zentract.io/sign-up)
## Common questions
Details on time tracking, billing, and the free plan.
Where does my team log time?
Can I bill hours we have already tracked?
What is the difference between a proposal, a quote, and an invoice?
Who on the team sees invoices and Financials?
What does Financials show?
What is the Agency Health Report?
Does Zentract handle tax in the Dutch Caribbean?
Does Zentract add VAT or sales tax elsewhere?
Can clients pay with Sentoo?
How do clients pay my invoices?
Which currencies can I invoice in?
What does the free plan include?
## From the work your team did
to the invoice the client pays.
Keep the client, the project, and the hours together, then bill from that record.
[Get started](https://zentract.io/sign-up)
Free plan · No credit card
Already using Zentract? [Sign in →](https://zentract.io/sign-in)
Téléversez ce fichier sous /index.md sur votre serveur pour que les AI agents puissent accéder à une version propre de votre page. Vous pouvez également configurer la négociation de contenu Accept: text/markdown pour le servir automatiquement.
Notre recommandation
# zentract.io > Keep clients, projects, and tasks in one place. Your team logs time on the work. You send proposals and quotes, turn billable hours into invoices, and see what is still unpaid, over budget, or running out of retainer hours. ## Documentation - [Help](https://zentract.io/help) - [Aruba](https://zentract.io/help/taxes/aruba) - [Curaçao](https://zentract.io/help/taxes/curacao) - [Sint Maarten](https://zentract.io/help/taxes/sint-maarten) - [Bonaire](https://zentract.io/help/taxes/bonaire) - [Saba](https://zentract.io/help/taxes/saba) - [Sint Eustatius](https://zentract.io/help/taxes/sint-eustatius) - [How tax works in Zentract](https://zentract.io/help/taxes) - [Get paid with Sentoo](https://zentract.io/help/sentoo) ## Main - [Zentract: From the proposal to the paid invoice](https://zentract.io): Keep clients, projects, and tasks in one place. Your team logs time on the work. You send proposals and quotes, turn bi… - [Pricing](https://zentract.io/pricing) - [ZentractZENTRACT](https://zentract.io/) - [Developers](https://zentract.io/developers) - [Sign in](https://zentract.io/sign-in) - [Get started](https://zentract.io/sign-up) ## Legal - [Privacy](https://zentract.io/privacy) - [Terms](https://zentract.io/terms) ## Support - [Help](https://zentract.io/help) - [Contact](https://zentract.io/contact)
Le llms.txt complet nécessite une analyse de tout le domaine (bientôt disponible)
Téléversez ce fichier vers https://zentract.io/llms.txt à la racine de votre domaine. Les AI agents comme ChatGPT, Claude et Perplexity consultent ce fichier pour comprendre la structure de votre site.
Ce site possède déjà un fichier llms.txt.
Format valide# Zentract > Keep clients, projects, and tasks in one place. Your team logs time on the work. You send proposals and quotes, turn billable hours into invoices, and see what is still unpaid, over budget, or running out of retainer hours. Zentract applies Dutch Caribbean tax (OB, ABB and BBO) to invoices, quotes and proposals, and clients can pay invoices online, including with Sentoo. What you can do in Zentract: - Clients, projects, and tasks, with a budget and an optional retainer - Time logged on the task, from the dashboard or the phone - Proposals with scope, timeline, team, and budget - Quotes, and invoices drafted from billable hours or written by hand - Reports for time, project status, timesheets, and invoices - Financials for what was invoiced, collected, still owed, and retainer hours used - Dutch Caribbean tax on invoices, quotes, and proposals: OB, ABB, and BBO for Aruba, Curaçao, Sint Maarten, Bonaire, Saba, and Sint Eustatius - Online invoice payments: with Sentoo for XCG and AWG invoices, and by card for businesses in supported countries such as the United States and most of Europe ## Product - [Home](https://zentract.io): Client work from the proposal to the paid invoice. - [Pricing](https://zentract.io/pricing): Free $0 a month (3 team members, 5 clients, 10 projects); Growth $99 a month (10 team members, 100 clients, 100 projects); Scale $299 a month (Unlimited team members, Unlimited clients, Unlimited projects). Priced per organization, billed in USD. ## Help - [Dutch Caribbean tax on invoices: OB, ABB and BBO](https://zentract.io/help/taxes): How Zentract applies Aruba, Curaçao, Sint Maarten, Bonaire, Saba and Sint Eustatius turnover taxes to invoices, quotes and proposals: rates, required invoice details, reverse charge and clients abroad. - [Aruba BBO, BAVP and BAZV on invoices: 7% turnover taxes](https://zentract.io/help/taxes/aruba): How Aruba's 7% turnover taxes (BBO 2.5%, BAVP 1.5% and BAZV 3%) apply to service invoices, what an Aruba invoice must show, clients abroad, and KOR relief. - [Curaçao OB on invoices: 6%, CRIB, KvK and factuur rules](https://zentract.io/help/taxes/curacao): How 6% Curaçao turnover tax (OB) applies to service invoices, what a Curaçao invoice (factuur) must show, OB in XCG, and clients abroad. - [Sint Maarten turnover tax (BBO/TOT) on invoices: 5%](https://zentract.io/help/taxes/sint-maarten): How 5% Sint Maarten turnover tax (BBO, also called TOT) applies to service invoices, what a Sint Maarten invoice must show, and clients abroad. - [Bonaire ABB on invoices: 6% on services](https://zentract.io/help/taxes/bonaire): How 6% ABB applies to services from Bonaire, what a Caribbean Netherlands invoice must show, KOR relief, and when an invoice says “ABB verlegd”. - [Saba ABB on invoices: 4% on services](https://zentract.io/help/taxes/saba): How 4% ABB applies to services from Saba, what a Caribbean Netherlands invoice must show, KOR relief, and when an invoice says “ABB verlegd”. - [Sint Eustatius ABB on invoices: 4% on services](https://zentract.io/help/taxes/sint-eustatius): How 4% ABB applies to services from Sint Eustatius, what a Caribbean Netherlands invoice must show, KOR relief, and when an invoice says “ABB verlegd”. - [Sentoo invoice payments: get paid in XCG and AWG from the client's banking app](https://zentract.io/help/sentoo): Connect your Sentoo merchant account to Zentract so clients pay XCG and AWG invoices from their own banking app. Payments go straight to you and are recorded on the invoice. ## Developers - [Zentract API and MCP server: connect AI assistants and your own tools](https://zentract.io/developers): Connect Claude, ChatGPT or another AI assistant to Zentract through its MCP server, or build on the OAuth 2 API for clients, projects, tasks, time, invoices, quotes and proposals. - [API reference](https://zentract.io/api-docs): Reference for the OAuth 2 REST API. - [OpenAPI specification](https://zentract.io/openapi.json): Machine-readable description of the API. - [MCP server](https://mcp.zentract.io/mcp): Remote MCP endpoint (streamable HTTP, OAuth sign-in) with tools for tasks, projects, clients, time entries and timers. - [MCP server card](https://zentract.io/.well-known/mcp.json): Tools and transport of the MCP server. ## Optional - [Contact](https://zentract.io/contact) - [Privacy policy](https://zentract.io/privacy) - [Terms of service](https://zentract.io/terms)
Accessibilité
Content available without JavaScript
Main content starts at 13% of HTML
Page size: 142KB
Visibilité IA
All major AI search bots allowed
Sitemap found
robots.txt exists
llms.txt exists and is valid
Données structurées
JSON-LD found: Organization, WebApplication, FAQPage
All OG tags present
Meta description: 223 chars
Canonical URL present
lang="en"
HTML sémantique
Clean heading hierarchy
Has <main>
14 semantic elements, 190 divs (ratio: 7%)
1/1 images with meaningful alt text (1 decorative, not counted)
Avg div depth: 8.4, max: 15
Efficacité du contenu
95% token reduction (HTML→Markdown)
Content ratio: 47.2% (68646 content chars / 145379 HTML bytes)
HTML size: 142KB
61/676 elements with inline styles (9.0%)
{
"url": "https://zentract.io",
"timestamp": 1790618354353,
"fetch": {
"mode": "simple",
"timeMs": 462,
"htmlSizeBytes": 145379,
"supportsMarkdown": true,
"markdownAgents": {
"contentNegotiation": true,
"mdUrl": {
"found": false,
"url": null
},
"linkTag": {
"found": false,
"url": null
},
"linkHeader": {
"found": false,
"url": null
},
"responseHeaders": {
"contentSignal": null,
"xMarkdownTokens": "1430",
"vary": "Accept, accept-encoding"
},
"frontmatter": {
"present": true,
"fields": [
"title",
"path"
],
"level": "basic"
},
"level": "cloudflare",
"contentNegotiationMediaType": "text/markdown",
"properMediaType": true
},
"statusCode": 200
},
"extraction": {
"title": "Zentract: From the proposal to the paid invoice",
"excerpt": "((a,b,c,d,e,f,g,h)=>{let i=document.documentElement,j=[\"light\",\"dark\"];function k(b){var c;(Array.isArray(a)?a:[a]).forEach(a=>{let c=\"class\"===a,d=c&&f?e.map(a=>f[a]||a):e;c?(i.classList.remove(...d)",
"byline": null,
"siteName": null,
"lang": "en",
"contentLength": 68646,
"metadata": {
"description": "Keep clients, projects, and tasks in one place. Your team logs time on the work. You send proposals and quotes, turn billable hours into invoices, and see what is still unpaid, over budget, or running out of retainer hours.",
"ogTitle": "Zentract: From the proposal to the paid invoice",
"ogDescription": "Keep clients, projects, and tasks in one place. Your team logs time on the work. You send proposals and quotes, turn billable hours into invoices, and see what is still unpaid, over budget, or running out of retainer hours.",
"ogImage": "https://zentract.io/opengraph-image?762c442b7574a643",
"ogType": "website",
"canonical": "https://zentract.io",
"lang": "en",
"schemas": [
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Zentract",
"url": "https://zentract.io",
"logo": "https://zentract.io/android-chrome-512x512.png",
"description": "Keep clients, projects, and tasks in one place. Your team logs time on the work. You send proposals and quotes, turn billable hours into invoices, and see what is still unpaid, over budget, or running out of retainer hours.",
"sameAs": [
"https://twitter.com/zentractapp",
"https://www.linkedin.com/company/vokality",
"https://www.producthunt.com/products/zentract"
],
"contactPoint": {
"@type": "ContactPoint",
"contactType": "customer support",
"url": "https://zentract.io/contact"
}
},
{
"@context": "https://schema.org",
"@type": "WebApplication",
"name": "Zentract",
"applicationCategory": "BusinessApplication",
"operatingSystem": "Web, iOS, Android",
"description": "Keep clients, projects, and tasks in one place. Your team logs time on the work. You send proposals and quotes, turn billable hours into invoices, and see what is still unpaid, over budget, or running out of retainer hours.",
"url": "https://zentract.io",
"offers": [
{
"@type": "Offer",
"name": "Free",
"price": "0",
"priceCurrency": "USD",
"url": "https://zentract.io/pricing",
"description": "3 team members, 5 clients, 10 projects. Billed monthly per organization."
},
{
"@type": "Offer",
"name": "Growth",
"price": "99",
"priceCurrency": "USD",
"url": "https://zentract.io/pricing",
"description": "10 team members, 100 clients, 100 projects. Billed monthly per organization."
},
{
"@type": "Offer",
"name": "Scale",
"price": "299",
"priceCurrency": "USD",
"url": "https://zentract.io/pricing",
"description": "Unlimited team members, Unlimited clients, Unlimited projects. Billed monthly per organization."
}
],
"featureList": [
"Clients, projects, and tasks",
"Time on the work",
"Proposals",
"Quotes and invoices",
"Reports",
"Financials and retainers",
"Dutch Caribbean tax: OB, ABB, and BBO",
"Online invoice payments, including Sentoo"
]
},
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Where does my team log time?",
"acceptedAnswer": {
"@type": "Answer",
"text": "From the dashboard timer, or on the task itself. The entry stays tied to the task, the project, and the client, and you can mark it billable or not. The phone apps are for logging time away from the desk."
}
},
{
"@type": "Question",
"name": "Can I bill hours we have already tracked?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes. Pick the client and the dates, and Zentract drafts an invoice from billable hours that have rates. You can edit the draft before you send it. You can also write an invoice by hand when the bill is not coming from tracked time."
}
},
{
"@type": "Question",
"name": "What is the difference between a proposal, a quote, and an invoice?",
"acceptedAnswer": {
"@type": "Answer",
"text": "A proposal is the work you are offering: scope, timeline, team, and budget. A quote is the price you send. An invoice is the bill, from an accepted quote or from hours already logged."
}
},
{
"@type": "Question",
"name": "Who on the team sees invoices and Financials?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Everyone can track time on their work. Admins and managers also see proposals, quotes, reports, invoices, and Financials."
}
},
{
"@type": "Question",
"name": "What does Financials show?",
"acceptedAnswer": {
"@type": "Answer",
"text": "For the month: what you invoiced, what you collected, what clients still owe, and billable hours. Each active retainer shows hours used against the hours included."
}
},
{
"@type": "Question",
"name": "What is the Agency Health Report?",
"acceptedAnswer": {
"@type": "Answer",
"text": "After there is enough history, Zentract writes a report and notifies you. It covers money at risk, a forecast for the month, how much of the team's time was billable, projects heading over budget, and retainers near their included hours. It does not send invoices."
}
},
{
"@type": "Question",
"name": "Does Zentract handle tax in the Dutch Caribbean?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes. Zentract applies OB in Curaçao, ABB in Bonaire, Saba, and Sint Eustatius, BBO in Sint Maarten, and BBO, BAVP, and BAZV in Aruba to invoices, quotes, and proposals. It works out the tax for each client, checks the details each island requires, such as CRIB numbers, and prints statements like “ABB verlegd” where the law asks for them. It is included in every plan."
}
},
{
"@type": "Question",
"name": "Does Zentract add VAT or sales tax elsewhere?",
"acceptedAnswer": {
"@type": "Answer",
"text": "No. Zentract works out tax for businesses established in Aruba, Curaçao, Sint Maarten, and the Caribbean Netherlands. For businesses anywhere else, invoices go out without a tax line."
}
},
{
"@type": "Question",
"name": "Can clients pay with Sentoo?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes, on paid plans. Connect your Sentoo merchant account, and clients pay XCG and AWG invoices from their own banking app through the invoice link. The money goes straight to your account, and Zentract records the payment."
}
},
{
"@type": "Question",
"name": "How do clients pay my invoices?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Every invoice has a link where the client sees what they owe, with your bank details if you add them, so any client can pay by bank transfer and you mark it paid. On a paid plan, clients can also pay online: with Sentoo for XCG and AWG invoices, or by card if your business is in a supported country, such as the United States and most of Europe. Businesses on the islands that invoice in US dollars are paid by bank transfer."
}
},
{
"@type": "Question",
"name": "Which currencies can I invoice in?",
"acceptedAnswer": {
"@type": "Answer",
"text": "US dollars, euros, Caribbean guilders (XCG), and Aruban florins (AWG)."
}
},
{
"@type": "Question",
"name": "What does the free plan include?",
"acceptedAnswer": {
"@type": "Answer",
"text": "3 people, 5 clients, and 10 projects, with no card required. Time tracking, proposals, quotes, invoices, reports, financials, and Dutch Caribbean tax are included. Paid plans raise those limits and add online invoice payments and Hints."
}
}
]
}
],
"robotsMeta": "index, follow",
"author": null,
"generator": null,
"markdownAlternateHref": null
}
},
"markdown": "\n\n# Run client work\nfrom the proposal to the paid invoice.\n\nKeep clients, projects, and tasks in one place. Your team logs time on the work. You send proposals and quotes, turn billable hours into invoices, and see what is still unpaid, over budget, or running out of retainer hours.\n\n[Get started](https://zentract.io/sign-up)[Sign in](https://zentract.io/sign-in)\n\nNo credit card required.\n\nIn Aruba, Bonaire, Curaçao, Saba, Sint Eustatius or Sint Maarten? [Your island's tax is built in](https://zentract.io/#dutch-caribbean).\n\n\n\nBuilt forDesign agenciesDev shopsHourly contractorsConsulting firmsFractional teamsMarketing studios\n\n## What you do in Zentract.\n\n- ### Clients, projects, and tasks\n\n A project holds the budget, the tasks, and, when you bill that way, a retainer with included hours.\n\n- ### Time on the work\n\n Start a timer from the dashboard or log time on the task. Each entry keeps the client, the project, and whether it is billable. The iOS and Android apps are for logging time away from the desk.\n\n- ### Proposals\n\n Describe the scope, timeline, team, and budget, then share the proposal.\n\n- ### Quotes and invoices\n\n Send a quote for the work. Draft an invoice from billable hours, or write one by hand. It stays a draft until you send it.\n\n- ### Reports\n\n Time summary, project status, timesheet, and invoice report.\n\n- ### Financials\n\n What you invoiced, what you collected, what is still owed, and how much of each retainer is used.\n\n## Local tax and payments for the Dutch Caribbean.\n\nIn Aruba, Curaçao, Sint Maarten, Bonaire, Saba or Sint Eustatius, Zentract puts your island's tax on every invoice and gets you paid in ways that work there.\n\n### Local tax, worked out for each client\n\nOB, ABB, and BBO on invoices, quotes, and proposals, with the details each island requires and statements like “ABB verlegd” where the law asks for them. Included in every plan.\n\nTaxes Zentract applies, by island\n| [Aruba](https://zentract.io/help/taxes/aruba) | BBO/BAVP/BAZV | 7% |\n| [Curaçao](https://zentract.io/help/taxes/curacao) | OB | 6% |\n| [Sint Maarten](https://zentract.io/help/taxes/sint-maarten) | BBO | 5% |\n| [Bonaire](https://zentract.io/help/taxes/bonaire) | ABB | 6% |\n| [Saba](https://zentract.io/help/taxes/saba) | ABB | 4% |\n| [Sint Eustatius](https://zentract.io/help/taxes/sint-eustatius) | ABB | 4% |\n\n[How tax works in Zentract](https://zentract.io/help/taxes)\n\n### Getting paid on the islands\n\nClients pay XCG and AWG invoices with Sentoo, from their own banking app, straight from the invoice link. The money goes to your account, and the invoice is marked paid.\n\nInvoicing in US dollars? Add your bank details and they print on every invoice; mark it paid when the transfer arrives.\n\n[Get paid with Sentoo](https://zentract.io/help/sentoo)\n\n## From logged hours to a paid invoice.\n\nA month of work for a hotel group in Curaçao: invoiced with OB, paid with Sentoo, and in Financials as soon as it clears. Wherever you are, the flow is the same; the tax and how clients pay follow your location.\n\n01Log the workThe team tracks time on the client's tasks.02Draft the invoiceHours become invoice lines, with Curaçao OB worked out.03Send itThe client gets a link to the invoice.04Get paid with SentooThey approve the payment in their own banking app.05See it in FinancialsCollected and outstanding update at once.\n\nPause\n\nThe team tracks time on the client's tasks.\n\nKKKas Kolor StudioTime\n\nThis month\n\nBrisa Hotel Group\n\nAM\n\nBooking page design\n\nAna Martis · recording\n\n00:48:12\n\nAM\n\nBrand refresh: logo and type\n\nAna Martis\n\n4h 30m\n\nRI\n\nBooking page design\n\nRuben Isenia\n\n3h 15m\n\nSD\n\nLaunch social kit\n\nShirley Doran\n\n2h\n\nBillable for Brisa Hotel Group0h\n\nInvoice (factuur)\n\nINV-2026-0142 · Brisa Hotel Group\n\nDraft\n\nBrand refresh: logo and type\n\n12h × XCG 175.00\n\nXCG 2,100.00\n\nBooking page design\n\n9h 30m × XCG 175.00\n\nXCG 1,662.50\n\nLaunch social kit\n\n5h × XCG 175.00\n\nXCG 875.00\n\nSubtotal (excl. OB)XCG 4,637.50\n\nOB 6%Curaçao rules appliedXCG 278.25\n\nTotal (incl. OB)XCG 0.00\n\nInvoice (factuur)\n\nINV-2026-0142 · Brisa Hotel Group\n\nDraft\n\nTotal\n\nXCG 4,915.75\n\nDue\n\nOct 28, 2026\n\nFrom Kas Kolor Studio\n\nInvoice (factuur) INV-2026-0142\n\nBalance due\n\nXCG 4,915.75\n\nDue Oct 28, 2026\n\nPay with Sentoo\n\nYour banking app · Sentoo\n\nApprove payment to Kas Kolor Studio\n\nXCG 4,915.75\n\nReference INV-2026-0142\n\nApprove\n\nSeptember 2026\n\nAll clients\n\nInvoiced\n\nXCG 18,240.00\n\nCollected\n\nXCG 12,560.25\n\nOutstanding\n\nXCG 10,595.75\n\nPayments\n\nKas di Pan Bakery\n\nINV-2026-0137 · Bank transfer · 2 days ago\n\nXCG 1,250.00\n\nSeru Coffee Roasters\n\nINV-2026-0131 · Sentoo · Last week\n\nXCG 860.00\n\n## See retainers running low and projects heading over budget, before they cost you.\n\nAfter the invoice is paid, Zentract keeps watching: the hours left on each retainer, and a written report on money at risk once there is enough history.\n\n01Watch retainer hoursHours used against what each retainer includes, with the ones running low called out.02Read the Agency Health ReportMoney at risk, the month's forecast, and projects heading over budget, once there is enough history.\n\nPause\n\nHours used against what each retainer includes, with the ones running low called out.\n\nKKKas Kolor StudioFinancials\n\nActive retainers\n\nThis month\n\nBrisa Hotel Group\n\nWebsite care\n\n2h left18 / 20h\n\nSeru Coffee Roasters\n\nContent retainer\n\n11 / 40h\n\nKas di Pan Bakery\n\nSocial media\n\n6 / 15h\n\nBrisa Hotel Group has 2 hours left on website care this month.\n\nAgency Health Report\n\nLatest period\n\nRevenue at riskXCG 0.00\n\nAdjusted forecastXCG 0.00\n\nBillable utilization0%\n\nHeading over budget\n\nBooking platform · Brisa Hotel Group92% of budget\n\nMenu redesign · Kas di Pan Bakery81% of budget\n\nYou get a notification when a new report is ready.\n\n## Free to start.\nAdd people, clients, and projects when the team grows.\n\nThe free plan has no time limit and does not ask for a card. Time tracking, proposals, quotes, invoices, reports, financials, and Dutch Caribbean tax are included. Growth ($99 a month) and Scale ($299 a month) raise how many people, clients, and projects you can have.\n\n[Compare plans](https://zentract.io/pricing)\n\n### Free\n\n$0/ month\n\n- ✓3 team members\n- ✓5 clients\n- ✓10 projects\n- ✓Unlimited time tracking\n- ✓Invoice generation\n- ✓Dutch Caribbean tax\n- ✓iOS & Android apps\n\n[Get started](https://zentract.io/sign-up)\n\n## Common questions\n\nDetails on time tracking, billing, and the free plan.\n\nWhere does my team log time?\n\nCan I bill hours we have already tracked?\n\nWhat is the difference between a proposal, a quote, and an invoice?\n\nWho on the team sees invoices and Financials?\n\nWhat does Financials show?\n\nWhat is the Agency Health Report?\n\nDoes Zentract handle tax in the Dutch Caribbean?\n\nDoes Zentract add VAT or sales tax elsewhere?\n\nCan clients pay with Sentoo?\n\nHow do clients pay my invoices?\n\nWhich currencies can I invoice in?\n\nWhat does the free plan include?\n\n## From the work your team did\nto the invoice the client pays.\n\nKeep the client, the project, and the hours together, then bill from that record.\n\n[Get started](https://zentract.io/sign-up)\n\nFree plan · No credit card\n\nAlready using Zentract? [Sign in →](https://zentract.io/sign-in)\n",
"fullPageMarkdown": "Zentract: From the proposal to the paid invoice\n\n\n\n# Run client work\nfrom the proposal to the paid invoice.\n\nKeep clients, projects, and tasks in one place. Your team logs time on the work. You send proposals and quotes, turn billable hours into invoices, and see what is still unpaid, over budget, or running out of retainer hours.\n\n[Get started](https://zentract.io/sign-up)[Sign in](https://zentract.io/sign-in)\n\nNo credit card required.\n\nIn Aruba, Bonaire, Curaçao, Saba, Sint Eustatius or Sint Maarten? [Your island's tax is built in](https://zentract.io/#dutch-caribbean).\n\n\n\nBuilt forDesign agenciesDev shopsHourly contractorsConsulting firmsFractional teamsMarketing studios\n\n## What you do in Zentract.\n\n- ### Clients, projects, and tasks\n\n A project holds the budget, the tasks, and, when you bill that way, a retainer with included hours.\n\n- ### Time on the work\n\n Start a timer from the dashboard or log time on the task. Each entry keeps the client, the project, and whether it is billable. The iOS and Android apps are for logging time away from the desk.\n\n- ### Proposals\n\n Describe the scope, timeline, team, and budget, then share the proposal.\n\n- ### Quotes and invoices\n\n Send a quote for the work. Draft an invoice from billable hours, or write one by hand. It stays a draft until you send it.\n\n- ### Reports\n\n Time summary, project status, timesheet, and invoice report.\n\n- ### Financials\n\n What you invoiced, what you collected, what is still owed, and how much of each retainer is used.\n\n## Local tax and payments for the Dutch Caribbean.\n\nIn Aruba, Curaçao, Sint Maarten, Bonaire, Saba or Sint Eustatius, Zentract puts your island's tax on every invoice and gets you paid in ways that work there.\n\n### Local tax, worked out for each client\n\nOB, ABB, and BBO on invoices, quotes, and proposals, with the details each island requires and statements like “ABB verlegd” where the law asks for them. Included in every plan.\n\nTaxes Zentract applies, by island\n| [Aruba](https://zentract.io/help/taxes/aruba) | BBO/BAVP/BAZV | 7% |\n| [Curaçao](https://zentract.io/help/taxes/curacao) | OB | 6% |\n| [Sint Maarten](https://zentract.io/help/taxes/sint-maarten) | BBO | 5% |\n| [Bonaire](https://zentract.io/help/taxes/bonaire) | ABB | 6% |\n| [Saba](https://zentract.io/help/taxes/saba) | ABB | 4% |\n| [Sint Eustatius](https://zentract.io/help/taxes/sint-eustatius) | ABB | 4% |\n\n[How tax works in Zentract](https://zentract.io/help/taxes)\n\n### Getting paid on the islands\n\nClients pay XCG and AWG invoices with Sentoo, from their own banking app, straight from the invoice link. The money goes to your account, and the invoice is marked paid.\n\nInvoicing in US dollars? Add your bank details and they print on every invoice; mark it paid when the transfer arrives.\n\n[Get paid with Sentoo](https://zentract.io/help/sentoo)\n\n## From logged hours to a paid invoice.\n\nA month of work for a hotel group in Curaçao: invoiced with OB, paid with Sentoo, and in Financials as soon as it clears. Wherever you are, the flow is the same; the tax and how clients pay follow your location.\n\n01Log the workThe team tracks time on the client's tasks.02Draft the invoiceHours become invoice lines, with Curaçao OB worked out.03Send itThe client gets a link to the invoice.04Get paid with SentooThey approve the payment in their own banking app.05See it in FinancialsCollected and outstanding update at once.\n\nPause\n\nThe team tracks time on the client's tasks.\n\nKKKas Kolor StudioTime\n\nThis month\n\nBrisa Hotel Group\n\nAM\n\nBooking page design\n\nAna Martis · recording\n\n00:48:12\n\nAM\n\nBrand refresh: logo and type\n\nAna Martis\n\n4h 30m\n\nRI\n\nBooking page design\n\nRuben Isenia\n\n3h 15m\n\nSD\n\nLaunch social kit\n\nShirley Doran\n\n2h\n\nBillable for Brisa Hotel Group0h\n\nInvoice (factuur)\n\nINV-2026-0142 · Brisa Hotel Group\n\nDraft\n\nBrand refresh: logo and type\n\n12h × XCG 175.00\n\nXCG 2,100.00\n\nBooking page design\n\n9h 30m × XCG 175.00\n\nXCG 1,662.50\n\nLaunch social kit\n\n5h × XCG 175.00\n\nXCG 875.00\n\nSubtotal (excl. OB)XCG 4,637.50\n\nOB 6%Curaçao rules appliedXCG 278.25\n\nTotal (incl. OB)XCG 0.00\n\nInvoice (factuur)\n\nINV-2026-0142 · Brisa Hotel Group\n\nDraft\n\nTotal\n\nXCG 4,915.75\n\nDue\n\nOct 28, 2026\n\nFrom Kas Kolor Studio\n\nInvoice (factuur) INV-2026-0142\n\nBalance due\n\nXCG 4,915.75\n\nDue Oct 28, 2026\n\nPay with Sentoo\n\nYour banking app · Sentoo\n\nApprove payment to Kas Kolor Studio\n\nXCG 4,915.75\n\nReference INV-2026-0142\n\nApprove\n\nSeptember 2026\n\nAll clients\n\nInvoiced\n\nXCG 18,240.00\n\nCollected\n\nXCG 12,560.25\n\nOutstanding\n\nXCG 10,595.75\n\nPayments\n\nKas di Pan Bakery\n\nINV-2026-0137 · Bank transfer · 2 days ago\n\nXCG 1,250.00\n\nSeru Coffee Roasters\n\nINV-2026-0131 · Sentoo · Last week\n\nXCG 860.00\n\n## See retainers running low and projects heading over budget, before they cost you.\n\nAfter the invoice is paid, Zentract keeps watching: the hours left on each retainer, and a written report on money at risk once there is enough history.\n\n01Watch retainer hoursHours used against what each retainer includes, with the ones running low called out.02Read the Agency Health ReportMoney at risk, the month's forecast, and projects heading over budget, once there is enough history.\n\nPause\n\nHours used against what each retainer includes, with the ones running low called out.\n\nKKKas Kolor StudioFinancials\n\nActive retainers\n\nThis month\n\nBrisa Hotel Group\n\nWebsite care\n\n2h left18 / 20h\n\nSeru Coffee Roasters\n\nContent retainer\n\n11 / 40h\n\nKas di Pan Bakery\n\nSocial media\n\n6 / 15h\n\nBrisa Hotel Group has 2 hours left on website care this month.\n\nAgency Health Report\n\nLatest period\n\nRevenue at riskXCG 0.00\n\nAdjusted forecastXCG 0.00\n\nBillable utilization0%\n\nHeading over budget\n\nBooking platform · Brisa Hotel Group92% of budget\n\nMenu redesign · Kas di Pan Bakery81% of budget\n\nYou get a notification when a new report is ready.\n\n## Free to start.\nAdd people, clients, and projects when the team grows.\n\nThe free plan has no time limit and does not ask for a card. Time tracking, proposals, quotes, invoices, reports, financials, and Dutch Caribbean tax are included. Growth ($99 a month) and Scale ($299 a month) raise how many people, clients, and projects you can have.\n\n[Compare plans](https://zentract.io/pricing)\n\n### Free\n\n$0/ month\n\n- ✓3 team members\n- ✓5 clients\n- ✓10 projects\n- ✓Unlimited time tracking\n- ✓Invoice generation\n- ✓Dutch Caribbean tax\n- ✓iOS & Android apps\n\n[Get started](https://zentract.io/sign-up)\n\n## Common questions\n\nDetails on time tracking, billing, and the free plan.\n\nWhere does my team log time?\n\nCan I bill hours we have already tracked?\n\nWhat is the difference between a proposal, a quote, and an invoice?\n\nWho on the team sees invoices and Financials?\n\nWhat does Financials show?\n\nWhat is the Agency Health Report?\n\nDoes Zentract handle tax in the Dutch Caribbean?\n\nDoes Zentract add VAT or sales tax elsewhere?\n\nCan clients pay with Sentoo?\n\nHow do clients pay my invoices?\n\nWhich currencies can I invoice in?\n\nWhat does the free plan include?\n\n## From the work your team did\nto the invoice the client pays.\n\nKeep the client, the project, and the hours together, then bill from that record.\n\n[Get started](https://zentract.io/sign-up)\n\nFree plan · No credit card\n\nAlready using Zentract? [Sign in →](https://zentract.io/sign-in)\n",
"markdownStats": {
"images": 2,
"links": 26,
"tables": 1,
"codeBlocks": 0,
"headings": 17
},
"tokens": {
"htmlTokens": 45327,
"markdownTokens": 2097,
"reduction": 43230,
"reductionPercent": 95
},
"score": {
"score": 91,
"grade": "A",
"rubricVersion": 3,
"dimensions": {
"accessibility": {
"score": 100,
"weight": 30,
"grade": "A",
"checks": {
"content_without_js": {
"score": 100,
"weight": 55,
"evidence": "proven",
"details": "Content available without JavaScript"
},
"fast_content_position": {
"score": 100,
"weight": 25,
"evidence": "plausible",
"details": "Main content starts at 13% of HTML"
},
"reasonable_page_size": {
"score": 100,
"weight": 20,
"evidence": "plausible",
"details": "Page size: 142KB"
}
}
},
"aiDiscoverability": {
"score": 81,
"weight": 25,
"grade": "B",
"checks": {
"robots_allows_ai_bots": {
"score": 100,
"weight": 35,
"evidence": "proven",
"details": "All major AI search bots allowed"
},
"supports_markdown_negotiation": {
"score": 25,
"weight": 20,
"evidence": "plausible",
"details": "CDN level (Cloudflare) — Content negotiation",
"mechanisms": {
"negotiation": true,
"mdUrl": false,
"linkTag": false,
"linkHeader": false
}
},
"has_sitemap": {
"score": 100,
"weight": 15,
"evidence": "plausible",
"details": "Sitemap found"
},
"has_robots_txt": {
"score": 100,
"weight": 10,
"evidence": "plausible",
"details": "robots.txt exists"
},
"has_llms_txt": {
"score": 100,
"weight": 10,
"evidence": "speculative",
"details": "llms.txt exists and is valid"
},
"has_content_signals": {
"score": 60,
"weight": 10,
"evidence": "speculative",
"details": "robots.txt: ai-train=no, search=yes, ai-input=yes",
"mechanisms": {
"robotsTxt": true,
"httpHeader": false,
"policy": false
}
}
}
},
"structuredData": {
"score": 100,
"weight": 20,
"grade": "A",
"checks": {
"has_schema_org": {
"score": 100,
"weight": 35,
"evidence": "proven",
"details": "JSON-LD found: Organization, WebApplication, FAQPage"
},
"has_open_graph": {
"score": 100,
"weight": 20,
"evidence": "plausible",
"details": "All OG tags present"
},
"has_meta_description": {
"score": 100,
"weight": 20,
"evidence": "plausible",
"details": "Meta description: 223 chars"
},
"has_canonical_url": {
"score": 100,
"weight": 15,
"evidence": "plausible",
"details": "Canonical URL present"
},
"has_lang_attribute": {
"score": 100,
"weight": 10,
"evidence": "plausible",
"details": "lang=\"en\""
}
}
},
"semanticHtml": {
"score": 81,
"weight": 15,
"grade": "B",
"checks": {
"proper_heading_hierarchy": {
"score": 100,
"weight": 30,
"evidence": "plausible",
"details": "Clean heading hierarchy"
},
"uses_article_or_main": {
"score": 100,
"weight": 25,
"evidence": "plausible",
"details": "Has <main>"
},
"semantic_elements": {
"score": 23,
"weight": 20,
"evidence": "plausible",
"details": "14 semantic elements, 190 divs (ratio: 7%)"
},
"meaningful_alt_texts": {
"score": 100,
"weight": 15,
"evidence": "plausible",
"details": "1/1 images with meaningful alt text (1 decorative, not counted)"
},
"low_div_nesting": {
"score": 66,
"weight": 10,
"evidence": "speculative",
"details": "Avg div depth: 8.4, max: 15"
}
}
},
"contentEfficiency": {
"score": 86,
"weight": 10,
"grade": "B",
"checks": {
"token_reduction_ratio": {
"score": 100,
"weight": 40,
"evidence": "speculative",
"details": "95% token reduction (HTML→Markdown)"
},
"content_to_noise_ratio": {
"score": 100,
"weight": 30,
"evidence": "speculative",
"details": "Content ratio: 47.2% (68646 content chars / 145379 HTML bytes)"
},
"reasonable_page_weight": {
"score": 80,
"weight": 20,
"evidence": "speculative",
"details": "HTML size: 142KB"
},
"minimal_inline_styles": {
"score": 0,
"weight": 10,
"evidence": "speculative",
"details": "61/676 elements with inline styles (9.0%)"
}
}
}
}
},
"recommendations": [
{
"id": "add_markdown_negotiation",
"priority": "high",
"category": "aiDiscoverability",
"titleKey": "rec.add_markdown_negotiation.title",
"descriptionKey": "rec.add_markdown_negotiation.description_partial",
"howToKey": "rec.add_markdown_negotiation.howto",
"howToStepKeys": [
"rec.add_markdown_negotiation.step.md_url",
"rec.add_markdown_negotiation.step.link_tag",
"rec.add_markdown_negotiation.step.link_header"
],
"effort": "significant",
"estimatedImpact": 3.8,
"maxImpact": 5,
"evidence": "plausible",
"checkScore": 25,
"checkDetails": "CDN level (Cloudflare) — Content negotiation"
},
{
"id": "add_semantic_elements",
"priority": "medium",
"category": "semanticHtml",
"titleKey": "rec.add_semantic_elements.title",
"descriptionKey": "rec.add_semantic_elements.description",
"howToKey": "rec.add_semantic_elements.howto",
"howToStepKeys": null,
"effort": "moderate",
"estimatedImpact": 2.3,
"maxImpact": 3,
"evidence": "plausible",
"checkScore": 23,
"checkDetails": "14 semantic elements, 190 divs (ratio: 7%)"
},
{
"id": "remove_inline_styles",
"priority": "medium",
"category": "contentEfficiency",
"titleKey": "rec.remove_inline_styles.title",
"descriptionKey": "rec.remove_inline_styles.description",
"howToKey": "rec.remove_inline_styles.howto",
"howToStepKeys": null,
"effort": "moderate",
"estimatedImpact": 1,
"maxImpact": 1,
"evidence": "speculative",
"checkScore": 0,
"checkDetails": "61/676 elements with inline styles (9.0%)"
}
],
"llmsTxtPreview": "# zentract.io\n\n> Keep clients, projects, and tasks in one place. Your team logs time on the work. You send proposals and quotes, turn billable hours into invoices, and see what is still unpaid, over budget, or running out of retainer hours.\n\n## Documentation\n- [Help](https://zentract.io/help)\n- [Aruba](https://zentract.io/help/taxes/aruba)\n- [Curaçao](https://zentract.io/help/taxes/curacao)\n- [Sint Maarten](https://zentract.io/help/taxes/sint-maarten)\n- [Bonaire](https://zentract.io/help/taxes/bonaire)\n- [Saba](https://zentract.io/help/taxes/saba)\n- [Sint Eustatius](https://zentract.io/help/taxes/sint-eustatius)\n- [How tax works in Zentract](https://zentract.io/help/taxes)\n- [Get paid with Sentoo](https://zentract.io/help/sentoo)\n\n## Main\n- [Zentract: From the proposal to the paid invoice](https://zentract.io): Keep clients, projects, and tasks in one place. Your team logs time on the work. You send proposals and quotes, turn bi…\n- [Pricing](https://zentract.io/pricing)\n- [ZentractZENTRACT](https://zentract.io/)\n- [Developers](https://zentract.io/developers)\n- [Sign in](https://zentract.io/sign-in)\n- [Get started](https://zentract.io/sign-up)\n\n## Legal\n- [Privacy](https://zentract.io/privacy)\n- [Terms](https://zentract.io/terms)\n\n## Support\n- [Help](https://zentract.io/help)\n- [Contact](https://zentract.io/contact)\n\n",
"llmsTxtExisting": "# Zentract\n\n> Keep clients, projects, and tasks in one place. Your team logs time on the work. You send proposals and quotes, turn billable hours into invoices, and see what is still unpaid, over budget, or running out of retainer hours. Zentract applies Dutch Caribbean tax (OB, ABB and BBO) to invoices, quotes and proposals, and clients can pay invoices online, including with Sentoo.\n\nWhat you can do in Zentract:\n\n- Clients, projects, and tasks, with a budget and an optional retainer\n- Time logged on the task, from the dashboard or the phone\n- Proposals with scope, timeline, team, and budget\n- Quotes, and invoices drafted from billable hours or written by hand\n- Reports for time, project status, timesheets, and invoices\n- Financials for what was invoiced, collected, still owed, and retainer hours used\n- Dutch Caribbean tax on invoices, quotes, and proposals: OB, ABB, and BBO for Aruba, Curaçao, Sint Maarten, Bonaire, Saba, and Sint Eustatius\n- Online invoice payments: with Sentoo for XCG and AWG invoices, and by card for businesses in supported countries such as the United States and most of Europe\n\n## Product\n\n- [Home](https://zentract.io): Client work from the proposal to the paid invoice.\n- [Pricing](https://zentract.io/pricing): Free $0 a month (3 team members, 5 clients, 10 projects); Growth $99 a month (10 team members, 100 clients, 100 projects); Scale $299 a month (Unlimited team members, Unlimited clients, Unlimited projects). Priced per organization, billed in USD.\n\n## Help\n\n- [Dutch Caribbean tax on invoices: OB, ABB and BBO](https://zentract.io/help/taxes): How Zentract applies Aruba, Curaçao, Sint Maarten, Bonaire, Saba and Sint Eustatius turnover taxes to invoices, quotes and proposals: rates, required invoice details, reverse charge and clients abroad.\n- [Aruba BBO, BAVP and BAZV on invoices: 7% turnover taxes](https://zentract.io/help/taxes/aruba): How Aruba's 7% turnover taxes (BBO 2.5%, BAVP 1.5% and BAZV 3%) apply to service invoices, what an Aruba invoice must show, clients abroad, and KOR relief.\n- [Curaçao OB on invoices: 6%, CRIB, KvK and factuur rules](https://zentract.io/help/taxes/curacao): How 6% Curaçao turnover tax (OB) applies to service invoices, what a Curaçao invoice (factuur) must show, OB in XCG, and clients abroad.\n- [Sint Maarten turnover tax (BBO/TOT) on invoices: 5%](https://zentract.io/help/taxes/sint-maarten): How 5% Sint Maarten turnover tax (BBO, also called TOT) applies to service invoices, what a Sint Maarten invoice must show, and clients abroad.\n- [Bonaire ABB on invoices: 6% on services](https://zentract.io/help/taxes/bonaire): How 6% ABB applies to services from Bonaire, what a Caribbean Netherlands invoice must show, KOR relief, and when an invoice says “ABB verlegd”.\n- [Saba ABB on invoices: 4% on services](https://zentract.io/help/taxes/saba): How 4% ABB applies to services from Saba, what a Caribbean Netherlands invoice must show, KOR relief, and when an invoice says “ABB verlegd”.\n- [Sint Eustatius ABB on invoices: 4% on services](https://zentract.io/help/taxes/sint-eustatius): How 4% ABB applies to services from Sint Eustatius, what a Caribbean Netherlands invoice must show, KOR relief, and when an invoice says “ABB verlegd”.\n- [Sentoo invoice payments: get paid in XCG and AWG from the client's banking app](https://zentract.io/help/sentoo): Connect your Sentoo merchant account to Zentract so clients pay XCG and AWG invoices from their own banking app. Payments go straight to you and are recorded on the invoice.\n\n## Developers\n\n- [Zentract API and MCP server: connect AI assistants and your own tools](https://zentract.io/developers): Connect Claude, ChatGPT or another AI assistant to Zentract through its MCP server, or build on the OAuth 2 API for clients, projects, tasks, time, invoices, quotes and proposals.\n- [API reference](https://zentract.io/api-docs): Reference for the OAuth 2 REST API.\n- [OpenAPI specification](https://zentract.io/openapi.json): Machine-readable description of the API.\n- [MCP server](https://mcp.zentract.io/mcp): Remote MCP endpoint (streamable HTTP, OAuth sign-in) with tools for tasks, projects, clients, time entries and timers.\n- [MCP server card](https://zentract.io/.well-known/mcp.json): Tools and transport of the MCP server.\n\n## Optional\n\n- [Contact](https://zentract.io/contact)\n- [Privacy policy](https://zentract.io/privacy)\n- [Terms of service](https://zentract.io/terms)",
"emergingProtocols": {
"oauthProtectedResource": {
"exists": true,
"url": "https://zentract.io/.well-known/oauth-protected-resource",
"resource": "https://zentract.io",
"authorizationServers": [
"https://zentract.io"
],
"scopesSupported": [
"projects:read",
"projects:write",
"projects:delete",
"tasks:read",
"tasks:write",
"tasks:delete",
"clients:read",
"clients:write",
"clients:delete",
"time-entries:read",
"time-entries:write",
"time-entries:delete",
"invoices:read",
"invoices:write",
"invoices:delete",
"proposals:read",
"proposals:write",
"proposals:delete",
"quotes:read",
"quotes:write",
"quotes:delete",
"tax-profiles:read",
"reports:read",
"reports:generate",
"reports:delete",
"teams:read",
"teams:write",
"users:read",
"users:write",
"organization:read",
"organization:write",
"notifications:read",
"notifications:write",
"attachments:read",
"attachments:write",
"apps:write"
]
},
"oauthDiscovery": {
"exists": true,
"url": "https://zentract.io/.well-known/oauth-authorization-server",
"issuer": "https://zentract.io",
"authorizationEndpoint": "https://zentract.io/api/oauth2/authorize",
"tokenEndpoint": "https://zentract.io/api/oauth2/token",
"grantTypesSupported": [
"authorization_code",
"refresh_token",
"client_credentials"
],
"scopesSupported": [
"projects:read",
"projects:write",
"projects:delete",
"tasks:read",
"tasks:write",
"tasks:delete",
"clients:read",
"clients:write",
"clients:delete",
"time-entries:read",
"time-entries:write",
"time-entries:delete",
"invoices:read",
"invoices:write",
"invoices:delete",
"proposals:read",
"proposals:write",
"proposals:delete",
"quotes:read",
"quotes:write",
"quotes:delete",
"tax-profiles:read",
"reports:read",
"reports:generate",
"reports:delete",
"teams:read",
"teams:write",
"users:read",
"users:write",
"organization:read",
"organization:write",
"notifications:read",
"notifications:write",
"attachments:read",
"attachments:write",
"apps:write"
]
},
"mcpServerCard": {
"exists": true,
"url": "https://zentract.io/.well-known/mcp/server-card.json",
"draft": true,
"name": null,
"version": "1.0",
"description": "Public product tools and workspace tools for Zentract tasks, task creation and updates, projects, clients, time entries, manual time-entry creation, and timers. Connecting requires signing in with Zentract.",
"transport": null,
"tools": 15,
"resources": null,
"prompts": null
},
"a2aAgentCard": {
"exists": true,
"url": "https://zentract.io/.well-known/agent-card.json",
"name": "Zentract Agent Discovery",
"version": "0.1.1",
"description": "Public product information and workspace operations for Zentract tasks, task creation and updates, projects, clients, time entries, manual time-entry creation, and timers, after signing in with Zentract.",
"capabilities": 3,
"skills": 15,
"endpoint": "https://mcp.zentract.io/mcp"
},
"apiCatalog": {
"exists": true,
"url": "https://zentract.io/.well-known/api-catalog",
"contentType": "application/linkset+json; charset=utf-8; profile=\"https://www.rfc-editor.org/info/rfc9727\"",
"validMediaType": true,
"apis": 1
},
"agentSkills": {
"exists": true,
"url": "https://zentract.io/.well-known/agent-skills/index.json",
"draft": true,
"schema": "https://schemas.agentskills.io/discovery/0.2.0/schema.json",
"skills": 2,
"names": [
"zentract-public-api",
"zentract-public-site"
]
},
"count": 6,
"total": 6
},
"botAccess": {
"probed": true,
"bot": "OAI-SearchBot",
"controlStatus": 200,
"botStatus": 200,
"discriminates": false,
"refusedAsBot": false,
"edge": "Cloudflare",
"verifiable": false,
"detail": "This origin answers OAI-SearchBot exactly as it answers any other client (200). No edge-level filtering of AI crawlers observed."
},
"snippets": [
{
"id": "add_markdown_negotiation",
"title": "Support Markdown for Agents",
"description": "Let AI agents request a clean Markdown version of any page via content negotiation, .md alternate URLs, link tags or Link headers.",
"language": "html",
"code": "<!-- Mechanism 3: link tag advertising the .md alternate -->\n<link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">",
"filename": "<head>",
"stacks": [
{
"id": "html",
"label": "HTML <head>",
"language": "html",
"filename": "<head>",
"code": "<!-- Mechanism 3: link tag advertising the .md alternate -->\n<link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">"
},
{
"id": "express",
"label": "Express",
"language": "javascript",
"filename": "server.js",
"code": "// Mechanisms 1 + 4: content negotiation + Link header\napp.get('/page', (req, res) => {\n res.setHeader('Vary', 'Accept');\n res.setHeader('Link', '</page.md>; rel=\"alternate\"; type=\"text/markdown\"');\n if ((req.headers.accept || '').includes('text/markdown')) {\n res.type('text/markdown; charset=utf-8');\n return res.send(renderMarkdown('page'));\n }\n res.render('page');\n});"
},
{
"id": "fastify",
"label": "Fastify",
"language": "javascript",
"filename": "server.js",
"code": "// Mechanisms 1 + 4: content negotiation + Link header\nfastify.get('/page', async (req, reply) => {\n reply.header('Vary', 'Accept');\n reply.header('Link', '</page.md>; rel=\"alternate\"; type=\"text/markdown\"');\n if ((req.headers.accept || '').includes('text/markdown')) {\n return reply.type('text/markdown; charset=utf-8').send(renderMarkdown('page'));\n }\n return reply.view('/page.ejs');\n});"
},
{
"id": "nextjs",
"label": "Next.js",
"language": "typescript",
"filename": "app/page/route.ts",
"code": "// Next.js App Router — Route Handler returning Markdown\nimport { NextRequest } from 'next/server';\nimport { renderMarkdown } from '@/lib/md';\nexport async function GET(req: NextRequest) {\n const accept = req.headers.get('accept') || '';\n if (accept.includes('text/markdown')) {\n return new Response(await renderMarkdown('page'), {\n headers: {\n 'Content-Type': 'text/markdown; charset=utf-8',\n 'Vary': 'Accept',\n },\n });\n }\n // Fall through to the page component\n return new Response(null, { status: 404 });\n}"
},
{
"id": "wordpress",
"label": "WordPress",
"language": "php",
"filename": "functions.php",
"code": "<?php\n// Mechanism 1: respond to Accept: text/markdown on the same URL\nadd_action('template_redirect', function () {\n if (!is_singular()) return;\n $accept = $_SERVER['HTTP_ACCEPT'] ?? '';\n if (strpos($accept, 'text/markdown') === false) return;\n header('Content-Type: text/markdown; charset=utf-8');\n header('Vary: Accept');\n $post = get_queried_object();\n echo \"# \" . get_the_title($post) . \"\\n\\n\";\n echo wp_strip_all_tags(apply_filters('the_content', $post->post_content));\n exit;\n});"
},
{
"id": "static",
"label": "Hugo / Jekyll / Astro",
"language": "txt",
"filename": "static/page.md",
"code": "# Mechanism 2: serve .md alongside .html\n# Hugo: place page.md in /static/ — built unchanged\n# Jekyll: drop page.md in /assets/ — copied as-is\n# Astro: src/pages/page.md.ts that exports a GET returning markdown\n\n# Then advertise with mechanism 3 in <head>:\n# <link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">"
}
]
}
]
}
Utilisez notre API pour obtenir ceci de manière programmatique (bientôt disponible)
Ce JSON est à usage interne — contrairement au Markdown et au llms.txt, il n’est pas destiné à être téléversé sur votre site. Conservez-le comme référence pour suivre l’évolution de votre score, partagez-le avec votre équipe de développement ou intégrez-le dans votre pipeline CI/CD.
Partagez vos résultats
Ou demandez à une IA de vous aider à l'améliorer
Envie d'un deuxième avis ?
Cloudflare propose aussi un scanner gratuit, et il pose une question différente. Il note ce que votre site publie pour que les agents l'appellent : MCP server cards, Agent Skills, catalogues d'API, enregistrements DNS. Nous notons si un agent peut atteindre votre contenu, le lire et le comprendre. Un site peut réussir l'un et échouer l'autre : attendez-vous à deux chiffres différents, ce sont les réponses à deux questions différentes, et les deux méritent d'être connues.
Analyser zentract.io avec CloudflareIntégrez votre badge
Ajoutez ce badge à votre site. Il se met à jour automatiquement lorsque votre score de préparation à l’IA change.
<script src="https://agentready.md/badge.js" data-id="73275118-7471-4941-a9cb-4598cf41d778" data-domain="zentract.io"></script>
[](https://agentready.md/fr/r/zentract.io)
Bientôt : Analyse de domaine complet
Explorez l’ensemble de votre domaine, générez un llms.txt et surveillez votre score de préparation IA dans le temps. Rejoignez la liste d’attente pour être informé.
Vous êtes sur la liste ! Nous vous préviendrons lors du lancement.