Skip to content

Subscription status

A subscription has 2 states:

  • A functional state (Status), which can be seen as a simplified or external state

  • A technical state (StateSubscription), which reflects the functional state and adds information about the subscription lifecycle.

This state is the one you will most likely care about. It indicates the state of the subscription from an external point of view and is most likely the information an external software will require.

Functional State (Status) Description
Draft The subscription is not started yet
Active The subscription is currently active, meaning the customer can access the service.
Suspended The subscription is suspended.
Ended The subscription is not active anymore
Deleted The subscription is being deleted

This state is useful only if you want to dig deep into how ProAbono works. It indicates where the Subscription is in its state machine, and what are the possible actions and automated outcomes.

If you want to expose your subscriptions state or use those into an external software, use the functional state instead.

This article will tell you more about the lifecycle of subscriptions

Functional State Technical State (StateSubscription) Description
Draft DraftCustomer Draft create by a customer that did not complete the subscription process
DraftAgent Draft create by a agent
DraftDelayedStart Subscription with a scheduled start date
DraftDelayedUpgrade Subscription replacing an active subscription on its next term
Active ActiveRunning
ActiveDelayedUpgrade Subscription replaced by a new one on its next term
ActiveDelayedTermination Subscription terminating on its next term
ActiveDelayedSuspension Subscription suspended on its next term
Suspended SuspendedAgent Suspended by an agent
SuspendedNoPaymentInfo Suspended automatically because payment information are missing
SuspendedPaymentDue Suspended automatically because to many unpaid invoices
Ended EndedComplete Time-limited subscription ended
EndedUpgrade Subscription terminated after a plan change
EndedTerminated Subscription has been terminated
Deleted Deleted
{
"Id": 42",
...
"ReferenceCustomer": "123456",
"Status": "Active", // Functional state
"StateSubscription": "ActiveDelayedTermination", // Technical state
...
}