API Reference
Complete reference documentation for all QZPay packages.
Core Types
Customer
metadata: Record<string, string>;
externalIds: Record<string, string>;
Subscription
status: SubscriptionStatus;
currentPeriodStart: Date;
cancelAt?: Date; // Scheduled cancellation date
canceledAt?: Date; // When cancellation occurred
cancelAtPeriodEnd: boolean;
metadata: Record<string, string>;
externalIds: Record<string, string>;
type SubscriptionStatus =
Payment
paymentMethodId?: string;
metadata: Record<string, string>;
externalIds: Record<string, string>;
Invoice
metadata: Record<string, string>;
externalIds: Record<string, string>;
Plan & Price
entitlements: Entitlement[];
metadata: Record<string, string>;
interval: BillingInterval;
externalIds: Record<string, string>;
type BillingInterval = 'day' | 'week' | 'month' | 'year';
Entitlement
type: 'boolean' | 'limit';
Events
Event Types
Customer Events
| Event | Payload |
|---|
customer.created | Customer |
customer.updated | Customer |
customer.deleted | Customer |
Subscription Events
| Event | Payload |
|---|
subscription.created | Subscription |
subscription.updated | Subscription |
subscription.canceled | Subscription |
subscription.paused | Subscription |
subscription.resumed | Subscription |
subscription.trial_ending | Subscription (via job scheduler) |
subscription.trial_ended | Subscription (via job scheduler) |
subscription.addon_added | { subscription, subscriptionAddOn, addon } |
subscription.addon_removed | { subscription, subscriptionAddOn, addon } |
subscription.addon_updated | { subscription, subscriptionAddOn, addon } |
Payment Events
| Event | Payload |
|---|
payment.succeeded | Payment |
payment.failed | Payment |
payment.refunded | Payment |
Invoice Events
| Event | Payload |
|---|
invoice.created | Invoice |
invoice.paid | Invoice |
invoice.voided | Invoice |
Add-on Events
| Event | Payload |
|---|
addon.created | AddOn |
addon.updated | AddOn |
addon.deleted | AddOn |
Errors
Error Classes
| Error | Description |
|---|
QZPayError | Base error class |
CustomerNotFoundError | Customer does not exist |
SubscriptionNotFoundError | Subscription does not exist |
PaymentFailedError | Payment could not be processed |
CardDeclinedError | Card was declined |
WebhookSignatureError | Invalid webhook signature |
WebhookProcessingError | Error processing webhook |
EntitlementDeniedError | Customer lacks entitlement |
UsageLimitExceededError | Usage limit exceeded |
Full auto-generated API documentation coming soon with TypeDoc.