Skip to main content
This page shows the status of a programme participation. It is reached from the VPP Summary page through the participation_state action. A request moves through a series of states, from the first request through to fully enrolled, or through to unenrolled. Where supported, participation details can be updated before the request is finalised. The states, the order they run in, and the message shown to the customer at each step are documented below.

Participation states explained

StateKindDescriptionCustomer-facing message
ENROLMENT_REQUESTEDTransientEnrolment request received.We’ve received your request to join the programme.
AWAITING_CONSENTRestingAwaiting dispatch consent from the customer.We need your permission to control your device during programme events. Please give consent to continue.
AWAITING_TELEMETRYRestingWaiting for the device to send telemetry for the first time. Controllability cannot be confirmed until it arrives.We’re waiting to receive data from your device. Please check it’s switched on and connected to the internet.
AWAITING_METER_ACCESSRestingOptional. Awaiting boundary meter access. Skipped when meter access is already available or not required.We need access to your meter to continue. Please add your meter details to proceed.
CONFIRMING_DISPATCHTransientConfirming the device can be controlled.We’re checking we can control your device.
AWAITING_ELIGIBILITYRestingAwaiting eligibility confirmation from the programme operator.We’re checking whether your home and devices qualify.
AWAITING_REGISTRATIONRestingAwaiting registration confirmation from the programme operator.We’re registering your device with the programme.
REGISTEREDTransientRegistration confirmed.Good news, your device is registered.
INELIGIBLETerminalDid not qualify at the eligibility check. Recoverable only if site properties change.Unfortunately your home or devices don’t currently qualify. This may change if your setup changes.
StateKindDescriptionCustomer-facing message
ACTIVERestingDispatchable and participating in the programme, including VPP events where applicable.Your device is active and taking part in the programme.
SUSPENDEDRestingEnrolled but temporarily not dispatchable. Active causes are listed in suspension_reasons. Returns to ACTIVE once all are resolved.Your participation is paused. The active reasons are shown below.
Each value below can appear in suspension_reasons, and more than one can be active at once. The enrolment returns to ACTIVE only when every reason has cleared.
ReasonWhenRecoversCustomer-facing message
AWAITING_TELEMETRYDevice telemetry is no longer being received.Automatically when telemetry resumes.Your participation is paused because we’ve stopped receiving data from your device. Please check it’s switched on and connected. We’ll resume automatically once data returns.
AWAITING_DISPATCHControl of the device can no longer be confirmed.When control is restored.Your participation is paused because we can’t currently control your device. Please check it’s online and responding. We’ll resume once control is restored.
AWAITING_CONSENTDispatch consent is missing or has expired.When consent is renewed.Your participation is paused because we need your permission to control your device. Please renew your consent to resume.
OPERATOR_REQUESTParticipation has been paused by the programme operator.When the operator removes the suspension.Your participation is paused by the programme operator. We’ll resume once this is resolved.
CUSTOMER_REQUESTParticipation has been paused by the customer.When the customer resumes participation.Your participation is paused at your request. You can resume at any time.
StateKindDescriptionCustomer-facing message
UNENROLMENT_REQUESTEDTransientCustomer or operator has requested unenrolment.We’ve received your request to leave the programme.
WINDING_DOWNTransientServing notice and settling outstanding rewards.We’re wrapping things up. Your device is no longer joining new events and any outstanding rewards are being settled.
UNENROLLEDRestingNo longer participating in the programme. Records are retained.You’ve left the programme. Your records are kept for your reference.
OFFBOARDEDTerminalSite and associated assets have been removed from the programme.Your home and devices have been removed from the programme.
FAILED (Terminal) sits outside these three groups. It is reachable from any enrolment state when provisioning breaks, telemetry never establishes, or consent is withheld. Customer message: “Something went wrong while setting up. Please try again or contact support.”

State transitions explained

FromTrigger / conditionTo
ENROLMENT_REQUESTEDconsent requestedAWAITING_CONSENT
AWAITING_CONSENTconsent grantedAWAITING_TELEMETRY
AWAITING_TELEMETRYtelemetry received, meter access requiredAWAITING_METER_ACCESS
AWAITING_TELEMETRYtelemetry received, meter access already available or not requiredCONFIRMING_DISPATCH
AWAITING_METER_ACCESSmeter access grantedCONFIRMING_DISPATCH
CONFIRMING_DISPATCHcontrol confirmedAWAITING_ELIGIBILITY
AWAITING_ELIGIBILITYoperator confirms eligibleAWAITING_REGISTRATION
AWAITING_ELIGIBILITYoperator confirms not eligibleINELIGIBLE
AWAITING_REGISTRATIONoperator confirms registrationREGISTERED
AWAITING_REGISTRATIONoperator declines registrationINELIGIBLE
REGISTEREDdevice goes liveACTIVE (enters Participation)
any enrolment stateunrecoverable error, telemetry never establishes, or consent withheldFAILED
FromTrigger / conditionTo
ACTIVEa suspension reason is raisedSUSPENDED (suspension_reasons = [reason])
SUSPENDEDa further reason is raisedSUSPENDED (reason added)
SUSPENDEDa reason is cleared, others remainSUSPENDED (reason removed)
SUSPENDEDthe last reason is clearedACTIVE (suspension_reasons empty)
ACTIVEcustomer or operator requests to leaveUNENROLMENT_REQUESTED (enters Unenrolment)
SUSPENDEDcustomer or operator requests to leaveUNENROLMENT_REQUESTED (enters Unenrolment)
Each suspension reason raises and clears independently, toggling its membership in suspension_reasons:
ReasonRaised whenCleared when
AWAITING_TELEMETRYtelemetry losttelemetry resumes
AWAITING_DISPATCHcontrol can no longer be confirmedcontrol restored
AWAITING_CONSENTconsent missing or expiredconsent renewed
OPERATOR_REQUESToperator pausesoperator lifts
CUSTOMER_REQUESTcustomer pausescustomer resumes
FromTrigger / conditionTo
UNENROLMENT_REQUESTEDnotice servedWINDING_DOWN
WINDING_DOWNrewards settled, notice period elapsedUNENROLLED
UNENROLLEDsite and assets deletedOFFBOARDED