VOS3000 Billing Free Time Powerful Duration Shaving Configuration
Understanding VOS3000 billing free time is essential for carriers who want to run “first X seconds free” promotions or adjust call durations before billing calculation. The SERVER_BILLING_FREE_TIME parameter in VOS3000 subtracts a configurable number of seconds from every CDR duration, effectively offering callers a free window before metered billing begins. Need help configuring this on your switch? Reach out on WhatsApp: +8801911119966 for expert assistance.
This powerful feature, documented in ยง4.3.5.1 of the VOS3000 server manual, allows providers to shave off seconds from the recorded call duration before the billing engine applies rates. Whether you operate in per-minute or per-second billing mode, the free time deduction happens first, fundamentally changing how revenue is calculated on every single call.
Table of Contents
How VOS3000 Billing Free Time Works
The SERVER_BILLING_FREE_TIME parameter defines how many seconds are subtracted from the raw CDR duration before any rate calculation occurs. For example, if a call lasts 66 seconds and SERVER_BILLING_FREE_TIME is set to 6, the billing engine sees only 60 seconds. This mechanism enables carriers to market “first 6 seconds free” promotions without creating complex rate tables.
๐ Parameter
๐ Value
Parameter Name
SERVER_BILLING_FREE_TIME
Manual Section
ยง4.3.5.1
Data Type
Integer (seconds)
Default Value
0 (disabled)
Scope
System-wide (all calls)
Effect
Subtracts X seconds from CDR duration before billing
VOS3000 Billing Free Time Calculation Examples
Let us examine how VOS3000 billing free time impacts real-world scenarios. The deduction is applied before the billing mode determines the billable units, so the interaction between free time and billing mode is critical to understand.
๐ Raw Duration
๐ Free Time (6s)
๐ Billed Duration (Per-Minute)
๐ Billed Duration (Per-Second)
5 seconds
6 seconds
0 minutes (no charge)
0 seconds (no charge)
12 seconds
6 seconds
1 minute
6 seconds
66 seconds
6 seconds
1 minute
60 seconds
125 seconds
6 seconds
2 minutes
119 seconds
366 seconds
6 seconds
6 minutes
360 seconds
Impact on Per-Minute vs Per-Second Billing Modes
The VOS3000 billing free time parameter interacts differently with per-minute and per-second billing modes. Under per-minute billing, the shaved duration is first reduced, then rounded up to the next full minute. Under per-second billing, the remaining seconds after deduction become the billable duration directly. This distinction can have significant revenue implications at scale.
๐ Billing Mode
๐ Free Time Effect
๐ Revenue Impact
Per-Minute (1/1)
Deduct then round up to full minute
High impact โ short calls may become free
Per-Minute (60/60)
Deduct then round up to full minute
Moderate โ same rounding after deduction
Per-Second (1/1)
Deduct exact seconds from duration
Precise โ exact second-by-second deduction
Per-Second (6/6)
Deduct then round to 6-second blocks
Moderate โ block rounding after deduction
Need guidance choosing the right billing mode with free time? Contact us on WhatsApp: +8801911119966 for personalized configuration support.
Why Carriers Use VOS3000 Billing Free Time
Carriers deploy VOS3000 billing free time for several strategic reasons. The most common use case is promotional marketing โ offering the “first 6 seconds free” attracts price-sensitive customers and differentiates your service in competitive wholesale markets. Beyond promotions, free time also compensates for call setup and post-dial delay, ensuring customers are not billed for time spent establishing the SIP session.
๐ Use Case
๐ Typical Free Time
๐ Reasoning
Promotional Campaign
6 seconds
“First 6 seconds free” marketing hook
Post-Dial Delay Compensation
3-5 seconds
Skip billing during call setup time
Short Call Filtering
10 seconds
Eliminate billing for failed/short calls
Competitive Wholesale Rate Matching
1-6 seconds
Match competitors’ effective rate structure
Ringing Time Exclusion
Varies
Do not charge for ringing before answer
Configuring SERVER_BILLING_FREE_TIME Step by Step
Setting up VOS3000 billing free time requires modifying the server billing parameters through the VOS3000 management interface. The parameter is system-wide, meaning it applies to all calls processed by the server. Navigate to System Settings โ Billing Parameters โ SERVER_BILLING_FREE_TIME and enter the desired number of seconds.
๐ Step
๐ Action
๐ Details
1
Log in to VOS3000 Admin Panel
Use admin credentials with billing config rights
2
Navigate to System Settings
Go to Billing Parameters section
3
Locate SERVER_BILLING_FREE_TIME
Find parameter under ยง4.3.5.1 settings
4
Set value in seconds
Enter integer value (e.g., 6 for 6 seconds free)
5
Save and restart billing service
Apply changes and restart the billing engine
6
Verify with test CDR
Make test call and check CDR for deducted duration
Revenue Impact Analysis with VOS3000 Billing Free Time
Understanding the revenue impact of VOS3000 billing free time is critical before enabling it system-wide. Even a small deduction of 6 seconds per call can reduce revenue by 5-10% on short-duration traffic. The table below shows estimated revenue changes based on average call duration and free time settings at a $0.01/minute rate.
๐ Avg Call Duration
๐ Free Time = 0s
๐ Free Time = 6s
๐ Revenue Loss
30 seconds
$0.01
$0.01 (24s โ 1min)
0% (per-min rounding)
60 seconds
$0.01
$0.01 (54s โ 1min)
0% (per-min rounding)
66 seconds
$0.02
$0.01 (60s โ 1min)
50%
180 seconds
$0.03
$0.03 (174s โ 3min)
0% (per-min rounding)
Common VOS3000 Billing Free Time Mistakes
Many administrators make preventable errors when configuring VOS3000 billing free time. The most dangerous mistake is setting free time too high for per-minute billing, which can eliminate revenue on short calls entirely. Another common error is forgetting that free time is system-wide and cannot be applied per-client or per-prefix without workarounds.
Frequently Asked Questions About VOS3000 Billing Free Time
What is SERVER_BILLING_FREE_TIME in VOS3000?
SERVER_BILLING_FREE_TIME is a system-wide billing parameter in VOS3000 that subtracts a specified number of seconds from every CDR call duration before the billing engine calculates charges. When set to 6, for example, a 66-second call is billed as if it lasted only 60 seconds. This feature is commonly used by carriers to offer promotional “first X seconds free” deals or to compensate for post-dial delay and call setup time that should not be charged to the customer.
Does VOS3000 billing free time apply per client or per vendor?
No, the SERVER_BILLING_FREE_TIME parameter applies system-wide across all calls processed by the VOS3000 server. It cannot be configured individually per client, per vendor, or per prefix through this parameter alone. If you need different free time values for different clients, you would need to adjust your rate tables or use prefix-based billing strategies to achieve an equivalent effect. Always test configuration changes with sample calls before deploying to production.
How does free time interact with per-minute billing in VOS3000?
Under per-minute billing mode, VOS3000 billing free time is deducted from the raw CDR duration first, and then the remaining duration is rounded up to the next full minute for billing. This means a 66-second call with 6 seconds free time becomes 60 seconds, which rounds to exactly 1 minute. However, a 65-second call with 6 seconds free becomes 59 seconds, which still rounds up to 1 minute, resulting in the same charge as without free time in many cases.
Can I set different free time values for different routes?
The standard SERVER_BILLING_FREE_TIME parameter does not support per-route configuration since it is a global server setting. However, you can achieve similar results by creating separate rate plans with adjusted per-minute rates that effectively account for the free time, or by using prefix-based billing rules. For complex multi-route free time requirements, consult with a VOS3000 specialist who can design a billing architecture that meets your needs. Contact us on WhatsApp: +8801911119966 for help.
What happens if free time exceeds the call duration?
If the SERVER_BILLING_FREE_TIME value is greater than or equal to the actual CDR duration, the billed duration becomes zero, and the call is not charged at all. For example, a 5-second call with 6 seconds of free time results in a negative adjusted duration, which VOS3000 treats as zero billable time. This is why setting free time too high can be financially dangerous, especially on networks with a high percentage of short-duration calls under 30 seconds.
Is VOS3000 billing free time visible in CDR records?
The CDR record in VOS3000 typically shows the raw call duration, not the duration after free time deduction. The billing engine applies the free time subtraction internally during rate calculation. To verify that free time is working correctly, you must compare the raw CDR duration with the billed amount and confirm the math matches the expected deduction. Using the VOS3000 monitoring tools can help you track these discrepancies effectively.
How do I disable VOS3000 billing free time?
To disable VOS3000 billing free time, simply set the SERVER_BILLING_FREE_TIME parameter back to 0 (zero) in the system billing parameters. When the value is 0, no seconds are subtracted from CDR durations, and billing is calculated on the full raw duration of every call. After changing the value, you must restart the billing service for the change to take effect. Always verify by placing a test call and checking the resulting CDR and billed amount.
Get Professional Help with VOS3000 Billing Free Time
Configuring VOS3000 billing free time correctly is crucial for protecting your revenue while offering competitive promotions. A misconfigured free time setting can silently erode profits across millions of calls. Our team of VOS3000 specialists can help you design, test, and deploy the right free time configuration for your business model.
Contact us on WhatsApp: +8801911119966
Whether you need to set up a “first 6 seconds free” promotion, compensate for post-dial delay, or analyze the revenue impact of duration shaving on your traffic, we provide expert guidance tailored to your VoIP operation. Do not let billing misconfigurations cost you money โ reach out today for a consultation.
๐ Need Professional VOS3000 Setup Support?
For professional VOS3000 installations and deployment, VOS3000 Server Rental Solution:
VOS3000 Billing Precision: Complete Fee Accuracy and Duration Rounding Guide
In wholesale and retail VoIP operations, every second of every call translates directly into revenue or cost. A billing system that rounds call durations incorrectly or calculates fees with imprecise methods can silently erode profit margins or create disputes with vendors and clients. VOS3000 billing precision is the set of configuration parameters and rules that govern how call durations are rounded, how billing increments are applied, and how fees are calculated in CDR (Call Detail Record) records. Understanding and configuring these settings correctly is essential for any VoIP carrier that wants accurate billing, fair reconciliation, and maximum revenue protection. (VOS3000 Billing Precision)
This guide provides a complete walkthrough of VOS3000 billing precision based on VOS3000 2.1.9.07 Manual Section 4.3.5.1 (Softswitch Cluster Parameters) and Section 2.3 (Billing Fundamentals). We cover the SS_BILLINGUNIT system parameter, per-rate-table billing unit overrides, duration rounding logic, rounding modes, SS_STARTBILLINGTIME configuration, fee calculation formulas, and practical use cases for wholesale, retail, and calling card deployments. Whether you are setting up a new VOS3000 billing system or troubleshooting CDR fee discrepancies, this guide has everything you need. For professional assistance with VOS3000 billing configuration, contact us on WhatsApp at +8801911119966.
Table of Contents
What Is Billing Precision in VOS3000?
Billing precision in VOS3000 refers to the granularity and accuracy with which call durations are measured and fees are calculated. It encompasses several interconnected settings that determine how raw call duration (the actual time from answer to hangup) is transformed into a billed duration and ultimately into a fee amount on the CDR. VOS3000 Billing Precision
At its core, billing precision answers three fundamental questions for every call processed by VOS3000:
When does billing start? Does the clock begin when the call is set up (SIP INVITE sent) or when the called party connects (SIP 200 OK received)?
What is the minimum billing increment? Is the call billed per second, per 6 seconds, per 30 seconds, or per full minute?
How are fractional amounts rounded? When the fee calculation produces a fractional amount, how is it rounded to the precision configured for the account currency?
These three questions may seem simple, but their answers have a profound impact on revenue. Consider a wholesale carrier processing 10 million calls per day. A 1-second rounding difference per call, at an average rate of $0.01 per minute, translates to approximately $1,667 per day or over $600,000 per year in either lost revenue or overbilling disputes. VOS3000 billing precision gives you the controls to manage this precisely, ensuring that your billing matches your business agreements with clients and vendors.
Duration Rounding: How VOS3000 Rounds Call Durations
Duration rounding is the process of converting the actual call duration into a billed duration based on the configured billing unit. The actual duration is the real time the call was connected โ measured from the SIP 200 OK (answer) to the SIP BYE (hangup). The billed duration is the duration after the billing unit increment has been applied.
VOS3000 always rounds up to the next billing increment. This means if a call lasts 65 seconds and the billing unit is 60 seconds, the billed duration is 120 seconds (2 minutes). If the billing unit is 6 seconds and the call lasts 67 seconds, the billed duration is 72 seconds (12 increments of 6 seconds). This upward rounding is standard in the telecom industry and ensures the provider captures the full value of each partial increment. VOS3000 Billing Precision
The rounding formula is straightforward:
Billed Duration = CEILING(Actual Duration / Billing Unit) x Billing Unit
Examples:
- Actual duration: 45s, Billing unit: 1s โ Billed: 45s (45 x 1)
- Actual duration: 45s, Billing unit: 6s โ Billed: 48s (8 x 6)
- Actual duration: 45s, Billing unit: 12s โ Billed: 48s (4 x 12)
- Actual duration: 45s, Billing unit: 30s โ Billed: 60s (2 x 30)
- Actual duration: 45s, Billing unit: 60s โ Billed: 60s (1 x 60)
- Actual duration: 65s, Billing unit: 60s โ Billed: 120s (2 x 60)
Understanding this rounding behavior is critical for reconciling your VOS3000 CDR records with vendor invoices. A vendor using per-second billing will bill you for 65 seconds on a 65-second call, but your VOS3000 system using 60-second billing will bill your client for 120 seconds on the same call. The 55-second difference is your margin on the billing increment โ or a dispute if your client also uses per-second billing. For help resolving billing reconciliation discrepancies, contact us on WhatsApp at +8801911119966.
โฑ๏ธ Actual Duration
๐ Billing Unit
๐ Billed Duration
๐ Increment Count
๐ก Rounding Explanation
45 seconds
1 second
45 seconds
45 increments
Exact match, no rounding needed
45 seconds
6 seconds
48 seconds
8 increments
45/6=7.5 โ rounded up to 8
45 seconds
12 seconds
48 seconds
4 increments
45/12=3.75 โ rounded up to 4
45 seconds
30 seconds
60 seconds
2 increments
45/30=1.5 โ rounded up to 2
45 seconds
60 seconds
60 seconds
1 increment
45/60=0.75 โ rounded up to 1
65 seconds
60 seconds
120 seconds
2 increments
65/60=1.08 โ rounded up to 2
3 seconds
6 seconds
6 seconds
1 increment
3/6=0.5 โ rounded up to 1 (minimum charge)
Billing Unit: The Minimum Billing Increment
The billing unit is the fundamental building block of VOS3000 billing precision. It defines the minimum increment of time for which a call is charged. Every call duration is divided by the billing unit, and the result is rounded up to the nearest whole number to determine the number of billable increments. The fee is then calculated by multiplying the rate per increment by the number of increments.
VOS3000 supports the following billing unit options: (VOS3000 Billing Precision)
๐ Billing Unit
๐ Description
๐ฏ Typical Use Case
๐ฐ Revenue Impact
๐ Avg. Overbilling %
1 second
Per-second billing, maximum precision
Wholesale carriers, competitive accounts
Lowest โ near-exact billing
~0.5%
6 seconds
6-second increment billing
Calling card platforms, prepaid services
Low โ small increment margin
~2-3%
12 seconds
12-second increment billing
Mid-tier retail, enterprise clients
Moderate โ noticeable margin on short calls
~4-6%
30 seconds
30-second increment billing
Standard retail, consumer VoIP
Higher โ significant margin on partial units
~8-12%
60 seconds
Per-minute billing, 1-minute minimum
Premium retail, mobile termination
Highest โ every call billed full minute minimum
~15-25%
The “Avg. Overbilling %” column represents the average additional revenue captured compared to exact per-second billing, based on a typical distribution of call durations. These figures are approximate and vary based on your actual traffic pattern, but they illustrate the significant revenue difference between billing unit choices.
The SS_BILLINGUNIT parameter is the system-wide default billing increment configured in the VOS3000 softswitch cluster parameters (Section 4.3.5.1). This parameter sets the default billing unit for all rate tables that do not have a per-rate-table billing unit override. Navigate to Operation Management > Softswitch Management > Additional Settings > System Parameter to locate and modify this parameter.
The SS_BILLINGUNIT value is specified in seconds. Common values include:
When you change SS_BILLINGUNIT, the new value applies to all calls processed after the change. Existing CDR records are not retroactively recalculated. It is important to plan billing unit changes during low-traffic periods and communicate the change to billing and finance teams. For comprehensive documentation of all VOS3000 system parameters, see our VOS3000 system parameters guide.
Per-Rate-Table Billing Unit Override (VOS3000 Billing Precision)
While SS_BILLINGUNIT provides the system-wide default, VOS3000 also supports a per-rate-table billing unit override. This means each individual rate table can define its own billing increment, which takes precedence over the system default when calculating fees for calls that use that rate table.
This feature is essential for carriers that offer different billing granularities to different customer segments. For example:
A wholesale rate table might use 1-second billing to remain competitive
A retail rate table might use 60-second billing for maximum revenue
A calling card rate table might use 6-second billing for prepaid balance accuracy
The per-rate-table billing unit is configured directly in the rate table settings. When a call is processed, VOS3000 checks the rate table associated with the call’s rate plan. If the rate table has a billing unit defined, that value is used. If no per-rate-table billing unit is set, VOS3000 falls back to the SS_BILLINGUNIT system parameter value.
This hierarchical approach gives carriers the flexibility to run multiple billing models on a single VOS3000 platform โ a critical capability for multi-tenant and multi-service deployments. For help configuring rate tables with different billing units, contact us on WhatsApp at +8801911119966.
SS_STARTBILLINGTIME: When Billing Starts
The SS_STARTBILLINGTIME parameter controls when the billing clock starts for each call. This is a critical setting because it determines whether setup time (the time the phone is ringing before the called party answers) is included in the billed duration. VOS3000 Manual Section 4.3.5.1 defines this parameter with two possible values.
โ๏ธ Parameter Value
๐ Billing Start Point
๐ Description
๐ฏ When to Use
0 (Connect)
SIP 200 OK (Answer)
Billing starts when the called party answers the call. Ring time is not billed.
Standard for most VoIP deployments. Fair to end users โ only connected time is charged.
1 (Setup)
SIP INVITE (Setup)
Billing starts when the SIP INVITE is sent. Ring time is included in the billed duration.
Used when the provider wants to charge for network resources used during setup, including unanswered calls.
The choice between connect-time and setup-time billing has significant business implications. With connect-time billing (value 0, the default), a call that rings for 30 seconds and is never answered has zero billed duration and generates no revenue. With setup-time billing (value 1), that same unanswered call would be billed for at least one billing increment (e.g., 60 seconds if SS_BILLINGUNIT is 60).
Most VoIP carriers use connect-time billing because it aligns with customer expectations โ customers expect to pay only for time they are actually connected. However, setup-time billing may be appropriate for:
High-cost termination routes: Where the carrier pays for setup attempts regardless of answer
Premium service numbers: Where the service value begins at dialing, not at answer
Network resource billing: Where the provider wants to recover costs for signaling and media reservation during setup
It is critical that the SS_STARTBILLINGTIME setting matches what is agreed upon in your interconnect agreements with clients and vendors. A mismatch between your billing start time and your vendor’s billing start time can create reconciliation discrepancies that are difficult to resolve. For guidance on configuring SS_STARTBILLINGTIME for your specific business model, reach out on WhatsApp at +8801911119966.
Rounding Mode: How Fractional Amounts Are Rounded
After the billed duration is calculated and the fee is computed, the resulting amount may have more decimal places than the currency precision allows. For example, a rate of $0.0235 per minute multiplied by a 48-second billed duration (using 6-second billing unit) produces a fee of $0.0188. If the currency is configured for 4 decimal places, the fee is $0.0188. If the currency is configured for 2 decimal places, the fee must be rounded to $0.02.
VOS3000 applies rounding to fees based on the currency precision configured for the account. The standard rounding mode in VOS3000 follows the conventional mathematical rounding rules:
Digits 0-4: Round down (truncate)
Digits 5-9: Round up
This rounding is applied at the individual CDR level โ each call’s fee is rounded independently before being written to the CDR. This means that rounding effects do not accumulate across calls in the CDR, but they do affect the total invoice amount when many calls with small fractional amounts are summed.
For high-volume wholesale operations processing millions of calls, the cumulative effect of rounding can be significant. A carrier billing 10 million calls per day with an average rounding loss of $0.0001 per call loses approximately $1,000 per day or $365,000 per year. This is why many wholesale carriers choose per-second billing with high-precision currency settings (4 or more decimal places) to minimize rounding impact.
Fee Calculation: The Complete Formula (VOS3000 Billing Precision)
The VOS3000 fee calculation follows a precise formula that incorporates the rate, billed duration, and billing unit. Understanding this formula is essential for verifying CDR fee amounts and troubleshooting billing discrepancies.
VOS3000 Fee Calculation Formula:
Step 1: Calculate Billed Duration
Billed Duration = CEILING(Actual Duration / Billing Unit) x Billing Unit
Step 2: Calculate Number of Billable Increments
Increments = Billed Duration / Billing Unit
Step 3: Calculate Rate Per Increment
Rate Per Increment = Rate Per Minute / (60 / Billing Unit)
Or equivalently: Rate Per Increment = Rate Per Minute x Billing Unit / 60
Step 4: Calculate Fee
Fee = Increments x Rate Per Increment
Step 5: Apply Rounding
Rounded Fee = ROUND(Fee, Currency Precision)
Complete Formula:
Fee = CEILING(Duration / BillingUnit) x BillingUnit x (RatePerMinute / 60)
Let us work through a concrete example to demonstrate the complete calculation:
๐ Example
โฑ๏ธ Actual Duration
๐ Billing Unit
๐ต Rate/Min
๐ Billed Duration
๐ฐ Calculated Fee
Per-second wholesale
65 seconds
1 second
$0.0100
65 seconds
$0.01083
6-second calling card
65 seconds
6 seconds
$0.0300
66 seconds
$0.03300
12-second retail
65 seconds
12 seconds
$0.0500
72 seconds
$0.06000
30-second standard
65 seconds
30 seconds
$0.0800
90 seconds
$0.12000
60-second premium retail
65 seconds
60 seconds
$0.1000
120 seconds
$0.20000
Notice how the same 65-second call produces dramatically different fee amounts depending on the billing unit. The per-second billing example charges for exactly 65 seconds, while the 60-second billing example charges for a full 2 minutes โ nearly double the actual duration. This is why choosing the right billing unit is one of the most impactful billing decisions you make in VOS3000.
CDR Duration vs Billed Duration Explained (VOS3000 Billing Precision)
One of the most common sources of confusion in VOS3000 billing is the difference between the “duration” field and the “billed duration” field in CDR records. Understanding this distinction is essential for accurate billing analysis and vendor reconciliation.
๐ CDR Field
๐ Meaning
โ๏ธ How Calculated
๐ก Example
Duration (Actual Duration)
Real time from answer to hangup
Measured from SIP 200 OK to SIP BYE
65 seconds
Billed Duration
Duration after billing unit rounding
CEILING(Duration / BillingUnit) x BillingUnit
120 seconds (with 60s billing unit)
Fee
Calculated charge for the call
Billed Duration x (Rate Per Minute / 60)
$0.2000 (at $0.10/min)
The actual duration field in the CDR represents the true connected time of the call โ what you would see if you measured the time from when the called party picked up to when either party hung up. The billed duration field represents the duration after the billing unit rounding has been applied. The fee is always calculated based on the billed duration, not the actual duration.
This distinction becomes critical during bilateral reconciliation with vendors. Your vendor’s CDR will show the actual duration (or their version of the billed duration based on their billing unit), while your VOS3000 CDR will show your billed duration based on your billing unit. If both parties use different billing units, the durations will not match, even though the actual call time is identical. For more on managing CDR data, see our VOS3000 CDR and MySQL data maintenance guide.
Use Cases: Billing Precision in Practice (VOS3000 Billing Precision)
Use Case 1: Per-Second Billing for Wholesale Carriers
Wholesale carriers operate on thin margins with high volume. Per-second billing (billing unit = 1) is the industry standard for wholesale interconnects because it provides the most accurate and transparent billing. When a wholesale client compares your rates with a competitor, per-second billing demonstrates confidence in your pricing and eliminates disputes over billing increment differences.
Configuration for per-second wholesale billing:
Wholesale Per-Second Billing Configuration:
SS_BILLINGUNIT = 1 (or set billing unit = 1 in wholesale rate tables)
SS_STARTBILLINGTIME = 0 (connect-time billing)
Currency Precision = 4 or more decimal places
Revenue Impact: Near-exact billing, minimal overbilling
Best for: Competitive wholesale accounts, interconnect agreements
Use Case 2: 60-Second Minimum for Retail Operations (VOS3000 Billing Precision)
Retail VoIP providers serving consumer and small-business customers typically use 60-second billing (billing unit = 60) to maximize revenue per call. The 60-second minimum means that even a 5-second call is billed for a full minute, and a 65-second call is billed for 2 full minutes. This model generates significantly higher revenue per minute of actual usage compared to per-second billing.
๐ Call Duration
โฑ๏ธ Billed (1s Unit)
๐ต Fee (1s @ $0.05/min)
โฑ๏ธ Billed (60s Unit)
๐ต Fee (60s @ $0.05/min)
๐ Revenue Difference
5 seconds
5 seconds
$0.0042
60 seconds
$0.0500
+1090%
30 seconds
30 seconds
$0.0250
60 seconds
$0.0500
+100%
61 seconds
61 seconds
$0.0508
120 seconds
$0.1000
+97%
90 seconds
90 seconds
$0.0750
120 seconds
$0.1000
+33%
180 seconds
180 seconds
$0.1500
180 seconds
$0.1500
0% (exact minute)
As this table demonstrates, the revenue advantage of 60-second billing is most pronounced on short calls. For calls that are exact multiples of 60 seconds, there is no difference. For calls that are even 1 second over a full minute, 60-second billing captures an additional full minute of revenue.
Use Case 3: 6-Second Increment for Calling Cards
Calling card and prepaid platforms need a billing increment that balances revenue with customer perception. A 60-second billing unit on calling cards would cause rapid balance depletion for short calls, leading to customer complaints. Per-second billing provides the most accuracy but does not generate enough margin on the increment to be profitable for calling card operations. The 6-second increment is the industry sweet spot.
With 6-second billing, a 65-second call is billed for 66 seconds (11 increments of 6 seconds). This provides a small but consistent margin on each partial increment while keeping the billing reasonably close to the actual duration. Customers perceive the billing as fair because the overbilling is limited to a maximum of 5 seconds per call, and the provider captures incremental revenue on every call that does not end on an exact 6-second boundary.
Configuration for calling card billing:
Calling Card 6-Second Billing Configuration:
SS_BILLINGUNIT = 6 (or set billing unit = 6 in calling card rate tables)
SS_STARTBILLINGTIME = 0 (connect-time billing only)
Currency Precision = 4 decimal places
Revenue Impact: Moderate โ consistent small margin per call
Best for: Prepaid platforms, calling cards, callback services
Billing Precision and Bilateral Reconciliation
Bilateral reconciliation is the process of comparing your VOS3000 CDR records with your vendor’s CDR records to ensure that both parties agree on the call volumes, durations, and fees. Billing precision settings directly affect reconciliation outcomes because they determine how durations are rounded and fees are calculated.
The most common reconciliation issue is a CDR duration mismatch. This occurs when your VOS3000 CDR shows a different billed duration than your vendor’s CDR for the same call. The mismatch is almost always caused by different billing unit settings between the two systems. For example:
Your VOS3000 uses 1-second billing: a 65-second call shows 65 seconds billed duration
Your vendor uses 60-second billing: the same call shows 120 seconds billed duration on their CDR
The actual call duration is identical (65 seconds), but the billed durations differ by 55 seconds
To successfully reconcile with vendors, always compare the actual duration fields, not the billed duration fields. The actual duration should match (or be very close, allowing for minor timing differences in SIP message detection). If you need to compare fees, recalculate both sides using the same billing unit to get an apples-to-apples comparison.
Common Issue: CDR Duration Mismatch with Vendor CDR
When you observe a CDR duration mismatch with a vendor, follow this diagnostic process:
Compare actual durations: Check if the actual (raw) duration fields match between your CDR and the vendor’s CDR. If they match, the issue is billing unit configuration, not a call processing problem.
Check billing unit on both sides: Confirm what billing unit your VOS3000 rate table uses and what billing unit the vendor applies. Document both values.
Recalculate fees with consistent billing unit: Using the vendor’s billing unit, recalculate your CDR fees and compare with the vendor’s invoice. The fees should be very close if the billing unit is the only difference.
Check SS_STARTBILLINGTIME: Verify that your billing start time matches the vendor’s. If you use connect-time billing and the vendor uses setup-time billing, the actual durations may differ by the ring time.
Look for timing differences: Small differences (1-2 seconds) in actual duration are normal due to differences in when each system detects the answer and hangup events. These are typically within acceptable reconciliation tolerance.
If you need professional assistance with CDR reconciliation or billing dispute resolution, contact us on WhatsApp at +8801911119966.
VOS3000 Billing Precision Configuration Checklist
Use this comprehensive checklist to ensure your VOS3000 billing precision is configured correctly for your business requirements. Each item should be verified and documented.
โ Step
๐ Configuration Item
๐ Details
โ ๏ธ Warning
1
Set SS_BILLINGUNIT
Configure system-wide default billing increment in seconds
Changing this affects all rate tables without per-table override
2
Set SS_STARTBILLINGTIME
Choose 0 (connect) or 1 (setup) for billing start point
Must match vendor and client interconnect agreements
3
Configure per-rate-table billing units
Override system default in each rate table as needed
Per-rate-table value overrides SS_BILLINGUNIT for that table
4
Set currency precision
Configure decimal places for fee rounding
Low precision (2 decimals) causes more rounding loss at high volume
5
Verify rate calculation formula
Test with sample calls to confirm fee matches expected calculation
Always test before going live with new rate tables
6
Align with vendor billing parameters
Confirm vendor billing unit and start time match your configuration
Mismatch causes reconciliation failures and billing disputes
7
Run CDR reconciliation test
Compare a sample of CDR records with vendor CDRs
Do this before committing to production billing
8
Document all billing precision settings
Record SS_BILLINGUNIT, SS_STARTBILLINGTIME, and per-rate-table values
Essential for audit trails and future troubleshooting
Frequently Asked Questions
1. What is billing precision in VOS3000?
Billing precision in VOS3000 refers to the set of configuration parameters that control how call durations are measured, rounded, and converted into fees on CDR records. It includes the billing unit (minimum billing increment), the billing start time (when the clock starts), the rounding mode (how fractional fees are rounded), and the currency precision. These settings collectively determine how accurately and fairly calls are billed, directly impacting revenue and vendor reconciliation.
2. How does billing unit affect revenue?
The billing unit directly affects revenue by determining the minimum charge for each call and how partial increments are rounded up. A larger billing unit (e.g., 60 seconds) generates more revenue per call than a smaller billing unit (e.g., 1 second) because every call is rounded up to the next full increment. On average, switching from per-second billing to 60-second billing increases revenue by 15-25% on the same traffic, with the greatest impact on short-duration calls. However, higher billing units may make your rates less competitive in the wholesale market.
3. What is SS_BILLINGUNIT?
SS_BILLINGUNIT is a VOS3000 softswitch cluster parameter (documented in Section 4.3.5.1) that sets the system-wide default billing increment in seconds. It determines the minimum unit of time for which calls are billed. For example, SS_BILLINGUNIT = 60 means all calls are billed in 60-second increments. Individual rate tables can override this default with their own billing unit value. The parameter is configured in Operation Management > Softswitch Management > Additional Settings > System Parameter.
4. How does VOS3000 round call durations?
VOS3000 always rounds call durations up to the next billing increment using the ceiling function. The formula is: Billed Duration = CEILING(Actual Duration / Billing Unit) x Billing Unit. For example, with a 6-second billing unit, a call lasting 65 seconds is billed as 66 seconds (CEILING(65/6) x 6 = 12 x 6 = 72, or more precisely CEILING(65/6) = 11, so 11 x 6 = 66 seconds). This upward rounding is standard in the telecom industry and ensures the provider captures the full value of each partial increment.
5. What is the difference between duration and billed duration in CDR?
The “duration” field (actual duration) in a VOS3000 CDR represents the real connected time of the call, measured from SIP 200 OK (answer) to SIP BYE (hangup). The “billed duration” field represents the duration after the billing unit rounding has been applied. For example, a call with an actual duration of 65 seconds and a 60-second billing unit would show 65 seconds in the duration field and 120 seconds in the billed duration field. The fee is always calculated based on the billed duration, not the actual duration.
6. When does billing start in VOS3000?
The billing start time in VOS3000 is controlled by the SS_STARTBILLINGTIME parameter. When set to 0 (default), billing starts when the called party answers (SIP 200 OK) โ this is called connect-time billing. When set to 1, billing starts when the SIP INVITE is sent โ this is called setup-time billing, which includes the ringing time. Most VoIP deployments use connect-time billing because it only charges for time the parties are actually connected. The setting must match your interconnect agreements with clients and vendors.
7. How to configure per-second billing in VOS3000?
To configure per-second billing in VOS3000, set the SS_BILLINGUNIT parameter to 1. This can be done at the system level (affecting all rate tables) by changing the softswitch cluster parameter, or at the individual rate table level by setting the billing unit to 1 second in the rate table configuration. Per-rate-table settings override the system default, so you can run per-second billing for wholesale accounts while maintaining 60-second billing for retail accounts on the same VOS3000 platform. Also ensure SS_STARTBILLINGTIME = 0 for standard connect-time billing, and set currency precision to at least 4 decimal places to minimize fee rounding impact.
Conclusion (VOS3000 Billing Precision)
VOS3000 billing precision is not just a technical configuration โ it is a core business control that directly impacts your revenue, customer relationships, and vendor reconciliation accuracy. Every parameter from SS_BILLINGUNIT to SS_STARTBILLINGTIME, from per-rate-table billing unit overrides to currency rounding precision, plays a role in ensuring that every call is billed fairly, accurately, and in accordance with your business agreements.
The key takeaways from this guide are:
Billing unit choice has massive revenue impact: The difference between per-second and 60-second billing can represent 15-25% revenue variation on the same traffic
Per-rate-table overrides enable multi-model billing: You can run wholesale, retail, and calling card billing models on a single VOS3000 platform
CDR duration fields are not the same: Always distinguish between actual duration and billed duration when analyzing CDR records
Reconciliation requires parameter alignment: Ensure your billing precision settings match vendor configurations to avoid disputes
Test before deploying: Always verify fee calculations with sample calls before committing new billing configurations to production
For professional VOS3000 billing configuration, CDR analysis, and vendor reconciliation support, our team is ready to help. Contact us on WhatsApp at +8801911119966 for expert assistance with your VOS3000 deployment. You can also download the latest VOS3000 software from the official VOS3000 downloads page.
๐ Need Professional VOS3000 Setup Support?
For professional VOS3000 installations and deployment, VOS3000 Server Rental Solution:
VOS3000 rate table import problems cause billing accuracy issues that can lead to revenue loss and customer disputes. When importing rate tables, common issues like encoding errors, decimal format mismatches, and separator inconsistencies can corrupt your billing data. This technical troubleshooting guide covers all rate import problems, billing precision issues, and their solutions based on official VOS3000 documentation.
๐ Need help with VOS3000 rate import issues? WhatsApp: +8801911119966
Table of Contents
๐จ Common VOS3000 Rate Table Import Problems
Rate table import accuracy loss can occur due to formatting problems, character encoding issues, or rounding errors in the import process. According to VOS3000 official documentation, preventing accuracy loss requires careful attention to data preparation and import procedures.
๐ Rate Import Problem Classification
Problem Type
Symptom
Root Cause
Severity
๐ด Encoding Error
Garbled destination names
Non-UTF-8 file encoding
High
๐ด Separator Mismatch
Fields merged or shifted
Inconsistent delimiters
High
๐ด Decimal Format
Rates rounded incorrectly
Dot vs comma conflict
High
๐ก Prefix Format
Routes not matching
Leading zeros, wrong format
Medium
๐ก Rate Precision
Small cents differences
Excel rounding on export
Medium
๐ก Duplicate Prefix
Import rejected
Same prefix multiple times
Medium
๐ข Missing Fields
Import fails validation
Required columns missing
Low
๐ง Problem 1: UTF-8 Encoding Errors
One of the most common VOS3000 rate table import problems is character encoding mismatch. When rate tables contain international destination names (countries, cities, regions) with special characters, incorrect encoding causes garbled text and import failures.
โ ๏ธ Encoding Error Symptoms
Symptom
Example
Cause
Garbled characters
“Espaรฑa” becomes “Espaรยฑa”
ANSI/Windows-1252 file
Question marks
“ไธญๅฝ” becomes “??”
Missing Unicode support
Import failure
Error: Invalid character
Binary/special characters
โ Solution: UTF-8 Encoding Requirements
To fix encoding errors in VOS3000 rate table import:
Save CSV in UTF-8 Format: When saving from Excel, use “CSV UTF-8 (Comma delimited)” option, not regular CSV
Verify with Text Editor: Open the CSV file in Notepad++ or similar editor, check encoding shows UTF-8
Convert if Needed: Use “Encoding > Convert to UTF-8” in Notepad++ if file is in different encoding
Check BOM: UTF-8 with BOM may cause issues – try UTF-8 without BOM if import fails
Validate Characters: Ensure all destination names display correctly before import
โ WRONG: Save as CSV (Comma delimited) - uses Windows-1252
โ CORRECT: Save as CSV UTF-8 (Comma delimited) - uses UTF-8
Notepad++ Encoding Check:
Menu: Encoding โ "Encode in UTF-8" or "Convert to UTF-8"
๐ง Problem 2: Field Separator Inconsistency
Field separator issues occur when the CSV file uses different delimiters within the same file or different delimiters than VOS3000 expects. This causes fields to merge, shift, or be completely lost during import.
Decimal format issues cause rates to be imported incorrectly, leading to significant billing discrepancies. Different regions use different decimal separators (dot vs comma), and mixing these formats can multiply or divide rates by 1000.
โ ๏ธ Decimal Format Error Examples
Intended Rate
File Has
VOS3000 Reads
Error Impact
$0.015 per minute
0,015 (European)
$15.00 per minute
๐ด 1000x overcharge!
$1.50 per minute
1.50 (US format)
$1.50 per minute
โ Correct
$0.012 per minute
0.012 (US format)
$0.012 per minute
โ Correct
โ Solution: Decimal Format Standardization
To fix decimal format issues:
Check System Locale: Verify what decimal format VOS3000 server expects
Standardize Format: Use dot (.) for decimal point consistently across all rate files
Configure Excel Export: When exporting from Excel, ensure decimal format is preserved correctly
Validate Before Import: Open CSV in text editor and verify decimal format
Test Import: Import a small sample first and verify rates display correctly
Prefix formatting errors prevent rates from matching calls correctly. Common issues include leading zeros, incorrect length, and format mismatches with VOS3000 requirements.
โ ๏ธ Prefix Format Problem Examples
Problem
Wrong Format
Correct Format
Notes
Leading zero
0880
880
Remove leading zeros
Plus sign included
+880
880
Remove plus signs
Spaces in prefix
88 01
8801
Remove all spaces
Text prefix
prefix_880
880
Numbers only
Wildcard issues
88*
88
Use proper wildcard format
โ Solution: Prefix Format Validation (VOS3000 Rate Table)
Remove Non-Numeric Characters: Strip plus signs, spaces, and text prefixes
Remove Leading Zeros: VOS3000 prefixes should not start with zero
Validate Length: Ensure prefix length is appropriate for destination
Check Wildcards: If using wildcards, verify VOS3000 wildcard syntax
Test Matching: After import, verify prefixes match test call destinations
Billing precision configuration determines how accurately calls are billed. Mismatched billing precision between your VOS3000 and partner platforms causes reconciliation issues and disputes.
Different rounding rules between platforms cause accumulated billing discrepancies over high call volumes.
Rounding Method
61.3 Seconds
61.7 Seconds
Monthly Impact (10K calls)
Round Up
62 seconds
62 seconds
Higher revenue
Round Nearest
61 seconds
62 seconds
Balanced
Truncate
61 seconds
61 seconds
Lower revenue
๐ฐ Rate of Connected vs Rate of Response Problems
VOS3000 distinguishes between two billing concepts that can cause disputes if not understood correctly. According to official documentation, different pricing applies to different call scenarios.
๐ Billing Scenario Comparison
Scenario
Call State
Rate Applied
Dispute Risk
Call connected, voice flowing
Two-way audio
Rate of Connected
Low
Call answered but busy
200 OK received, immediate BYE
Rate of Response
Medium
Call answered, no answer
200 OK, timeout, BYE
Rate of Response
Medium
Call forwarded, not answered
302 redirect, no answer
Rate of Response
High
๐ง Solution: Configure Rates Correctly
To prevent disputes over Rate of Connected vs Rate of Response:
Document Rate Structure: Clearly define both rates in customer agreements
Set Appropriate Values: Rate of Response typically lower than Rate of Connected
Configure Both: Set both rates in VOS3000 rate management for each prefix
Monitor CDR: Check CDR for correct rate application based on call outcome
Align with Partners: Ensure partner platforms use same billing methodology
The most common cause is decimal format mismatch. If your CSV uses comma as decimal separator (European format) but VOS3000 expects dot, rates will be multiplied by 1000. Open the CSV in text editor and verify decimal format uses dot (.).
How do I fix garbled destination names after import?
This is an encoding issue. Re-save your CSV file in UTF-8 encoding format. In Excel, use “CSV UTF-8 (Comma delimited)” option. In Notepad++, use Encoding > Convert to UTF-8.
Why are some prefixes not matching calls?
Check for leading zeros, spaces, or plus signs in prefix values. VOS3000 prefixes should be numeric only without leading zeros. Use Find/Replace in text editor to clean prefix values before import.
What’s the difference between Rate of Connected and Rate of Response?
Rate of Connected applies when a call is successfully established with two-way voice communication. Rate of Response applies when the called party answers (SIP 200 OK) but the call doesn’t complete successfully (busy, no answer after connection, etc.). Set both rates to avoid billing disputes.
๐ Get Help with VOS3000 Rate Import Issues
Experiencing rate table import problems or billing precision issues? Our experts can help diagnose encoding errors, format issues, and configure proper billing settings to ensure accurate rate management.
VOS3000 CDR billing discrepancy is a common challenge for VoIP operators managing multiple platforms. When your server time is correct but CDR billing differs from other platforms, it creates reconciliation headaches and potential revenue disputes. This comprehensive troubleshooting guide covers all causes of billing discrepancies and provides step-by-step solutions based on official VOS3000 documentation.
๐ Need help with VOS3000 billing issues? WhatsApp: +8801911119966
Table of Contents
๐ What Causes VOS3000 CDR Billing Discrepancy?
CDR billing differences between VOS3000 and other platforms can occur due to various factors even when server time appears correct. Understanding these root causes is essential for accurate troubleshooting and resolution.
๐ Common Billing Discrepancy Causes (VOS3000 CDR Billing Discrepancy)
One of the most significant causes of VOS3000 CDR billing discrepancy is the method used to calculate call duration. Different platforms measure call duration differently, leading to substantial billing differences over high call volumes.
๐ Duration Measurement Methods Comparison
Method
Start Point
End Point
Typical Difference
INVITE to BYE
SIP INVITE received
SIP BYE received
Includes setup time (+2-5 sec)
200 OK to BYE
SIP 200 OK received
SIP BYE received
Actual talk time only
Progress to BYE
180 Ringing sent
SIP BYE received
Includes ringing time
Example: If a call has 3 seconds of setup time and 60 seconds of talk time, the INVITE-to-BYE method would bill 63 seconds, while the 200-OK-to-BYE method would bill only 60 seconds. Over 10,000 calls per day, this 3-second difference compounds to 30,000 seconds or 500 minutes of billing discrepancy.
๐ VOS3000 Billing Precision Configuration
VOS3000 supports multiple billing precision options that directly affect CDR calculations. Proper configuration ensures accurate billing and reduces discrepancies with partner platforms.
โ๏ธ Billing Precision Options in VOS3000 (VOS3000 CDR Billing Discrepancy)
Billing Method
Description
Accuracy
Best For
Per-Second Billing
Charges exact seconds used
Highest
Wholesale carriers, high accuracy
Per-Minute Billing
Rounds to nearest minute
Lowest
Retail customers, simple billing
6-Second Increments
Bills in 6-second blocks
Medium
Industry standard, balanced
Custom Rounding
Configurable increments
Variable
Specific carrier requirements
๐ง How to Configure Billing Precision in VOS3000
To access and configure billing precision settings in VOS3000:
Navigate to Billing Settings: Open VOS3000 GUI Client and go to Rate Management section
Select Rate Group: Choose the rate group you want to configure
Configure Billing Method: Select the billing increment type for each rate group
Set Rounding Rules: Choose round up, round nearest, or truncate
CDR queue management is critical for accurate billing. When the CDR queue experiences problems, call records may be delayed, lost, or incorrectly processed, leading to billing discrepancies.
If you notice CDR queue issues affecting your billing accuracy, follow these steps:
1. Check Database Performance:
Monitor database query response times
Check connection pool usage
Review table lock status
Verify disk I/O performance
2. Verify Database Connectivity:
Ensure MySQL service is running
Check network connectivity to database server
Verify database credentials are correct
Test database connection from VOS3000 server
3. Review Recent System Changes:
Check for recent configuration modifications
Review any rate table imports
Verify software updates or patches
๐ Timezone and NTP Configuration
Proper timezone configuration and NTP synchronization are essential for accurate CDR billing. When multiple platforms are involved, all systems must use consistent time references.
โ๏ธ Timezone Configuration Checklist
Check Item
VOS3000 Server
Database Server
Partner Platforms
Timezone Setting
Must match
Must match
Document difference
NTP Server
Configure and verify
Same NTP source
Agree on time source
DST Handling
Verify auto-adjust
Verify auto-adjust
Coordinate transitions
UTC vs Local
Document choice
Same as server
Apply offset if needed
๐ง NTP Configuration Commands
To ensure time synchronization across your VOS3000 infrastructure:
# Check current timezone
timedatectl
# Set timezone to UTC
timedatectl set-timezone UTC
# Install and configure NTP
yum install ntp -y
systemctl start ntpd
systemctl enable ntpd
# Verify NTP sync
ntpq -p
๐ Step-by-Step Billing Discrepancy Diagnosis
Follow this systematic approach to diagnose and resolve VOS3000 CDR billing discrepancies:
๐ Diagnosis Process Flow
Step 1: Compare Sample CDRs
โโโ Select specific calls with discrepancy
โโโ Compare all fields side by side
โโโ Identify exact field differences
Step 2: Check Time Settings
โโโ Verify server timezone
โโโ Check NTP synchronization
โโโ Compare with partner platform
Step 3: Analyze Duration Calculation
โโโ Review call start point used
โโโ Review call end point used
โโโ Calculate difference in seconds
Step 4: Review Billing Configuration
โโโ Check billing increments
โโโ Verify rounding rules
โโโ Confirm minimum duration
Step 5: Compare Rate Tables
โโโ Verify rates match
โโโ Check effective dates
โโโ Confirm rate groups
๐ Related Resources (VOS3000 CDR Billing Discrepancy)
Why is my VOS3000 billing different from my vendor’s billing?
Common causes include different billing increments (per-second vs per-minute), different call duration measurement methods (INVITE to BYE vs 200 OK to BYE), timezone differences, or different rate tables. Compare sample CDRs field by field to identify the exact cause.
How do I change billing increments in VOS3000?
Navigate to Rate Management in the VOS3000 GUI Client, select the rate group, and configure the billing method. You can choose per-second, per-minute, 6-second increments, or custom rounding rules. Each rate group can have different settings.
What CDR size should I plan for?
Each CDR record is approximately 200-500 bytes. With 1 million calls per day, expect 200-500 MB of CDR data daily. Plan storage for at least 30-90 days of detailed records for billing verification purposes.
How do I fix CDR queue overflow?
CDR queue overflow indicates the database cannot process records fast enough. Check database connectivity, increase processing resources, optimize database performance, and verify no recent system changes caused the bottleneck.
๐ Get Help with VOS3000 Billing Issues
Experiencing CDR billing discrepancies or need help configuring billing precision in VOS3000? Our experts can help diagnose issues, configure proper billing settings, and ensure accurate reconciliation with partner platforms.