> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ledgerup.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Subscriptions

> Create, manage, and track subscriptions directly from Slack

export const AriMention = () => <span className="slack-mention">@Ari</span>;

export const SlackMessage = ({children, name = "Bailey", initials = "B", color = "#611f69", avatar = "/images/bailey-avatar.png", app = false, time = "2:47 PM"}) => <div className="slack-msg not-prose">
    <div className="slack-avatar" style={{
  backgroundColor: avatar ? "transparent" : color
}}>
      {avatar ? <img src={avatar} alt={name} /> : initials}
    </div>
    <div className="slack-msg-body">
      <span className="slack-name">{name}</span>
      {app ? <span className="slack-app-badge">APP</span> : null}
      <span className="slack-time">{time}</span>
      <div className="slack-text">{children}</div>
    </div>
    <div className="slack-actions">
      <button type="button" className="slack-action-btn" aria-label="Copy message" title="Copy message" onClick={e => {
  const msg = e.currentTarget.closest(".slack-msg");
  const el = msg && msg.querySelector(".slack-text");
  if (el && navigator.clipboard) {
    navigator.clipboard.writeText(el.innerText);
    const btn = e.currentTarget;
    const prev = btn.innerHTML;
    btn.innerHTML = '<svg viewBox="0 0 24 24" fill="none" stroke="#2AD48A" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"/></svg>';
    setTimeout(() => {
      btn.innerHTML = prev;
    }, 1200);
  }
}}>
        <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
          <rect x="9" y="9" width="13" height="13" rx="2" ry="2" />
          <path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1" />
        </svg>
      </button>
    </div>
  </div>;

Subscriptions power recurring revenue. Ari lets you create, update, pause, resume, and cancel subscriptions—all without leaving Slack. Manage your entire subscription lifecycle while maintaining approval control over financial changes.

## Creating Subscriptions

Set up recurring billing for customers with flexible pricing and billing intervals.

<Steps>
  <Step title="Identify the customer">
    Search for or create a customer record first
  </Step>

  <Step title="Define the subscription">
    Specify the product, price, and billing interval (monthly, yearly, etc.)
  </Step>

  <Step title="Set start date">
    Choose when billing begins (immediately or on a future date)
  </Step>

  <Step title="Review and approve">
    Ari shows the subscription details. Click **Approve** to activate.
  </Step>

  <Step title="Customer onboarded">
    The subscription is active in Stripe and the customer receives a confirmation
  </Step>
</Steps>

### Example Commands

<SlackMessage><AriMention /> create a subscription for Acme Corp: Professional Plan at {"$"}500/month starting today</SlackMessage>

<SlackMessage><AriMention /> create a subscription for TechStart Inc: Enterprise Plan at {"$"}15,000/year with 10% annual discount starting March 1</SlackMessage>

<SlackMessage><AriMention /> set up a subscription for Global Systems LLC: Quarterly service at {"$"}3,500 per quarter</SlackMessage>

<Note>
  Ari creates subscriptions in Stripe with all necessary metadata. Billing begins on the start date automatically.
</Note>

## Updating Subscriptions

Modify pricing, billing intervals, or other subscription details without disrupting service.

<Tip>
  Subscription updates can take effect immediately or at the next billing cycle. Ari shows you both options.
</Tip>

### Example Commands

<SlackMessage><AriMention /> update Acme Corp's subscription price from {"$"}500 to {"$"}600 per month effective next billing cycle</SlackMessage>

<SlackMessage><AriMention /> upgrade TechStart Inc from Professional to Enterprise plan</SlackMessage>

<SlackMessage><AriMention /> change Global Systems LLC's subscription to monthly instead of quarterly</SlackMessage>

<SlackMessage><AriMention /> update ProjectCo's price to {"$"}2,000/month starting immediately (pro-rate if needed)</SlackMessage>

## Pausing Subscriptions

Temporarily halt billing without canceling the subscription.

