The WTL Connector is a microservice that automates real-time provisioning of subscriber data to the Wireless Technology Labs (WTL) HSS. The connector functions as a provisioning handler for the New Service Provisioning System (NSPS).
Requirements
To deploy WTL Connector, you need:
- PortaBilling/PortaSwitch version MR100 or later with enabled External system provisioning framework (ESPF).
- An active subscription to the NSPS module in the Add-on Mart and a deployed NSPS instance.
- An active subscription to the WTL Connector module in the Add-on Mart (included at no additional cost with NSPS).
What the WTL Connector does
When subscriber information changes in PortaBilling (e.g., a new SIM card is assigned), NSPS retrieves all the required PortaBilling data and sends it to the WTL Connector as a JSON payload. NSPS communicates with the WTL Connector via a REST API over HTTP.
The WTL Connector:
- Parses the JSON data received from NSPS.
- Maps the data to the WTL HSS API and calls the appropriate WTL HSS API endpoint to update subscriber information in the HSS.
The provisioning event is logged in NSPS and visible via the NSPS web interface.
Technical implementation
The WTL connector is written in Python using the FastAPI framework and can be deployed as a Docker container in environments like Google Cloud or AWS.
The connector’s source code is available on the PortaOne public GitLab page.
If you need to provision data to another external system, you can use this connector as a reference and adapt it to interact with that system’s API. This way, you can create your own connector without needing to learn PortaBilling internals. You can use your preferred programming language, including Python, Node.js, or Java. See the detailed guidance here.
Supported provisioning events
The WTL Connector can process events for the subscriber updates, such as:
- Assignment of a SIM card to an account
- SIM card replacement
- Account blocking or termination
- Account billing status change
- Main product replacement
- Activation or removal of add-ons
- Bundle renewal/depletion
- Account service attribute updates
The WTL Connector supports both low-level and high-level ESPF events.
Low-level events (for MR100-MR120-0)
- SIM Card Events
- SIMCard/New
- SIMCard/Changed
- SIMCard/CustomField/Changed
- SIMCard/StatusChanged
- SIMCard/Deleted
- Account Events
- Account/Id/Changed
- Account/Product/Changed
- Account/ProductAddon/Changed
- Account/ProductAddon/Deleted
- Account/ProductAddon/Inserted
- Account/Service/QuotaAvailable
- Account/Service/QuotaExceeded
- Account/ServiceAttribute/Changed
- Account/CustomField/Changed
- Account/Status/Changed
- Account/Blocked
- Account/Unblocked
- Account/Service/Bundle/Activated
- Account/Service/Bundle/Assigned
- Account/Service/Bundle/Expired
- Account/Service/Bundle/GracePeriodFinished
- Account/Service/Bundle/Removed
- Account/Service/Bundle/Renewed
- Account/Service/Bundle/Resumed
- Account/SIMCardAssignment
High-level events (for MR120-1 or later))
- SIM Events
- SIM/Created
- SIM/Updated
- SIM/Deleted
- SIM/Replaced
Provisioned data, depending on the event, may be enriched with:
- Account details
- SIM card parameters
- Service policy configuration
- Main product assignment
- Bundle item counters
You can select which events the WTL Connector should process and what additional data should be included in the JSON payload received from NSPS when configuring the WTL Connector in the NSPS web interface.

Limitations
- Up to 100,000 provisioning events per month are included with each WTL Connector instance. If you plan to handle more events, please contact your PortaOne Success Manager.
- Provisioning is currently supported only for data bundles.
- Only one data item per bundle is supported (support for voice and SMS items may be added later).
- Bundles must be configured as add-on products, not as part of a main product.