Skip to main content

Get Subscription

sub, err := client.Billing.GetSubscription(ctx)
fmt.Printf("Plan: %s, Status: %s\n", sub.Plan, sub.Status)

Create Checkout

Create a Stripe checkout session to upgrade.
checkout, err := client.Billing.CreateCheckout(ctx, grantex.CreateCheckoutParams{
    Plan:       "pro",
    SuccessURL: "https://myapp.com/billing/success",
    CancelURL:  "https://myapp.com/billing/cancel",
})
// Redirect user to checkout.CheckoutURL

Create Portal

Create a Stripe billing portal session for managing subscriptions.
portal, err := client.Billing.CreatePortal(ctx, grantex.CreatePortalParams{
    ReturnURL: "https://myapp.com/dashboard",
})
// Redirect user to portal.PortalURL

Types

SubscriptionStatus

FieldTypeDescription
Planstring"free", "pro", "enterprise"
Statusstring"active", "past_due", "canceled"
CurrentPeriodEnd*stringISO 8601 period end