<Steps>
  <Step title="Request pause">
    @Ari pause the subscription for \[customer]
  </Step>

  <Step title="Specify reason">
    Optionally note why the subscription is paused
  </Step>

  <Step title="Set resume date">
    Choose when billing resumes (open-ended or specific date)
  </Step>

  <Step title="Approve pause">
    Click **Approve** to pause the subscription
  </Step>
</Steps>

### Example Commands

<SlackMessage><AriMention /> pause the subscription for Acme Corp while they transition systems</SlackMessage>

<SlackMessage><AriMention /> pause TechStart Inc's subscription indefinitely</SlackMessage>

<SlackMessage><AriMention /> pause Global Systems LLC's subscription until May 1, 2024</SlackMessage>

<Note>
  Paused subscriptions don't generate charges but the customer record and subscription remain active. You can resume at any time.
</Note>

## Resuming Subscriptions

Reactivate paused subscriptions and resume billing.

<SlackMessage><AriMention /> resume the subscription for Acme Corp</SlackMessage>

<SlackMessage><AriMention /> resume TechStart Inc's subscription starting February 15</SlackMessage>

## Canceling Subscriptions

End subscriptions when customers churn or choose not to renew.

<Warning>
  Canceling is a permanent action. The subscription cannot be reactivated. If you might want to bring the customer back, consider pausing instead.
</Warning>

<Steps>
  <Step title="Request cancellation">
    @Ari cancel the subscription for \[customer]
  </Step>

  <Step title="Provide reason">
    Tell Ari why the subscription is being canceled (helps with churn analysis)
  </Step>

  <Step title="Choose effective date">
    End immediately or at the end of the current billing cycle
  </Step>

  <Step title="Approve cancellation">
    Click **Approve** to confirm the cancellation
  </Step>
</Steps>

### Example Commands

<SlackMessage><AriMention /> cancel the subscription for ProjectCo immediately due to customer request</SlackMessage>

<SlackMessage><AriMention /> cancel TechStart Inc's subscription at the end of the current billing cycle</SlackMessage>

<SlackMessage><AriMention /> cancel Global Systems LLC's subscription with note: customer merged with parent company</SlackMessage>

## Subscription Schedules

Create complex billing scenarios with scheduled price changes or plan upgrades.

<Tip>
  Subscription schedules are useful for trials that convert to paid, seasonal pricing adjustments, or negotiated price changes.
</Tip>

### Example Commands

<SlackMessage><AriMention /> create a subscription schedule for Acme Corp: 30-day free trial then {"$"}500/month</SlackMessage>

<SlackMessage><AriMention /> schedule a price increase for TechStart Inc from {"$"}500 to {"$"}600/month on April 1</SlackMessage>

<SlackMessage><AriMention /> set up subscription for ProjectCo: {"$"}0 for January, then {"$"}1,500/month March-December, {"$"}2,000/month starting next year</SlackMessage>

## Viewing Subscription Status

Check the status of any subscription anytime.

<SlackMessage><AriMention /> show me the subscription for Acme Corp</SlackMessage>

<SlackMessage><AriMention /> what subscriptions does TechStart Inc have?</SlackMessage>

<SlackMessage><AriMention /> list all active subscriptions</SlackMessage>

<SlackMessage><AriMention /> which subscriptions renew this week?</SlackMessage>

## Subscription Analytics

Track subscription metrics and revenue trends.

<SlackMessage><AriMention /> what's our total MRR (Monthly Recurring Revenue)?</SlackMessage>

<SlackMessage><AriMention /> show subscription churn rate for Q1</SlackMessage>

<SlackMessage><AriMention /> which subscriptions have the highest growth?</SlackMessage>

<Note>
  These metrics feed into Ari's Revenue Analytics feature for comprehensive financial reporting.
</Note>

## Best Practices

* **Confirm pricing**: Always have a clear conversation about pricing before creating a subscription
* **Use meaningful descriptions**: Include the plan name or service level in the subscription details
* **Set appropriate start dates**: Align subscription start dates with contract or onboarding timelines
* **Regular reviews**: Monitor subscription status weekly to catch any paused or at-risk subscriptions
* **Test schedules**: For complex schedules, test with a low-value subscription first
* **Document cancellations**: Always note the reason for cancellations to improve retention analysis
