Staaarter

Billing Support Package Tiers

A list of support add-on tiers, from standard email support up through a recommended priority tier and a premium tier with 24/7 phone support. Each row shows the response-time SLA, the support channels included, the price, and its own add button. Built as a static list for enterprise SaaS billing pages where support level is sold as a separate add-on from the base plan.

By Staaarter Team
Billing
Updated April 2, 2026
Docs
Live preview

Docs

Installation

A real shadcn registry command, not a copy-paste stand-in: it fetches this block plus its badge, button dependencies and any missing npm packages, and installs them straight into your project.

npx shadcn add https://staaarter.com/r/billing-support-package-tiers.json

Prefer not to use the CLI? Copy the source from the Code toggle above into src/components/blocks/billing/billing136.tsx instead.

Usage

The file also exports billing136Demo, the exact props behind the preview above. Spread it to get a working section in one line, then replace it with your own data.

import { Billing136, billing136Demo } from "@/components/blocks/billing/billing136";

export default function Page() {
  return <Billing136 {...billing136Demo} />;
}

Props

PropTypeDefaultDescription
headingstringnoneOptional heading shown in the header bar.
descriptionstringnoneOptional supporting text below the heading.
tiersSupportTier[]noneSupport tiers rendered as rows, in the order given.
classNamestringnoneExtra classes for the outer container.

Types

interface SupportTier {
  name: string;
  price: string;
  priceInterval?: string;
  responseTime: string;
  channels: string[];
  recommended?: boolean;
  ctaLabel?: string;
  ctaHref?: string;
}

Behavior notes

  • This is a static list, not a selector: nothing tracks which tier is active, each row's button is a plain link to ctaHref.
  • A tier with recommended set true gets a subtle tinted row background, a "Recommended" badge, and its button switches to the filled default variant instead of outline.
  • The channels array is joined with a middle-dot separator into a single line rather than rendered as a bulleted list, keeping each row compact.
  • responseTime is a plain string shown next to a clock icon, the component does no comparison or sorting by SLA speed.
  • Rows stack the price and button vertically on small screens and switch to a horizontal layout at the sm breakpoint, so it stays usable on narrow viewports without a separate mobile variant.

Frequently asked questions