Changes for page Pricing

Last modified by Agnease on 2026/07/10 06:00

From version 2.9
edited by Agnease
on 2026/07/10 04:24
Change comment: There is no comment for this version
To version 2.12
edited by Agnease
on 2026/07/10 05:06
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,6 +1,13 @@
1 1  {{velocity}}
2 2  #set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome'))
3 3  #set ($contactURL = $xwiki.getURL('contact.WebHome'))
4 +#set ($upgradeURL = $xwiki.getURL('services.xwiki-upgrades'))
5 +#set ($maintenanceURL = $xwiki.getURL('services.xwiki-maintenance-support'))
6 +#set ($authURL = $xwiki.getURL('services.xwiki-authentication-access-control'))
7 +#set ($mfaURL = $xwiki.getURL('products.xwiki-two-factor-authentication'))
8 +#set ($securityURL = $xwiki.getURL('services.xwiki-security-review'))
9 +#set ($migrationURL = $xwiki.getURL('services.xwiki-migrations'))
10 +#set ($developmentURL = $xwiki.getURL('services.xwiki-development-integrations'))
4 4  #set ($startingPoints = [{
5 5   'icon': 'search',
6 6   'title': 'Review & diagnose',
... ... @@ -41,62 +41,75 @@
41 41  #set ($commonPackages = [{
42 42   'service': 'XWiki Health Check',
43 43   'price': '€390',
44 - 'description': 'Configuration, version, extension, security and stability review with written recommendations.'
51 + 'description': 'Configuration, version, extension, security and stability review with written recommendations.',
52 + 'url': $securityURL
45 45  },{
46 46   'service': 'Upgrade Readiness Review',
47 47   'price': '€390',
48 - 'description': 'Upgrade path, compatibility risks, customizations and effort estimate before implementation.'
56 + 'description': 'Upgrade path, compatibility risks, customizations and effort estimate before implementation.',
57 + 'url': $upgradeURL
49 49  },{
50 50   'service': 'XWiki Authentication Review',
51 51   'price': '€290',
52 - 'description': 'Review of login flow, users, groups, access control and authentication options.'
61 + 'description': 'Review of login flow, users, groups, access control and authentication options.',
62 + 'url': $authURL
53 53  },{
54 54   'service': 'Urgent XWiki Troubleshooting',
55 55   'price': 'From €250/session',
56 - 'description': 'Live troubleshooting for blocking issues, errors, failed upgrades or production problems.'
66 + 'description': 'Live troubleshooting for blocking issues, errors, failed upgrades or production problems.',
67 + 'url': $maintenanceURL
57 57  },{
58 58   'service': 'Standard XWiki LTS Upgrade',
59 59   'price': 'From €790',
60 - 'description': 'Upgrade preparation, execution, compatibility checks and post-upgrade validation.'
71 + 'description': 'Upgrade preparation, execution, compatibility checks and post-upgrade validation.',
72 + 'url': $upgradeURL
61 61  },{
62 62   'service': 'XWiki MFA Installation & Configuration',
63 63   'price': 'From €490',
64 - 'description': 'MFA setup for the standard XWiki login flow, with configuration, testing and guidance.'
76 + 'description': 'MFA setup for the standard XWiki login flow, with configuration, testing and guidance.',
77 + 'url': $mfaURL
65 65  },{
66 66   'service': 'OIDC / Microsoft Entra ID Setup',
67 67   'price': 'From €590',
68 - 'description': 'OpenID Connect setup, user mapping considerations, access review and validation.'
81 + 'description': 'OpenID Connect setup, user mapping considerations, access review and validation.',
82 + 'url': $authURL
69 69  },{
70 70   'service': 'LDAP / Active Directory Review',
71 71   'price': 'From €390',
72 - 'description': 'LDAP or Active Directory configuration review, profile mapping and group mapping recommendations.'
86 + 'description': 'LDAP or Active Directory configuration review, profile mapping and group mapping recommendations.',
87 + 'url': $authURL
73 73  },{
74 74   'service': 'Access Control Review',
75 75   'price': 'From €390',
76 - 'description': 'Review of groups, permissions, restricted areas, public access and subwiki access model.'
91 + 'description': 'Review of groups, permissions, restricted areas, public access and subwiki access model.',
92 + 'url': $authURL
77 77  },{
78 78   'service': 'Advanced Authentication Work',
79 79   'price': 'Quoted',
80 - 'description': 'Custom authenticators, container authentication, special login flows or wiki farm authentication strategy.'
96 + 'description': 'Custom authenticators, container authentication, special login flows or wiki farm authentication strategy.',
97 + 'url': $authURL
81 81  },{
82 82   'service': 'AWS Hosting Setup for XWiki',
83 83   'price': 'From €490',
84 - 'description': 'Initial AWS deployment setup, including server preparation, HTTPS and basic backup strategy.'
101 + 'description': 'Initial AWS deployment setup, including server preparation, HTTPS and basic backup strategy.',
102 + 'url': $maintenanceURL
85 85  },{
86 86   'service': 'XWiki AWS Cloud Hosting',
87 87   'price': 'From €120/month',
88 - 'description': 'Single-instance AWS hosting for small XWiki environments with storage, basic backups and modest traffic.'
106 + 'description': 'Single-instance AWS hosting for small XWiki environments with storage, basic backups and modest traffic.',
107 + 'url': $maintenanceURL
89 89  }])
90 90  #set ($supportPlans = [{
91 91   'icon': 'leaf',
92 92   'title': 'Essential Support',
93 93   'price': '€390/month',
94 - 'description': 'For small teams that need occasional XWiki help.',
113 + 'description': 'For small teams that need occasional XWiki help at a predictable monthly cost.',
95 95   'items': [
96 - 'Up to 4 hours/month',
115 + 'Up to 1 support day/month',
97 97   'Email support',
117 + 'Troubleshooting and guidance',
98 98   'Small configuration fixes',
99 - 'Upgrade and security guidance'
119 + 'Upgrade and security recommendations'
100 100   ],
101 101   'cta': 'Request support plan'
102 102  },{
... ... @@ -103,13 +103,14 @@
103 103   'icon': 'check-circle',
104 104   'title': 'Standard Support',
105 105   'price': '€790/month',
106 - 'description': 'For active XWiki environments that need regular support and maintenance.',
126 + 'description': 'For active XWiki environments that need regular support, maintenance and small improvements.',
107 107   'items': [
108 - 'Up to 8 hours/month',
128 + 'Up to 2 support days/month',
109 109   'Prioritized support',
110 110   'Troubleshooting',
111 111   'Minor improvements',
112 - 'Maintenance guidance'
132 + 'Maintenance guidance',
133 + 'Upgrade planning'
113 113   ],
114 114   'cta': 'Request standard support'
115 115  },{
... ... @@ -118,7 +118,7 @@
118 118   'price': 'From €1,490/month',
119 119   'description': 'For business-critical XWiki platforms or organizations with ongoing XWiki work.',
120 120   'items': [
121 - 'Larger monthly allocation',
142 + 'Larger monthly support allocation',
122 122   'Prioritized handling',
123 123   'Upgrade planning',
124 124   'Authentication and extension support',
... ... @@ -129,19 +129,23 @@
129 129  #set ($complexProjects = [{
130 130   'icon': 'sitemap',
131 131   'title': 'Wiki farms',
132 - 'content': 'Restructuring, subwiki access models, internal and external collaboration areas.'
153 + 'content': 'Restructuring, subwiki access models, internal and external collaboration areas.',
154 + 'url': $authURL
133 133  },{
134 134   'icon': 'exchange',
135 135   'title': 'Migrations',
136 - 'content': 'Content, platform or documentation migrations into a cleaner XWiki structure.'
158 + 'content': 'Content, platform or documentation migrations into a cleaner XWiki structure.',
159 + 'url': $migrationURL
137 137  },{
138 138   'icon': 'puzzle-piece',
139 139   'title': 'Custom applications',
140 - 'content': 'Workflow applications, structured data, dashboards and internal business tools.'
163 + 'content': 'Workflow applications, structured data, dashboards and internal business tools.',
164 + 'url': $developmentURL
141 141  },{
142 142   'icon': 'tachometer',
143 143   'title': 'Stability work',
144 - 'content': 'Performance, troubleshooting, upgrade cleanup and long-term maintainability improvements.'
168 + 'content': 'Performance, troubleshooting, upgrade cleanup and long-term maintainability improvements.',
169 + 'url': $maintenanceURL
145 145  }])
146 146  #set ($faqItems = [{
147 147   'question': 'Are these fixed prices?',
... ... @@ -175,7 +175,8 @@
175 175   <h1 id="pricing-title">XWiki Service Packages</h1>
176 176  
177 177   <p class="lead">
178 - Clear starting points for XWiki upgrades, authentication, troubleshooting and long-term support.
203 + Clear starting points for independent XWiki consulting, upgrades, authentication configuration,
204 + AWS hosting setup, troubleshooting and long-term maintenance.
179 179   </p>
180 180  
181 181   <ul class="benefits">
... ... @@ -184,7 +184,7 @@
184 184   <li>Fixed quotes for complex work</li>
185 185   </ul>
186 186  
187 - <div id="hero-cta">
213 + <div class="hero-actions">
188 188   <a class="btn btn-primary" href="$contactURL">Request a quote</a>
189 189   <a class="btn btn-secondary" href="#support">View monthly support</a>
190 190   </div>
... ... @@ -196,8 +196,9 @@
196 196   <div class="container">
197 197   <h2 id="starting-points-title">Three common ways to start</h2>
198 198   <p class="section-intro">
199 - Most XWiki requests fit into one of three paths: review the current setup, implement a defined change,
200 - or set up ongoing support.
225 + Agnease provides independent XWiki consulting, upgrade support, authentication configuration,
226 + AWS hosting setup, troubleshooting and long-term maintenance for existing XWiki installations.
227 + Most requests begin by reviewing the current setup, implementing a defined change, or setting up regular support.
201 201   </p>
202 202  
203 203   <div class="pathways">
... ... @@ -228,7 +228,7 @@
228 228   </div>
229 229  </section>
230 230  
231 -<section aria-labelledby="pricing-note-title">
258 +<section class="industry-trust-section" aria-labelledby="pricing-note-title">
232 232   <div class="container">
233 233   <div class="industry-trust-panel">
234 234   <h2 id="pricing-note-title">Simple starting prices, reviewed scope when needed</h2>
... ... @@ -249,24 +249,37 @@
249 249   a quick review before confirming the final scope.
250 250   </p>
251 251  
252 - <table class="table table-bordered table-striped">
253 - <thead>
254 - <tr>
255 - <th>Service</th>
256 - <th>Starting price</th>
257 - <th>What it covers</th>
258 - </tr>
259 - </thead>
260 - <tbody>
261 - #foreach ($entry in $commonPackages)
279 + <div class="table-responsive">
280 + <table class="table table-bordered table-striped">
281 + <thead>
262 262   <tr>
263 - <td><strong>$entry.service</strong></td>
264 - <td>$entry.price</td>
265 - <td>$entry.description</td>
283 + <th>Service</th>
284 + <th>Starting price</th>
285 + <th>What it covers</th>
266 266   </tr>
267 - #end
268 - </tbody>
269 - </table>
287 + </thead>
288 + <tbody>
289 + #foreach ($entry in $commonPackages)
290 + <tr>
291 + <td>
292 + #if ("$!entry.url" != '')
293 + <strong><a href="$entry.url">$entry.service</a></strong>
294 + #else
295 + <strong>$entry.service</strong>
296 + #end
297 + </td>
298 + <td>$entry.price</td>
299 + <td>$entry.description</td>
300 + </tr>
301 + #end
302 + </tbody>
303 + </table>
304 + </div>
305 +
306 + <p class="section-intro">
307 + AWS hosting prices are starting points for small single-instance XWiki environments. Larger storage,
308 + high availability, managed databases, heavier traffic or stricter monitoring requirements are quoted separately.
309 + </p>
270 270   </div>
271 271  </section>
272 272  
... ... @@ -318,7 +318,9 @@
318 318   </div>
319 319  
320 320   <p class="section-intro">
321 - Larger features, migrations, major customizations and complex projects are quoted separately.
361 + Support plans are intended for remote XWiki support, troubleshooting, maintenance guidance,
362 + small configuration changes and minor improvements. Larger features, migrations, major customizations
363 + and complex projects are quoted separately.
322 322   </p>
323 323   </div>
324 324  </section>
... ... @@ -337,7 +337,13 @@
337 337   <div class="widget">
338 338   <div class="icon">
339 339   <i class="fa fa-$entry.icon" aria-hidden="true"></i>
340 - <h4>$entry.title</h4>
382 + <h4>
383 + #if ("$!entry.url" != '')
384 + <a href="$entry.url">$entry.title</a>
385 + #else
386 + $entry.title
387 + #end
388 + </h4>
341 341   </div>
342 342   <p>$entry.content</p>
343 343   </div>
... ... @@ -344,7 +344,7 @@
344 344   #end
345 345   </div>
346 346  
347 - <div id="hero-cta">
395 + <div class="hero-actions">
348 348   <a class="btn btn-primary" href="$contactURL">Request a project quote</a>
349 349   </div>
350 350   </div>
... ... @@ -388,9 +388,117 @@
388 388   },
389 389   "serviceType": "XWiki consulting, support, upgrades, authentication and maintenance",
390 390   "areaServed": "International",
391 - "description": "XWiki service packages for upgrades, support, authentication, troubleshooting, maintenance and implementation."
439 + "description": "Independent XWiki consulting, support, upgrades, authentication configuration, AWS hosting setup, troubleshooting and long-term maintenance for existing XWiki installations.",
440 + "hasOfferCatalog": {
441 + "@type": "OfferCatalog",
442 + "name": "Agnease XWiki service packages",
443 + "itemListElement": [{
444 + "@type": "Offer",
445 + "name": "XWiki Health Check",
446 + "price": "390",
447 + "priceCurrency": "EUR",
448 + "description": "Configuration, version, extension, security and stability review with written recommendations."
449 + },{
450 + "@type": "Offer",
451 + "name": "Upgrade Readiness Review",
452 + "price": "390",
453 + "priceCurrency": "EUR",
454 + "description": "Upgrade path, compatibility risks, customizations and effort estimate before implementation."
455 + },{
456 + "@type": "Offer",
457 + "name": "XWiki Authentication Review",
458 + "price": "290",
459 + "priceCurrency": "EUR",
460 + "description": "Review of login flow, users, groups, access control and authentication options."
461 + },{
462 + "@type": "Offer",
463 + "name": "Urgent XWiki Troubleshooting",
464 + "price": "250",
465 + "priceCurrency": "EUR",
466 + "description": "Starting price per session for live XWiki troubleshooting."
467 + },{
468 + "@type": "Offer",
469 + "name": "Standard XWiki LTS Upgrade",
470 + "price": "790",
471 + "priceCurrency": "EUR",
472 + "description": "Starting price for XWiki LTS upgrade preparation, execution and validation."
473 + },{
474 + "@type": "Offer",
475 + "name": "XWiki MFA Installation & Configuration",
476 + "price": "490",
477 + "priceCurrency": "EUR",
478 + "description": "Starting price for MFA setup for the standard XWiki login flow."
479 + },{
480 + "@type": "Offer",
481 + "name": "OIDC / Microsoft Entra ID Setup",
482 + "price": "590",
483 + "priceCurrency": "EUR",
484 + "description": "Starting price for OpenID Connect setup and validation for XWiki."
485 + },{
486 + "@type": "Offer",
487 + "name": "AWS Hosting Setup for XWiki",
488 + "price": "490",
489 + "priceCurrency": "EUR",
490 + "description": "Starting price for initial AWS deployment setup for XWiki."
491 + },{
492 + "@type": "Offer",
493 + "name": "XWiki AWS Cloud Hosting",
494 + "price": "120",
495 + "priceCurrency": "EUR",
496 + "description": "Starting monthly price for small single-instance AWS hosting for XWiki."
497 + }]
498 + }
392 392  }
393 393  </script>
394 394  
502 +<script type="application/ld+json">
503 +{
504 + "@context": "https://schema.org",
505 + "@type": "FAQPage",
506 + "mainEntity": [{
507 + "@type": "Question",
508 + "name": "Are these fixed prices?",
509 + "acceptedAnswer": {
510 + "@type": "Answer",
511 + "text": "Some services have fixed starting prices. Larger or more complex projects are reviewed first and quoted separately, so the scope, risks and required testing are clear before implementation starts."
512 + }
513 + },{
514 + "@type": "Question",
515 + "name": "Do you charge hourly?",
516 + "acceptedAnswer": {
517 + "@type": "Answer",
518 + "text": "For support plans, time allocation is used to manage monthly work. For projects, Agnease aims to provide clear service packages or fixed quotes whenever the scope can be defined."
519 + }
520 + },{
521 + "@type": "Question",
522 + "name": "Can you work on existing XWiki installations?",
523 + "acceptedAnswer": {
524 + "@type": "Answer",
525 + "text": "Yes. Agnease works with existing XWiki instances, including upgrades, troubleshooting, authentication, customizations, extensions and long-term maintenance."
526 + }
527 + },{
528 + "@type": "Question",
529 + "name": "What happens if my XWiki instance is more complex?",
530 + "acceptedAnswer": {
531 + "@type": "Answer",
532 + "text": "Agnease first reviews the current setup, identifies risks and dependencies, and then provides a quote based on the actual scope."
533 + }
534 + },{
535 + "@type": "Question",
536 + "name": "Can I book a call directly?",
537 + "acceptedAnswer": {
538 + "@type": "Answer",
539 + "text": "Yes. The contact form includes a call booking option, but sending a short description first helps Agnease understand the context before the discussion."
540 + }
541 + },{
542 + "@type": "Question",
543 + "name": "Do prices include external costs?",
544 + "acceptedAnswer": {
545 + "@type": "Answer",
546 + "text": "The prices on this page cover Agnease services. External hosting, infrastructure or third-party costs are discussed separately when relevant."
547 + }
548 + }]
549 +}
550 +</script>
395 395  {{/html}}
396 396  {{/velocity}}