Event payload example and property overview for subscription.group.payment.reminder
Webhook response payload example (expansion enabled)
When a subscription.group.payment.reminder event is triggered, the webhook sends the following JSON payload:
{
"cotermGroupId": "aB1c2deFGhIjKL3mn-opqR",
"cotermGroupDisplayName": "Tech Services Monthly Plan",
"cotermGroupPeriodStartDate": 1754044800000,
"cotermGroupPeriodEndDate": 1756646400000,
"cotermGroupPrimarySubscription": "1abc2DE_FGhIjKLm3NoPQR",
"cotermGroupStatus": "EXECUTED",
"cotermGroupOrderId": "aBCDE12fGH3iJkL4mNOpq",
"cotermNextChargeDate": 1756646400000,
"cotermNextChargeTotal": 199.95,
"cotermGroupSize": 2,
"currency": "USD",
"changed": 1753526400000,
"changedValue": 1753526400000,
"changedInSeconds": 1753526400,
"changedDisplay": "07/25/25",
"changedDisplayISO8601": "2025-07-25",
"nextChargeDate": 1756646400000,
"nextChargeDateValue": 1756646400000,
"nextChargeDateInSeconds": 1756646400,
"nextChargeDateDisplay": "08/31/25",
"nextChargeDateDisplayISO8601": "2025-08-31",
"account": {
"id": "abCdE1FGH2Hij3KLMnOpqR",
"account": "abCdE1FGH2Hij3KLMnOpqR",
"contact": {
"first": "Jane",
"last": "Doe",
"email": "[email protected]",
"company": "Company Inc.",
"phone": "8001234567",
"subscribed": true
},
"address": {
"address line 1": "123 Business Rd",
"address line 2": "Floor 4",
"city": "Metropolis",
"country": "US",
"postal code": "12345",
"region": "US-NY",
"region custom": null,
"company": "Company Inc."
},
"language": "en",
"country": "US",
"lookup": {
"global": "lookup-001"
},
"url": "https://company.onfastspring.com/account"
},
"reminderNotification": null,
"cancellationSetting": {
"cancellation": "AFTER_LAST_NOTIFICATION",
"intervalUnit": "week",
"intervalLength": 1
},
"scheduledEvents": [
{
"date": "11/20/2025 03:00:00",
"type": "PAYMENT_REMINDER"
},
{
"date": "11/27/2025 08:00:00",
"type": "RENEWAL"
},
{
"date": "11/28/2025 08:00:00",
"type": "FOLLOW_UP"
},
{
"date": "12/01/2025 08:00:00",
"type": "FOLLOW_UP"
},
{
"date": "12/04/2025 03:00:00",
"type": "PAYMENT_OVERDUE"
},
{
"date": "12/06/2025 08:00:00",
"type": "FOLLOW_UP"
},
{
"date": "12/11/2025 03:00:00",
"type": "PAYMENT_OVERDUE"
},
{
"date": "12/18/2025 03:00:00",
"type": "PAYMENT_OVERDUE"
},
{
"date": "12/25/2025 03:00:00",
"type": "PAYMENT_OVERDUE"
},
{
"date": "01/01/2026 08:00:00",
"type": "DEACTIVATION"
}
],
"subscriptions": [
{
"id": "1abc2DE_FGhIjKLm3NoPQR",
"quote": null,
"active": true,
"state": "active",
"isSubscriptionEligibleForPauseByBuyer": false,
"isPauseScheduled": false,
"changed": 1.732038466488E12,
"live": false,
"currency": "USD",
"product": {
"product": "cloud-storage",
"parent": null,
"productAppReference": "1aB_CDeFGh2IJk34_5LmN",
"display": {
"en": "Cloud Storage Service"
},
"fulfillments": {
},
"format": "digital",
"taxcode": "DC020400",
"taxcodeDescription": null,
"pricing": {
"interval": "week",
"intervalLength": 1.0,
"intervalCount": null,
"quantityBehavior": "allow",
"quantityDefault": 1.0,
"price": {
"EUR": 100.0,
"USD": 100.0
},
"dateLimitsEnabled": false
}
},
"sku": null,
"display": "Cloud Storage Service",
"quantity": 1.0,
"adhoc": false,
"autoRenew": true,
"price": 100.0,
"discount": 0.0,
"subtotal": 100.0,
"end": null,
"canceledDate": null,
"deactivationDate": null,
"sequence": 1.0,
"periods": null,
"remainingPeriods": null,
"begin": 1.732038207127E12,
"intervalUnit": "week",
"intervalUnitAbbreviation": "wk",
"intervalLength": 1.0,
"intervalLengthGtOne": false,
"nextChargeCurrency": "USD",
"nextChargeDate": 1.7326656E12,
"nextChargePreTax": 92.81,
"nextChargeTotal": 100.0,
"taxExemptionData": null,
"nextNotificationType": null,
"nextNotificationDate": null,
"addons": null,
"discounts": null,
"fulfillments": {
},
"instructions": [
{
"product": "cloud-storage",
"type": "regular",
"isNotTrial": true,
"periodStartDate": 1.7326656E12,
"periodEndDate": null,
"discountIntervalUnit": null,
"discountDurationLength": null,
"discountDuration": null,
"discountDurationUnit": null,
"unitDiscount": 0.0,
"discountPercent": 0.0,
"discountTotal": 0.0,
"price": 100.0,
"priceTotal": 100.0,
"unitPrice": 100.0,
"unitPriceInPayoutCurrencyDisplay": "$100.00",
"total": 100.0,
"totalWithTaxes": 100.0
}
]
},
{
"id": "2abc2DE_FGhIjKLm3NoPQR",
"quote": null,
"active": true,
"state": "active",
"isSubscriptionEligibleForPauseByBuyer": false,
"isPauseScheduled": false,
"changed": 1.732038466489E12,
"live": false,
"currency": "USD",
"product": {
"product": "data-analytics",
"parent": null,
"productAppReference": "2aB_CDeFGh2IJk34_5LmN",
"display": {
"en": "Data Analytics Service"
},
"fulfillments": {
},
"format": "digital",
"taxcode": "DC020500",
"taxcodeDescription": null,
"pricing": {
"interval": "week",
"intervalLength": 1.0,
"intervalCount": null,
"quantityBehavior": "allow",
"quantityDefault": 1.0,
"price": {
"USD": 0.23
},
"dateLimitsEnabled": false
}
},
"sku": null,
"display": "Data Analytics Service",
"quantity": 1.0,
"adhoc": false,
"autoRenew": true,
"price": 0.23,
"discount": 0.0,
"subtotal": 0.23,
"end": null,
"canceledDate": null,
"deactivationDate": null,
"sequence": 1.0,
"periods": null,
"remainingPeriods": null,
"begin": 1.732038186499E12,
"intervalUnit": "week",
"intervalUnitAbbreviation": "wk",
"intervalLength": 1.0,
"intervalLengthGtOne": false,
"nextChargeCurrency": "USD",
"nextChargeDate": 1.7326656E12,
"nextChargePreTax": 0.23,
"nextChargeTotal": 0.23,
"taxExemptionData": null,
"nextNotificationType": null,
"nextNotificationDate": null,
"addons": null,
"discounts": null,
"fulfillments": {
},
"instructions": [
{
"product": "data-analytics",
"type": "regular",
"isNotTrial": true,
"periodStartDate": 1.7326656E12,
"periodEndDate": null,
"discountIntervalUnit": null,
"discountDurationLength": null,
"discountDuration": null,
"discountDurationUnit": null,
"unitDiscount": 0.0,
"discountPercent": 0.0,
"discountTotal": 0.0,
"price": 0.23,
"priceTotal": 0.23,
"unitPrice": 0.23,
"unitPriceInPayoutCurrencyDisplay": "$0.23",
"total": 0.23,
"totalWithTaxes": 0.23
}
]
}
]
}Navigate this webhook
The subscription.group.payment.reminder webhook payload includes dozens of fields. Use the cards below to jump to a specific section of the property reference.
Co-term Group
Changed Timestamps
Next Charge
Account Object
Reminder Notification
Cancellation Settings
Scheduled Events
Subscriptions Array
Product
Pricing (within Product)
Instructions
Add-ons & Discounts
Fulfillments
Payload properties
All fields below are included in the subscription.group.payment.reminder webhook payload. Fields are grouped into categories for easier navigation.
| Name | Type | Description |
|---|---|---|
| Co-term Group | ||
| cotermGroupId | string | Unique identifier for the co-term group |
| cotermGroupDisplayName | string | Display name of the co-term group |
| cotermGroupPeriodStartDate | integer | Start of the current co-term period in milliseconds since epoch |
| cotermGroupPeriodEndDate | integer | End of the current co-term period in milliseconds since epoch |
| cotermGroupPrimarySubscription | string | ID of the primary subscription in the co-term group |
| cotermGroupStatus | string | Status of the co-term group (e.g., EXECUTED) |
| cotermGroupOrderId | string | Order ID associated with the co-term group |
| cotermNextChargeDate | integer | Next charge date for the co-term group in milliseconds since epoch |
| cotermNextChargeTotal | number | Total amount for the next group charge |
| cotermGroupSize | integer | Number of subscriptions in the co-term group |
| currency | string | Three-letter ISO currency code |
| Changed Timestamps | ||
| changed | integer | Last update timestamp in milliseconds |
| changedValue | integer | Duplicate of changed (milliseconds) |
| changedInSeconds | integer | Last update timestamp in seconds |
| changedDisplay | string | User-friendly display date of the last update |
| changedDisplayISO8601 | string | ISO 8601 date of the last update |
| Next Charge | ||
| nextChargeDate | integer | Next charge date in milliseconds |
| nextChargeDateValue | integer | Duplicate of nextChargeDate (milliseconds) |
| nextChargeDateInSeconds | integer | Next charge date in seconds |
| nextChargeDateDisplay | string | User-friendly next charge date |
| nextChargeDateDisplayISO8601 | string | ISO 8601 formatted next charge date |
| Account object | ||
| account | object | Account object containing customer details |
| account.id | string | Unique FastSpring account ID |
| account.account | string | Duplicate of the account ID for compatibility |
| account.contact.first | string | Account contact first name |
| account.contact.last | string | Account contact last name |
| account.contact.email | string | Account contact email address |
| account.contact.company | string | Account contact company name |
| account.contact.phone | string | Account contact phone number |
| account.contact.subscribed | boolean | Whether the account contact is subscribed |
| account.address.address line 1 | string | Primary street address line |
| account.address.address line 2 | string | Secondary street address line |
| account.address.city | string | City |
| account.address.country | string | Two-letter ISO country code |
| account.address.postal code | string | Postal or ZIP code |
| account.address.region | string | Region code (e.g., US-NY) |
| account.address.region custom | string | Custom region text when applicable |
| account.address.company | string | Company associated with the address |
| account.language | string | Preferred language (two-letter ISO code) |
| account.country | string | Two-letter ISO country code |
| account.lookup.global | string | Globally unique public ID for lookup |
| account.url | string | Customer-facing account management URL |
| Reminder Notification | ||
| reminderNotification | object | Reminder configuration when present; null in this example |
| reminderNotification.enabled | boolean | Whether reminder notifications are enabled (when object present) |
| reminderNotification.interval | string | Time unit for reminders (e.g., week) |
| reminderNotification.intervalLength | integer | Length of the reminder interval |
| Cancellation Settings | ||
| cancellationSetting.cancellation | string | Cancellation policy timing (e.g., AFTER_LAST_NOTIFICATION) |
| cancellationSetting.intervalUnit | string | Time unit for the cancellation interval |
| cancellationSetting.intervalLength | integer | Length of the cancellation interval in units |
| Scheduled Events | ||
| scheduledEvents | array | List of upcoming events for the group |
| scheduledEvents.date | string | Date and time of the scheduled event |
| scheduledEvents.type | string | Type of event (e.g., PAYMENT_REMINDER, RENEWAL, PAYMENT_OVERDUE, DEACTIVATION) |
| Subscriptions array | ||
| subscriptions | array | List of subscriptions in the co-term group |
| subscriptions.id | string | Subscription ID |
| subscriptions.quote | string | Associated quote ID when present |
| subscriptions.active | boolean | Whether the subscription is active |
| subscriptions.state | string | Current subscription state (e.g., active) |
| subscriptions.isSubscriptionEligibleForPauseByBuyer | boolean | Whether the buyer can pause the subscription |
| subscriptions.isPauseScheduled | boolean | Whether a pause is scheduled |
| subscriptions.changed | integer | Last update timestamp in milliseconds |
| subscriptions.live | boolean | Whether the subscription is in live mode |
| subscriptions.currency | string | Three-letter ISO currency code |
| subscriptions.sku | string | SKU of the subscription product when provided |
| subscriptions.display | string | Customer-facing product display name |
| subscriptions.quantity | number | Quantity on the subscription |
| subscriptions.adhoc | boolean | Whether the subscription is ad-hoc |
| subscriptions.autoRenew | boolean | Whether auto-renew is enabled |
| subscriptions.price | number | Unit price for the subscription |
| subscriptions.discount | number | Discount amount applied |
| subscriptions.subtotal | number | Subtotal amount before tax |
| subscriptions.end | string | End date, when applicable |
| subscriptions.canceledDate | string | Cancellation date, when applicable |
| subscriptions.deactivationDate | string | Deactivation date, when applicable |
| subscriptions.sequence | number | Sequence number for the billing period |
| subscriptions.periods | number | Total number of billing periods when fixed-term |
| subscriptions.remainingPeriods | number | Remaining number of billing periods |
| subscriptions.begin | number | Activation timestamp in milliseconds |
| subscriptions.intervalUnit | string | Billing interval unit (e.g., week) |
| subscriptions.intervalUnitAbbreviation | string | Abbreviation of the interval unit (e.g., wk) |
| subscriptions.intervalLength | number | Number of interval units per billing period |
| subscriptions.intervalLengthGtOne | boolean | Whether the interval length is greater than one |
| subscriptions.nextChargeCurrency | string | Currency of the next charge |
| subscriptions.nextChargeDate | number | Next charge date in milliseconds |
| subscriptions.nextChargePreTax | number | Pre-tax amount for the next charge |
| subscriptions.nextChargeTotal | number | Total next charge amount |
| subscriptions.taxExemptionData | string | Tax exemption details when applicable |
| subscriptions.nextNotificationType | string | Type of the next notification when scheduled |
| subscriptions.nextNotificationDate | number | Timestamp of the next notification when scheduled |
| Product | ||
| subscriptions.product | object | Product object for the subscribed item |
| subscriptions.product.product | string | Product path or identifier |
| subscriptions.product.parent | string | Parent product when applicable |
| subscriptions.product.productAppReference | string | Internal application reference for the product |
| subscriptions.product.display.en | string | English display name of the product |
| subscriptions.product.fulfillments | object | Fulfillment configuration (object may be empty) |
| subscriptions.product.format | string | Product format (e.g., digital) |
| subscriptions.product.taxcode | string | Tax code assigned to the product |
| subscriptions.product.taxcodeDescription | string | Description of the product tax code |
| Pricing (within product) | ||
| subscriptions.product.pricing | object | Pricing settings for the product |
| subscriptions.product.pricing.interval | string | Billing interval (e.g., week) |
| subscriptions.product.pricing.intervalLength | number | Length of the billing interval |
| subscriptions.product.pricing.intervalCount | number | Number of intervals when applicable |
| subscriptions.product.pricing.quantityBehavior | string | Quantity behavior (e.g., allow) |
| subscriptions.product.pricing.quantityDefault | number | Default quantity for the product |
| subscriptions.product.pricing.price | object | Map of currency codes to price amounts |
| subscriptions.product.pricing.price.EUR | number | Price in EUR when configured |
| subscriptions.product.pricing.price.USD | number | Price in USD when configured |
| subscriptions.product.pricing.dateLimitsEnabled | boolean | Whether pricing date limits are enforced |
| Add-ons & Discounts | ||
| subscriptions.addons | array | Array of add-on items when present |
| subscriptions.discounts | array | Array of discount objects when present |
| subscriptions.discounts.totalDiscountValue | number | Total discount amount that will apply to the order |
| subscriptions.discounts.discountPath | string | Path or identifier for the discount |
| subscriptions.discounts.discountDuration | string | Duration of the discount |
| subscriptions.discounts.discountValue | number | Per-billing discount amount in order currency (for non-percent coupons) |
| Fulfillments | ||
| subscriptions.fulfillments | object | Fulfillment details (object may be empty) |
| Instructions | ||
| subscriptions.instructions | array | Pricing and timing instructions for the upcoming period |
| subscriptions.instructions.product | string | Product path associated with the instruction |
| subscriptions.instructions.type | string | Instruction type (e.g., regular) |
| subscriptions.instructions.isNotTrial | boolean | Whether the instruction is not a trial |
| subscriptions.instructions.periodStartDate | number | Start date of the instruction period in milliseconds |
| subscriptions.instructions.periodEndDate | number | End date of the instruction period when present |
| subscriptions.instructions.discountIntervalUnit | string | Interval unit for discounts when applicable |
| subscriptions.instructions.discountDurationLength | number | Length of discount duration when applicable |
| subscriptions.instructions.discountDuration | number | Remaining discount duration when applicable |
| subscriptions.instructions.discountDurationUnit | string | Unit of remaining discount duration when applicable |
| subscriptions.instructions.unitDiscount | number | Per-unit discount |
| subscriptions.instructions.discountPercent | number | Discount percentage |
| subscriptions.instructions.discountTotal | number | Total discount for the instruction |
| subscriptions.instructions.price | number | Unit price |
| subscriptions.instructions.priceTotal | number | Total price for the instruction |
| subscriptions.instructions.unitPrice | number | Unit price before taxes |
| subscriptions.instructions.unitPriceInPayoutCurrencyDisplay | string | Formatted unit price in payout currency |
| subscriptions.instructions.total | number | Total amount before taxes |
| subscriptions.instructions.totalWithTaxes | number | Total amount including taxes |