Plans

Overview

Plans define pricing and billing configurations for subscription products. Each plan specifies the amount, currency, billing interval, and optional trial period. Plans are associated with products and can include entitlements that grant access to specific content or features.

API Endpoints

MethodEndpointDescription
GET/plansList plans
POST/plansCreate plan
GET/plans/{id}Get plan
PUT/plans/{id}Update plan
DELETE/plans/{id}Delete plan

Plan Types

TypeDescription
regularStandard subscription plan
membershipGroup/institutional subscription with seat limit (member_seat_capacity)

Billing Intervals

IntervalDescription
dayDaily billing
weekWeekly billing
monthMonthly billing
yearAnnual billing

Use interval_count to specify multiples (e.g. interval: month, interval_count: 3 for quarterly).

Renewal Strategies

StrategyDescription
regularStandard auto-renewal
digitalDigital-only renewal
agencyAgency-managed renewal
single_shipmentExpires after one shipment

Plan Object

AttributeTypeDescription
idintegerUnique identifier
activestringPlan status: active or archived
agency_idintegerManaging agency ID
product_idintegerParent product ID
statusstringAlias for active (deprecated)
agency_remit_ratenumberPercentage remitted to agency
amountintegerPrice in cents
apple_product_idstringApple App Store product ID
available_onlinebooleanWhether available for online purchase
auto_renewbooleanWhether subscriptions auto-renew
currencystringThree-letter ISO currency code
countriesarrayCountries where plan is available
descriptionstringPlan description
domainsarrayEmail domains for auto-subscription
entitlementsobjectAccess permissions granted
group_owner_plan_idintegerParent plan ID for group plans
gift_descriptionstringDescription for gift purchases
imagestringPlan image URL
intervalstringBilling interval
interval_countintegerIntervals between billings
ip_addressesarrayIP addresses for auto-subscription (CIDR)
metadataobjectCustom key-value data
nicknamestringDisplay name (max 255 chars)
name_internalstringInternal reference name
renewal_strategystringRenewal behavior
shipments_per_intervalintegerShipments per billing cycle
trial_period_daysintegerFree trial days (max 730)
expires_atstringPlan expiration date
allow_send_invoicebooleanWhether customers can pay via invoice
is_donationbooleanWhether plan is a donation
is_hiddenbooleanWhether hidden from public display
is_importedbooleanWhether imported from external system
typestringregular or membership
member_seat_capacityintegerMax seats for membership plans
refundablebooleanWhether refunds are allowed
auto_uncollectible_daysintegerDays before auto-marking uncollectible
invoice_upcoming_notificationintegerDays before renewal to notify
old_provider_idstringExternal provider ID