FastSpring · AsyncAPI Specification
FastSpring Webhooks
Version 1.0.0
AsyncAPI 2.6 description of FastSpring's outbound webhook surface. FastSpring delivers events to a seller-configured HTTPS endpoint as HTTP POSTs with a JSON envelope of one or more events. Each request is signed with an HMAC SHA-256 digest of the raw request body, encoded as base64, in the X-FS-Signature header. The shared secret is configured per webhook in the FastSpring App Dashboard under Integrations > Webhooks. Receivers must respond with a 2xx within FastSpring's timeout window; non-2xx responses are retried and unacknowledged events can be replayed via the Events API.
View Spec
View on GitHub
EcommerceMerchant of RecordSubscription BillingPaymentsSaaS BillingCheckoutTax ComplianceAsyncAPIWebhooksEvents
Channels
webhook
subscribe
receiveFastSpringWebhookReceive FastSpring webhook events
Single delivery channel for all FastSpring webhook events. The request body is an envelope containing an `events` array; each entry carries a `type` discriminator and an event-specific `data` payload. Subscribe semantics here describe the seller endpoint receiving events from FastSpring.
Messages
✉
AccountCreated
Account Created
A new customer account was created.
✉
AccountUpdated
Account Updated
An existing customer account was updated.
✉
OrderApprovalPending
Order Approval Pending
An order is awaiting buyer/approver action (e.g. invoice-based purchases).
✉
OrderCanceled
Order Canceled
An order was canceled before completion.
✉
OrderCompleted
Order Completed
An order completed successfully and payment was captured.
✉
OrderFailed
Order Failed
An order attempt failed (e.g. declined payment).
✉
OrderPaymentPending
Order Payment Pending
An order is awaiting asynchronous payment confirmation.
✉
OrderChargeback
Order Chargeback
A chargeback or dispute was filed against an order.
✉
MailingListEntry
Mailing List Entry
A buyer subscribed via abandoned-cart or remarketing capture.
✉
QuoteCreated
Quote Created
A new B2B quote was created.
✉
QuoteUpdated
Quote Updated
An existing B2B quote was updated.
✉
ReturnCreated
Return Created
A refund or return was created against a prior order.
✉
PayoutEntryCreated
Payout Entry Created
A new order or return entry was created for payout processing.
✉
FulfillmentFailed
Fulfillment Failed
A fulfillment action (license/file/script) failed.
✉
SubscriptionActivated
Subscription Activated
A new subscription was activated (including trial start).
✉
SubscriptionCanceled
Subscription Canceled
A subscription was canceled (effective at end of current period).
✉
SubscriptionChargeCompleted
Subscription Charge Completed
A recurring subscription charge succeeded.
✉
SubscriptionChargeFailed
Subscription Charge Failed
A recurring subscription charge failed (dunning may begin).
✉
SubscriptionDeactivated
Subscription Deactivated
A subscription was deactivated (entitlement should end).
✉
SubscriptionPaymentOverdue
Subscription Payment Overdue
A subscription is past due on a recurring charge.
✉
SubscriptionPaymentReminder
Subscription Payment Reminder
A scheduled rebill is approaching for a subscription.
✉
SubscriptionTrialReminder
Subscription Trial Reminder
A subscription trial is approaching its end.
✉
SubscriptionUncanceled
Subscription Uncanceled
A previously canceled subscription was reinstated.
✉
SubscriptionUpdated
Subscription Updated
A subscription's details (plan, add-ons, schedule) were updated.
Servers
https
seller-endpoint
{webhook_url}
Seller-hosted HTTPS endpoint registered in the FastSpring App Dashboard. FastSpring POSTs the webhook envelope to this URL.
AsyncAPI Specification
asyncapi: 2.6.0
info:
title: FastSpring Webhooks
version: 1.0.0
description: >-
AsyncAPI 2.6 description of FastSpring's outbound webhook surface.
FastSpring delivers events to a seller-configured HTTPS endpoint as
HTTP POSTs with a JSON envelope of one or more events. Each request is
signed with an HMAC SHA-256 digest of the raw request body, encoded as
base64, in the X-FS-Signature header. The shared secret is configured
per webhook in the FastSpring App Dashboard under Integrations >
Webhooks. Receivers must respond with a 2xx within FastSpring's
timeout window; non-2xx responses are retried and unacknowledged
events can be replayed via the Events API.
contact:
name: FastSpring Developer Hub
url: https://developer.fastspring.com
externalDocs:
description: FastSpring Webhooks overview
url: https://developer.fastspring.com/reference/webhooks-overview
defaultContentType: application/json
servers:
seller-endpoint:
url: '{webhook_url}'
protocol: https
description: >-
Seller-hosted HTTPS endpoint registered in the FastSpring App
Dashboard. FastSpring POSTs the webhook envelope to this URL.
variables:
webhook_url:
description: Fully qualified seller webhook URL (scheme + host + path).
default: https://example.com/webhooks/fastspring
security:
- hmacSignature: []
channels:
webhook:
description: >-
Single delivery channel for all FastSpring webhook events. The
request body is an envelope containing an `events` array; each
entry carries a `type` discriminator and an event-specific `data`
payload. Subscribe semantics here describe the seller endpoint
receiving events from FastSpring.
subscribe:
operationId: receiveFastSpringWebhook
summary: Receive FastSpring webhook events
description: >-
Receives a webhook envelope from FastSpring. Verify the
X-FS-Signature header (base64 HMAC SHA-256 of the raw body)
before processing. Iterate the `events` array and dispatch on
each event's `type`.
bindings:
http:
type: request
method: POST
bindingVersion: 0.3.0
message:
oneOf:
- $ref: '#/components/messages/AccountCreated'
- $ref: '#/components/messages/AccountUpdated'
- $ref: '#/components/messages/OrderApprovalPending'
- $ref: '#/components/messages/OrderCanceled'
- $ref: '#/components/messages/OrderCompleted'
- $ref: '#/components/messages/OrderFailed'
- $ref: '#/components/messages/OrderPaymentPending'
- $ref: '#/components/messages/OrderChargeback'
- $ref: '#/components/messages/MailingListEntry'
- $ref: '#/components/messages/QuoteCreated'
- $ref: '#/components/messages/QuoteUpdated'
- $ref: '#/components/messages/ReturnCreated'
- $ref: '#/components/messages/PayoutEntryCreated'
- $ref: '#/components/messages/FulfillmentFailed'
- $ref: '#/components/messages/SubscriptionActivated'
- $ref: '#/components/messages/SubscriptionCanceled'
- $ref: '#/components/messages/SubscriptionChargeCompleted'
- $ref: '#/components/messages/SubscriptionChargeFailed'
- $ref: '#/components/messages/SubscriptionDeactivated'
- $ref: '#/components/messages/SubscriptionPaymentOverdue'
- $ref: '#/components/messages/SubscriptionPaymentReminder'
- $ref: '#/components/messages/SubscriptionTrialReminder'
- $ref: '#/components/messages/SubscriptionUncanceled'
- $ref: '#/components/messages/SubscriptionUpdated'
components:
securitySchemes:
hmacSignature:
type: httpApiKey
in: header
name: X-FS-Signature
description: >-
Base64-encoded HMAC SHA-256 digest computed over the raw request
body using the per-webhook HMAC SHA256 Secret configured in the
FastSpring App Dashboard. Receivers must recompute and constant-
time compare against this header before trusting the payload.
messageTraits:
FastSpringWebhookHeaders:
headers:
type: object
properties:
X-FS-Signature:
type: string
description: >-
Base64-encoded HMAC SHA-256 of the raw request body, signed
with the seller's configured HMAC secret.
Content-Type:
type: string
const: application/json
messages:
AccountCreated:
name: account.created
title: Account Created
summary: A new customer account was created.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeAccountCreated'
externalDocs:
url: https://developer.fastspring.com/reference/accountcreated
AccountUpdated:
name: account.updated
title: Account Updated
summary: An existing customer account was updated.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeAccountUpdated'
externalDocs:
url: https://developer.fastspring.com/reference/accountupdated
OrderApprovalPending:
name: order.approval.pending
title: Order Approval Pending
summary: An order is awaiting buyer/approver action (e.g. invoice-based purchases).
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeOrderApprovalPending'
externalDocs:
url: https://developer.fastspring.com/reference/orderapprovalpending
OrderCanceled:
name: order.canceled
title: Order Canceled
summary: An order was canceled before completion.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeOrderCanceled'
externalDocs:
url: https://developer.fastspring.com/reference/ordercanceled
OrderCompleted:
name: order.completed
title: Order Completed
summary: An order completed successfully and payment was captured.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeOrderCompleted'
externalDocs:
url: https://developer.fastspring.com/reference/ordercompleted
OrderFailed:
name: order.failed
title: Order Failed
summary: An order attempt failed (e.g. declined payment).
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeOrderFailed'
externalDocs:
url: https://developer.fastspring.com/reference/orderfailed
OrderPaymentPending:
name: order.payment.pending
title: Order Payment Pending
summary: An order is awaiting asynchronous payment confirmation.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeOrderPaymentPending'
externalDocs:
url: https://developer.fastspring.com/reference/orderpaymentpending
OrderChargeback:
name: order.chargeback
title: Order Chargeback
summary: A chargeback or dispute was filed against an order.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeOrderChargeback'
externalDocs:
url: https://developer.fastspring.com/reference/order-chargeback
MailingListEntry:
name: mailingListEntry
title: Mailing List Entry
summary: A buyer subscribed via abandoned-cart or remarketing capture.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeMailingListEntry'
externalDocs:
url: https://developer.fastspring.com/reference/mailinglistentry-webhooks
QuoteCreated:
name: quote.created
title: Quote Created
summary: A new B2B quote was created.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeQuoteCreated'
externalDocs:
url: https://developer.fastspring.com/reference/quotecreated
QuoteUpdated:
name: quote.updated
title: Quote Updated
summary: An existing B2B quote was updated.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeQuoteUpdated'
externalDocs:
url: https://developer.fastspring.com/reference/quoteupdated
ReturnCreated:
name: return.created
title: Return Created
summary: A refund or return was created against a prior order.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeReturnCreated'
externalDocs:
url: https://developer.fastspring.com/reference/returncreated
PayoutEntryCreated:
name: payoutEntry.created
title: Payout Entry Created
summary: A new order or return entry was created for payout processing.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopePayoutEntryCreated'
externalDocs:
url: https://developer.fastspring.com/reference/payoutentrycreated
FulfillmentFailed:
name: fulfillment.failed
title: Fulfillment Failed
summary: A fulfillment action (license/file/script) failed.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeFulfillmentFailed'
externalDocs:
url: https://developer.fastspring.com/reference/fulfillmentfailed
SubscriptionActivated:
name: subscription.activated
title: Subscription Activated
summary: A new subscription was activated (including trial start).
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeSubscriptionActivated'
externalDocs:
url: https://developer.fastspring.com/reference/subscriptionactivated
SubscriptionCanceled:
name: subscription.canceled
title: Subscription Canceled
summary: A subscription was canceled (effective at end of current period).
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeSubscriptionCanceled'
externalDocs:
url: https://developer.fastspring.com/reference/subscription-canceled
SubscriptionChargeCompleted:
name: subscription.charge.completed
title: Subscription Charge Completed
summary: A recurring subscription charge succeeded.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeSubscriptionChargeCompleted'
externalDocs:
url: https://developer.fastspring.com/reference/subscription-charge-completed
SubscriptionChargeFailed:
name: subscription.charge.failed
title: Subscription Charge Failed
summary: A recurring subscription charge failed (dunning may begin).
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeSubscriptionChargeFailed'
externalDocs:
url: https://developer.fastspring.com/reference/subscription-charge-failed
SubscriptionDeactivated:
name: subscription.deactivated
title: Subscription Deactivated
summary: A subscription was deactivated (entitlement should end).
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeSubscriptionDeactivated'
externalDocs:
url: https://developer.fastspring.com/reference/subscription-deactivated
SubscriptionPaymentOverdue:
name: subscription.payment.overdue
title: Subscription Payment Overdue
summary: A subscription is past due on a recurring charge.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeSubscriptionPaymentOverdue'
externalDocs:
url: https://developer.fastspring.com/reference/subscriptionpaymentoverdue
SubscriptionPaymentReminder:
name: subscription.payment.reminder
title: Subscription Payment Reminder
summary: A scheduled rebill is approaching for a subscription.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeSubscriptionPaymentReminder'
externalDocs:
url: https://developer.fastspring.com/reference/subscriptionpaymentreminder
SubscriptionTrialReminder:
name: subscription.trial.reminder
title: Subscription Trial Reminder
summary: A subscription trial is approaching its end.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeSubscriptionTrialReminder'
externalDocs:
url: https://developer.fastspring.com/reference/subscriptiontrialreminder
SubscriptionUncanceled:
name: subscription.uncanceled
title: Subscription Uncanceled
summary: A previously canceled subscription was reinstated.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeSubscriptionUncanceled'
externalDocs:
url: https://developer.fastspring.com/reference/subscriptionuncanceled
SubscriptionUpdated:
name: subscription.updated
title: Subscription Updated
summary: A subscription's details (plan, add-ons, schedule) were updated.
traits:
- $ref: '#/components/messageTraits/FastSpringWebhookHeaders'
payload:
$ref: '#/components/schemas/WebhookEnvelopeSubscriptionUpdated'
externalDocs:
url: https://developer.fastspring.com/reference/subscription-updated
schemas:
WebhookEnvelope:
type: object
description: >-
FastSpring webhook envelope. Every webhook POST body is an
envelope of one or more events. Receivers should iterate
`events` and dispatch on `type`.
required:
- events
properties:
events:
type: array
minItems: 1
description: One or more events delivered in a single POST.
items:
$ref: '#/components/schemas/EventBase'
EventBase:
type: object
description: Common envelope fields shared by every FastSpring event.
required:
- id
- type
- created
- live
- processed
properties:
id:
type: string
description: Unique event identifier; used to acknowledge or replay via the Events API.
type:
type: string
description: Event type discriminator (e.g. order.completed, subscription.activated).
created:
type: integer
format: int64
description: Event creation timestamp in epoch milliseconds.
live:
type: boolean
description: True if the event originated from a live store; false for test events.
processed:
type: boolean
description: >-
Server-side processed flag. FastSpring marks events processed
once the receiver responds 2xx. Sellers can also flip this
via the Events API.
data:
type: object
description: Event-specific payload. See per-event schemas for shape.
additionalProperties: true
AccountCreatedEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: account.created
data:
$ref: '#/components/schemas/AccountData'
AccountUpdatedEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: account.updated
data:
$ref: '#/components/schemas/AccountData'
OrderApprovalPendingEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: order.approval.pending
data:
$ref: '#/components/schemas/OrderData'
OrderCanceledEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: order.canceled
data:
$ref: '#/components/schemas/OrderData'
OrderCompletedEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: order.completed
data:
$ref: '#/components/schemas/OrderData'
OrderFailedEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: order.failed
data:
$ref: '#/components/schemas/OrderData'
OrderPaymentPendingEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: order.payment.pending
data:
$ref: '#/components/schemas/OrderData'
OrderChargebackEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: order.chargeback
data:
$ref: '#/components/schemas/ChargebackData'
MailingListEntryEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: mailingListEntry
data:
$ref: '#/components/schemas/MailingListEntryData'
QuoteCreatedEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: quote.created
data:
$ref: '#/components/schemas/QuoteData'
QuoteUpdatedEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: quote.updated
data:
$ref: '#/components/schemas/QuoteData'
ReturnCreatedEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: return.created
data:
$ref: '#/components/schemas/ReturnData'
PayoutEntryCreatedEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: payoutEntry.created
data:
$ref: '#/components/schemas/PayoutEntryData'
FulfillmentFailedEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: fulfillment.failed
data:
$ref: '#/components/schemas/FulfillmentFailureData'
SubscriptionActivatedEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: subscription.activated
data:
$ref: '#/components/schemas/SubscriptionData'
SubscriptionCanceledEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: subscription.canceled
data:
$ref: '#/components/schemas/SubscriptionData'
SubscriptionChargeCompletedEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: subscription.charge.completed
data:
$ref: '#/components/schemas/SubscriptionChargeData'
SubscriptionChargeFailedEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: subscription.charge.failed
data:
$ref: '#/components/schemas/SubscriptionChargeData'
SubscriptionDeactivatedEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: subscription.deactivated
data:
$ref: '#/components/schemas/SubscriptionData'
SubscriptionPaymentOverdueEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: subscription.payment.overdue
data:
$ref: '#/components/schemas/SubscriptionData'
SubscriptionPaymentReminderEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: subscription.payment.reminder
data:
$ref: '#/components/schemas/SubscriptionData'
SubscriptionTrialReminderEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: subscription.trial.reminder
data:
$ref: '#/components/schemas/SubscriptionData'
SubscriptionUncanceledEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: subscription.uncanceled
data:
$ref: '#/components/schemas/SubscriptionData'
SubscriptionUpdatedEvent:
allOf:
- $ref: '#/components/schemas/EventBase'
- type: object
properties:
type:
const: subscription.updated
data:
$ref: '#/components/schemas/SubscriptionData'
WebhookEnvelopeAccountCreated:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/AccountCreatedEvent'
WebhookEnvelopeAccountUpdated:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/AccountUpdatedEvent'
WebhookEnvelopeOrderApprovalPending:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/OrderApprovalPendingEvent'
WebhookEnvelopeOrderCanceled:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/OrderCanceledEvent'
WebhookEnvelopeOrderCompleted:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/OrderCompletedEvent'
WebhookEnvelopeOrderFailed:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/OrderFailedEvent'
WebhookEnvelopeOrderPaymentPending:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/OrderPaymentPendingEvent'
WebhookEnvelopeOrderChargeback:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/OrderChargebackEvent'
WebhookEnvelopeMailingListEntry:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/MailingListEntryEvent'
WebhookEnvelopeQuoteCreated:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/QuoteCreatedEvent'
WebhookEnvelopeQuoteUpdated:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/QuoteUpdatedEvent'
WebhookEnvelopeReturnCreated:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/ReturnCreatedEvent'
WebhookEnvelopePayoutEntryCreated:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/PayoutEntryCreatedEvent'
WebhookEnvelopeFulfillmentFailed:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/FulfillmentFailedEvent'
WebhookEnvelopeSubscriptionActivated:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/SubscriptionActivatedEvent'
WebhookEnvelopeSubscriptionCanceled:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/SubscriptionCanceledEvent'
WebhookEnvelopeSubscriptionChargeCompleted:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/SubscriptionChargeCompletedEvent'
WebhookEnvelopeSubscriptionChargeFailed:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/SubscriptionChargeFailedEvent'
WebhookEnvelopeSubscriptionDeactivated:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/SubscriptionDeactivatedEvent'
WebhookEnvelopeSubscriptionPaymentOverdue:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/SubscriptionPaymentOverdueEvent'
WebhookEnvelopeSubscriptionPaymentReminder:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/SubscriptionPaymentReminderEvent'
WebhookEnvelopeSubscriptionTrialReminder:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/SubscriptionTrialReminderEvent'
WebhookEnvelopeSubscriptionUncanceled:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/SubscriptionUncanceledEvent'
WebhookEnvelopeSubscriptionUpdated:
allOf:
- $ref: '#/components/schemas/WebhookEnvelope'
- type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/SubscriptionUpdatedEvent'
AccountData:
type: object
description: >-
Customer account payload. Includes the FastSpring account id and
nested contact details (name, email, company, phone), address,
language, country, and an account-management URL. Refer to the
FastSpring account.created / account.updated documentation for
the authoritative field list.
additionalProperties: true
properties:
id:
type: string
description: FastSpring account id.
account:
type: string
description: Account reference identifier.
contact:
type: object
additionalProperties: true
description: Buyer contact details (first, last, email, company, phone, subscribed).
address:
type: object
additionalProperties: true
description: Postal address (region, city, regionCode, postalCode, country, display).
language:
type: string
country:
type: string
lookup:
type: object
additionalProperties: true
description: Lookup keys (e.g. custom, global).
url:
type: string
format: uri
OrderData:
type: object
description: >-
Order payload. Spans identifiers (order, id, reference,
buyerReference), order configuration (language, live, currency,
payoutCurrency, quote, invoiceUrl, siteId,
acquisitionTransactionType), pricing (total, tax, subtotal,
discount with display + payout currency variants), payment
details (billDescriptor, payment.type, cardEnding, creditcard
brand, bank, variant), account + customer contact and address,
recipients, items (with fulfillments, withholdings, proratedItem),
and internal notes. See the FastSpring docs for the authoritative
field list per order event.
additionalProperties: true
properties:
order:
type: string
id:
type: string
reference:
type: string
buyerReference:
type: string
ipAddress:
type: string
completed:
type: boolean
changed:
type: integer
format: int64
changedInSeconds:
type: integer
format: int64
language:
type: string
live:
type: boolean
currency:
type: string
payoutCurrency:
type: string
quote:
type: string
invoiceUrl:
type: string
format: uri
siteId:
type: string
acquisitionTransactionType:
type: string
total:
type: number
totalDisplay:
typ
# --- truncated at 32 KB (39 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/fastspring/refs/heads/main/asyncapi/fastspring-asyncapi.yml