A portal your customers run themselves.
They pay, renew, add extras, open tickets and manage their services, in their language and currency, under your brand.
Everything they have, at a glance
Services, domains, open invoices and open tickets on the first screen, with your announcements and help articles beside them.
Their hosting, their controls
Disk and bandwidth, mailboxes and databases, one-click sign-in to cPanel or webmail, and for servers: power, a console, reinstall and snapshots.
Ubuntu 24.04 · 2 vCPU · 4 GB
Pay, save a method, top up
Customers pay invoices, save a card, PayPal or a SEPA mandate for renewals, choose which one is charged, and top up credit for later invoices.
Issued 2026-10-16 · due 2026-10-30
PayPal · collected once
Add-ons and upgrades without a ticket
Customers add extras to a service themselves. A move to a bigger plan is invoiced only for the rest of the term.
Priced on the server before checkout
Tickets and answers in one place
Customers open tickets about a specific service, attach files, and search your knowledge base first.
The portal, inside your own site
Place the account widget on your website and customers see their invoices and services there, in your design, signed in on our side.
<!-- one script, then the widgets you want --> <script src="https://cdn.teculiar.net/embed/latest/teculiar.js" data-key="pk_live_…" data-base-url="https://yourdomain.com"></script> <teculiar-pricing-table></teculiar-pricing-table> <teculiar-checkout product="hosting-pro"></teculiar-checkout>
const tec = Teculiar.init({ publicKey: "pk_live_…" }); const plans = await tec.storefront.products(); tec.cart.add({ productId, productPriceId, quantity: 1 }); const quote = await tec.orders.preview({ items: tec.cart.toOrderItems() }); // the server prices the order; the browser never decides a total
# anonymous read with a publishable key curl https://yourdomain.com/api/v1/public/storefront/products \ -H "Teculiar-Key: pk_live_…" # every event is signed and retried invoice.paid · service.provisioned · domain.renewed