Overview
The PortaOne Transaction By Account - Version 15.0 collector retrieves account-level transaction data from a PortaOne billing and switching environment, covering transaction activity across Reseller, Reseller Customer, and Retail customer types.
This collector provides visibility into transaction volumes and costs at an account level, grouping records by customer account, transaction type, and date. This enables organizations to validate charges and allocate costs within Varibill based on specific transaction categories such as voice calls.
The collector retrieves rated data, meaning transaction cost values are supplied by PortaOne and submitted directly to Varibill. An optional VAT factor can be applied to adjust charged amounts before submission. Pricing markups can be applied within Varibill without requiring separate price lists.
This is a historically capable collector, meaning each execution retrieves transaction data for a configurable date range in the past, rather than a snapshot of the current state.
For general instructions on creating and running Source Collectors, see: Configuring a New Cloud Source Collector
Collector Summary
| Field | Value |
|---|---|
| Source Collector Name | PortaOne Transaction By Account - Version 15.0 |
| Collection Behavior | Historically Capable |
| Rating Model | Rated |
| Vendor Name | PortaOne |
| Product | PortaSwitch / PortaBilling |
| Purpose | Retrieves account-level transaction data from PortaOne for billing and cost allocation within Varibill |
About PortaOne
PortaOne is a telecommunications software company that provides integrated billing and service management solutions for communication service providers worldwide. Founded in 2001, PortaOne serves over 500 telecom operators across more than 100 countries, ranging from wholesale carriers to retail service providers.
PortaOne’s core platform, PortaSwitch, is a unified service management and delivery platform covering voice, messaging, IoT/M2M, and data traffic. PortaBilling, its accompanying billing component, enables service providers to manage subscriber accounts, rating, and revenue collection.
PortaOne is used by a broad range of providers including Mobile Virtual Network Operators (MVNOs), cloud PBX operators, traditional carriers, and internet-based telephony providers.
Note: PortaOne documentation is available at docs.portaone.com. Documentation is version-specific — ensure you are referencing the guide for your deployed PortaOne release.
Data Collected
The PortaOne Transaction By Account - Version 15.0 collector retrieves account-level transaction data from PortaOne for a configurable historical date range. The collector queries each customer’s accounts and retrieves transaction records (XDRs), filtering to only the transaction type specified by the Transaction Name Filter parameter.
Each record represents a single account’s transaction activity for a specific date, and includes:
- The total number of transactions (quantity) for the account on that date
- The total charged amount for the account on that date, adjusted by the configured VAT factor
- The transaction type name (for example,
Voice Calls) - The customer name and customer type (Reseller, Customer, or Retail)
The collector retrieves the customer and account data needed to scope collection — covering Reseller, Reseller Customer, and Retail customer types. Customer filtering options allow collection to be limited to or exclude specific customers.
The time window covered by each collection run is configurable, enabling the collector to align with your billing cycle and to recover data from prior periods where needed. A time zone offset parameter ensures that date boundaries align with your local time zone.
The identifiers submitted to Varibill for each record are constructed as follows:
- Product Identifier — the transaction type name as
configured in the Transaction Name Filter parameter.
For example:
Voice Calls - Client Identifier — the PortaOne customer ID
- Record Identifier — describes the transaction type,
account, and date covered by the record. For example:
Voice Calls for 27876540878 on 2026-06-28 - Unique Identifier — constructed as
{customer ID}#{account ID}#{transaction name}#{date}
Note: This collector submits rated data — transaction cost values from PortaOne are included in each record. The configured VAT Factor is applied as a divisor to strip embedded VAT from both the Total and Cost values before submission to Varibill.
Prerequisites
Before configuring this collector, ensure that:
- You have access to a PortaOne environment (PortaSwitch / PortaBilling)
- You have a PortaOne user account with read access to customer and account transaction data
- You have an API token associated with that account
- You have noted the base URL of your PortaOne instance (for example,
https://portaone.example.com) - You have access to the Varibill Source Collector configuration screen
Tip: PortaOne API tokens are typically generated or retrieved from within the PortaOne administrative interface. Contact your PortaOne system administrator if you do not have a token or are unsure of the correct host URL.
Warning! The PortaOne Token grants API access to your PortaOne environment. Store it securely and do not share it. The token is masked in the Varibill UI once saved.
Configuration Parameters
The parameters below are entered when configuring the collector in Varibill. They are grouped by function.
Connection Parameters
These parameters identify and authenticate against your PortaOne instance.
| Parameter | What it is | Where to find it |
|---|---|---|
| Portaone Host | The base URL of your PortaOne instance | Your PortaOne management interface URL. Format:
https://portaone.example.com (include
https://, no trailing slash) |
| Portaone Username | The username of the PortaOne account used to connect | Your PortaOne user account name |
| Portaone Token | The API token associated with the PortaOne user account | Generated or retrieved from the PortaOne administrative interface |
Warning! The Portaone Token is a sensitive credential. It is masked in the Varibill UI once saved. If it is compromised, revoke and regenerate it immediately in the PortaOne administrative interface.
Rating Parameters
| Parameter | What it is | Default |
|---|---|---|
| Vat Factor | A divisor applied to the PortaOne charged amount to strip embedded
VAT before submission to Varibill. Set to 1 if PortaOne
values are already exclusive of VAT. |
1 |
Tip: If your PortaOne environment returns transaction costs inclusive
of VAT, set the VAT Factor to the applicable factor (for example,
1.15 for 15% VAT) so that Varibill receives the
VAT-exclusive amount.
Transaction Filter Parameters
| Parameter | What it is | Default |
|---|---|---|
| Transaction Name Filter | The name of the transaction type to collect. Only transactions matching this name are included in the collected data. | (blank) |
Note: The Transaction Name Filter must exactly match the transaction
type name as it appears in your PortaOne environment (for example,
Voice Calls). Only one transaction type can be collected
per collector instance.
Customer Filtering Parameters
These parameters control which PortaOne customers are included in or excluded from each collection run.
| Parameter | What it is | Default |
|---|---|---|
| Collect for Specific Customer | When populated, only transactions for this PortaOne customer ID are collected. Leave blank to collect all customers. | (blank — all customers) |
| Exclude Specific Customer | When populated, transactions for this PortaOne customer ID are excluded from the collection. Leave blank to exclude no customers. | (blank — no exclusions) |
| Filter Specific Customer on Reseller Level | When set to true, the values in Collect for Specific Customer and Exclude Specific Customer are matched against the parent reseller ID rather than the direct customer ID. | false |
Customer Type Collection Switches
These parameters control which categories of PortaOne customer are
included in each collection run. Set each switch to false
to exclude that customer type.
| Parameter | What it controls | Default |
|---|---|---|
| Collect Reseller | When set to true, collects transactions for Reseller-type customers | true |
| Collect Reseller Customers | When set to true, collects transactions for customers that belong to a Reseller | true |
| Collect Retail | When set to true, collects transactions for direct Retail customers | true |
Note: All three customer type switches default to true.
Disable any switch to exclude that customer category from
collection.
Date Range Parameters
These parameters define the time window of transaction data collected on each run.
| Parameter | What it is | Default |
|---|---|---|
| Days Offset | The number of days back from today to start the collection window | 1 |
| Days Range | The number of days to collect, starting from the offset date | 3 |
| Time Zone Hourly Offset | Applied as a negative shift to PortaOne UTC timestamps to convert
them to local time. A value of 2 shifts timestamps back by
2 hours (UTC+2). |
2 |
| Date Format | The date format used for date calculations | yyyy-MM-dd |
Note: For example, with Days Offset = 1
and Days Range = 3, the collector will
retrieve transactions for the period beginning 1 day ago and spanning 3
days. Adjust these values to match your billing cycle and scheduling
frequency.
Operational Parameters
These parameters control API pagination and file management behavior.
| Parameter | What it is | Default |
|---|---|---|
| API Page Limit | The number of records requested per API page when paginating through results. Must be at least 100. | 500 |
| Delete data files older than | The number of days after which locally stored collection files are automatically deleted. Must be at least 1. | 62 |
| Maximum number of records per file | The maximum number of records written to a single output file before a new file is started. Must be between 1,000 and 50,000. | 10000 |
Configuration Steps
Step 1: Prepare Your PortaOne Environment
- Confirm that your PortaOne instance is accessible via HTTPS.
- Identify the PortaOne user account that Varibill will use to connect. This account must have read access to customer and account transaction data for the customer scope you intend to collect.
- Obtain or generate an API token for that user account.
- Note the base URL of your PortaOne instance (for example,
https://portaone.example.com). - Identify the exact transaction type name you want to collect (for
example,
Voice Calls).
Step 2: Configure the Collector in Varibill
In the Varibill User Interface, open the Source Collector configuration screen.
Enter the required field values under the Details tab:
- Hosting Provider: Select Varibill Cloud
- Source Collector Name: Select PortaOne Transaction By Account - Version 15.0
Enter the connection parameters:
- Portaone Host: The base URL of your PortaOne instance
- Portaone Username: The PortaOne user account name
- Portaone Token: The API token for that account
Set the Vat Factor according to whether your PortaOne environment returns transaction costs inclusive or exclusive of VAT.
Set the Transaction Name Filter to the exact transaction type name you want to collect (for example,
Voice Calls).Configure the customer filtering and collection switch parameters to match the customer scope you want to collect.
Set the date range parameters (Days Offset and Days Range) to match your billing cycle.
Set the Time Zone Hourly Offset to reflect the UTC offset of your local time zone.
Save the collector configuration.
Step 3: Run the Collector
Run or schedule the collector according to your standard Source Collector execution process.
For detailed instructions, see: Configuring a New Cloud Source Collector
Troubleshooting
If the collector fails to connect to PortaOne, verify that:
- The Portaone Host URL is correct and includes
https://with no trailing slash. - The Portaone Username is correct and the account is active.
- The Portaone Token is valid and has not expired or been revoked.
- The PortaOne instance is reachable from the Varibill Cloud environment. If your PortaOne instance restricts access by IP, ensure Varibill’s collector IP addresses are permitted.
If the collector connects successfully but returns no data, verify that:
- The Transaction Name Filter exactly matches a transaction type name in your PortaOne environment.
- The Days Offset and Days Range values cover a period in which transaction data exists.
- At least one customer type collection switch (Collect
Reseller, Collect Reseller Customers,
Collect Retail) is set to
true. - The Collect for Specific Customer value, if populated, corresponds to a valid PortaOne customer ID that has transaction data in the requested date range.
PortaOne References
The following resources may assist with locating values or understanding your PortaOne configuration.
PortaOne Documentation (External)
Note: PortaOne documentation is provided for reference. Interface labels and available features may vary depending on your deployed PortaOne release version.
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article