Changes for page Pricing
Last modified by Alex Cotiuga on 2026/07/13 06:55
From version 2.6
edited by Alex Cotiuga
on 2026/07/10 04:23
on 2026/07/10 04:23
Change comment:
There is no comment for this version
To version 2.24
edited by Alex Cotiuga
on 2026/07/10 05:16
on 2026/07/10 05:16
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
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', ... ... @@ -38,67 +38,78 @@ 38 38 ], 39 39 'cta': 'Discuss support plan' 40 40 }]) 41 -#set ($commonPackages = [ 42 -{ 48 +#set ($commonPackages = [{ 43 43 'service': 'XWiki Health Check', 44 44 'price': '€390', 45 - '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 46 46 },{ 47 47 'service': 'Upgrade Readiness Review', 48 48 'price': '€390', 49 - 'description': 'Upgrade path, compatibility, customization risk and effort estimate before implementation.' 56 + 'description': 'Upgrade path, compatibility risks, customizations and effort estimate before implementation.', 57 + 'url': $upgradeURL 50 50 },{ 51 51 'service': 'XWiki Authentication Review', 52 52 'price': '€290', 53 - 'description': 'Review of login flow, user provisioning, groups, access control and authentication options.' 61 + 'description': 'Review of login flow, users, groups, access control and authentication options.', 62 + 'url': $authURL 54 54 },{ 55 55 'service': 'Urgent XWiki Troubleshooting', 56 - 'price': 'From €250', 57 - 'description': 'Live troubleshooting for blocking issues, errors, failed upgrades or production problems.' 65 + 'price': 'From €250/session', 66 + 'description': 'Live troubleshooting for blocking issues, errors, failed upgrades or production problems.', 67 + 'url': $maintenanceURL 58 58 },{ 59 59 'service': 'Standard XWiki LTS Upgrade', 60 60 'price': 'From €790', 61 - 'description': 'Upgrade preparation, execution, basic compatibility checks and post-upgrade validation.' 71 + 'description': 'Upgrade preparation, execution, compatibility checks and post-upgrade validation.', 72 + 'url': $upgradeURL 62 62 },{ 63 63 'service': 'XWiki MFA Installation & Configuration', 64 64 'price': 'From €490', 65 - 'description': 'MFA installation for the standard XWiki login flow. In SSO environments, MFA may be better enforced by the identity provider.' 76 + 'description': 'MFA setup for the standard XWiki login flow, with configuration, testing and guidance.', 77 + 'url': $mfaURL 66 66 },{ 67 67 'service': 'OIDC / Microsoft Entra ID Setup', 68 68 'price': 'From €590', 69 - 'description': 'OpenID Connect setup, user mapping considerations, group and access-control review, and validation.' 81 + 'description': 'OpenID Connect setup, user mapping considerations, access review and validation.', 82 + 'url': $authURL 70 70 },{ 71 71 'service': 'LDAP / Active Directory Review', 72 72 'price': 'From €390', 73 - '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 74 74 },{ 75 75 'service': 'Access Control Review', 76 76 'price': 'From €390', 77 - 'description': 'Review of groups, permissions, public/internal/restricted areas and subwiki access model.' 91 + 'description': 'Review of groups, permissions, restricted areas, public access and subwiki access model.', 92 + 'url': $authURL 78 78 },{ 79 79 'service': 'Advanced Authentication Work', 80 - 'price': 'Quoted after review', 81 - 'description': 'Custom authenticators, container authentication, special login flows or wiki farm authentication strategy.' 95 + 'price': 'Quoted', 96 + 'description': 'Custom authenticators, container authentication, special login flows or wiki farm authentication strategy.', 97 + 'url': $authURL 82 82 },{ 83 - 'service': 'XWiki AWS Cloud Hosting', 84 - 'price': 'From €120/mo', 85 - 'description': 'Single-instance AWS hosting for small XWiki environments, including cloud server, storage, basic backups and modest traffic. Larger storage, high availability, managed databases or high-traffic environments are quoted separately.' 86 -}, 87 -{ 88 88 'service': 'AWS Hosting Setup for XWiki', 89 89 'price': 'From €490', 90 - 'description': 'Initial AWS deployment setup for XWiki, including server preparation, database/runtime configuration, HTTPS setup and basic backup strategy.' 101 + 'description': 'Initial AWS deployment setup, including server preparation, HTTPS and basic backup strategy.', 102 + 'url': $maintenanceURL 103 +}{ 104 + 'service': 'XWiki AWS Cloud Hosting', 105 + 'price': 'From €59/month', 106 + 'description': 'Minimal single-instance AWS hosting for small XWiki environments, using EC2, Nginx, Docker, database container, Let’s Encrypt SSL, EBS storage and basic snapshots.', 107 + 'url': $maintenanceURL 91 91 }]) 92 92 #set ($supportPlans = [{ 93 93 'icon': 'leaf', 94 94 'title': 'Essential Support', 95 95 'price': '€390/month', 96 - 'description': 'For small teams that need occasional XWiki help.', 113 + 'description': 'For small teams that need occasional XWiki help at a predictable monthly cost.', 97 97 'items': [ 98 - 'Up to 4hours/month',115 + 'Up to 1 support day/month', 99 99 'Email support', 117 + 'Troubleshooting and guidance', 100 100 'Small configuration fixes', 101 - 'Upgrade and security guidance'119 + 'Upgrade and security recommendations' 102 102 ], 103 103 'cta': 'Request support plan' 104 104 },{ ... ... @@ -105,13 +105,14 @@ 105 105 'icon': 'check-circle', 106 106 'title': 'Standard Support', 107 107 'price': '€790/month', 108 - 'description': 'For active XWiki environments that need regular support andmaintenance.',126 + 'description': 'For active XWiki environments that need regular support, maintenance and small improvements.', 109 109 'items': [ 110 - 'Up to 8hours/month',128 + 'Up to 2 support days/month', 111 111 'Prioritized support', 112 112 'Troubleshooting', 113 113 'Minor improvements', 114 - 'Maintenance guidance' 132 + 'Maintenance guidance', 133 + 'Upgrade planning' 115 115 ], 116 116 'cta': 'Request standard support' 117 117 },{ ... ... @@ -120,7 +120,7 @@ 120 120 'price': 'From €1,490/month', 121 121 'description': 'For business-critical XWiki platforms or organizations with ongoing XWiki work.', 122 122 'items': [ 123 - 'Larger monthly allocation', 142 + 'Larger monthly support allocation', 124 124 'Prioritized handling', 125 125 'Upgrade planning', 126 126 'Authentication and extension support', ... ... @@ -131,19 +131,23 @@ 131 131 #set ($complexProjects = [{ 132 132 'icon': 'sitemap', 133 133 'title': 'Wiki farms', 134 - 'content': 'Restructuring, subwiki access models, internal and external collaboration areas.' 153 + 'content': 'Restructuring, subwiki access models, internal and external collaboration areas.', 154 + 'url': $authURL 135 135 },{ 136 136 'icon': 'exchange', 137 137 'title': 'Migrations', 138 - '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 139 139 },{ 140 140 'icon': 'puzzle-piece', 141 141 'title': 'Custom applications', 142 - 'content': 'Workflow applications, structured data, dashboards and internal business tools.' 163 + 'content': 'Workflow applications, structured data, dashboards and internal business tools.', 164 + 'url': $developmentURL 143 143 },{ 144 144 'icon': 'tachometer', 145 145 'title': 'Stability work', 146 - 'content': 'Performance, troubleshooting, upgrade cleanup and long-term maintainability improvements.' 168 + 'content': 'Performance, troubleshooting, upgrade cleanup and long-term maintainability improvements.', 169 + 'url': $maintenanceURL 147 147 }]) 148 148 #set ($faqItems = [{ 149 149 'question': 'Are these fixed prices?', ... ... @@ -177,7 +177,8 @@ 177 177 <h1 id="pricing-title">XWiki Service Packages</h1> 178 178 179 179 <p class="lead"> 180 - 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. 181 181 </p> 182 182 183 183 <ul class="benefits"> ... ... @@ -186,7 +186,7 @@ 186 186 <li>Fixed quotes for complex work</li> 187 187 </ul> 188 188 189 - <div id="hero-cta">213 + <div class="hero-actions"> 190 190 <a class="btn btn-primary" href="$contactURL">Request a quote</a> 191 191 <a class="btn btn-secondary" href="#support">View monthly support</a> 192 192 </div> ... ... @@ -198,8 +198,9 @@ 198 198 <div class="container"> 199 199 <h2 id="starting-points-title">Three common ways to start</h2> 200 200 <p class="section-intro"> 201 - Most XWiki requests fit into one of three paths: review the current setup, implement a defined change, 202 - 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. 203 203 </p> 204 204 205 205 <div class="pathways"> ... ... @@ -230,7 +230,7 @@ 230 230 </div> 231 231 </section> 232 232 233 -<section aria-labelledby="pricing-note-title"> 258 +<section class="industry-trust-section" aria-labelledby="pricing-note-title"> 234 234 <div class="container"> 235 235 <div class="industry-trust-panel"> 236 236 <h2 id="pricing-note-title">Simple starting prices, reviewed scope when needed</h2> ... ... @@ -251,24 +251,37 @@ 251 251 a quick review before confirming the final scope. 252 252 </p> 253 253 254 - <table class="table table-bordered table-striped"> 255 - <thead> 256 - <tr> 257 - <th>Service</th> 258 - <th>Starting price</th> 259 - <th>What it covers</th> 260 - </tr> 261 - </thead> 262 - <tbody> 263 - #foreach ($entry in $commonPackages) 279 + <div class="table-responsive"> 280 + <table class="table table-bordered table-striped"> 281 + <thead> 264 264 <tr> 265 - <t d><strong>$entry.service</strong></td>266 - <t d>$entry.price</td>267 - <t d>$entry.description</td>283 + <th>Service</th> 284 + <th>Starting price</th> 285 + <th>What it covers</th> 268 268 </tr> 269 - #end 270 - </tbody> 271 - </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> 272 272 </div> 273 273 </section> 274 274 ... ... @@ -320,7 +320,9 @@ 320 320 </div> 321 321 322 322 <p class="section-intro"> 323 - 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. 324 324 </p> 325 325 </div> 326 326 </section> ... ... @@ -339,7 +339,13 @@ 339 339 <div class="widget"> 340 340 <div class="icon"> 341 341 <i class="fa fa-$entry.icon" aria-hidden="true"></i> 342 - <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> 343 343 </div> 344 344 <p>$entry.content</p> 345 345 </div> ... ... @@ -346,7 +346,7 @@ 346 346 #end 347 347 </div> 348 348 349 - <div id="hero-cta">395 + <div class="hero-actions"> 350 350 <a class="btn btn-primary" href="$contactURL">Request a project quote</a> 351 351 </div> 352 352 </div> ... ... @@ -390,9 +390,117 @@ 390 390 }, 391 391 "serviceType": "XWiki consulting, support, upgrades, authentication and maintenance", 392 392 "areaServed": "International", 393 - "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": "59", 495 + "priceCurrency": "EUR", 496 + "description": "Starting monthly price for small single-instance AWS hosting for XWiki." 497 + }] 498 + } 394 394 } 395 395 </script> 396 396 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> 397 397 {{/html}} 398 398 {{/velocity}}