X Enterprises
Composables

useXAdminStripe

Provides reactive Stripe customer and subscription state plus admin actions for syncing customers, cancelling subscriptions, and refunding or voiding invoices.

useXAdminStripe

Stripe billing composable. Exposes reactive collections for customers and subscriptions fetched from /api/admin/stripe/*, alongside async action methods for admin billing operations. Pairs with XAdminStripeCustomers, XAdminStripeSubscriptions, and related detail components.

Usage

const stripe = useXAdminStripe()

stripe.customers.data
stripe.subscriptions.data

await stripe.syncCustomer(customerId)
await stripe.cancelSubscription(subscriptionId, { immediately: false })
await stripe.refundInvoice(invoiceId, { amount: 1000 })
await stripe.voidInvoice(invoiceId)

Returns

KeyTypeDescription
customersRef<{ data: StripeCustomer[] }>Reactive Stripe customer list with search and filter support.
subscriptionsRef<{ data: StripeSubscription[] }>Reactive subscription list.
syncCustomer(customerId: string) => Promise<void>Re-syncs a Stripe customer record from the Stripe API.
cancelSubscription(subscriptionId: string, opts?: { immediately: boolean }) => Promise<void>Cancels a subscription at period end or immediately.
refundInvoice(invoiceId: string, opts?: { amount: number }) => Promise<void>Issues a full or partial refund on an invoice (amount in cents).
voidInvoice(invoiceId: string) => Promise<void>Voids an open invoice.

AI Context

composable: useXAdminStripe
package: "@xenterprises/nuxt-x-app-admin"
use-when: >
  Managing Stripe billing from the admin panel — looking up customers, viewing
  charge history, managing subscriptions, or issuing refunds and invoice voids.
pairs-with: XAdminStripeCustomers, XAdminStripeCustomersDetail, XAdminStripeCharges, XAdminStripeInvoices, XAdminStripeSubscriptions, XAdminStripeWebhookLogs
Copyright © 2026