Skip to content

Add OpenPaygo device registration interface - #1716

Open
Blandine-Abimpuhwe wants to merge 23 commits into
EnAccess:mainfrom
vainqueur-ndamukunda:feat/openpaygo-operator-registration-ui
Open

Blandine-Abimpuhwe wants to merge 23 commits into
EnAccess:mainfrom
vainqueur-ndamukunda:feat/openpaygo-operator-registration-ui

Conversation

@Blandine-Abimpuhwe

Copy link
Copy Markdown

Brief summary of the change made

This pull request introduces an operator-facing registration workflow for OpenPAYGO-enabled solar home systems in MicroPowerManager (MPM).

The implementation integrates OpenPAYGO device registration into the existing application, allowing operators to provide the required provisioning information and associate a device with the appropriate customer, manufacturer, and appliance.

Closes: #1709

Key changes include:

  • Add an OpenPAYGO registration interface for entering device and provisioning details.
  • Validate required fields and provisioning values before submitting registration requests.
  • Integrate the registration form with the existing backend API and service layer.
  • Handle duplicate serial numbers and backend validation errors with clear feedback for operators.
  • Reuse existing MPM components, notifications, and translations wherever possible.
  • Support displaying and copying payment tokens and showing their processing or issuance status where applicable.

The implementation follows the existing MPM application structure and preserves the separation between the operator interface and backend provisioning logic.

Are there any other side effects of this change that we should be aware of?

The change adds an OpenPAYGO-specific registration workflow while reusing existing MPM functionality.

The workflow depends on the availability of the relevant backend API endpoints and valid manufacturer, appliance, and customer records. Registration errors are surfaced to the operator to help prevent incomplete or invalid submissions.

Payment token generation and issuance remain dependent on the backend payment-processing workflow. Registering a device does not, by itself, guarantee that a payment token has been issued.

No unrelated functionality is intended to change.

Describe how you tested your changes?

The changes were tested through the following checks:

  • Verify that the OpenPAYGO registration interface opens and displays the required fields.
  • Submit valid registration details and confirm that the device is registered and associated with the selected customer, manufacturer, and appliance.
  • Verify that missing or invalid values are rejected with appropriate validation feedback.
  • Attempt to register a duplicate serial number and confirm that the backend rejects the request without creating a duplicate device.
  • Verify that backend validation errors are displayed clearly in the interface.
  • Confirm that payment tokens and their issuance status are displayed correctly when the relevant transaction data is available.
  • Verify that the copy-token action works and provides appropriate feedback.

Pull Request checklist

  • Meaningful Pull Request title and description
  • Changes tested as described above
  • Added appropriate documentation for the change
  • Created GitHub issues for any relevant follow-up/future enhancements, if appropriate

@Dijeomah

Copy link
Copy Markdown
Collaborator

@Blandine-Abimpuhwe, kindly resolve the conflicts in the PR 🫣

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature Request]: Add OpenPAYGO device registration UI

4 participants