You are on page 1of 136

Alaris inVoice

release 3.3.1
User Manual

Document type: user manual


Document issue date: August 16, 2013
Document version: 1.1

Copyright 2005-2013 Alarislabs LLC. All rights reserved.


Alarislabs LLC reserves the right to change any information contained in this
document without prior notice.
COPYRIGHT INFORMATION
The information contained in this document is the property of Alarislabs LLC.
No part of this publication may be reproduced or copied in any form or by any
means - graphic, electronic or mechanical including photocopying, recording,
taping, or any other information storage and retrieval system - without
written consent of Alarislabs LLC. No third party, organization or individual, is
authorized to grant such permission.
This document is intended to provide a detailed description of installation,
operation and maintenance of the Alaris inVoice product version 3.2.4 (later in
this document referred to as inVoice). It gives information about the
structure of the product, interaction of the modules it consists of, the way it
integrates into a carriers network and the protocols used to interact with
third-party products.

Contents
Basic idea...................................................................................................................................................................... 5
System architecture ................................................................................................................................................. 6
Calculation of statistical data................................................................................................................................ 8
Interface structure.................................................................................................................................................. 10
Administration......................................................................................................................................................... 12
System settings................................................................................................................................................... 12
Parameters..................................................................................................................................................... 12
Softswitch editor................................................................................................................................................ 20
Template manager............................................................................................................................................ 21
Outgoing email accounts................................................................................................................................ 23
Data import.......................................................................................................................................................... 24
Analytics..................................................................................................................................................................... 27
Analytics interface options............................................................................................................................ 27
Working with the Analytics interface........................................................................................................ 31
Carriers........................................................................................................................................................................ 32
CDR Management.................................................................................................................................................... 41
CDR Export Tool................................................................................................................................................. 41
CDR Reconciliation........................................................................................................................................... 44
CDR Rerating....................................................................................................................................................... 48
Finance........................................................................................................................................................................ 51
Invoices.................................................................................................................................................................. 51
Interface Special Features........................................................................................................................ 52
Invoice Filter.................................................................................................................................................. 54
Invoice Data ................................................................................................................................................... 56
Interface Controls ....................................................................................................................................... 58
Upper tool bar......................................................................................................................................... 58
Lower tool bar......................................................................................................................................... 60
Payments............................................................................................................................................................... 62
Payments Filter............................................................................................................................................. 62
Payment Data................................................................................................................................................ 63
Interface Controls ....................................................................................................................................... 64
Upper tool bar ........................................................................................................................................ 64
Lower tool bar......................................................................................................................................... 65
Monitoring and alerts............................................................................................................................................ 66
Rate management................................................................................................................................................... 68
Rate import.......................................................................................................................................................... 68
File upload...................................................................................................................................................... 68
File selection.................................................................................................................................................. 69
Parser settings.............................................................................................................................................. 70
Output of parsing info................................................................................................................................ 77
Parsing of US Domestic ratesheets....................................................................................................... 78
Automatic rate import............................................................................................................................... 80
Rate editor............................................................................................................................................................ 82
Rate groups.................................................................................................................................................... 82
Rates.................................................................................................................................................................. 83
Rate export........................................................................................................................................................... 89
Rate analysis........................................................................................................................................................ 94

Rate comparison.......................................................................................................................................... 94
Analysis result tab....................................................................................................................................... 97
Rate Plan Creation.......................................................................................................................................... 101
Cost rules...................................................................................................................................................... 101
Markup setup.............................................................................................................................................. 103
Rate compilation........................................................................................................................................ 104
Working with compiled rate plans..................................................................................................... 106
Reference books.................................................................................................................................................... 110
Currency exchange rates.............................................................................................................................. 110
Dial codes .......................................................................................................................................................... 110
Billing increments........................................................................................................................................... 112
Company region.............................................................................................................................................. 113
Reports..................................................................................................................................................................... 114
Routing..................................................................................................................................................................... 116
Routing procedure description................................................................................................................. 116
Routing rules.................................................................................................................................................... 117
Types of routing ............................................................................................................................................. 117
Routing rule parameters.............................................................................................................................. 118
Statistical parameters in routing.............................................................................................................. 123
Use of contexts................................................................................................................................................. 124
Call simulation................................................................................................................................................. 125
Customer Portal.................................................................................................................................................... 130
Portal Data......................................................................................................................................................... 131
Statistics........................................................................................................................................................ 132
Rates............................................................................................................................................................... 132
Invoices......................................................................................................................................................... 133
Payments...................................................................................................................................................... 134
User profile.................................................................................................................................................. 134
VoIP POIs...................................................................................................................................................... 135

Basic idea
Alaris inVoice is a BSS solution intended for carriers working in the voice
interconnect field. The general idea of the system is to provide a carrier with
a single easy-to-use point of control of all tasks related to traffic
management:
-

Propagate routing decisions to all switches that process traffic on your


network. By default inVoice provides routing decisions to the VoIP and
TDM switches on your network via the SIP real-time API suitable for this
purpose; in this case the switch sends a route request to inVoice and
awaits for response with the list of routes that can be used to terminate
the call.

Collect accounting information from these switches. inVoice gathers


CDRs from all VoIP and TDM switches on your network, performing
CDR mediation in order to bring all switch-specific CDR formats to one
format accepted by the system DB.

Authorize events and user registration attempts. To provide for prepaid


balance control inVoice authorizes every call that takes place on the
network. As soon as the routing system has detected that a certain user
has exhausted its balance/credit, it starts rejecting all new call attempts
from that user.

Bill your clients and distribute invoices. inVoice provides for client
account charging and invoice generation. The invoices can be
automatically delivered to customers via email. The System Owner also
has the opportunity to track client payments and to match these
payments with the invoices issued.

Monitor statistical parameters related to traffic behavior and to the


system health. Detailed traffic statistics are calculated immediately after
the CDR data gets into the system. Thus, all statistical layouts (any
combination of any customer, vendor, dial code etc. split by any time
period) are preliminarily calculated in the background. This allows for
instant view of any statistical layout without delay. The user gets the
desired data immediately, no matter how large the requested amount of
data is.

All the configuration and control are accomplished via a single web interface.
Access to the system is controlled by a set of permissions that makes it easily
possible to set up functional roles for different company employees (such as
sales manager, NOC etc).

System architecture
This section provides a detailed description of the system architecture both in
terms of software modules that comprise the delivery package and of the
logical object structure. It also gives information about the way inVoice
interacts with third-party products, such as VoIP and TDM switches.
inVoice modular structure
The following
modules.

picture gives a general understanding of the main product

The system consists of the following principal modules:


o Database. The database engine is the main repository of all data
related to configuration, calls and systems logics. All the core
intelligence of the product resides within the DB stored
procedures.
o Routing engine. The routing engine is a set of software modules
that is responsible for interoperation with the switching layer of
your network. It provides for the following interfaces:

SIP the SIP Redirect method is often used to provide


routing instructions to switching equipment. In this method
the softswitch that processes voice traffic sends a call
initiation message (INVITE) towards the inVoice routing
engine. In response the routing engine returns a SIP

300/302 message that contains information about the


routes that are to be used for the call. The switch then
forwards the call to the vendors specified in the response.
Note: your switch must be compliant with the SIP Redirect
method.

CDR parser. The CDR parser is a module that is


responsible for mediation of CDR files downloaded from the
switch. Since every switch has got its own format of call
detail records, the inVoice CDR parser needs to be
configured to be compliant with new formats. The output of
the module is the normalized call records ready for rating.

o User Interface Dispatcher. The User Interface Dispatcher


serves as a gateway between the database and the front-end web
interface. It also provides for the security and permission control.
inVoice is built in a way where it is impossible to access the
database directly. This is done to increase data security and
provide for data consistency. Any request from the web interface
is authorized based on a username and password and on the set
of access permissions. This makes it impossible for an intruder to
catch control on behalf of a user.

Calculation of statistical data


Call statistics calculated by the system are naturally based on the data
received in CDR files from the switch(es). However it's not very efficient to
use raw CDR data to feed into report building, invoicing etc. In the inVoice
system all statistics-related functions use a specific data source called
analytical cubes (also known as OLAP cubes).
An analytical cube is a set of statistics (number of call attempts, traffic
volume, ASR, ACD, margin etc.) for a certain time interval
(minute/hour/day/week/month) for a specific combination of objects (e.g.
daily stats for the traffic from a client to a country by supplier). There are
dozens of different aspects in the analytical cubes in inVoice, and to some
extent the set of aspects available can be customized for each company using
the system.
Analytical cubes for a time interval are calculated almost immediately after
the interval is over and the system has received most of the CDRs belonging
to it (normally CDRs are delivered every 1, 5, 15 or 60 minutes) a certain
delay is required so that all CDRs for that time interval hit the system and the
calculation base is complete. On the other hand, the system will start
calculating the analytical cube for the current time interval (e.g. the current
hour or day) as soon as a certain number of CDRs for that time interval has
been reached (for example, the threshold for the hourly cube is defined by
the Stats calculation threshold (CDR/hour) parameter in the Administration
>> System settings section).
It is important to keep in mind that the stats initially calculated for the
ongoing period in this case will not be complete and final the system will
need to recalculate the current analytical cube after its timeframe is over and
all CDRs for it have arrived (or otherwise if the recalculation threshold has
been exceeded again before the end of the time period, there will be another
recalculation of the current time interval). It must also be noted that while
the analytical cube for a time interval is being recalculated, the stats for that
period may be displayed by the system as zero.
Cube calculation thresholds need to be set/changed with caution: e.g. if the
thresholds are too low, it will result in constant recalculation, and therefore
in lack of near-real-time statistics in the system. It is recommended to stick
to the following guidelines:
- minutely cube threshold needs to be set to a high value (higher than
the amount of CDRs per minute that the system actually gets), so that
minutely cubes will only be calculated after the respective minutes end
(no intermediate recalculations make sense here);
- hourly cube threshold needs to be set to 15-30% of a typical hourly
amount of CDRs for peak hours, so that the stats for the current hour
will be refreshed 3-5 times during the hour;
- daily cube threshold can be set to the amount of CDRs that the system
typically receives by 8-9 AM so that by the beginning of regular office

hours the system will already have calculated the first version of the
statistics for the current day;
- weekly and monthly cube thresholds need to be set to comparatively
high values, so that no frequent recalculations will happen for the
current week or month.
Cube calculation is optimized in terms of the data source used by default it
is only minutely cubes that are calculated on the basis of raw CDR data, while
each longer cube type is calculated basing on the data from the nearest
shorter one (e.g. hours are calculated on the basis of minutes, days - based
on hours etc), provided that there is the necessary lower-level data in the
system that depends on the value of the respective Cube partition count
parameter in the Administration >> System settings section: e.g. if the
system needs to recalculate a day that is 20 days in the past, while the Hour
cube partition count is set to a value less than 24*20, the system will have no
other choice than calculating the required daily stats by the raw CDR data,
which may be an extremely heavy job in case oh a high traffic level.
Calculation of each cube type is done in a separate thread, which minimizes
unnecessary delays in the stats preparation. Nevertheless, stats calculation is
not an immediate process, so there often are queues of cubes waiting to be
(re)calculated. The priority of each cube in the queue is defined by the
density of the new/changed CDRs (new/changed CDRs per time unit). That
means that the most recent cubes (normally containing the largest amount of
new data) will typically be calculated ahead of older cubes with minor
amounts of changed CDRs (typically because of rerating), while low-priority
cubes will be handled when the traffic through the system is not very high
and the cube calculation queue shortens.
Another very typical situation when the stats displayed by the system seem
wrong is when some rates for a past time interval have been changed and the
respective CDR rerating procedure is running the system can't recalculate
the affected analytical cubes before the rerating has finished, so until that the
stats figures will not be as expected; this is a regular situation and the system
will make all necessary corrections as fast as possible.

Interface structure
The product provides a carrier with a set of tools that help its employees in
everyday activity. The user interface is fully web-based, no other client
software needs to be present on the user workstation. The interface is
confirmed to work with recent versions of Mozilla Firefox; other web browsers
may not provide access to all system functions correctly.

The home screen provides a set of auto-refreshing charts offering an overview


of the system behaviour on the traffic, DB and hardware performance. The list
of parameters to track can be adjusted by means of the Set of metrics button.
Each chart can be customized in terms of grouping the data by a time interval
(minutes/hours/days, no grouping by default), the number of recent values to
display (100-500) and the refresh interval (1-30 minutes).
Access to all system features is provided via the Start button that opens the
main system menu. Some of the menu items may be unavailable to certain
users depending on their permissions.
The menu includes the following items:
Administration (system settings, data import, document template
management);
Analytics (table/chart dashboard to view traffic statistics);
Carriers (partner-related data agreements, tech info, contacts etc.);
CDR Management (CDR export, CDR rerating, CDR reconciliation);
Finance (invoicing, payments);
Monitoring and alerts (system performance monitoring tool);
Rates (rate import, rate editor, rate export, rate analysis, rate plan
creation);
Reference books
increments);

(dial

codes,

currency

exchange

rates,

billing

Reports (custom report creation and templates);


Routing (routing rules editor, call simulation).

Administration
System settings
Parameters
This section defines a number of general system parameters. Many of them
are to be modified by the Alaris Labs staff only and/or require a one-time
setup during the system deployment; others may need to be adjusted by the
System Owner. Here is an overview of the system parameters by section:

[Common]
- Allowed time-zone fraction types (times 15, 30 or 60 minutes): should
be used in case in the system there are registered partners with the
time zones having some irregular time offsets (e.g Iran UTC + 3,5 in
this case the Allowed time-zone fraction types should be set to 30, so
that the statistics and invoicing are calculated correctly);
- Build number: indicates the current version of the system (not
editable);
- Client license key: System Owners private license key for the Alaris
inVoice product;
- Common number format: indicates the format causing the number to be
rounded to the specified number of significant digits (not editable);
- Currency update source(null disabled): toggles on/off the automatic
currency exchange rates upload and defines the source the data is
taken from;
- Current DB version: indicates the current version of the system
database (not editable);
- Date format: indicates the format in which the dates are displayed in
the system (not editable);
- Date/time format: indicates the format in which the date/time values
are displayed in the system (not editable);

Default database exchange directory: the directory used for the storage
of the files exchanged between the web interface and the data base
(not editable);
Default system language: indicates the default language of the system
web interface (not editable);
Directory for converted pdf documents: the directory where the
documents converted by the PDF printer are stored. Should be changed
only in case an alternative PDF printer is used;
Enable overall email delivery in the system (1 - enable, 0 - disable):
defines whether the system will send emails of different types (such as
invoices, notifications, alarms etc.);
Log store period, days: the period for which the logs of different system
components such as the UI dispatcher, CDR processor, routing module
and etc. are available in the system;
Login link: a web link to the inVoice administration web interface;
Pdf utility command: should contain the path to the PDF printing utility
in case an alternative PDF printer is used;
Rate change log, days: the period to store rate change logs in the
system;
Server time offset from GMT: indicates the difference between the
system time zone and GMT 0 (not editable);
Server timezone name: indicates the name of the system time zone
(not editable);
Support email: email address of the Alaris support team that some
system notification and alarms are sent to;
System currency code (not editable) indicates the base system
currency;
System debug mode (true or false): toggles on/off the log/trace writing
for the debug procedures;
System name: the system name indicated in the browser tab where the
inVoice application is opened (inVoice by default);
Time full format: indicates the full format time values are displayed in
the system in (not editable);
Time short format: indicates the short format time values are displayed
in the system in (not editable);
UI dispatcher IP: the address of the sever on which the User Interface
dispatcher runs;
UI dispatcher port: the port used to interconnect with the User Interface
dispatcher;
Zip report file when emailed (1 - zip, 0 - don't zip): defines whether
report files attached to the e-mails sent by the system are to be
archived or not;

[Financial module]

Balance alarm threshold: defines how low should be the partner account
balance (in the system currency) to send a respective alarm to it (there
are 5 thresholds available);
Credit alarm default email (null - do not use it): defines whether the
alarms regarding the credit state are to be sent to the partners;
Credit alarm threshold , %: defines to what degree (in per cent) the
credit given to a partner (indicated in the In credit field in the
Agreements tab) needs to be used to trigger an alarm (there are 5
thresholds available);
Credit status reset threshold, %: defines how much (in per cent) a
client balance needs to increase in order for credit alarms to be
enforced for it again (it is done to prevent numerous alarms when the
client balance is fluctuating around the limit because of bilateral traffic,
increasing a bit above the disconnection point and then dropping below
the limit again);
Credit status reset threshold, USD: same as above, but measured in
absolute amounts (in the system currency) instead of relative values;
Cross-monthly invoice splitting (1 - split, 0 - do not split): defines
whether the invoices with the billing period covering the joint between
two months are to be split into two separate invoices;
Current invoice number: defines the current invoice index number
(increases automatically with every invoice generated). This parameter
is needed to generate the invoice reference numbers in the right order.
The parameters value can be edited (e.g. if you would like to start
invoice enumeration from the beginning you can set the parameter as
1);
Email address to CC invoices distribution (null - do not send CC):
defines the address copies of every invoice in the system are sent to;
Invoice delivery options (1 - attachment, 2 - link, 3 - separate emails,
null - do not send): defines the way the traffic details summary for the
invoice is sent;
Invoice filename pattern: defines the format of the invoice file name
(e.g. [CompanyName]_[InvoiceDate].pdf);
Invoice generation delay, hours: time interval to delay invoice
generation for after the respective invoicing period ends this is done
to make sure all late CDRs for long calls for that period successfully hit
the system before the invoice is generated;
Invoice reference number format: defines the format of the invoices
reference number;
Min absolute mismatch to invoke a dispute: the minimal absolute
difference between the customer and supplier invoice amounts
(Presented amount and Estimated amount) triggering the invoice status
change to Disputed;
Min percent mismatch to invoke a dispute: same as above, but checking
the relative difference (in per cent);
Send credit alarm to account manager (1 - Send, 0 - Do not send):
defines whether credit/balance alarms are to be sent to the client
account manager on the System Owner's side (to the address indicated

in the Email field in the account managers user record in the


Carriers>>Users interface);
Send credit alarm to customer (1 - Send, 0 - Do not send): defines
whether credit/balance alarms are to be sent to the partners (to the
addresses indicated in the Account alert emails fields in the partners
Agreements in the Carriers>>Agreements interface);
System owner name: defines the System owner name which is
displayed in the browser tab in which the Alaris inVoice is opened and
also in the system e-mails signature;

[Monitoring]
- "No new CDRs" delay, min: defines the time period with no new CDR
files imported into the system to invoke an alert;
- ACD (Hourly difference, %): defines the relative ACD difference
(between last hour and last but one hour) to invoke an alert;
- ACD (Min. initial value) : defines the minimal ACD value for a route to
be involved into ACD alerting (i.e. a route needs to have at least the
ACD value defined here in order for the ACD alert to be enforced for it
this is done to avoid unnecessary alerts for low-traffic and/or poorquality routes where the ACD originally was very low and then changed
to an even lower value e.g. from 0.05 to 0.02 minutes);
- ASR (Hourly difference, %): defines the relative ASR difference
(between last hour and last but one hour) to invoke an alert;
- ASR (Min. initial value) : defines the minimal ASR value for a route to
be involved into ASR alerting (i.e. a route needs to have at least the
ASR value defined here in order for the ASR alert to be enforced for it
this is done to avoid unnecessary alerts for low-traffic and/or poorquality routes where the ASR originally was very low and then changed
to an even lower value e.g. from 2% to 1%);
- Attempts (Hourly difference, %): defines the relative difference in the
number of call attempts (between last hour and last but one hour) to
invoke an alert;
- Attempts (Min. initial value) : defines the minimal hourly number of call
attempts for a route to be involved into the respective type of alerting
(i.e. a route needs to have at least the defined number of call attempts
in order for the alert to be enforced for it this is done to avoid
unnecessary alerts for low-traffic routes where the number of call
attempts originally was very low and then changed to an even lower
value e.g. from 5 to 4 per hour);
- Average PDD (Hourly difference, %): defines the relative PDD difference
(between last hour and last but one hour) to invoke an alert;
- Average PDD (Min. initial value) : defines the Average PDD Min. initial
value to invoke an alert;
- Calls (Hourly difference, %): defines the relative difference in the
number of successful calls (between last hour and last but one hour) to
invoke an alert;

Calls (Min. I
nitial value) : defines the minimal number of
successful calls for a route to be involved into the respective type of
alerting (i.e. a route needs to have at least the defined number of
successful calls per hour in order for the alert to be enforced for it
this is done to avoid unnecessary alerts for low-traffic routes where the
number of successful calls originally was very low and then changed to
an even lower value e.g. from 5 to 4 per hour);
Default alert email: defines the default email address all the monitoring
alerts are to be sent to;
Latest monitoring checkpoint (not editable) : indicates the date and
time of the latest monitoring session;
Monitoring timeframe, days: defines for how many days the data in the
graphs on the start page is available;
NER (Hourly difference, %): defines the relative NER difference
(between last hour and last but one hour) to invoke an alert;
NER (Min. initial value) : defines the minimal NER value for a route to
be involved into NER alerting (i.e. a route needs to have at least the
NER value defined here in order for the NER alert to be enforced for it
this is done to avoid unnecessary alerts for low-traffic and/or poorquality routes where the NER originally was very low and then changed
to an even lower value e.g. from 2% to 1%);
Normal rippling of CDR amount, %: maximum relative difference in the
hourly number of imported CDRs that is considered normal (if the
difference gets bigger, an alert will be generated);
Send alerts to partners (2 - send, 1 - alert only, 0 off): defines
whether the monitoring alerts are to be sent to the partners (to the
addresses
indicate
in
the
Account
alert
emails
in
the
Carriers>>Agreements menu) and the System Owners support team
(address indicated in the Support email parameter in the System
settings>>Parameters>>Common menu) (2), System Owners support
team only (1) or nobody (0). In case the parameters value is set as (1)
or (2) the alert messages will appear in the Monitoring interface, and if
the parameters value is set as (0) the monitoring log will be disabled;
Volume (Hourly difference, %): defines the relative difference in the
traffic volume (between last hour and last but one hour) to invoke an
alert;
Volume (Min. initial value) : defines the minimal traffic volume for a
route to be involved into the respective type of alerting (i.e. a route
needs to have at least the defined traffic volume per hour in order for
the alert to be enforced for it this is done to avoid unnecessary alerts
for low-traffic routes where the traffic volume originally was very low
and then changed to an even lower value e.g. from 5 to 4 minutes per
hour);

[Partner portal]
- Authorize.net API Login ID: authorization parameter for the accounts
belonging to the Authorize.net payment service;

Authorize.net Salt: authorization parameter for the accounts belonging


to the Authorize.net payment service;
Authorize.net Transaction Key: authorization parameter for the accounts
belonging to the Authorize.net payment service;
Available currencies (null All): comma-separated list of currency codes
defined in the system what will be available in the client portal for new
client account creation;
Available product IDs (null All): comma-separated list of client
products belonging to the System Owner that will be available as parent
products in the client portal for new client product creation;
Default account manager user ID: ID of the user belonging to the
System Owner that will be appointed the account manager for all new
self-subscribed clients in the customer portal;
Maximum number of simultaneous connections to database: defines
how many simultaneous requests can be sent to the database from the
web interface of the Partner portal;
PAYPAL Business: authorization parameter for the accounts belonging to
the PAYPAL payment service (e-mail address);
Partner application URL: a web link to the inVoice Customer portal
interface;
Send portal notifications to (null dont send): email address to send
email notifications when a new client or client POI is created or a
payment is made through the customer portal;
Spare database connection waiting timeout: defines for how much time
keep the requests from the web interface of the Partner portal to the
database alive in case Maximum number of simultaneous connections
to database is exceeded;

[Rate module]
- Auto-import rate files archive folder: defines the path to the folder
where the files processed by the Auto-import rate tool are stored;
- Rate files auto-import results alert email: (null - do not send): defines
the email address where the Auto-import rate tools logs are sent to;
- Rate history months count: indicates for how long the rate history is
stored. The rate history can be found in the Rate editor interface, for
example (not editable);
- Ratesheet delivery options (1 - attachment, 2 - link): defines the way
the ratesheets are delivered within the mail sent via the rate export
interface;
- Test product ID value: (not editable): ID of the product that will be
used to import rates to when the user selects the Analysis option in the
Action type parameter of the Rate Import interface;
[Replication]
- Enable sync from master server (1 - enable, 0 - disable):
enables/disables database replication from the third-party master
server;

Replication server IP address: defines the IP address of the master


server used for the replication purposes;
Replication server database SID: defines oracle system identifier;
Replication server password for main DB scheme: defines the password
used for the connection to the replication master server;
Replication server port: defines the port allocated on the replication
master server for the replication purposes;

[Routing module]
- Call simulation host: IP address of the server where the Alaris inVoice
routing module is installed;
- Call simulation port: interconnection port allocated on the Call
simulation host for the Call simulation purposes;
- Call simulation username: name of the user by which the connection to
the Call simulation host via the Call simulation port is to be established
for the Call simulation purposes;
- Credit control management (0 - disabled, 1 - enabled): enables/disables
the Credit control tool;
- Hnd max routes per request: maximal number of routes per call that
the routing system can supply;
[Statistics module]
- Active CDR table hour count: defines for how many hours CDRs are
stored directly in the inVoice database (i.e. for which period the CDRs
are available to be exported via the CDR export tool);
- Allow calculation from raw CDRs (day): defines whether calculation of
daily statistical cubes from raw CDRs (in case there are no hourly cubes
for the target day) is allowed;
- Allow calculation from raw CDRs (hour): defines whether calculation of
hourly statistical cubes from raw CDRs (in case there are no minute
cubes for the target hour) is allowed;
- Allow calculation from raw CDRs (month): defines whether calculation of
monthly statistical cubes from raw CDRs (in case there are no daily
cubes for the target month) is allowed;
- Allow calculation from raw CDRs (week): defines whether calculation of
weekly statistical cubes from raw CDRs (in case there are no daily cubes
for the target week) is allowed;
- Archive month count: number of months for the system to keep nonzero CDRs in the archive DB partition;
- Auto rerate zero-duration CDRs (1 - rerate, 0 - do not rerate): defines
whether CDRs with the zero duration are to be rerated within the daily
auto-rerating procedure;
- Auto threshold calculation (1 - enabled, 0 disabled): enables/disables
auto-adjustment of stats cube calculation thresholds based on the
statistics for the previous day. Automatic threshold calculation occurs
every time when the latest analytical day cube is ready. The
thresholds are calculated using the following conditions:

- Min threshold: 150% of the average CDR volume per minute;


- Hour threshold: 30% of the average CDR volume per hour;
- Day threshold: CDR volume for the first eight hours of the day;
- Week threshold: 10% of the average CDR volume per week;
- Month threshold: 10% of the average CDR volume per month;
CDR collection interval, min: defines how often the CDRs from the CDR
exchange folder are imported directly to the database;
CDR exchange folder (not editable): indicates the path to the folder for
the exchange of the mediated CDRs between the CDR processor and
the database;
CDR mediation reject limit (null - unlimited): defines the amount of
invalid rows in the CDR file to reject the whole imported CDR file;
CDR rerating hour: defines the hour when the daily auto-rerating
procedure is run;
CDR rerating step, minute: defines the timeframe the traffic is
processed within the one step of the rerating job for. The value depends
on the traffic density the more traffic the system has, the less value is
recommended to be set;
CDR source (1 - from files, 2 - from softswitch DB): defines from where
the CDRs are imported to the database whether from the files stored
in the CDR exchange folder or directly from the softswitch;
Charge option (connect or disconnect): defines the way the rate
selection for CDR rating is done in the system: by the call connect or
disconnect time;
Day cube partition count: defines the timeframe the daily statistical
cubes are available in the system for;
Extra field name (null - hide field): sets a name for the Extra field
column in the Analytics (custom feature);
Hour cube partition count: defines the timeframe the hourly statistical
cubes are available in the system for;
Max rerating interval: defines the maximal period (in days) that can be
affected by the daily auto-rerating procedure;
Minute cube partition count: defines the timeframe the minutely
statistical cubes are available in the system for;
Month cube partition count: defines the timeframe the monthly
statistical cubes are available in the system for;
Rerating alert recipients: defines the e-mail addresses which the alerts
regarding the daily auto-rerating procedure are sent to;
Rerating position: the value used for the Alaris teams internal
purposes. Indicates the state of the CDR rerating step log;
Short call length, seconds: defines what duration threshold to consider
all calls with a smaller duration short (e.g. stats for such calls are
shown in the Analytics interface in the Short calls column);
Stats calculation delay, minutes (day): defines a timeout for the system
to wait after the end of a day before the statistical cube for it is
calculated so that all late CDRs (if any) will have enough time to
arrive;

Stats calculation delay, minutes (hour): defines a timeout for the


system to wait after the end of an hour before the statistical cube for it
is calculated;
Stats calculation delay, minutes (min): defines a timeout for the system
to wait after the end of a minute before the statistical cube for it is
calculated
Stats calculation delay, minutes (month): defines a timeout for the
system to wait after the end of a month before the statistical cube for it
is calculated
Stats calculation delay, minutes (week): defines a timeout for the
system to wait after the end of a week before the statistical cube for it
is calculated
Stats calculation threshold (CDR/day): defines how many new records a
daily statistics cube should have to invoke its automatic recalculation of
the mentioned daily statistics cube;
Stats calculation threshold (CDR/hour): defines how many new records
an hourly statistics cube should have to invoke its automatic
recalculation of the mentioned hourly statistics cube;
Stats calculation threshold (CDR/min): defines how many new records a
minutely statistics cube should have to invoke its automatic
recalculation of the mentioned minute statistics cube;
Stats calculation threshold (CDR/month): defines how many new
records a monthly statistics cube should have to invoke its automatic
recalculation of the mentioned monthly statistics cube;
Stats calculation threshold (CDR/week) : defines how many new records
the weekly statistics cube should have to invoke the automatic
recalculation of the mentioned weekly statistics cube;
Traffic details hours count: defines the number of the financial cubes;
Very short call length, seconds: defines what duration the call should
have to be considered by the Analytics interface as a Very short call;
Week cube partition count: defines the timeframe the weekly statistical
cubes are available in the system for;

Softswitch editor

In this section it is possible to register all switching equipment belonging to


the System Owner. On the right side of the interface you can find a list of
already registered equipment and the left side contains Add/Edit menus.
The configurable parameters available are the following:
- Name: registered switch name;
- Type: switch type (either SIP or RADIUS);

- IP-address: switch connection address;


- Switch secret: password or passphrase contained in the Secret field of a
RADIUS server (optional);
- Soft switch parameter: informational field for your reference;

Template manager
Here the user can upload and download templates for different document
types generated by the system invoices, rate export, rate analysis export,
invoice letter and many others.

In the interface you find a table containing the existing templates. The table
consists of the following columns:
- Template: template type (Invoice, Rate export, Rate analysis export).
This column also contains the links for downloading .xls and .pdf
versions of the template;
- Account: carrier account(s) the selected template is used for (if Default
the template is used for all the carriers except for those who have
separate templates; Default templates cannot be deleted);
- Last updated: the date of the template latest update;
- The last column contains the link allowing you to update the selected
template.

To add a new template to the system you need to click on the Add template
button. Here you are to define the following parameters:
- Template type: the type of the new template (select from the dropdown list);
- Carrier account the template should be used for (it is possible to select
multiple accounts via moving the desired accounts from the left list
called Other items to the right list called Selected items. The Account
filter will show you only account belonging to the carrier selected from
this drop-down list);
- Letter subject: active only for letter templates. The parameter defines
the text in the sent emails subjects. It is possible to use markers here;
- Template file: select a file to upload.
Below is the list of possible markers that can be used in the templates (most
of them self-explanatory):
InvoicePeriod
InvoicePeriodLong invoice period with the time indication
InvoiceSysPeriod invoice period in the system owners timezone
CompanyName partner company name
CompanyAddress
CompanyVAT partners personal tax reference number
CurrencyCode
InvoiceDate invoice issue date
InvoiceRefNumber invoice reference number
InvoiceDueDate - invoice due date
InvoiceTimezone name of the time zone according to which the invoice
is generated
EstimatedAmount invoice estimated amount
CompanyId partners carrier ID in the system
PreviousBalance partners account balance at the end of the invoice
period
AmountInWord invoice amount written in words
TotalAmount difference between PreviuosBalance and EstimatedAmount
CompanyRegisteredName full partners company name (can be found in
the Agreements tab)
DocumentLink downloading link to the invoice document (for letter
subject and body only)
DetailsLink downloading link to the traffic summary detalization
document (for letter subject and body only)
ChargeDescription (invoicing information)

ChargeAmount (invoicing information)


ChargeCurrencyCode (invoicing information)
ChargeVolume (invoicing information)
ChargeCallCnt call count (invoicing information)
Currency partners account currency
TimeZone system owners time zone
ProductName partner products name
OwnerName system owners name
IssueDate file generation date (rate export sheet for example)
POIPrefixes - shows all the tech prefixes of the product POIs in the
rate export output file
TaxRate tax rate in percent
EstimatedAmountWithoutTax invoice amount excluding the tax
TaxAmount tax amount
<Currency code>InInvoiceCurrency
<Currency

code>

in

the

value

of

monetary

unit

of

invoice currency. Instead of <Currency code>

all the currencies from Currency exchange rate reference book can be
used
InvoiceCurrencyIn<Currency code>

- value of a monetary unit of the

invoice currency in <Currency code>


EstimatedAmountIn<Currency code> invoice amount in the currency
<Currency code>
InvoiceId

Invoice system ID

CompanyNameUE company name encoded for use in URL.


CurrencyCodeUE currency code (e.g. USD, EUR, etc.) encoded for use in
URL.
InvoiceDateUE invoice issue date encoded for use in URL.
InvoiceRefNumberUE invoice reference number encoded for use in URL
POIPrefixes- shows

all

the

tech

prefixes

of

the product POIs in

the rate export output file


Comments displays the content of the field Comments (Rate export
interface) in the exported ratesheets

Outgoing email accounts


This tool provides an opportunity to select the mail server and e-mail address
the system will send e-mails of different types (billing, rates, technical or
reports) from.

In the left part of the interface you can see the list of existing outgoing email
accounts with some information on them which can be filtered by the Server
type (Default, Billing, Rates, Technical, Reports) and by the carrier accounts
which these outgoing email accounts belong to.
In the right part of the interface you can find the Add/Edit menu allowing you
to add new or edit the existing outgoing email servers accordingly. The
following parameters can be defined there:
- Accounts: this parameter defines the accounts which emails are to be
sent via the selected outgoing email server (by default set as All);
- Server type: this parameter defines what kind of emails are to be sent
from the selected outgoing email server (Default all kinds of the emails, Billing invoices, balance and credit alarms, Rates rates
updates, Technical technical alerts, Reports reports generated by
the Report builder interface);
- Server IP;
- Port;
- EHLO cmd (parameter also includes the Use starttls flag);
- Username: user used to log into the email account;
- Password: password used to log into the email account;
- Sender address;
- From name: defines the name of the e-mail sender which is indicated in
the outgoing e-mails;
The Test mail server button in the bottom of the interface will help you check
whether the configuration of the selected mail server is set correctly.

Data import
This section offers an opportunity to upload a few types of important
reference info into the system - such as LERG6 data (indispensable for US
domestic traffic processing), dial codes (the general system-wide dial code
reference book), countries (list of countries supported by the system) and
destination types (mobile, proper etc.).

To upload new data to the system first you need to select a table to update
from the drop-down list (once you have selected one, you can see the Note
containing some tips on updating some particular tables like Dial codes and
Countries).
The Clear table before load option defines whether the data in the table being
updated will be overwritten or merged with the fresh data from the file.
Please note that this action directly affects the routing based on the reference
info (For example if you have routing rules based on a destination list and
during the data import with The Clear table before load option enabled you
occasionally forget to include some countries names used in those rules the
routing will work incorrectly as the rules will not be used properly).
Another important thing here is that changing the data related to the past
traffic will cause massive statistics recalculations that is a time- and resourceconsuming procedure (For instance, in the previous month you had some
traffic to one destination. You import new data containing more detailed dial
codes for that destination and the prices for those breakouts differ from the
prices for the existing shorter ones. That means that the statistics you have is
outdated now and the calls should be rebilled).
The second step is the selection of the file to upload. The data is to be
supplied in a csv-file. LERG6 data is usually supplied in a .DAT file given by a
LERG provider and is expected to be in the following format:
lata
position(1:5)
status
position(26:26)
eff_date position(27:32)
npa
position(33:35)
nxx
position(36:38)
block_id position(39:39)
ocn
position(62:65)
loc_state position(78:79)

char(5),
char(1),
char(6),
char(3),
char(3),
char(1),
char(4),
char(2);

It is also possible to stipulate the delimiter (;, ,, | or \) and specify


whether the file has column headers.
Some additional notes (also can be found in the interface):

- Updating the Dial code table: Since dial codes reference book must be
the most detailed list of dial codes in the system, the import logics will
add dial codes for a given country that are not found in the imported
list, but present in the rates table and will assign them the destination
name from the closest parent code.
Example:
Imported code: +1 USA
Existing rates prefixes: +1201, +1202
Resulting dial code reference table: +1 USA, +1201 USA, +1202 USA
- Updating the Countries table: Clear table before load will not clear a
country entry if there are dial codes belonging to this country in the dial
codes table.

Analytics
The Analytics interface provides an easy-to-read and quick-to-draw picture of
a few most important statistical parameters for a wide variety of aspects.
This tool feeds on pre-calculated statistical tables (OLAP-cubes) instead of raw
CDR data, which dramatically decreases the system response time when a
user selects a new aspect to display. The side effect of this approach is that
the overall amount of the aspects available is limited; but since the limit is
adjustable (it's mostly governed by the performance of the server and the
disk space available) and all important aspects are included into the scope by
default, it is not supposed to be a serious constraint.

Analytics interface options


The Analytics interface is split into two parts with an adjustable height; in the
upper area of the screen one can see a table with the selected statistical
aspects (a user-defined combination of business objects, e.g. Client >> Client
Country >> Vendor) and the performance indicators for the selected time
interval, while in the bottom area it's easy to trace the trends for any of these
performance indicators for the selected aspect over a longer timeframe that
information is displayed either in a table or in a chart area.
The horizontal stripe in the centre of the screen between the two data areas
contains the following controls:
Period: defines the data granularity for the lower table (show data by
minute, hour, day, week or month);
Timeframe selector: this control makes it easy to define the time
interval to display the statistics for by means of dragging the left or
right margin of the interval. You can also select the time interval
manually from the Interval date picker (the button with the pencil
picture);

Table/chart switch: this button switches between the two available


display options for the lower data area table or diagram;
Export from upper grid: export data from the upper table to Excel;
Export from lower grid: export data from the lower table to Excel;
Options: this button gives access a few options available to customize
the outlook of the interface: select the columns to display (please also
note that the scope of visible columns technical and commercial can
be defined in the user permission set), define the colors for each of the
parameters in the tables (color bars are used here together with figures
for better visualization) and specify thresholds between different colors
for relative quality metrics (such as ASR or NER) e.g. this way it's
possible to have poor ASR highlighted red, moderate ASR yellow and
good ASR green.
Both tables display the same predefined set of performance indicators for the
selected statistical aspect (the values in the upper table are always for the
time interval currently selected in the lower table, while each line in the lower
table/each point on the chart reflects stats for the aspect selected in the
upper table for different time intervals):
Attempts: total number of call attempts;
Calls: total number of calls;
Volume, mins: total call duration;
ASR, %: average ASR;
NER, %: average NER;
ACD, %: average ACD;
Min PDD: minimum PDD;
Aver. PDD: average PDD;
Max PDD: maximum PDD;
Short calls, %: share of calls with a duration below the Short call length
parameter value in the Administration >> System settings >> Statistics
module section;
Very short calls, %: share of calls with a duration below the Very short
call length parameter value in the Administration >> System settings
>> Statistics module section;
Margin: total margin;
Cost (C): total cost of the traffic associated with the selected object
chain that the System Owner is entitled to from its customers;
Cost (S): total cost of the traffic associated with the selected object
chain that the System Owner is obliged to pay to its suppliers;

Client volume: total volume of traffic on the client side rounded


according to the respective billing increment(s);
Vendor volume: total volume of traffic on the vendor side rounded
according to the respective billing increment(s);
Aver. rate (C): weighted average rate on the client side (the traffic
shares through dial codes with different prices are taken into account);
Aver. rate (S):

weighted average rate on the supplier side;

Rate (C): client rates that were in effect for the selected destination(s)
during the selected time interval; if the number of different client rates
involved doesn't exceed 3, all of them are displayed; otherwise the
system will show the symbols;
Rate (S): supplier rates that were in effect for the selected
destination(s) during the selected time interval; if the number of
different supplier rates involved doesn't exceed 3, all of them are
displayed; otherwise the system will show the symbols.
If the user selects to open a statistical layer with more than 25 objects
involved (e.g. open stats by dial code for a particular client or vendor), the
stats in the upper table will be arranged in two or more pages (the page
navigation control is also located in the central horizontal stripe).
The numeric values of every statistical parameter in the tables are
supplemented by color bars. The color for each parameter can be selected in
the Options menu; for the parameters having relative quality metrics (such as
ASR or NER) different colors can also mean different quality levels.

It is possible to filter objects in the upper table the filter is located above
the first table columns. Please note that to be able to apply a filter to the list
of objects currently open in the upper table you need to select their parent
object i.e. the filter always applies to the child items (if any) of the currently
selected item.

The upper table can be sorted ascending or descending by any of the


columns. When the Analytics interface is first opened, client records in the
upper table are sorted by the total traffic volume.
The lower data area can change its look depending on the Table/chart switch
position the data can be displayed either as a table or as a chart. The chart
area consists of several tabs, each of the tabs having its own sets of diagrams
(these can be customized by selecting the desired chart variants in the list on
the left side of the chart area).

The top line in the lower data table always shows totals for every parameter
of the selected statistical layer for the defined timeframe e.g. if the user
specifies 4 days in the Timeframe selector, the Total line in the lower table
will show the summary for the selected 4 days.

It is convenient when you need to see the totals for a custom time period (not
equal to the system defaults hours, days etc.). Another use case for the
Total line is when the system is recalculating the stats for the current time
interval (e.g. the current hour) and therefore can't show the stats for it: the
user can select a range of lower-level time steps (in this case minutes)
covering the entire period between now and the beginning of the bigger
timeframe (that is being recalculated) the system will show the actual stats
for that bigger timeframe in the Total line based on the summary of all
underlying smaller intervals.

Working with the Analytics interface


The main idea of the interface is that in the upper table it is possible to "slice"
the total volume of statistical data for the time period (minute, hour, day,
week or month) currently selected in the lower table by a lot of possible
combinations of objects (e.g. to view performance of a specific vendor route
for traffic a particular customer has been sending) and upon selection of an
object in the resulting tree to see the patterns of variation of the available
parameters for that object over the defined time frame. On the other hand,
selecting another time step in the lower table will cause an immediate
respective update of the displayed statistical data for the objects currently
opened in the upper table. Alongside with the stats for each single time period
within the selected interval, the lower table also shows a summary for the
whole interval in the top line.
Each object in the upper table that has available underlying layers has the +
sign on the left side of its name. Left-clicking on those signs will open the
context menu with the list of the object types to add to the displayed
combination (to close an open layer just click on the - sign on the left side
of its parent object).

E.g. you can start drilling down on the client level, select a specific client
there, then choose to view its stats by country, then select a specific country
and further detail it by supplier etc. Naturally, when the user adds a new
detail level to the selected aspect, the system only includes there the objects
that have stats for the combination of previously selected objects e.g. if you
select a client and select Client Country in the context menu, the system will
only display the countries the selected client had traffic to during the time
interval selected in the lower table.

Carriers
The Carriers interface is one of the most essential components of the system.
Within this interface inVoice provides you with a convenient way to manage
information related to your partners as it holds all the basic data about
carriers you work with.
The Carriers interface includes the following tabs: Carriers, Users, Accounts,
Agreements, Products, POI. Each tab holds a full list of the items indicated in
the tab name. As it is pointed out in the scheme, the tabs are correlated with
each other and that means that any parent item cant be easily deleted while
it has at least one child component existing. This is done to protect the data
from being inadvertently removed. In case you are sure to remove a whole
carrier or some of its parent components from the system there is the Delete
this <item name> and all child components button which permits deletion
after the confirmation.
As each tab stores a full list of the items you are able to view all POIs (for
example) in one place. This is useful when you need to find out which carrier
a particular IP address or a technical prefix belongs to. At the same time each
tab has a filter that allows you to sort out the items according to objects they
belong to or by their key parameters. For example, in the POIs tab you can
filter POIs belonging to a particular carrier and associated with a particular
product of that carrier. The filter can be easily dropped by pushing the Clear
filter button located in the left upper corner of each tab.
Once you select a particular carrier by highlighting it in the first tab, all other
tabs display only objects belonging to that carrier. The information in each tab
of the Carriers interface also can be filtered irrespectively of which carrier is
currently selected in the first tab.
Each tab of the Carriers interface is split into two parts. The left part contains
the table with the entries already existing in the tab, and in the right one you
can find the Add/Edit menus allowing you to manage that data.
Below you can find the detailed description of the Carriers interfaces tabs:
Carriers tab holds general information about carriers, such as:

- Carrier name;
- Type of the credit control approach prepaid or postpaid (in case
the Is trusted customer parameter is defined as Yes the client
won't be disconnected irrespective of its account balance);

- Direction of the traffic (Inbound/Outbound traffic allowed flags);


- Additional information like Address and VAT identification
number;
- Region: defines the region the partners company belongs to (the
list of the regions can be found in the Reference
books>>Company region);
Users tab contains user register entries by means of which you, your
employees and your partners can log in to the system. The access to
the main system interface is granted only to users belonging to the
System Owner carrier, while other carriers users, i.e. your partners, can
log in to the system only via the Customer portal interface.

In the Users tab the following parameters can be set:


- Login and password;
- Is active: this flag defines whether the user will have access to
the system interface (for users belonging to the System Owner
carrier) or to the customer portal (for users belonging to all other
carriers);
- Contact information;
- Language (defines the system interface language for the user);
- Permissions to access to the inVoice interface components (Roles:
relevant for users belonging to the System Owner carrier only):
by setting the user roles you can restrict the information within
different inVoice interfaces from being seen or edited by some
users so, for example, the technical department will not see the
financial details;

- Some functional options, such as the capability to receive invoices


and rate updates sent to the carrier the user belongs to (Send
invoices and Send rate updates flags).
Accounts tab provides data on the financial accounts associated with the
carriers, such as:

- Current balance state;


- Currency;
- Credit status on the client and vendor side;
- Manager responsible for this account on the side of the System
Owner.
Agreements tab stores the most essential terms of the interconnect
agreements with the carriers. inVoice is able to automatically apply
quite a few of the parameters defined in this tab in some important
operations.

Below are the most vital of them (in case both incoming and outgoing
traffic directions are allowed in the agreement, some parameters will be
included twice - separately for each traffic direction, those intended for
client traffic starting with In while those belonging to the vendor
agreement section starting with Out):
- Carrier: carrier name;
- Acc. currency: currency of the carrier account the agreement is
linked to;
- Agreement code (an arbitrary reference code);
- Incoming/Outgoing: traffic direction (unilateral or bilateral);
- Start date: effective date of the agreement;
- End date: expiry date of the agreement;
- Company registered name: legal name of the partner carrier
company;

- Bank info (optional): bank details of the partner;


- In/Out time zone: time zones for the incoming and outgoing
traffic. The In time zone value is used when creating an invoice
for the client (invoicing is always done in the client time zone),
while the Out time zone value is important when vendor rates are
being imported into the system, so that the system can adjust the
effective date/time and the peak/offpeak schedule for the rates
according to the difference between the system and the partner
time zones;
- In/Out credit: credit limits for the client and vendor sides (e.g. if
the field is set to 1000, the balance of the respective account will
be allowed to go down to -1000 system currency units before the
traffic is blocked). Please note that the default value of the In
Credit parameter is zero, which means no credit offered to the
client; in case the value of that parameter is made blank, the Is
trusted customer parameter will be automatically set as Yes for
that client and the automated credit control for it will be disabled.
The default value for the Out credit parameter is blank, which also
turns off auto-disconnection of the vendor by the credit control
system;
- Balance limit: this field is an extra opportunity to manage the
balance level where the customer will be blocked. Since the
inVoice billing engine feeds on CDRs (which is not a real-time
source of billing data), there always is a gap between the time
when a call is connected on the switch and when the respective
charge is applied to the client account in the billing system;
therefore there always is the possibility that the customer may
push in some traffic when it should already have been blocked by
credit but the billing system hasn't yet got the most recent CDR
update and hasn't yet actually blocked the customer account.
Therefore the idea is that the Balance limit should be set to a
value slightly smaller than the one of the In credit field (e.g. if In
credit is set to USD 1000, it may make sense to set the Balance
limit value to USD 900 or 950) in order to make sure the
customer won't have a chance to exceed the credit limit because
of the CDR delivery delay.
- In/Out billing period: period of the client/vendor invoice
generation; a number of options ranging from 1 day to 4 months
are available;
- In/Out payment period, days: number of days for issued invoices
to get paid;
- Min. invoice amount: threshold of the total invoice amount below
which the invoice will not actually be created; rather than that,
the system will add the pending amount to the next invoice to the
same customer (in that case the timeframe indicated in the new

invoice will include the intervals of both invoices, and the traffic
details will also be combined);
- Increase period, days: number of days for an advance rate
increase notice to be sent from the vendor/to the customer. Rate
increases sent at shorter notice may be rejected by the recipient;
- Rate change period, days: the advance notice period for all other
rate change types except for increases;
- Tax rate, %: as the invoices amount includes the taxation, this
parameter defines the percent of the tax;
- Default invoice/rate change/technical/account alerts emails:
contacts of the partners financial, rate and technical departments
(where invoices, rate increase/change, monitoring alerts and
other corresponding notifications are sent to).
The field are not obligatory.
In case the field Default invoice emails is empty, invoices are sent
to: The carriers user emails indicated in the Users tab (only users
with the Send invoices flag set to active are considered); The
email indicated in the Email address to CC invoices distribution
parameter in the Administration>>System settings>>Financial
module interface;
In case the field Default rate change emails is empty, rate change
notifications are sent to the carriers user emails indicated in the
Users tab (only users with the Send rate updates flag set to active
are considered);
In case the field Default technical emails is empty, vendor route
alerts will not be sent out to the vendor at all;
In case the field Account alert emails is empty the alerts are sent
to the e-mail address of the primary system administrator and to
the email indicated in the Credit alarm default email parameter in
the
Administration>>System
settings>>Financial
module
interface;
Products tab holds information about products (i.e. rate plans)
associated with specific carriers accounts (please note that since each
product is linked to an account, its currency is also the same as that of
the account).

You can easily see the rates belonging to the selected voice product by
pressing the Open product rates in Rate Editor button in the products
Edit menu.

The voice products can be divided into two main groups based on their
types: International and US Domestic.
- For International products the following parameters can be set:
o Account: carrier account to link the product to;
o Product: product name. It is strongly recommended that the
system users confine themselves to a narrow scope of variants
when giving names to products e.g. industry-standard names
like Wholesale, Premium etc. can be used. Since in quite a few
system modules client and/or vendor product types are used as
parameters, it is more convenient to handle that in case there are
just a few product types in the system;
o Direction: charge direction (for client or vendor traffic);
o Parent product (client products only): optional reference to a
product belonging to the System Owner carrier that needs to be
shared by multiple clients e.g. the generic Wholesale product.
Thus a client may have rates of two types: inherited from a
parent product (the same set of dial codes and rates for all clients
linked to the same parent product) and rates specific to this client
product only (the system always searches for a rate in the clientspecific part of the product first, and only goes to the parent part
if it fails to find a match; client-specific dial codes may overlap
with parent ones, in this case the client-specific price prevails).
Please note that the parent product needs to be in the same
currency as the child product;
o Number of POIs (vendor products only): in case a vendor product
has several POIs, by default the routing system will use each of
them as a separate routing option to be returned to the switch
thus all routes selected for a call may actually be taken from one
and the same vendor product. To avoid that, the Number of POIs
parameter allows you to set the max number of vendor POIs from

the selected product to be used for routing of one and the same
call;
o Set POI routing priorities (vendor products only): this parameter
makes it possible to arrange the POIs belonging to the product in
the desired order to be tried by the routing system. By default the
POIs are selected randomly out of the available pool;
o Rates based on: defines how the system should group the traffic
details in invoices for the selected carrier (by dial code,
destination or destination with indices);
- US Domestic products have the following options in addition to those of
International or SMS products:
o Check jurisdiction: defines whether the system is to check the
jurisdiction of calls belonging to this product according to the data
in the LERG6 table or bill them all at the default rate;
o Billing number options: here it is possible to select the phone
number to bill calls by the available options are the dialed Bnumber, the B-number LRN, the A-number (reserved for future
use);
o Dip for LRN: this flag defines whether the routing system must
perform a real-time dip to an external service provider in order to
get the LRN for the dialed B-number for each call belonging to this
product. The unset option Dip for LRN means that the routing
module stops sending dipping requests to the LRN servers
(please note that no dipping at all will be done for calls from such
a client, so no vendors will be able to get the LRN data even if
their traffic needs to be routed/billed based on the LRN).
o Use LATA-based rates: defines whether or not the product
contains LATA-dependent rates (or just state-dependent ones if
the flag is unset).
o Default price: defines which domestic price type is to be used for
calls with indeterminate jurisdiction (since in some cases there
may be no indeterminate price explicitly specified in the product
rate set, so one of other price types needs to be used in that
capacity).
o Rates based on: defines how the system should group the traffic
details in invoices for the selected carrier (by dial code,
LATA+OCN or State+OCN).
o Treat 10-digit A-number as US: enabling this option makes the
system consider the 10-digit A-numbers as US numbers (the
option is designed for the benefit of the US domestic billing as
sometimes A-numbers are delivered to the system with the 1
country code stripped);

VoIP POI tab holds information about the points of interconnect with
clients and vendors to perform authentication and CDR rating.

Each POI belongs to a product thus the carrier authentication data


from the POI is used to assign a particular call (for routing) or CDR (for
billing) to the correct product (and therefore to find the correct rate for
it). By means of creating two or more POIs it is easy to distinguish
between several types of traffic (e.g. Premium and Wholesale) coming
in from one and the same client IP-address in such a case the
difference needs to be in the tech prefixes used in the POIs. inVoice is
able to manage VoIP and TDM POIs. The following POI parameters are
available:
- Product: name of the product the POI belongs to;
- Active from/till: period of the POI validity;
- Capacity: concurrent call capacity of the POI (works with certain
softswitches only).
- IP address/mask: IP-address and subnet mask of the POI. The
subnet mask value is a decimal number reflecting the amount of
non-zero bits on the mask; e.g. 32 means 11111111.11111111.
11111111.11111111 (i.e. the subnet is limited to a single IPaddress).
- Tech prefix: carrier tech prefix. The combination of the IP-address
and the tech prefix must be unique (it is allowed to have the
same combination of the IP-address and the tech prefix for a
client and vendor POI). If the tech prefix is not defined, the
system will perform authentication by the IP-address only.
- Trunk group: ID of the trunk group associated with the
client/vendor on the switch.
- Switch: indicates the switch used to interconnect with the
client/vendor (the list of switches can be edited in the Soft switch
editor tab of the System settings interface).
- Port: signaling port of the POI.
- Protocol: signaling protocol of the POI (SIP or H323).
- Carrier-specific number translation: pattern for the system to
strip off the client tech prefix or extra digits from the beginning of
the B-number or to add the vendor tech prefix to the E164 Bnumber.

- System-specific number translation: pattern for the system to add


digits at the beginning of the B-number after the tech prefix has
been stripped off (for clients) or to cut them off before it is added
to the E164 B-number (for vendors). E.g., if a client sends in a
call with the B-number 123#002121234567 and it is necessary to
convert that to a standard E164 USA number, the carrier-specific
number translation field needs to be set to 123#00 (to cut off the
tech prefix) while the system-specific number translation needs to
be 1 (to add the leading 1 after the client tech prefix has been cut
off). After the two translations the B-number will be converted to
12121234567.
- Exclude from routing: this flag defines if a vendor POI is not to be
used for routing (e.g. if it is controlled by a gatekeeper and
therefore can't accept calls directly without prior authorization on
the gatekeeper in that case the system will route all calls to the
gatekeeper that will then redirect the calls to one of the POIs it
controls).
- Softswitch gateway name: reserved for future integration with
certain softswitches.
- Priority (vendor only): indicates routing priority of the POI (see
the Set POI routing priorities parameter in the description of
product properties).
- CPS limit: limitation of the call rate (calls per second) through the
POI (works with certain softswitches only).
Keeping the data contained in the Carriers interface in order is the key to the
correct workflow of the whole system which allows you to efficiently
interconnect with your carrier partners.

CDR Management
CDR Export Tool
The CDR Export tool provides the opportunity to export CDR data from the
system DB with a number of flexible filters and options. The interface consists
of three parts: Export settings, Task grid and Task details.
The Export settings menu is a set of filters which provides a wide variety of
the export combinations and makes working with CDR data easy and
convenient for users.

Here you can set the timeframe of the CDR export based on the billing option
selected in the system either the connect or disconnect time. The option

Show last sets the period of the export to the last 2(and also 5,15,30)
minutes, hour or 24 hours in one click. The Show delayed CDR only option
allows exporting only CDRs that arrived in the system DB later than expected.
Works together with the Normal delay parameter that defines the delay
threshold; a CDR is considered delayed if it arrived in the system later than X
(where X=Normal delay) minutes from the CDR time (connect or disconnect
depending on the billing option selected in the system).
You can export CRDs based on their duration by setting its min and max
values which is useful when you need to export CDRs only for calls with nonzero duration, for example.
The set of Client/Vendor parameters provide you with an opportunity to
precisely sort out CDRs so you can view only desired data, whether it be all
the calls terminated by one of the vendors or the calls only from one
particular clients IP to a certain destination the filters are very flexible. You
are also able to define which data will be exported by selecting from 54 CDR
fields (including specific North American fields) available in the system which
is helpful for screening unnecessary for you information.
Some additional filters like Call leg, Dial code mask, Disconnect codes and
Switch make the CDR export management even more convenient.
The result of the CDR export can be viewed right in the web interface (the
total number of CDRs displayed is limited by the Export limit parameter - up
to 1000 records), downloaded from the web interface as a .csv file or sent as
a .csv attachment by the e-mail indicated in the Send CDRs to field (if more
than one address provided, commas or semicolons can be used as delimiters).
All the filters settings can be saved as templates so you are able to use them
in the future. It certainly saves your time because you dont need to set all
those filters again and again for the similar tasks.

Task grid is the list of the recent CDR exports tasks. Here are indicated the
date when the task was performed, its status and the name of the user who
initiated the procedure. The Details column contains the links to the viewing
window (in case Export target: Show here is selected) or to the .csv file
downloading (in case Export target: Export to file/Send CDRs by email is

selected) of the CDR export results accordingly. In case any error occurred
during the export procedure its description can be also found in this column.
Also from the Task grid menu you can restart any export task by pressing
Restart export button which will set the export settings similar to the ones
used in the selected task.
The export settings of the selected task can be viewed below in the Task
details menu.

CDR Reconciliation
The CDR reconciliation tool makes it possible to perform verification of the
CDR data stored in the system database against a partner version of the
CDRs (sent as a .csv-file) for supposedly the same scope of traffic in case
there is a discrepancy and a dispute has been invoked. When the system
compares the CDRs, it takes into account the difference in the time settings
between the two CDR versions (not just the time zones but also the difference
in the system time as such) and tries to find a match for every record having
in mind the discovered time difference (which may be different at different
times within the compared interval).
The main page of the interface is split into three parts: Recent task list, Task
details and Reconciliation summary.

In the Recent task list you can find information about the reconciliations
conducted recently including the date of tasks creation, the reconciled period,
the carrier whose CDRs were reconciled and the user who initiated the
reconciliation. Here you can also check the status of the reconciliation tasks
and the error description in case any occurred during the reconciliation. CDR
reconciliation tasks are time-limited: in case a task consumes more than 6
hours of pure processor's work, it will be canceled with a recommendation to
change the query parameters.
Once any task in the Recent task list selected the information about this task
appears in the Task details and the Reconciliation summary menus.

The Task details menu contains the information about the parameters of
reconciliation. You also can restart the selected reconciliation task from the

Task details menu by using Restart reconciliation button. In this case you
dont need to upload the file again as it is already stored in the data base. The
parameters of the reconciliation will be set automatically the same way they
were set for the original task.

Via the Reconciliation summary grid the system provides you with the list of
discovered matches and mismatches with a few important details on each of
them, such as CDR count, duration and cost. The column Matching type
indicates fully matched CDRs (Matching type: Same) or the nature of the
mismatches detected (such Matching types as Owner/Partner CDR found
only, Overbilled by owner/partner, Extra duration from owner/partner and
etc.). Each record (except for the Total line) in this column is a link to the
Reconciliation details window where CDRs related to the selected Matching
type can be found. Also the data from this window can be downloaded as a
.csv file for your reference or further analysis.
To start a new reconciliation task you need to click on the New reconciliation
button in the bottom of the Recent task list grid. First of all you are to upload
a file for reconciliation.

The files to upload must be either a .csv or a .zip archive. Note that a .zip
archive must contain only one file otherwise the archive will not be parsed.
For correct parsing it is also important to select the right delimiter used in the
file to upload. Once the file is uploaded you can see the Preview window and
the Settings panel.
In the Preview window you can select the Start row (also can be set in the
Settings Panel) and define the desired columns which will be used for the
reconciliation by clicking on their headers.

In the Settings panel you are to set desired parameters for the reconciliation
such as:

Matching column set: here should be selected the combination of the


CDR fields which the matching will be based on. The corresponding
columns must be defined in the Preview window.
Traffic direction;
Carrier name;
Destinations to be matched;
Time frame to compare CDR for;
Include zero duration CDR;
Date format;

Connect/Disconnect time delta: defines the acceptable discrepancy in


connect/disconnect time;
Duration delta: defines the acceptable discrepancy in duration (the calls
with the duration discrepancy within this value will have Matching type:
Extra duration from owner/partner(minor));
Time offset: this value sets the max CDR time difference between your
server and the partners server, so that the CDRs will be matched with
the appropriate time adjustment.
All the parameter settings can be saved as templates so you are able to use
them in the future.

CDR Rerating
The CDR rerating tool provides you with an opportunity to recalculate the call
charges in case some data (such as rates, dial codes, carrier interconnect
information and etc.) have been added/changed for a past time interval so
that allowing you to keep your billing and statistics up-to-date. The interface
is split into two tabs: CDR Recalculation and CDR Rerating.

The CDR Recalculation tool provides you with a flexible set of filters for
manual CDR rerating, including:
Time frame within which the charges should be recalculated;
Set of client/vendor parameters allowing you to precisely select only
desirable data for recalculation;
The Dial code mask field is extremely useful when you need to rerate CDRs
for a whole destination. Use the * sign after the generic short dial code for a
destination, so that all longer dial codes with any number of digits will be
included into the recalculation.
Using the Set task start time option you can schedule the rerating task for
any appropriate time, for example postpone it till the next system off-peak
interval not to put an excessive load on the system.

Once you start a CDR recalculation task, it appears in the Tasks grid menu.
Here you can find the list of the recent tasks with corresponding information
such as the date of the task creation, its status and the user who initiated the
job. Selected tasks can be restarted with already used parameters which are
indicated in the Tasks details grid below.

Besides the manual recalculation the system performs the automatic rerating
once a day. It starts at the hour defined in the System settings>>Statistics
module>> CDR rerating hour parameter. The automatic rerating procedure
checks the system for any rate changes that occurred during the time interval
defined in the System settings>>Statistics module>>Max rerating interval
parameter (field value = n, where n is the number of the days prior to the
current date).
According to the changes found the rerating jobs are created in the CDR
Rerating tab. The jobs are stored in the table equipped with a set of filters

(such as Task status, Change type and many others) which makes the search
easier for you.
You also can manually schedule the jobs in the New status for any convenient
time by selecting the desired ones and pressing the Create job button. The
history of the recent jobs can be found in the bottom grid of the interface.

Finance
All financial aspects associated with carrier business are covered within
Finance section accessible from the Start menu. Invoice and payment
management tools are separately grouped into two corresponding units with
intuitive interfaces:

The system offers easy differentiated access to all financial data at the same
time providing system owner with a balanced coverage of financial status for
each separate partner, account or product implemented through the invoice/
payment mapping feature.

Invoices
Invoices interface represents a comprehensive toolkit for creating, reviewing
and forwarding invoices to clients as well as generating vendor associated
invoices for verification purposes.

Invoice generation is fully automated and performed with exceptional


promptness. The system collects all the billing relevant data from incoming

CDRs into a dedicated data pool continuously updated at the rate of CDR
arrival, generally once in 1, 5 or 15 minutes depending only on softswitch
settings. This data pool in fact constitutes the backbone of all further
analytical processes carried out by the system and forms basis for billing
procedures. At the moment when current billing period defined by the partner
agreement is over the system has already access to all the processed
statistics necessary for generating a new invoice. At this instance it only
needs a few seconds to create the invoice file itself, which then can be
reviewed by the user before being sent to a client.
The system also provides an option of manual document creation in certain
cases when operator involvement is needed.
Interface Special Features
All invoices, no matter how they were created automatically or manually, have
the Draft status and are never auto-sent to clients. Each invoice can be
reviewed and edited if needed (or deleted with the Delete draft button on the
lower tool bar) and is dispatched only after explicit confirmation (Confirm
draft button on the lower tool bar) acquiring the Sent status.
All invoices automatically generated by the system are created at the end of
each billing period as defined in Carriers >> Agreements >> In/Out billing
period. Please note that counterparty time zone (set in Carriers >>
Agreements >> In/Out time zone) is always taken into account.
Apart from invoices, a user may manually issue another type of document - a
credit note. It can come useful, for instance, in cases of disputes. When
amount correction in clients favor is needed, after the invoice has already
been received, a credit note can cover the required amount (Create manual
document on the upper tool bar) by increasing clients balance. In a vendorassociated case, a credit note stands for the amount to be compensated to
the system owner by reducing vendors balance.

Confirmed invoices are forwarded to preset email addresses contained in the


system. The default address is set in Carriers >> Agreements >> Default
invoice emails (may be omitted or several comma-separated addresses may
be indicated). If necessary, invoice copies may also be sent to other recipients

defined in Administration >> System settings >> Parameters >> Financial


module >> Email address to CC invoices distribution (several comma
separated addresses may be indicated) or to specified system users if the
Send invoices flag is set (Edit window) in Carriers >> Users.
An actual invoice sent to a client in fact comprises two separate files: a PDF
file containing general invoice information and a CSV file with the traffic
detailing. Both files may be sent out as attachments to a single email, or with
two separate emails. Type of delivery is set in Administration >> System
settings >> Parameters >> Financial module >> Invoice delivery options.
The system owner may choose yet another option - a link-containing email when client receives an email with a link to the invoice.

The benefit of the latter is that the system owner will know exactly if an
invoice has actually been received (opened) by the client. This is the only
case when the invoice status is changed to delivered.
Please note that some other general billing parameters associated with
invoice generation and dispatch and payment balances are set in
Administration >> System settings >> Parameters >> Financial module and
Carriers sections.

Invoice Filter

For easier management invoices may be filtered according to the following


parameters:
Reference number (actual invoice number - a number automatically
assigned to an invoice after its draft is confirmed and the invoice is sent
out or set manually in case of manual document creation; initial number
may be set in Administration >> System settings >> Parameters >>
Financial module >> Current invoice number)
Carrier (client/vendor name as per data in the Carriers section)
Account (specific carriers account - as per data in the Carriers >>
Accounts)
Product (specific product name - as per data in the Carriers >>
Products)
Direction (invoice for inbound (to client) or outbound (from vendor)
traffic - as per data in the Carriers section)
Invoice status
o draft (status assigned to all generated non-confirmed invoices)
o sent (status assigned to an invoice after its confirmation and
dispatch)
o delivered (status assigned to an inbound traffic invoice after it is
received by the client, in case of link-assisted delivery)
o registered (status assigned to an outbound traffic invoice after the
counter-invoice from the vendor is received and registered in the
system)
o insignificant (status assigned to an invoice with an estimated
amount lower than preset in Carriers >> Agreements >> Min
invoice amount; such invoices are not sent out for the current
billing period, but are supplemented to the following period
invoice, which in this case comprises two separate charges for the
two successive periods)

o disputed (status assigned to an invoice challenged by the


counterparty, provided that both of the following preset
parameters are surpassed: Administration >> System settings
>> Parameters >> Financial module >> Min absolute mismatch
to invoke a dispute and Min percent mismatch to invoke a
dispute, whichever is stronger)
- State
o actual (regular invoices generated against currently valid billing
data)
o outdated (invoices are automatically marked as outdated if any
relevant changes to underlying billing data are introduced into the
system retrospectively, for instance in case of CDR rerating; such
outdated invoices are subject to recalculation)
- Payment status
o payment expected (invoice is sent out, no payment has been
received but the counterparty stays within the payment period set
in Carriers >> Agreements >> In/Out payment period)
o overdue (invoice is sent out, no payment has been received and
the payment period set in Carriers >> Agreements >> In/Out
payment period is over)
o partially paid
o paid in full
Period between (all invoices for the billing periods covered by the
mentioned range)
Created between (all invoices generated within the mentioned time
period)

Invoice Data

For all available invoices system provides the following data:


Carrier (client/vendor name as per data in the Carriers section)
Reference number (actual invoice number - for detailed description see
the Invoice Filter section)
Direction (invoice for inbound (to client) or outbound (from vendor)
traffic - as per data in the Carriers section)
Status (draft, sent, delivered, registered, insignificant, disputed for
detailed description see Invoice Filter section)
State (actual, outdated for detailed description see Invoice Filter
section)
Estimated amount (total amount due based on the system calculation; a
click on the value opens charge details for each specific invoice; the
same data constitutes a detailing CSV file to be sent to a client, charge
details may be exported either to CSV or XLS)):

Presented amount (total amount due according to partner estimation, if


available; the value is introduced manually as Present amount via Edit
invoice button on the lower tool bar:

A difference between Estimated and Presented amount, if any and if


unfavorable for the system user, changes invoice status to Disputed
provided it is greater than the preset value of either Administration >>
System settings >> Parameters >> Financial module >> Min absolute
mismatch to invoke a dispute or Min percent mismatch to invoke a
dispute, whichever is stronger)
Payment status (payment expected, overdue, partially paid, paid in full;
a click on the value opens invoice mapping profile displaying correlation
between invoices issued and payments made
Map document button in the lower tool bar of the displayed mapping
window makes it possible to add any yet unmapped documents to the
profile by specifying the document and choosing between listed amount
options

Created (date of invoice generation)

Period (dates defining specific billing period for each particular invoice;
billing interval as such is preset in Carriers >> Agreements >> In/Out
billing period )
File (provides a link to a PDF file containing general invoice information
to be sent to a client as an invoice-cover)
Interface Controls

Upper tool bar


Recalculate period (allows recalculation of invoices for the specified time
period, for instance in case of billing period readjustments, invoices
becoming outdated, or the like)

Account (involved account - as per data in the Carriers >> Accounts)


Start date (first date of the revised period)
End date (last date of the revised period)
Close billing period and generate invoice (allows creation of invoices for
the current billing period regardless of its preset duration on the
specified date; please note that the starting date of the invoice to be
created will be the first day of the billing period which is being closed;
next auto-generated invoice will cover the remaining days of the preset
billing period, its end date becoming the last day of the period which is
being closed)

Direction (choosing invoice direction: to client/ from vendor)


Carrier (relevant client/vendor - as per data in the Carriers section)
Account (relevant account - as per data in the Carriers >> Accounts)
Issue date (invoice creation date)
Create manual document (allows manual setting of invoicing parameters
in particular cases, for example at dispute settlements for creating
supplementary invoices or offsetting credit notes)

Document type (choosing type of the document to be created: invoice


or credit note)
Direction (choosing invoice direction: to client/ from vendor)
Carrier (relevant client/vendor - as per data in the Carriers section)
Account (relevant account - as per data in the Carriers >> Accounts)
Issue date (invoice/credit note creation date)
Amount (total amount due)
Reference number (actual invoice/credit note number for detailed
description see Invoice Filter section)
Notes (comments to the document)
Attachment (underlying document)
Choosing the Make auto mapping after creating option enables automatic
synchronization of the created document with the relevant carrier/account
invoicing and payment profile. Please note that in the process of automatic
mapping earlier generated invoices are covered prior to recent ones.

Lower tool bar


Edit invoice (launches an interface for editing invoice drafts)

Changeable parameters include:


Reference number (actual invoice number for detailed description see
Invoice Filter section)
Present amount (total amount due according to partner estimation for
detailed description see Invoice Data section)
Issue date (field indicating as of which date the system assumes
Previous balance value in the created invoice)
Payment status (payment expected, overdue, partially paid, paid in full
for detailed description see Invoice Filter section)
Paid amount (amount actually paid)
Notes (comments to the document)
Attachment (underlying document)
Delete drafts (deletion of selected drafts)
Confirm drafts (confirmation of selected drafts; before dispatching
confirmed invoices the system asks for additional explicit approval)

Recalculate (recalculation of selected invoices)

Payments
The Payments section offers an intuitive interface for tracking incoming and
outgoing payments and monitoring carrier balances. The Invoice/payment
mapping feature executes automatic matching of registered payments against
issued invoices facilitating financial control.
Payments Filter

For easier management payment records may be filtered according to the


following parameters:
Carrier (client/vendor name - as per data in the Carriers section)
Direction (incoming payment for inbound traffic (from client) or
outgoing payment for outbound traffic (to vendor))
Date between (payments executed within the specified time range)
Status (payment status; payment record may be saved in the system as
draft, for instance if the actual payment from the client has not yet
been received but the customer claims it has already been executed
such a record acquires the registered status only after additional
confirmation and submission to the system)
- draft (draft payments have no impact on partner balance)
- registered (registered payments change partner balance)

Payment Data

For all available payments system provides the following data:


Carrier (client/vendor name - as per data in the Carriers section)
- Payment date (date of actual payment execution)
- Registration date (date of payment registration in the system)
- Reference number (internal system number of payment record)
- Direction (inbound, outbound - for detailed description see Payment
Filter section)
- Amount (total payment amount)
- Covered amount (underlying invoice amount covered by the payment;
may be partial or full; a click on the value opens payment mapping
profile displaying correlation between payments made and invoices
issued
- Map document-button in the lower tool bar of the displayed mapping
window makes it possible to add any yet unmapped documents to the
profile by specifying the document and choosing between listed amount
options

- Status (draft, registered for detailed description see Payment Filter


section)
- Document (underlying document)
- Comment (any comments to payment)
Interface Controls

Upper tool bar


- Synchronize balances (enables synchronization with external accounting
systems through uploading data; requires CSV-format files separated
with semicolon (;) with the following fields:
- Carrier name string 256 characters max (must fully coincide with the
carrier name in the system)
- Currency string 256 characters max, e.g. USD, EUR
- Balance value decimal separator . (dot)
- Balance effective date submitted in format DD MM YYYY HH24 MI SS)
- Make auto mapping (launches automatic matching of invoice vs.
payment data for selected accounts)

- Import payments (allows import of external payment records; requires


CSV-format files separated with semicolon (;) with the following fields:
- Carrier name string 256 characters (must fully coincide with the
carrier name in the system)
- Payment direction 0 or inbound for payments from client; 1 or
outbound for payments to vendor
- Payment date submitted in format DD MM YYYY HH24 MI SS
- Payment reference number string 256 characters
- Payment amount decimal separator . (dot)
- Payment currency currency code e.g. USD or EUR
- Payment comments string 4000 characters)
- Register new payment (allows manual creation of payment records)

- Payment direction (incoming (from client) or outgoing (to vendor) payment)


- Carrier (relevant client/vendor - as per data in the Carriers section)
- Account (relevant account - as per data in the Carriers >> Accounts)
- Payment date (date of actual payment execution)
- Payment amount (total payment amount and currency)
- Comment (any comments to payment)
- Confirming document (underlying document)
Choosing the Make auto mapping after registration option enables automatic
synchronization of the registered document with the relevant carrier/account
invoicing and payment profile. Please note that in the process of automatic
mapping earlier-generated invoices are covered prior to recent ones.
Record created may be marked as draft (Save as draft-button) or registered
(Save and submit-button).

Lower tool bar


- Confirm draft and submit
registration in the system)

payment

(payment

- Delete payment (delete selected payment record)


Record may be exported either to CSV or XLS.

confirmation

and

Monitoring and alerts

This interface offers a convenient monitoring tool allowing you to keep an eye
on the problems detected in the system and resolve them in time so that
keep the system workflow stable. In the main window of the interface you can
see the list of issues occurred to the system with a few details on them:
- Date when the problem was detected;
- Information and Details: short summary and the issue description;
- Issue type: Vendor traffic quality (if vendor traffic monitoring thresholds are
set up in the Monitoring section of the System settings menu), System
monitoring alerts (like excessive CPU load or lack of free HDD space) or
Database errors;
- Status: New, Confirmed, Resolved or Discarded (you can change the status
of the selected issue respectively via the Change status menu in the right
upper corner of the interface).

You can easily sort out the list by the means of the convenient set of filters.

The System monitoring alerts have the configurable set of metrics what
makes them adjustable to the peculiarities of your system and traffic pattern.
You can find these settings by clicking on the Settings button in the right
lower corner of the interface. Here you can set the Lower and Upper threshold
values for each parameter presented in the menu and the time Window (in
minutes) which the alerts are aggregated for (for example, in case you set
the CPU used, % parameters Upper threshold as 97% with the Window of 10
minutes, the alert will be given when the average CPU usage for ten minutes
exceed 97%).

Rate management
Efficient rate handling is the key factor defining the overall efficiency of the
company business processes one has to import multiple vendor ratesheets
daily, perform analysis of partner rates, create client products etc. inVoice
offers a set of powerful and convenient tools to cope with the full scope of
rate management tasks.

Rate import
Uploading of supplier ratesheets is probably the most common everyday
routine task any carrier has to face. The key challenge of automatic rate
upload is the overwhelming diversity of the ratesheet file formats used by
carriers even if we speak only of .xls, .xlsx and .csv-files (that can be
considered as an "industry standard") and leave untouched somewhat exotic
examples (.pdf, .txt or even .jpg-files). Besides, it is important to ensure that
the imported data be automatically verified in terms of integrity, syntax and
compliance of the rate details (increase dates in particular) with the
interconnect agreement terms. And yet another thing to keep in mind is the
import speed few companies can afford to wait for half an hour for a single
ratesheet to be imported (and not always successfully).
So, the main goal for us at Alaris when designing the rate import facility was
to provide a tool for Excel ratesheet parsing that would be robust, efficient
(and as close as possible to being "format-agnostic") and at the same time
easy to understand and convenient to use.
File upload

To upload a new file for rate import you need to click on the Upload file in the
bottom of the Rate import interface. In the opened Upload file menu you need
to specify the carrier you would like to import rates to and to select the
ratesheet to upload (must be in the .csv, .xls or .xlsx format).

File selection

The file selection interface allows you to choose a ratesheet to import from
the already uploaded files. The table also contains some information about
the files:
- Carrier: indicates which carriers was selected during the file upload;
- File name: indicates the uploaded ratesheet name and allows to
download the file by clicking on its name;
- From: indicates from which e-mail address the selected ratesheet was
sent (only for the ratesheets processed by the semi-automatic rate
import tool);
- Date: indicates the time and date when the selected ratesheet was
uploaded;
- History: contains the links to the list of actions made with the selected
file and some information on them;

In the History menu you can find the following information:


- Product: the target product of the rate import;
- Import result: the task status (indicates whether the import was
successful or not, cancelled or the uploaded ratesheet was used for rate
analysis);

- Start time: indicates the task start time;


- End time: indicates the task end time;

After the uploaded file for the import is selected you can define the Import
settings. In the Import settings menu you can define the following
parameters:
- Selected file (not editable from this menu): indicates the name of the
selected uploaded ratesheet;
- Action type (Import or Analysis): defines the type of the activity to
undertake: import or analysis, which will bring you to the Rate analysis
interface;
- Direction (Client or Vendor): defines whether you would like to import
the selected ratesheet to a client or vendor product;
- Carriers: defines which carrier you would like to import the rates to (by
default is set to the carrier defined during the selected file upload);
- Product: defines the selected carriers product you would like to import
the rates to;
As soon as the uploaded file selected and the Import settings are defined you
can click to the Continue button which will bring you to the parser setings.
Parser settings
The ratesheet parser provides a user-friendly way to specify location and
other relevant details of all important rate data in the file, so that the system
will be able to automatically submit the information into the database.
The grid in the upper-left part of the screen contains a preview of the source
file data; everything is shown "as is" all cell contents and the overall file
structure (sequence and naming of columns and worksheets) is preserved at
this stage.

This grid is used to identify various data types by means of choosing the right
types for the columns; besides, some important comments (e.g. the time
zone, the billing increments, peak/off-peak schedules etc.) given in an
arbitrary text form outside the rate table (usually in the first lines of the file
above the rate data) can also be noted and used.
The right side of the screen contains the parser settings that cannot or are
inconvenient to be set by referring to a particular column in the file. Besides,
here you can also get access to the parsing template list if a file in a
particular format has been manually parsed before and the settings have
been saved, all work with future files in the same format will be confined to
merely selecting the right template and checking if the results are correct (i.e.
whether there has been a format change requiring an adjustment of the
parser settings).

The following parameters can be found here (some of them aren't shown by
default and only become available in certain cases like the peak/off-peak
scheduler):

Product: general details of the product being updated;

First rows: the first row with the rate data in the file (to bypass headers
and other extra info irrelevant for the import procedure) just click on
the necessary row in the grid with the source file data and then set the
Fix selected rows flag. If there are multiple worksheets in the file, there
will be several fields of this type to make it possible to define the first
row on each worksheet separately (if a worksheet has no rate data on it
e.g. it just provides the peak/off-peak schedule just don't set the
first row for it, so that it will be skipped).

Rate merging options: the variant of joining the rates already existing
in the selected product and the fresh rates being imported; one of the
three options can be selected:

Close all rates existing by: close all rates that are active at the specified
date/time (by default set to 00:00:00 of the next day after the current
import session), so that only the fresh rates will be existent in the
product when import finishes;

Close all rates for fully matching breakouts: update existing rates only
for the dial codes present in the file being imported, leaving the rest of
the active rates intact; the rate closure date/time will be the same as
the effective date/time of the new rates. Using this option you can also

close non-matching breakouts at desired date and time (flag Close nonmatching breakouts at);

Close rates for entire destinations: similar to the previous option, but
with a wider scope the system will close all existing rates for the
whole system destination in case there is at least one rate for that
destination in the imported file (e.g. if the selected product contains
three active rates for Russia, mobile 79, 7908 and 7910 - and there is
at least one rate from the ratesheet belonging to the system destination
Russia, mobile, all the three existing rates for Russia will be closed. The
closure date for these three rates will be calculated in the following
way: the Ratesheet received on date + the Rate change period
parameter (Carriers Agreements); all rates for fully matching
breakouts will naturally be modified with the effective dates of the new
rates);

Effective from: the effective date/time for the imported rates. Can be
either defined manually or taken from a column in the file;

Effective till: the effective date/time for the imported rates. Can be
either defined manually or taken from a column in the file. By default
set to 00:00:00 Jan 1, 2100;

Increase date: the effective date/time for increased rates from the
imported file. Optional (if it's not set explicitly in the parser settings, the
Effective from parameter will be used for all rates in the file);

Ratesheet received on: the date/time of the ratesheet receipt (by


default set to the current time);

Time zone: the time zone your partner is located in (automatically


taken from the agreement with the partner). The system uses this
parameter to correctly adjust the rate effective date/time and peak/offpeak schedules from the ratesheet to the time zone of the System
Owner;

Billing increment: the billing increment in the x/y/z format. Set


manually or by reference to a column in the file. It is possible to
manually define a special increment for a group or groups of
destinations (the Add destination set button);

Schedule formats (you must specify the "Schedule" column first): here
you can select the days of week when the rate is active during the
hours indicated in the Schedule column(s) (in 07:00-12:00 format, for
example);

Rates in columns: this option makes it possible to set up the parsing


rules and the schedule for peak/offpeak/weekend rates given in two or
three columns in the file (i.e. for each dial code there is just one line in
the file); becomes available if two or three Rate columns are specified.
If the First rows parameter is defined, the system tries to collect the
rate labels (Peak, Offpeak etc.) from the supposed header line (they will
need to be brought to the system names Peak, Offpeak, Weekend).
The peak/offpeak schedule is defined by means of the Week scheduler
control. If necessary, it's possible to define one or several groups of
destinations with a special peak/offpeak schedule (the Add destination
set button);

Rates in rows: this option makes it possible to set up the parsing rules
and the schedule for peak/offpeak rates given in one column in the file
(i.e. for each dial code there may be multiple lines); becomes available
if one Rate column and the Rate labels column (the system tries to get
the rate labels from it to be then mapped with the system rate types)
are specified. The peak/offpeak schedule and destination sets with
different schedules are defined as described in the Rates in columns
section.

The column types available are the following:

Dial code: dial codes (1 or 2 columns);

Destination: destination names (1-3 columns);

Rate: prices (1-3 columns);

Rate labels: price types (e.g. peak/offpeak);

Schedule: peak/offpeak schedule (1-4 columns);

Increment: billing increment;

Effective from: date/time the rates become effective at;

Effective till: date/time the rates are effective till;

Rate notes: any information for your reference (saved as the Rate notes
parameter of the rates);

Volume: indication of the volume per breakout (for rate analysis).

The grid in the lower-left part of the interface displays a preview of parsing
results after all necessary settings have been done and the View results of
parsing button has been pressed this makes it possible to correct mistakes
in the parsing settings (if any) and then run the import procedure. Please
note, that the preliminary rate import result displays the Effective from
date of a new rate in case its period crosses the existing rate period.

The first step to begin the parsing setup should be fixing the first line on
every worksheet (place the cursor on the right line of every worksheet or
define the set the First row parameter and then set the Fix selected rows
flag).

Then a user can select the type of data in every column of the source file
just click on the header of the necessary column and select the data type
from the pop-up list. Some basic data types (Destination, Dial code and Rate)
may be used for multiple columns: this way you can handle peak/off-peak
pricing in columns, dial codes split into country and area codes or destinations
given in two or three columns.

If you need to link two worksheets by a parameter (dial codes or


destinations), just select the parameter present on both worksheets to be
used as the key the system will join the data automatically.
The system automatically understands the following ways of representation of
dial code sequences in one Excel cell: 111[1,3-5, 6-7, 9], 1144, 1145;
222[45..47, 40] (spaces don't matter).

The details that can't be set by reference to a column can be manually


specified in the respective fields in the parser settings (if a parameter has
already been set by linking to a column, the respective field for manual input
gets disabled).
Output of parsing info
When the Continue button has been pressed, the system parses the rate data
from the file and then shows a list of messages concerning the parsing
results. The interface allows filtering the message list by type and exporting
the filtered or full list to an Excel file.

The following message types are possible:

Parsing error;
Dial code missing;
Dial code duplicates;
Rate empty or Rate<=0;
Duplicate rate label found;
Timemask missing;
Timemask overlap;
Duplicate schedule found;
Too many rate_label or schedule values for one dial code (max 3);
Increase notification period violated;
Past rate change (increase);
Past rate change (decrease);
Past rate closed;
Past new breakout added;
Rate change notification period violated;
Duplicate record found, duplicate disregarded;
Timemask not full;
Rate closed;
Rate change (increase);
Rate change (decrease);
New breakout added;
New dial code added to system code reference book;
New timemask added;
New billing increment added;

Billing increment missing.

If a detailed rate check is launched (the Detailed rate check button), the
system will search for implicit rate changes in the file (e.g. a product used to
have the following rates: 79 at USD 0.11 and 7910 at USD 0.09; and in the
ratesheet being imported just the 79 breakout is present that means that all
traffic that used to go through 7910 at a lower rate will now have to be billed
as 79 at a higher rate).

The following messages may be shown after the detailed check:

Implicit increase: new detailed breakout has higher price;


Implicit increase: detailed breakout closed, new general breakout has
lower price;
Implicit decrease: new detailed breakout has price lower price;
Implicit decrease: detailed breakout with price closed, new general
breakout has higher price.

As the final step, a user can either apply the new rates to the selected
product (all lines with errors will be ignored) by means of the Apply and close
button, cancel the import by means of the Cancel and close button or return
to the Parser settings be means of the Back to config button.
Parsing of US Domestic ratesheets
Rates for destinations within the North American region (World Zone 1) often
have a number of specific details as compared with standard international
rates; therefore they require a different set of parsing options.
Here are the parsing parameters available for US Domestic products:

Product: same as for International products;


First rows: same as for International products;
Rate merging options: the variant of joining the rates already existing in
the selected product and the fresh rates being imported; one of the
following options can be selected:
- Close all rates existing by...: same as for International products;
- Close all rate types existing for imported dial codes: close all rate
types existing in the DB only for the dial codes present in the
imported file and leaving the rest of the existing rates intact; the

rate closure date/time will be the same as the effective date/time of


the new rates;
- Close only rate types matching imported rate types: close only the
rate types present in the imported file (for all dial codes); the rate
closure date/time will be the same as the effective date/time of the
new rates of the same types, and the rest of the existing rate types
won't be changed;
Rates based on: this parameter defines what the rates in the file are
based on: dial codes (Dial codes), LATA+OCN combinations
(LATA+OCN) or state+OCN combinations (State+OCN);

Add World Zone 1 code: this parameter defines whether the digit 1 is to
be added at the beginning of all the dial codes in the file (for the cases
when the dial codes are in the NPANXX(Y) format, i.e. there is no
country code);

Effective from: same as for International products;


Effective till: same as for International products;
Increase date: same as for International products;
Ratesheet received on: same as for International products;
Time zone: same as for International products;
Billing increment: same as for International products.

Available column types:

Dial code: same as for International products;


Destination: same as for International products;
Rate-S: intrastate rate (if the Use LATA-based rates flag in the product
properties is not set);
Rate-SS: interstate rate (if the Use LATA-based rates flag in the product
properties is not set);
Rate-SL: intrastate/intraLATA rate (if the Use LATA-based rates flag in
the product properties is set);
Rate-SSL: interstate/intraLATA rate (if the Use LATA-based rates flag in
the product properties is set);
Rate-SLL: intrastate/interLATA rate (if the Use LATA-based rates flag in
the product properties is set);

Rate-SSLL: interstate/interLATA rate (if the Use LATA-based rates flag


in the product properties is set);
Rate-IND: indeterminate rate (jurisdiction cant be determined);
Rate-LOC: local rate (special price set by the carrier within some
segment of the network);
Increment: same as for International products;
Effective from: same as for International products;
Effective till: same as for International products;
Rate notes: same as for International products;
Volume: same as for International products.

After the rates are imported you will see the summary with the task
information.

Automatic rate import


Automatic rate import feature is another tool allowing you to upload
ratesheets to the system. It is possible to import rate sheets in .csv format
uploaded to the folder /u01/app/oracle/rate.files which is scanned for new
files every 20 minutes. If an import attempt is successful, inVoice sends
an e-mail to the address (set by the parameter Rate files auto-import
results alert email in System Settings>>Rate Module) and the imported file
is moved to the archive folder (can be set with the parameter Auto-import
rate files archive folder in System Settings>>Rate Module). If the import
attempt fails, an-email with the error description is sent and the file
<old file name>.error containing the error description is created.
CSV file format:
Header must contain the information uniquely identifying the product to which
the rates are applied. In case the product is not found or there is more than
one product corresponding to the description, the import task is marked as
failed. The text data must be enclosed in .

Header format: <Carrier name>;<Account currency>;<Direction>;<Product


name>
Direction field contains 0 in case of the client product, 1 in case of the vendor
product.
Example: "ABC telecom";"USD";1;"Wholesale"
File
body format:
<Carrier
specific
code
description>;<Dial
code>;<Effective from>;<Effective till>;<Billing increment>;<Rate 1>;
<Rate 2>;<Rate 3>;<Rate 4>;<Rate 5>;<Schedule>;<Rate note>;<Rate
block>
<Carrier specific code description> - Dial code description, max 256 symbols;
<Dial code> - Dial code, max 16 symbols;
<Effective from>
HH24:MI:SS;

Rate

effective

from

date.

Format:

YYYY.MM.DD

<Effective till> - Rate effective till date. Format: YYYY.MM.DD HH24:MI:SS;


<Billing increment> format: free/first/next (0/1/1);
<Rate 1> - the decimal separator is .;
<Rate 2> - the decimal separator is .;
<Rate 3> - the decimal separator is .;
<Rate 4> - the decimal separator is .;
<Rate 5> - the decimal separator is .;
<Schedule> - Week schedule setting the price used for every hour in the
week. If the field is not set, then the system considers it a flat rate.
<Rate note> - Rate note text, max 256 symbols
<Rate block> - Rate block code, possible values: 1 -FAS, 2 -Low ASR.
Example:
"Russia,mobile,Mts";"7910";"2012.01.01
00:00:00";
"2100.01.0100:00:00";"0/1/1";0.00001;0.00002;0.00003;"";"";1111112222
22211111111111111111222222211111111111111111222222211122211111
11111122222221111111111111111122222221111111113333333333333333
3333333333333333333333333333333311";"CLI";"2"

Rate editor
The Rate editor interface is aimed at viewing and modifying single rates and
rate groups that are currently present in the system, as well as at manual
creation of new rates one by one.
The interface consists of two tabs: Rate groups and Rates.
Rate groups
The Rate groups tab consists of the area with rate filtering and grouping
options and with the area to display the rates grouped as defined.

The rate filter has the following options:

Carrier name;
Rate type (client or vendor);
Product name;
Dial code;
Country;
Area;
Type;
Carrier destination;
Rates valid at date;
Effective date;
Rate notes (available only if grouping by rate notes is set);
It is also possible to include rates from the parent product into the
output.

You can also choose how you want to group the filtered rates:
By country;
By type (fixed, mobile, etc);
By area;
By product,
By effective date;
By dial code;
By carrier destination;
By rate notes;
If no grouping flags are set, the system will display just one group showing
the total number of rates in the selection according to the filter parameters.
The area to display the filtered rates contains rate groups with the details as
per the grouping flags set.
Rates
This tab is disabled by default. To enable it you need to select one of the rate
groups in the Rate groups tab.

Once you select a rate group in the first tab, the Rates tab will display the
rates that are contained in that rate group and you will be able to edit them
either one by one or in the group edit mode. The rates tab contains a table
with the following columns:
Dial code;
Own destination;
Carrier destination;
Currency;
Price;
Price (system currency);
Increment;
Statistics (displays ASR/ACD/Vol/Attempts for the last 7 days);
Active from;
Active till;
Product;
Rate notes.
The lower part of the Rates tab contains an area with details on a particular
rate history. Click on a rate in the table to view the history of changes for the
rate. The History status column indicates the rate periods as previous,
selected or upcoming.

A rate is a combination of several parameters:


Dial code: the dial code the rate is applicable to. Obligatory parameter;
Product: a carrier product the rate belongs to. Obligatory parameter;
Currency (not editable, filled automatically according to the selected
products currency);
Period: a period of time during which the rate is active. Obligatory
parameter. A rate may contain several intervals with the condition that
they do not overlap. Thus, there might be several logical rates for one
dial code in one product, different from each other in their activity
intervals (possibly in other parameters as well);
Increment: billing increment of the rate. Obligatory parameter;
Own destination: a description of the dial code (Country Area Type)
taken from the system dial code reference book. Not editable (taken
automatically from the dial code table);

Carrier destination: a carrier-specific description of the dial code. If


there is no carrier-specific description for the given dial code, the
system-wide reference book is used (double clicking on the Own
destination field will automatically fill the Carrier destination field with
the destination name from the system-wide reference book).
Notes: carrier notes on the rate (typically regarding the quality offered).
Optional parameter.
By double-clicking on a rate you can see all its details in the window that will
show up.

There are several actions you can do with rates:


Add rate: this option lets you add a new dial code to the carriers product you
have selected in the Rate groups tab.
Important note: you wont be able to enter a dial code if this dial code is
already present in the system for the given carrier name, carrier product and
if the activity period of the newly created code overlaps with the existing one.
In other words if there is an existing rate for the given carrier name, carrier
product and rate activity period, then you should use the Modify period or
Add period option to edit the current rate rather than creating a new one. At
the same time if the new rate that you are entering has the same carrier
name and carrier product with the existing rate in the system database, but
their activity periods do not overlap, then the system will let you create a new
rate, but this operation will be processed as if you added a new activity period
for the existing rate.

To add a new code you need to start entering the code in the Dial code field.
The system will look up the entered code with the system-wide dial code table
and will suggest the needed code (you cannot enter a dial code that is not
present in the system dial code table, thus you are obliged to choose from the
ones the system suggests). Once the dial code is entered, the Own
destination field is automatically filled with the description of the dial code.
The parameters you need to specify for the rate are:
Product: the carrier product the rate will belong to;
Carrier destination: carrier-specific destination name for the dial code;
Price: prices are to be edited in the mini-table where you can specify up
to three different price types for international products rates (peak, offpeak, weekend) and set up the activity intervals for each price type.
Use the graphical control to indicate the interval for the price activity.
You can also add new price types with the help of the New button within
the price mini-table, edit the existing types with the Edit button and
delete selected price type with the Remove button. In case you add a
rate for a US Domestic product you are to specify up to 4 (STATE-based
rates) or 6 (LATA-based rates) prices (here you cant set up the activity
interval for each price type and also add/delete the price types);
Increment: choose the needed increment for the price from the
dropdown list;
Active from and active till: choose the activity period of the price. If the
entered period overlaps with a rate for the same carrier name, carrier
product parameters, then the system will prevent you from adding a
new rate. You will need to specify a period that does not overlap with an
existing rate. If you create a non-overlapping period for this rate and
the carrier name and carrier product match some of the existing rates,
then the existing rates will be modified in that a new period (with the
new price or increment) will be added to it. If you create an absolutely
unique rate (meaning that there are no rates in the system with the
same carrier name and carrier product), then a new rate will be added;

Notes: optionally you can specify notes for the rate; usually they
correspond to quality-related details of the breakout (CLI, Premium
etc.).
Add rate to group: this option lets you add a new dial code directly to the
selected rate group, i.e. the fields in the Add rate window which correlate with
the selected Group by filters will be filled automatically.
Close rate group: this option is to close all rates in the selected rate group
using the Effective till date you will be able to input in the interface.

Roll back rates: that rolls back all changes made to the rates of the specified
product since the target roll-back date (handy in case you've imported a
wrong ratesheet etc.).

Add period: this option allows you to create a new interval in the history of a
particular rate i.e. change the price starting from next Monday (and leaving
the previous history if the rate intact). You can check the current Rate history
by clicking on the Rate history button in the left lower corner of the Add
period window.
Modify period: editing rates within an existing time interval implies that you
do not add a new step to the rate history, but rather modify one of the
existing rate activity intervals (if there is more than one period), including
changing the boundaries of the activity period. ). You can also check the
current Rate history by clicking on the Rate history button in the left lower
corner of the Modify period window.
Close selected: this option lets you close one or several rates after a certain
date/time. Once you choose this option you will have only the Active till field
editable. You will need to set the Active till value to close the rates by that
date-time stamp. All intervals of the rate history that are later in time than
that point will be deleted. You can also check the current Rate history by
clicking on the Rate history button in the left lower corner of the Close rate
window.

Clone rate: here you can create an exact copy of the selected rate, so that a
new rate can be created by means of changing one or several parameters of
the clone. In case no changes are made the new rate will not be added to the
system.
Important note: any changes for rates in the past that have already been
applied to traffic (and thus inVoice has already calculated call costs according
to them) will result in rerating of ALL calls to which these changed rates are
applicable. Be careful while modifying rates for the past periods, since
rerating is a very resource-and time-demanding procedure.
There are also three action buttons not related to rate editing. These are the
following:
Export: this button brings you to the Rate export interface with the preset filters for the selected rates;
Analyze: this button brings you to the Rate analysis interface with the
pre-set filters for the selected rates (all rates must belong to one and
the same product);
Check routing: run a call simulation session for the selected rate (works
for single client rates only).

Rate export
The Rate export tool makes it possible to download rate data from the system
database to a file or send it to the partners e-mails. The interface consists of
two tabs: Export settings and Column settings.
The Export settings tab is split into three parts: the set of filters and options,
the Tasks grid and the Task details window.
First, you need to specify the carrier product(s) you want to export rates for;
if it's a customer product(s) that was inherited from one of the system
products (the ones formally associated with the System Owner carrier), it is
possible to include the parent rates into the resulting export file by setting the
Include parent rates flag.

To sort out the rates to be exported you can use the filters by:
Dial code: here you can select the needed dial codes from Dial code
multi picker;
Dial code masks: in this field you can set one or several dial code masks
separated by commas, e.g. 93* ,5234, 79*;
Destinations: here you can select the whole destination to be exported
(you can choose between All destinations, System destinations or
Carriers specific destination options);

After that the type of export must be selected (Export options):

Changes pending at: the system will export a summary of scheduled


rate changes for the Rate change period (this parameter can be found
in the correlating agreement in the Agreements tab of the Carriers
interface) starting with the selected date. In the exported file the rates
with changes will be marked as increase/decrease or close accordingly,
the rates without changes as same and the new rates as new;

Rates effective at: the full version of the product with all rates effective
at a specified moment will be exported;
Rate history between: a summary of rate changes made during the
selected period (each step in the history on a separate line) will be
exported;
Also in the Export settings you are to choose how the rates in the exported
file will be grouped (by destination or by dial code) and the format of the file
itself (.xls or .csv).
The final step is to select the Export target.

You can either export the selected rates to a file and download it from the
web interface or send the file with rates via e- mail. In the latter case you are
to fill the Send exported file to field with the e-mail address which the rate
export results will be sent to or to check the Send to partner emails flag if you
need to send the exported rates to multiple e-mails (the e-mails will be sent
to the addresses indicated in the Default rate change email field in the
corresponding carrier agreement in the Agreement tab of the Carriers
interface and in the Email field of the corresponding carrier user(s) in the
Users tab of the Carriers interface (if the flag Send rate changes is checked).
In the field Comments you can leave any information for your partner and it
will be placed to the exported ratesheet (in case there is the corresponding
marker
[Comments]
in
the
rate
export
template
in
the
Administration>>System settings>>Template manager interface).
The selected export settings can be saved in a template and used for the
similar rate export tasks in the future.
The rate schedule (the time intervals for peak/off-peak pricing) is given in the
rate table as a reference number (1, 2 etc.), and the system separately
expands the list of these reference numbers with the full description of the
time intervals for each of them.
The Tasks grid is the list of the recent rate exports tasks. Here are indicated
the date when the task was performed, its status and the name of the user
who initiated the procedure. The Details column contains the links to the .xls
or .csv file downloading (in case Export target: Export to file is selected) of
the CDR export results. If you select the Export target: Send exported to file
in the Details column you will see the note Sent. In case any error occurred
during the export procedure its description can be also found in this column.

Also from the Tasks grid you can restart any export task by pressing Restart
export button which will set the export settings similar to the ones used in the
selected task.
The export settings of the selected task can be viewed below in the Task
details menu.

The Column settings tab stores the list of rules defining which column set will
be used for a particular rate export session (please note that the format of
the Excel file that will contain the export results is defined by the respective
template it is only the columns that are specified in the Column settings
tab).

The rules can be filtered by the following conditions:


Product;
Product type;
Export type;
Export grouping;
Rates based on;
Check LATA;
In case several rules meet the same export conditions, the first rule in the list
(a respective filter by conditions is applied) will be used.
To create a new rule you need to press Add new button and select the desired
conditions:

Product: selects a product from the drop-down list;


Product type: not editable, is taken from the product;
Check LATA: not editable, is taken from the product;
Rates based on: not editable, is taken from the product;
Export type: selects the desired export type, where Between is for the
Rate history between, Effective at is for the Rates effective at and
Pending at is for the Changes pending at export type accordingly;
Export grouping: by dial code (one dial code per line) or by destination
(all dial codes within the same destination grouped in one line);

Then you are to select the columns which will be used for the rate export
when the selected export settings conditions are fulfilled.
In case other rules with the same settings conditions but the different set of
columns present in the system the new rule will not be created and the
corresponding notification will be given.
You can also edit, close and clone (so that a new rule can be created by
means of changing one or several parameters of the clone) the existing rules.

Rate analysis
The Rate analysis module provides the System Owner with a convenient
opportunity to quickly evaluate rates offered or requested by partner carriers.
Rate comparison
Within the Rate comparison report the system runs through the rates of a
client or vendor product selected by the user for evaluation and checks what
rates are available for the same or similar dial codes in other vendor (or
customer, if so specified) products in the database. Using this tool you can,
for example, easily find out for which destinations a new partner has a better
or worse offer/target comparing with breakouts already existing in the system
and make the decision based on this information whether it is beneficial for
your business to deal with the partner.
The interface is split into two parts: Analysis form and Tasks.

The Analysis form is the set of parameters based on which the comparison is
conducted. The following settings can be configured:

Client/Vendor rates: this parameter defines whether you would like to


analyze clientor vendor rates (the choice directly impacts the list of
products available in the Source product list).

Source product: here a particular product can be selected for


comparison from the drop-down list (the content of the list depends on
what is selected in the Client/Vendor rates parameter, i.e. if the Client
flag is checked, only client products are shown in the drop down list;
and only vendor products are reflected in case the Vendor flag is
checked accordingly). The product needs to exist in the system i.e.
you have to fill it with the rates you want to analyze before you can
actually start the analysis; naturally you can analyze one and the same

product multiple times. If you just want to run a one-time rate analysis
session for a set of rates that exists as an Excel ratesheet, you can
choose the Analysis option in the rate import setup please keep in
mind that you will have to reimport the ratesheet into the system
should you want to run the analysis for it again.

Analysis type: in the current version only the Rate comparison mode is
available, the Potential margin mode allowing you to automatically
reveal the potential buy&sell opportunities based on the recent traffic
patterns is under development.

Order vendors by: reserved for future use in the Potential margin
analysis.

Rates valid at: this parameter adjusts the moment of time for which the
compared rates must be effective;

Traffic stats for: as inVoice collects breakout stats (such as ASR, ACD
and traffic volume), it is also useful to take the stats into account during
the analysis (for example, even if the carrier under consideration has a
better price for some destination but you observe an extremely low
ASR/ACD on the route, it is unlikely that you will be able to use it). So
this parameter defines the period of time the stats for the compared
breakouts are shown for in the analysis results;

Existing vendor breakouts to include: this parameter defines how


breakouts with a different number of digits are to be handled (i.e.
whether it is necessary or not to include into the scope of the report
longer or shorter breakouts of the existing partner products, or just
breakouts of equal length. For example, if you would like the system to
map a short breakout (e.g. 79) in the product under analysis and a
longer sub-breakout of that short code (e.g. 7910) in a product that
already exists in the DB, you need to check the Longer breakouts flag).
When checking a certain dial code, the dial code mapping algorithm also
looks around to check other related breakouts ion the left and right
sides of the comparison to make sure no incorrect mapping happens.
E.g. if the product under analysis contains 79 and 7910, while one of
the existing products has 79 and 791, the straightforward (and
incorrect) mapping would look like 79 79, 791 and 7910 791, while
the correct way to map in this case is 79 79 and 7910 791.

Only breakouts with volume greater than X Min: this parameter


specifies the volume that the breakouts should have for the selected
time period (defined by the Traffic stats for parameter) to be analyzed.

Destination: this parameter allows you to define a list of destinations for


which the breakouts should be compared.

Destination matching: this parameter helps to fine-tune the report by


means of selecting the most appropriate mode of destination name
matching (this is primarily required to prevent a mix-up of proper and
mobile codes having very different pricing, so that a check of the
destination name is required if different-length breakouts are matched

between the new vendor and some of the existing ones). E.g., if the
Longer breakouts option is selected in the dial code mapping settings,
there may be a case when the system will map codes like 7 (Russia
proper) and 79 (Russia mobile); so it is important to set the Destination
matching parameter to Country + Type (or Country + Type + Area) to
avoid that.

Dial codes: this parameter allows you to define a list of particular


breakouts to analyze.

There is also a set of Carrier products to compare parameters that in a few


ways defines the list of the existing products that will be involved in the rate
comparison.

The available options belong to one of the two analysis modes:

Auto mode: in this case the partner product under consideration (be it
a vendor or a client one) is to be compared with vendor products by
default with all existing ones. Though the total number of vendors
involved into analysis is not limited by default (for each breakout the
system brings in every vendor product having the breakouts which
satisfy the parameters set), the user can confine the resulting report to
a desired number of vendors per dial code using the Limit analysis to X
products parameter (by default the limit is set to five best vendors per
dial code). Another option here is Product type allowing you to conduct
the comparison only among the products of the selected type e.g.
only Premium.
Manual mode: this mode allows you to make a list of particular partner
products taking part in the comparison. The contents of the list depend
on which flag is checked in the Product selection parameter, i.e. if the
Client flag is checked only client products are shown in the product
multi-picker, and only vendor products are reflected in case the Vendor
flag is checked accordingly.

The Tasks grid contains the information about the recently conducted analysis
jobs such as:

Task ID for your reference;


Task creation date;
Task status;
User who created the task.

The results of an analysis task are opened in a separate tab by clicking on the
view link in the Details column.
Every task can be restarted via the Restart task option (the blue arrow
button in the bottom part of the Tasks grid). Once the button is used, the
Analysis form takes the parameter values that were originally used for the
restarted task, so you can make some changes or start the task again without
any modification.
Analysis result tab

As soon as you click on the View link of any task in the Details column of the
Tasks grid, the analysis results will be opened in a separate tab. The tab is
split into two parts: the filter and the analysis result table itself.
Via the set of filters you can sort out the analysis results on the following
bases:

Suppliers rank up to: this filter allows you to display only those rates
where the product under consideration (also referred to as the Source
product) is ranked among the number of products defined by this filter
value (for example, if you compare some rates for a particular
destination and you would like to see only those where the source
product has a price among the best 5 prices for that destination in the
system, you need to set the filter to 5);
Country;
Area;
Type;
Destination;
Dial codes.

For the US domestic rates in is also possible to filter the results by:

State;
LATA;
OCN;
NPA;
NXX;
Block ID;

Jurisdiction.

The result of the analysis is a table that on the left side contains the list of
dial codes and rates from the product under evaluation, and on the right side
the list of products used for comparison: either manually picked by the user
or automatically selected by the system (the total number of compared
products may vary between 1 and 5).

For each report line (which contains one dial code from the product on the left
side) the system sorts the products on the right side ascending by the price
which is pretty much the same as what is often called the LCR report (but
with a somewhat smarter dial code mapping). The most important column
from the standpoint of evaluation of the left-side product rates is the Rank
column it shows where the evaluated product rate stands in the LCR list of
rates available for that dial code (or other dial codes mapped to it) in the
system.

Since each table cell (each product on the right side) may contain multiple
dial codes inside (as the dial code mapping may link one dial code on the left
side with several dial codes in each product on the right side), the top level of
the report only shows the product name and the minimal rate from that

product (but not the dial code). If a particular product on the right side has
more than one rate (dial code) mapped to the left-side dial code, the system
uses the least expensive of them to determine the comparison result.
Alongside with the product name and the minimal rate, for each right-side
product the system also shows the result of the comparison with the left-side
rate in two formats: absolute (Gain, USD) and relative (Gain, %). Also the
system uses the red and green colours to highlight the comparison results if
the result of comparison of the rates on the left and right sides is in the
System Owner's favour (i.e. in case of the vendor-vendor comparison the rate
on the left side is lower, and in case of the client-vendor comparison the
rate on the right side is lower), the system will use the green colour for the
respective table cell on the right side, otherwise the cell will be marked red.
By clicking on a particular carrier product on the right side of the report it is
possible to see the available groups of the dial codes from that vendor
product involved into the comparison in this particular case. For example, for
international products rates are grouped by Country, Destination and Dial
Code, while US Domestic rates are grouped by jurisdiction-related
parameters. In this way the system keeps the output format of the dial code
lists as readable as possible you can drill down to separate dial codes
without expanding the entire dial code list for that carrier (which may get
extremely large in some cases e.g. if you compare an International product
on the left side that has just one rate for the entire US, and a US Domestic
product with over 100K US rates on the right side).

Rate Plan Creation


The rate plan creation module makes it easy to automatically generate
customer rate plans on the basis of the available vendor offers and the recent
traffic statistics.
The key idea embedded in the module is to provide a very high degree of
flexibility in terms of selection of the vendors whose rates will be used to
calculate customer pricing for specific destinations (this is achieved by means
of user-defined patterns in the Rule setup section), as well as to ensure the
maximum flexibility of the markup level definition (covered in the Markup
setup section).
Calculation of client rates involves two big parts: setting up vendor cost rules
and taking care of the markup setup.
Cost rules
A client rate plan cannot be generated with a good precision for every rate
unless there is a way to flexibly (sometimes even on the level of separate
breakouts or more frequently destinations) define the list of vendors
whose rates will be used as the basis for the customer rate calculation, as well
as the algorithm for such a calculation. In particular that concerns creation of
products for quality-sensitive clients, as in that case one obviously has to be
very selective as far as the vendors are concerned.
Besides, it makes a lot of practical sense to apply distinct approaches for
customer rate calculation depending on the nature of every customer
breakout presence/absence of client traffic within a recent time interval,
availability of vendors with sufficient route quality etc. For that purpose the
following gradation of client breakouts has been introduced for the vendor
selection process (Route type parameter):
active: the client whose rate plan is being created (in case of a product
belonging to the System Owner all clients with products inherited
from this product) has sent a substantial amount of traffic (defined by
the Inactivity threshold parameter in the Rate compilation interface) to
the dial code under evaluation within a recent time period (defined in
the rate compilation parameters);
inactive: the recent volume of traffic from the client (clients) is less than
the Inactivity threshold value in the rate compilation properties;
default: a breakout not affected by any other rules, irrespective of the
recent traffic presence.
The route type is used as the primary parameter to define a cost rule.
Namely, each breakout from the source client product is checked and
classified as one of the above mentioned types. After that the system checks
if there are any cost rules for that route type, and if it finds at least one, it
takes the specified vendor list and applies the stipulated cost calculation
logics as a result of this, the system knows the cost of the breakout for the
system owner. That way it's easy to define the cost calculation approach for
all client breakouts belonging to the same type by means of just one rule. If

there are multiple rules for one and the same route type, they have to be
different in the destinations (or if the destination is the same then dial
codes) they are valid for.
Naturally, for the system to be able to calculate the rates there must be at
least one cost rule specified normally it is of the default type, so that it will
be able to cover the entire scope of the client breakouts irrespective of their
type.
Below the complete list of cost rule parameters is provided.
Rule name: name of the cost rule (it is recommended to use selfexplanatory names to make it easier to use them in the long run).
Route type: the client breakout type the rule applies to (see above).
Vendors to analyze: total number of least-price vendors to be taken into
account when calculating the cost base.
Cost rule: the algorithm to calculate the cost of the breakout for the
system owner; can be one of following:
- Actual cost (for rules with Route type = Active): the calculation is
made on the basis of the rates of the vendors who actually have
taken the client traffic within the last X days (for active breakouts)
or have valid rates for the client breakout (for other route types);
the formula looks like this: C = ((R supp1*Vsupp1)+(Rsupp2*Vsupp2)+...+
(RsuppX*VsuppX))/Vtotal, where is the resulting breakout cost, RsuppX
is the rate of vendor , VsuppX is the volume of traffic for the
breakout that has been handled by vendor X, V total is the systemwide volume of traffic to the breakout;
- Average cost: an average of rates of X least-cost vendors, where
X is defined by the Vendors to analyze parameter.
- Worst of analyzed active vendors (for rules with Route type =
Active): rate of active supplier #X on the list of least-cost active
suppliers, where X is defined by the Vendors to analyze parameter
(i.e. if you need to take the rate of the cheapest active vendor,
the Vendors to analyze parameter needs to be set to 1).
- Worst of analyzed vendors: same as the previous item, but
instead of just active vendors all vendors with valid rates are
eligible for selection, no matter whether or not they have
processed any traffic from that customer recently.
Destinations: one or several destinations from the source client product
that are supposed to be covered by the rule (this can be used if you
need to treat a group of destinations in a special way different from that
for all other breakouts of the same type).
Dial codes: one or several dial codes (out of the list of the client
breakouts included into the selected destination) that the rule only
applies to (this is to further narrow the scope of the rule to make it
more precise). Dial code masks (with the * symbol at the end) are

also supported.
Vendors: the manually defined list of vendor products (not) to be used
for rate calculation can be inclusive or exclusive; by default set to All.
Product type: here you can set up a list of vendor product names as
they are called inside the system (e.g. Premium, Gold etc.), so that only
products matching one of these names will be used for cost calculation.
Default vendors: one or several vendors to be used in case the system
fails to find any vendor matching the filters stipulated in the rule (e.g. if
the ASR threshold is too high etc.). Such vendors need to be stipulated
to fill in the holes in the customer product so typically these vendors
are big expensive carriers able to provide termination to any
destination.
ASR, %: ASR threshold for the system to apply as a filter to the supplier
list.
ACD, mins: ACD threshold for the system to apply as a filter to the
supplier list.
NER, %: NER threshold for the system to apply as a filter to the supplier
list.
PDD, secs: post-dial delay threshold for the system to apply as a filter
to the supplier list.
Vol., mins: the traffic volume threshold for the system to apply as a
filter to the supplier list (the system will take only suppliers with a
traffic share of not less than X% of the total volume for the breakout).
Increase: defines whether the system is allowed to increase the current
customer rate for a given breakout.
Decrease: defines whether the system is allowed to decrease the
current customer rate for a given breakout.
Markup scheme: the name of the markup scheme from the Markup
setup section that will be used for the client rate calculation in this rule.
Destination rate: this parameter tells the system how to treat cases
when there are multiple rates on the side of a particular vendor
matching one client breakout - e.g. if the client has 79 (Russia mobile)
and the vendor has 7905 (Russia mobile Beeline), 7910 (Russia mobile
MTS), 7920 (Russia mobile Megafon). There are two variants either to
blend all these vendor rates (the Average option) or to take the highest
of them (the Maximum option).
Markup setup
The system provides the maximum possible level of flexibility in terms of
setting up the markup level to be added to the route cost. You can specify
absolute or relative values for the markup and even make them different for
different cost intervals e.g. if the cost is less than USD 0.03, the markup
may be 10%, while for costs between USD 0.03 and USD 0.10 it should be

absolute and equal to USD 0.005. And what's more, it is possible to join
single rules into schemes and then refer to a scheme when setting up a cost
rule.

The markup setup rules have the following parameters:


Rate start: left border of the cost interval (inclusive).
Rate end: right border of the cost interval (exclusive).
Type: type of the markup value (absolute or relative).
Value: markup value either in percent or in the base system currency
(depending on the value of the Type parameter).
Scheme: the name of the markup scheme (may be referred to in a cost
rule).
Please make sure that the cost ranges you define in different markup rules
within one scheme don't overlap or leave holes i.e. don't create rules for
cost ranges like 0 0.1 and 0 0.08 for one and the same markup scheme
(as there will be a conflict between them) or like 0 0.1 and 0.15 0.2 (if
you just create these two rules in a scheme, there will be a gap between 0.1
and 0.15 that won't have a markup rule defined).
Rate compilation
The rate compilation is where you finally make the system perform the main
task calculate rates for the selected client product. Naturally, the product
needs to already contain some rates if it's the first time you've created rates
for a specific client product, you just need to import a ratesheet with the right
set of dial codes (prices don't matter) in advance, so that the system knows
which breakouts it needs to calculate the pricing for.
The following parameters are available when you create a rate compilation:

Stats period, days: the time frame for which the stats is checked
(please note that the system counts only those days for which the
corresponding analytical cubes are fully calculated);
Recent period, days: number of days before today for the system to
check the presence/absence of client traffic for as it may happen that
if checked on a larger scale (say, a week), a particular client dial code
will have a decent total amount of traffic, but if you look at the last few
days, you will see that the customer has stopped sending traffic to that
code; in such a case the system will give out an alert in the table of
compiled rates.
Effective date: date/time when the new rates will become effective.
Client product: name of the client product to calculate the rates for.
Inactivity threshold: minimum number of minutes for the period defined
in the Stats period, days parameter for a client breakout to be
considered active.
Vendor breakouts: this group of options defines which vendor breakouts
will be considered when searching for available vendor rates. By default
the system takes fully matching breakouts on the vendor side (e.g. if
the customer has 791, vendors also need to have exactly 791). If the
longer flag is set, the system will also consider more detailed breakouts
on the vendor side (e.g. it will also involve breakouts like 7910 or 7915
in the example above); similarly if the shorter flag is set, the system
will also consider shorter dial codes on the vendor side (e.g. 79 in the
same example).
Matching type: this parameter works as an add-on to the Vendor
breakouts one, refining the dial code mapping approach by means of
bringing the destination name into comparison. For example, if
matching by Country is selected, the system will map dial codes like 7
(Russia proper) and 79 (Russia mobile); to avoid that, it is
recommended to use the Country + Type or Country + Type + Region
options.
Selected rules: here you can choose which cost rules out of the entire
pool existing (the All rules list) will be used in this particular
compilation.

Working with compiled rate plans


After a compilation has been started, it is shown as a task in the Recent task
list in the top-left part of the interface, the following details are available
there:
Result ID: identifier of the rate compilation task.
Job created: timestamp of the rate compilation creation.
Client product: name of the client product whose rates were used as the
basis for the compilation.
Status: intermediate or final status of the compilation; it always comes
to error or ready, showing interim updates on the way.
Details: for tasks that were executed successfully that field shows the
total time elapsed, otherwise it will contain an error message.
User name: the name of the user who ran the job;

Any of the previously compiled tasks present on the list can be restarted by
means of the Restart task button.
Once a task is selected in the recent task list, its parameters are displayed in
the Task details tab on the right.

The table in the bottom part of the screen shows the detailed info on the
rates compiled (for successfully executed compilations only).

The table with the compilation results provides the following data (columns
marked with * are only shown when the Show more columns flag is set):
Dial code: dial code from the selected client product.
Rule: name of the cost rule that was triggered for the dial code.
Destination: name of the destination the dial code belongs to.
Client CSCD*: client-specific destination name (if available) from the
client rate for the dial code (may be different from the system
destination name).
Route type: type of the cost rule triggered (active, inactive or default).
Client rate: current client rate for the dial code.
Client volume*: total volume of the client traffic through the dial code
over the period of time stipulated in the compilation properties.
Client vol. (last days)*: total volume of the client traffic through the dial
code over the time interval stipulated by the Recent period, days
parameter of the compilation.
Minimum rate*: the lowest supplier rate available for a dial code
matching the client dial code.
Best vendor rate*: the rate of the supplier who took the biggest share
of the client traffic through the dial code over the period of time
stipulated in the compilation properties.
Cost base: cost base of the client dial code calculated as set in the
respective cost rule.
Markup: markup to be added to the cost base as set in the markup
scheme linked to the cost rule that was triggered for the client dial
code.
New rate: new client rate value.
Change type: direction of the rate change.
Warnings: one or several messages the system has for the dial code.
The following messages may appear:
- Current route cost higher than previous client rate
- Default vendor used

Inactive client destination


Just one qualifying vendor
No matching vendor
No qualified vendors
No traffic from client for last X days
No vendor statistics for destination
Rate change greater than allowed
Rate not compiled
Rate of vendor with biggest volume higher than compiled client
rate

When a particular line in the rate table is selected, the system shows all
vendor breakouts involved in the mapping for that client dial code in the
Involved vendor breakouts tab.

The following details are available for each vendor breakout:


Vendor product: name of the vendor product.
Dial code: vendor dial code.
Rate 1-5: prices (schedule-based for International products and
jurisdiction-based for US domestic products) for the vendor dial code.
Volume: total volume of the client traffic through the vendor dial code

over the period of time stipulated in the compilation properties.


After the rate generation process has finished, you can use Edit selected new
rate to manually correct the desired rates if needed.

The resulting rate table can be exported as an .xls or .csv file for further
tweaking outside the system or for the applying the new rates to the target
customer product afterwards via the Rate import interface.
You can also apply generated rates right here from the Rate compilation
interface using the Apply generated rates option. The following setting can be
defined during the rate import of the new generated rates:

- Product: the target product you would like to import the new
generated rates to;
- Close type (Close all rates, Close all rates for fully matching
breakouts, Close rates for entire destinations): the variant of
joining the rates already existing in the selected product and the
fresh rates being imported (similar to Rate merging options in the
Rate import interface);
As soon as import is done you will see the notification with the results details.

Reference books
Currency exchange rates

InVoice supports multi-currency billing using the exchange rates to translate


different currencies to the system one. Via the Currency exchange rates
interface you can easily manage the set of currencies used by your partners
and keep their exchange rates up-to-date.
In the top part of the interface you can find the System currency indicated.
Below is the list of currencies already used in the system where you can add
new items or edit the existing ones.
The bottom part is the list containing the exchange rates history which can be
filtered by the currency name or the period of validity. There you can add,
delete or change the exchange rates. The records that you have recently
updated but have not saved are marked in red reminding you that you are to
submit the changes before you leave the interface. You can add, delete and
edit the exchange rates not only for the present but also for the past and
future periods of time (Try to avoid unnecessary exchange rates changes for
the past periods as they will cause the statistics recalculation which is a time
and resource consuming procedure, especially for the huge traffic volumes).
The exchange rate value is to be defined as the cost of 1 currency unit in the
system currency. E.g. if the system currency is USD and 1 EUR = 1.4 USD,
the exchange rate for EUR will be 1.4. This tip on how to define the exchange
rates can also be obtained by clicking on the Help button located in the
bottom of the interface.
The automatic currency exchange rates download is also available in the
system. At the moment, the National Bank of Romania XML feed is the only
supported source. For configuring the automatic hourly download, you need
to set the Currency update source field in the System settings as BNR.

Dial codes
The Dial code manager provides you with an interface to the inVoice dial code
reference book. Within this interface you are able to view existing dial codes

(filtering by columns is available), edit them one by one and also add single
dial codes to the database manually.

Note that while you upload rates with the dial codes not yet present in the
system via the Rate import interface, inVoice adds them into the dial code
database automatically (respective messages are produced after the rate
import session, so that the user can visually control the assigned destination
names and correct them if necessary). In this case the destination name is
taken from the nearest shorter dial code match already present in the
reference book. For example, if you are importing a rate for 7910 (which is
Russia mobile MTS) and you only have 79 (Russia mobile) in your dial code
reference book, the system will add 7910 to the reference book as Russia
mobile too. That may become even more of a problem if in the same example
you only have 7 (Russia proper) that will result in a mobile breakout (7910)
registered as proper.
And since destination-specific routing rules directly depend on the dial code
reference book, it is extremely important to make sure that the dial codes get
the right destination names when they are added to the system so please
keep an eye on the messages after each rate import session and check all
occurrences of New dial code added to system reference book. Moreover, it is
important to avoid undefined destination names in the code reference book so
that there are no undefined records in the Analytics interface and the
destination-based statistics is displayed correctly.

Billing increments
The Billing increments interface offers you an opportunity to manage the
billings increments of the rates in the system. Here you can add, delete or
edit the existing billing increments in the x/y/z/D format (where x is the
relatively-free interval (Free interval), y is the first rounded interval (First
interval), z is the second and all the next rounded intervals (Next interval)
and D is the absolute-free interval (Deduct interval)).

The rounding procedure acts now as follows:


1. The system subtracts the absolute-free interval (D) from the original
duration of the call. In case the result is less than zero, the call duration is
taken as zero.
2. In case the duration value from step 1 is less or equal to the relatively-free
interval (x), the billed duration is taken as zero. Otherwise see step 3.
3. In case the duration value from step 2 is less or equal to the first rounded
interval (y), the duration is rounded to the first rounded interval (y)
accordingly. Otherwise see step 4.
4. The duration value from step 3 is rounded up to the nearest whole number
which equals to the y value plus a multiple of the z value.
Please note that the values of the relatively-free interval (x) and the absolutefree interval (D) can be fractional.
For example, the 0/15/15/0.1billing increment will give the following rounding
results:
Raw duration(sec) => Rounded duration (sec)
0 => 0
0.099 => 0
0.1 => 0
0.101 => 15
10 => 15
15 => 15
15.1 =>15
15.2 => 30

Company region
This interface allows creating a list of regional managers and regions sets,
which now are used in the Analytics interface as a new statistical
layout(Client/Vendor Home Region, Client/Vendor Regional Managers).

In the Company region tab the responsible managers are assigned to the
regions.

In the Country region tab the regions from the Company region tab are
matched with the countries from the Dial codes reference book.

Reports
The Reports module is designed in order to provide a way to create custom
reports based on any table in the system DB.

The system is delivered with a pack of report templates covering most typical
needs of wholesale carriers. For user convenience the reports are named
according to a pattern: the first word in the report name describes the
functional area the report pertains to (e.g. Reference, Stats, Finance,
Administration).
When a specific report is selected from the drop-down list, the set of its
parameters is displayed these parameters are naturally individual for each
report. Besides, if the Is recurrent flag is set (that means the report is to run
periodically based on a user-defined schedule), the system will also display
the set of controls to set up the schedule of the report execution and the
email address to send the report to (as a .csv-file). Please note that the
system only sends results of recurrent reports to the recipients in case the
results aren't void.
Pressing the Edit report button brings you to the report editing interface
where it is easily possible to customize the text of the report SQL query and
add new parameters of the desired type (the Add new report field button).

If you need to create a brand new report, this can be done by means of
pressing the New report button the interface is the same as the editing one.
It is possible to cope and paste parts of the SQL code from other reports
available in the system.

Should it be required to have access to a specific scope of data in the system


DB for the purpose of creating a report not yet available in the Reports
module, the description of the necessary DB tables and/or views can be made
available upon request.

Routing
The routing engine provides an opportunity to flexibly handle the way calls
are routed by the switch.

Routing procedure description


The default API used to provide the switching layer with real-time routing
instructions is SIP 300/302. For every call that hits the switch, it immediately
sends a SIP INVITE request to the routing module. The request contains the
data essential for correct authentication of the calling party (the client IPaddress or the trunk group ID, as well as the technical prefix in the Bnumber) and the call destination (the called party number). Based on that
information, the routing system identifies the client (i.e. tries to find a client
POI that matches the calling party data provided in the INVITE; if the POI is
found, the respective product, account and carrier are also identified) and
extracts the E164 B-number (by means of stripping off the client technical
prefix if present).
When the client and the E164 called number have been identified, the routing
system tries to find a valid rate for that B-number in the client product; the
search is based on the longest match principle. If a rate is found, the same
kind of search is performed in all vendor products; the longest match
approach is also used here, so the search result may contain only one rate
per vendor product. In case of US domestic calls, the system also makes
another pass to collect vendor rates for the LRN number (while during the
first pass it gets the rates for the actually dialed B-number). From each
vendor product the system will then select just one of the two rates either
the one for the dialed B-number or the LRN depending on the value of the
Billing number options parameter of the respective vendor product.
During the next stage of routing the system goes through the list of the found
vendor rates one by one and applies account- or agreement-related
restrictions if any i.e. a particular vendor needs to be excluded from routing
because there is no active agreement with it, or the vendor credit limit may
be exceeded (please note that it is possible not to lock vendors in case the
Out credit is depleted. In case you want to turn this option on, please, submit
a request on our Helpdesk.), or no POIs created for that vendor. After that the
vendor list typically gets shorter and contains only the vendors that don't
have any configuration issues or formal reasons to reject the call.
As soon as such a verified list of vendors have been prepared, the system
goes through the list of routing rules to see if there are any that can be
applied for the given customer and B-number; if any such rules are found, it
picks the vendor routes stipulated there (more on the vendor selection
process is told below in the Routing types and Routing rule parameters
sections). Unless the max number of routes per call (defined by the Hnd max
routes per request parameter in the Administration >> System settings >>
Routing module section) has been achieved or the current rule contains the
instruction to stop further route search, the system goes on checking other
routing rules to probably find more vendors for the call.

The rules are checked according to their priority; also by default only rules
within a particular context are tried, unless the user stipulates context
changing logic (please see more on this in the Use of contexts chapter below).
When the route search is completed, the system returns the ordered
sequence of the selected vendors back to the switch in the SIP 300 or SIP
302 message. The switch then tries to terminate the call to the vendors
according to the order they were returned by the routing system in.

Routing rules

All the routing logic is defined by means of routing rules. Each rule is an
instruction from the user to the system as to which vendors need to be used
to terminate traffic from a specific set of client products and going to a list of
destinations or E164 dial codes (by default each rule affects all client products
and all destinations/E164 codes, unless otherwise specified by the
administrator). Vendor selection is done by means of setting up choices: in
general choice #1 will be the first route for the switch to try, choice #2 will be
the second option (in case the first route fails) etc.

Types of routing
From the point of view of the approach to creation of the vendor list in a
particular rule, we can single out the following routing types (these types are
just for the explanation purposes and aren't directly reflected in any system
parameters):

Static routing: the routing choice contains one or several manually


selected vendor products (if more than one vendor product is present in
one choice, percent-based load sharing must be also set up), so that
the routing is only possible between these vendor products. In case the
vandor product has more than one POI, POI
priority
for
that
particular product is calculated dynamically. The calculation is
based on the ASR/NER/ACD (same for the dynamic and combined
routing).

Dynamic routing: instead of a static product list a formula is provided


in the routing choice. The formula has to be resolved as a numeric
value. When the routing rule is triggered for a particular call, the
system builds up a list of available vendors and then for each of them it
calculates the routing weight by means of the formula. The bigger the
resulting weight value is, the higher the vendor will be in the resulting
route list so the vendor with the biggest weight will be used as route
#1. All vendors with negative weights are disregarded. In case the
weight is equal for two or more vendors, the system introduces a small
random value to make their weights different and therefore to assign a
separate position on the route list to each of them.
If necessary, the initial list of vendors to take part in the weight
calculation can be trimmed by means of a condition a logical
expression that is resolved as True or False (if it is False for a vendor
product, that product won't be considered for routing). Conditions may
basically contain the same system parameters and operators as
formulas; the key difference is that the result of the formula must be a
number, while the result of the condition is a Boolean (True/False)
value.

Combined routing: it is possible to set up a formula in the routing


choice, but at the same time make a list of manually selected vendor
products to apply that formula to. That way the routing will be dynamic
(as it will be based on a formula, so the final sequence of vendors for
each call may be different if values of the formula parameters change)
and at the same time static (as the routing will be done among
manually defined list of vendor products only).

It is also possible to use a somewhat more complex type of combined routing:


within the same routing choice you can set up a static product and at the
same time a formula (optionally with a limited set of vendor products to
apply to) and then configure load sharing between the two options (please
see the Share parameter description), so that a certain part of the affected
traffic will be statically routed to the selected vendor product, while the other
part of the traffic will be dynamically distributed according to the formula.

Routing rule parameters


The following parameters are available for configuration in routing rules.
Description: arbitrary text description of the rule. We recommend that
you use easy-to-understand descriptions that will give an immediate
idea about the nature of the rule (e.g. Russia mobile for Client X).
Rule type: type of the rule from the standpoint of its expected general
effect. May be set to Regular routing (standard rules providing vendors
for routing), Block (route-blocking rules), Test (rules aimed at
distributing a small predefined portion of the traffic going through the
system among many or all active vendors in the system in order to
keep their stats up-to-date).

Context: user-defined group the give rule is assigned to. The essence of
the contexts is explained in the Use of contexts chapter below.
Start date: date/time when the rule becomes effective.
End date: date/time when the rule goes out of effect.
Is active: flag defining whether or not the rule is currently enabled.
Disabled rules are disregarded by the routing system.
Priority: numeric value defining the rule priority. Bigger values mean
higher priority. Two or more rules may have the same priority; in this
case, if same-priority rules apply to the same call, the final route list will
be created after sorting the vendors from ALL applicable rules with the
same priority by their weight (while the weight for each vendor is still
calculated by means of the formula in one of the rules).
An important notice: in case there are several rules with the same priority,
static choices will always be on top of the resulting route list even if some/all
of them are not choices #1 in their rules it is done that way because the
system is unable to decide how to otherwise combine static and dynamic
vendors from several rules (static vendors can't be sorted by weight, as they
aren't assigned any weight due to their manual nature). The exact order of
static vendors from several rules will be defined by the Ids of the rules the
smaller the ID is, the earlier the rule is considered and therefore the higher
the static vendors from that rule will be. E.g. if there are two rules (ID=350
and 380) with the same priority, and rule 350 has static choices 1 and 2 while
rule 380 has static choices 2 and 3, the resulting top part of the route list will
look like this: (350:1), (350:2), (380:2), (380:3). This vendor sequence will
be followed by vendors selected dynamically (if there are also dynamic
choices in any of the overlapping rules).
Client product types: list of the types of the client products whose traffic
the rule will route. Can be inclusive or exclusive. Limiting the list of the
affected client products by type instead of the exact product list is often
much more convenient when it comes to separating the routing for
large customer groups please see more on that in the Use of contexts
section below.
Client products: list of client products the rule will affect. Can be used
when it is necessary a rule specific for just one client or a small group of
clients (i.e. where using the Client product types parameter won't help).
Can be inclusive or exclusive.
Vendor product types: list of the types of the vendor products that will
be allowed to take part in the route selection. Can be handy when the
user, for example, wants to limit the possible routing options to vendors
whose products are called Premium and Platinum without actually
enumerating all such vendors one by one.
Destinations: list of destinations that the rule will be effective for. The
destination names are taken from the system dial code reference book.

Can be inclusive or exclusive. it is


Destination section. Supported cases:

possible

to add masks to the

Country, *, * (e.g. USA, *, * )


Country, Region, * (e.g. Russia,Moscow, *)
Country, *, type (e.g. Mexico, *, mobile)
Dial codes: list of E164 codes the rule will be effective for. The filter is
applied to the list of vendor rates to single out only the ones that match
the dial code(s) in the filter. Can be inclusive or exclusive. It is possible
to type/paste dial codes and/or dial code masks (with a star at the end)
through a delimiter (a comma or a semicolon), e.g.: 7, 79, 7831*.
Choice list: list of vendor selection options. There may be one or several
choices per rule, each may contain one or several routing options
(please refer to the detailed description of the choice options given
below).
Probability, %: probability that the rule will be triggered (for rules
belonging to the Test type only). The probability is actually the percent
of calls that will be affected by the rule out of the total scope of traffic
that can be potentially routed by that rule.
Next: this parameter defines whether the routing should be stopped
after the current rule (Huntstop), continued in the current context
(Continue search within same context) or switched over to another
context (Switch to context).
Choice parameters:
- Condition: logical expression based on system metrics that resolves as
True or False for every involved vendor product, so that the product is
or is not considered during the route selection in the current rule.

The system metrics available as condition parameters are enlisted in the


Statistical parameters in routing chapter below. Use of standard
mathematical and logical operations (e.g. and/or, if/then/else etc.) is

allowed. It is possible to verify the syntax of the conditional expression


by means of the respective button in the interface.
- Static options (available for each vendor product added by means of
the Add product button):

- Carrier: vendor name.


- Product: vendor product name.
- Share: share of traffic to go to the given vendor product out of
the total scope of traffic affected by the rule (needs to be used in
case there are two or more products or products and formulas
within one choice). Makes it possible to balance the load between
several vendors.
- Dynamic options (available for each formula added by means of the
Add formula button):

- Vendor products:
routing formula to
this case). Empty
valid rates for the
routing process.

optional list of vendor products to apply the


(no other vendor products will be considered in
by default, which means that all vendors with
E212 the SMS is going to will take part in the

- Formula: routing formula. The formula is an expression that may


contain any of the supported system parameters (e.g. the margin
or the ASR), arbitrary numeric factors and mathematical, logical
or conditional operators (the Check syntax button helps to check
if the formula is set up correctly). For every vendor product
involved in the routing the formula has to resolve as a number
used as the weight of the respective vendor product.
The metrics available as formula parameters are the same as those
in the Condition please refer to the Statistical parameters in
routing chapter below.
- Templates: formula templates allowing difficult-to-type formulas
to be easily reused in new rules.
- Test share: share of traffic passing through the rule that needs to
be divided between all vendors present in the Vendor products list
(if any) in order to keep their stats up-to-date.
- Rate notes: it is possible to set up a special routing instruction for
the system to use only those vendors whose rates contain one of
the enlisted rate notes (e.g. to make the system use only routes
with declared CLI delivery).
- Share: share of traffic to be routed by the formula out of the total
scope of traffic affected by the rule.

- Max routes: define the maximum number of routes for the


rules with dynamic vendor choices. The parameter allows
setting the maximum possible routes quantity from a dynamic
choice.

Statistical parameters in routing


The following metrics can be used as parameters in the Condition or Formula
expressions in routing rules:
-

RND random value between 0 and 1


CLAccBal client account balance in the system currency
CLRate client rate in the system currency
CurTime current time in seconds starting from 01.01.1970
BnumLen number of digits in the B-number
CLProdASR,
CLProdACD,
CLProdNER,
CLProdPDD,
CLProdTV,
CLProdLCT, CLProdCnt ASR, ACD, NER, PDD, total traffic volume,
timestamp of the most recent call (in seconds starting from
01.01.1970), total number of calls for the client product
CLPOIASR, CLPOIACD, CLPOINER, CLPOIPDD, CLPOITV, CLPOILCT,
CLPOICnt - ASR, ACD, NER, PDD, total traffic volume, timestamp of the
most recent call (in seconds starting from 01.01.1970), total number of
calls for the client POI
RuleASR, RuleACD, RuleNER, RulePDD, RuleTV, RuleLCT, RuleCnt - ASR,
ACD, NER, PDD, total traffic volume, timestamp of the most recent call
(in seconds starting from 01.01.1970), total number of calls for the
routing rule
CLProdCodeASR, CLProdCodeACD, CLProdCodeNER, CLProdCodePDD,
CLProdCodeTV, CLProdCodeLCT, CLProdCodeCnt - ASR, ACD, NER, PDD,
total traffic volume, timestamp of the most recent call (in seconds
starting from 01.01.1970), total number of calls for the dial code in the
client product
CLPOICodeASR, CLPOICodeACD, CLPOICodeNER, CLPOICodePDD,
CLPOICodeTV, CLPOICodeLCT, CLPOICodeCnt - ASR, ACD, NER, PDD,
total traffic volume, timestamp of the most recent call (in seconds
starting from 01.01.1970), total number of calls for the combination of
the client dial code and the client POI
RuleCodeASR,
RuleCodeACD,
RuleCodeNER,
RuleCodeAR,
RuleCodePDD, RuleCodeTV, RuleCodeLCT, RuleCodeCnt - ASR, ACD,
NER, PDD, total traffic volume, timestamp of the most recent call (in
seconds starting from 01.01.1970), total number of calls for the
combination of the client dial code and the routing rule
VaccBal vendor account balance in the system currency
Vrate - vendor rate in the system currency
MRG margin in the system currency

VProdASR, VProdACD, VProdNER, VProdAR, VProdPDD, VProdTV,


VProdLCT, VprodCnt - ASR, ACD, NER, PDD, total traffic volume,
timestamp of the most recent call (in seconds starting from
01.01.1970), total number of calls for the vendor product
- VProdCodeASR,
VProdCodeACD,
VProdCodeNER,
VProdCodePDD,
VProdCodeTV, VProdCodeLCT, VProdCodeCnt - ASR, ACD, NER, PDD,
total traffic volume, timestamp of the most recent call (in seconds
starting from 01.01.1970), total number of calls for the vendor dial
code
- VPOIASR, VPOIACD, VPOINER, VPOIPDD, VPOITV, VPOILCT, VPOICnt ASR, ACD, NER, PDD, total traffic volume, timestamp of the most recent
call (in seconds starting from 01.01.1970), total number of calls for the
vendor POI
- VPOICodeASR,
VPOICodeACD,
VPOICodeNER,
VPOICodePDD,
VPOICodeTV, VPOICodeLCT, VPOICodeCnt - ASR, ACD, NER, PDD, total
traffic volume, timestamp of the most recent call (in seconds starting
from 01.01.1970), total number of calls for the combination of the
vendor dial code and the vendor POI
- VPOIASRRank,
VPOINERRank,
VPOIACDRank

Vendor
POI
ASR/NER/ACD rank
- VPOICodeASRRank, VPOICodeNERRank, VPOICodeACDRank Vendor
POI code ASR/NER/ACD rank.
Calculation of the statistical values used in routing is performed in the two
following ways:
- ASR, ACD, NER, PDD: calculated as an exponential moving average
based on a 200-call frame; statistical data older than 2 days (when
there haven't been any calls for the considered entity in the last 48
hours) is considered obsolete and is not used for routing.
- PDD, total volume, total number of calls: calculated on a monthly basis
(starting on the 1st day of each calendar day).
Account balances are updated by the routing system based on the CDR data
that it takes from the CDR mediation layer. Also every 10 seconds the routing
system checks if the DB has any updated balance info, so that the routing can
verify (and if necessary correct) the balances it has calculated on its own.
-

Use of contexts
As mentioned above, a context is a user-defined group of routing rules. Each
rule has to be assigned to a context. There may be as many contexts in the
system as the user likes. The only context that has to be there at all times is
DEFAULT that is where routing of every call always starts.
Switching the route search to another context is possible by means of setting
the Next parameter in one of the rules in the current context (it is not even
necessary to set up any routing choices in such rules just the name of the
target context) to the Switch to context value supplemented with the name of
the target context so that if that routing rule is triggered, the system will

switch to the selected context for further routing. There are no other ways to
make the system to change the current context if it has checked all rules in
the current context and hasn't come across any context-switching rules, the
routing procedure will end.
There are two typical approaches to the usage of contexts in routing:
- Contexts are created for different types of clients (based on client
product types) e.g. Premium or Wholesale. To switch the routing to
the right context for all clients with a particular product type(s) there
have to be respective context-switching rules in the DEFAULT context.
- Contexts are created for individual clients whenever it is necessary to
stipulate one or several per-customer exceptions in the routing setup.
In this case each individual context needs to contain a rule (with the
lowest priority among all the rules in that context, so that the rule will
be the last to be considered by the system) that will be switching the
routing to a context that will be common for all customers that
context must contain routing rules that need to be effective for all
clients.

Call simulation
The call simulation interface gives the possibility to check the actual
behaviour of the routing logic at a selected moment of time by means of
emulating a routing request like the one that is sent to the routing system by
the switch.
To perform the simulation, the user needs to provide a few parameters the
client product, the A number (optional, relevant for US domestic calls because
of the call jurisdiction), the authentication method (IP+tech prefix; trunk
group ID+switch ID; trunk group ID+IP), the client POI, the B-number
(please note that the B-number has to be in the E164 format without a tech
prefix it will be added by the system automatically), the simulation time
(current by default) and the option to include/exclude inactive routes.

The resulting table shows an ordered list of vendor routes with the following
details: routing context, vendor weight (starts with the word FIXED for static
routes naturally no actual weight calculation happens for them), vendor
name, vendor product name, vendor IP-address, B-number with the vendor
tech prefix, ASR, NER, ACD, vendor rate, margin per minute, dial code from
the vendor rate, ID of the routing rule that was triggered for a particular
vendor.

The list of recent simulations makes it possible to view a detailed log of the
simulation (opened in a separate browser tab, the link to each simulation log
can be shared and opened from the outside).

The call simulation log gives the following output describing different steps of
the routing procedure:

=============== route search trace =========================


// initial call data supplied by the user in the call simulation interface
--------- initial data --------------ANI/DNIS
empty / 1234521689987900
callId
confId
srcAddress
192.168.0.5
trunkGroup
setup time
1373285276.35
target time 2013-07-08 16:07:56(1373285276.0)
--------- STAGE 1: looking for client --------------// Client authentication
client searching status - OK
Client POI id <7920>, capacity - 200, enabled True
// Valid client POI found
Client product id <539>, name <Wholesale>, type <Intl>, jur <IND>, dip <NO DIPPING>, indIDX <None>, LATA/state <STATE>, ANI as US
<No>
// Details of the identified client product: ID, name, type (Intl/US domestic), jurisdiction check on/off (off for International
products or US Domestic products with the Check jurisdiction flag not set), LRN dipping on/off, index of the indeterminate price
in the rate (relevant for US domestic products only), use of LATA-based rates on/off(relevant for US domestic products only),
treat/not treat 10-digit A-numbers as US numbers without the leading 1 (relevant for US domestic products only)
Client account id <979>, balance -55105.3485, limit 0.0000
// Client account details: ID, current balance, credit limit
Client operator id <499>, name <test 5>, inbound allowed 1, trusted 1
// Carrier details: ID, name, inbound traffic on/off, trusted/non-trusted
Translated ANI/DNIS - empty / 521689987900
// A and B numbers in the E164 format

Client currency and rate - USD, 1.00000


// Currency of the client account, exchange rate to the system currency
Reference dial code 521689
// Most detailed dial code from the system dial code reference book that matches the B-number
Destination - Mexico, mobile
// Destination the reference dial code belongs to in the dial code reference book
--------- STAGE 2: looking for client rate --------------// Client rate search (based on the longest match principle)
Searching rate for product 539 (intl)check DNIS 521689987900, found 0 rates, current time 1373285276
check DNIS 52168998790, found 0 rates, current time 1373285276
check DNIS 5216899879, found 0 rates, current time 1373285276
check DNIS 521689987, found 0 rates, current time 1373285276
check DNIS 52168998, found 0 rates, current time 1373285276
check DNIS 5216899, found 0 rates, current time 1373285276
check DNIS 521689, found 1 rates, current time 1373285276
check DNIS 52168, found 0 rates, current time 1373285276
check DNIS 5216, found 0 rates, current time 1373285276
check DNIS 521, found 12 rates, current time 1373285276
check rate (None, 12552885, 539, u'521', 1283284800, 1893445200, 114, 1, 0.086000002920627594, 0.0, 0.0, 0.0, 0.0, 0.0, '')
rate #1 - set it as rate to be used
found rate 0.08600, code 521, mode 1, bill inc 0/60/60, cur - USD/1.00000
// Details of the client rate found: price, dial code, price index - 1-3 for international rates (one of three time-based prices)
and 1-5 for US domestic rates (jurisdiction-based), billing increment, currency
--------- STAGE 3: looking for vendor rates --------------// Search for all vendor rates matching the B-number (not yet only best-matching but all)
64 vendor rates found
--------- STAGE 4a: selecting longest-matching vendor breakouts (incoming DNIS) --------------// At this stage the system leaves just one best-matching rate per vendor product, dropping other rates as irrelevant for the
current call
check rate id <13330668> of prod id <584>, code 52 - matched (intl prod), rate #1
check rate id <12082560> of prod id <524>, code 521 - matched (intl prod), rate #1
check rate id <12070697> of prod id <524>, code 52 - non-longest match, dropped
check rate id <11989916> of prod id <521>, code 521 - matched (intl prod), rate #1
check rate id <11980683> of prod id <521>, code 52 - non-longest match, dropped
...
check rate id <13547110> of prod id <100>, code 521 - matched (intl prod), rate #1
check rate id <13547107> of prod id <100>, code 52 - non-longest match, dropped
--------- STAGE 4b: selecting longest-matching vendor breakouts (LRN) --------------// Same as previous stage, but the rate filtering is done for LRN-based rates
--------- STAGE 4c: filtering vendor rates by vendor and account (36 rates) --------------// Applying restrictions (such as credit limits) and checking for missing configuration data (e.g. no POIs, or no valid agreement,
or outbound traffic not allowed) for the vendors whose rates are enlisted, so that only vendors without any obvious problems will
be added to the pool to check routing rules for
Check rate 52 of prod id <584> - , poi list [], chosen poi list []no POI found for prod id <584>, dropped
Check rate 521 of prod id <524> - , poi list [7780], chosen poi list [7780], op <A_V_1> id<482>, bal 292764.05(lim <no limit>), cur
USD/1, rate 0.08030(0.08030), prod <Vender 1> id 524, 1 POIs - added
Check rate 521 of prod id <521> - , poi list [7730], chosen poi list [7730], op <AA_Tata> id<480>, bal 126447.02(lim <no limit>),
cur USD/1, rate 0.07900(0.07900), prod <AA_T_TATA_PRODUCT> id 521, 1 POIs - added
Check rate 521 of prod id <519> - outbound traffic is prohibited for vendor 478, dropped
Check rate 521 of prod id <515> - vendor id 477 traffic stopped by credit: account balance 0.000000 ( limit 0.0000 ), dropped
Check rate 521 of prod id <514> - , poi list [], chosen poi list []no POI found for prod id <514>, dropped
Check rate 521 of prod id <513> - , poi list [], chosen poi list []no POI found for prod id <513>, dropped
Check rate 521 of prod id <512> - , poi list [], chosen poi list []no POI found for prod id <512>, dropped
Check rate 521 of prod id <511> - , poi list [], chosen poi list []no POI found for prod id <511>, dropped
Check rate 521 of prod id <507> - , poi list [], chosen poi list []no POI found for prod id <507>, dropped
Check rate 521 of prod id <506> - , poi list [], chosen poi list []no POI found for prod id <506>, dropped
Check rate 521689 of prod id <492> - , poi list [7490], chosen poi list [7490], op <Test carrier 449> id<449>, bal 41550.71(lim <no
limit>), cur USD/1, rate 0.02500(0.02500), prod <Belgacom-vendor> id 492, 1 POIs - added
Check rate 521689 of prod id <479> - , poi list [7440], chosen poi list [7440], op <Test carrier 445> id<445>, bal -48960.88(lim
<no limit>), cur USD/1, rate 0.01500(0.01500), prod <wholesale> id 479, 1 POIs - added
Check rate 52 of prod id <454> - vendor id 333 traffic stopped by credit: account balance 92552.222881 ( limit 0.0000 ), dropped
Check rate 521 of prod id <428> - vendor id 306 traffic stopped by credit: account balance 71125.355403 ( limit 0.0000 ), dropped
Check rate 521 of prod id <402> - vendor id 277 traffic stopped by credit: account balance 51.919367 ( limit 0.0000 ), dropped
Check rate 521 of prod id <398> - vendor id 272 traffic stopped by credit: account balance 991413.424918 ( limit 0.0000 ), dropped
Check rate 521 of prod id <396> - vendor id 271 traffic stopped by credit: account balance 406.269132 ( limit 0.0000 ), dropped
Check rate 52 of prod id <365> - vendor id 236 traffic stopped by credit: account balance 542.807383 ( limit 0.0000 ), dropped
Check rate 521 of prod id <361> - vendor id 228 traffic stopped by credit: account balance 412.876900 ( limit 0.0000 ), dropped
Check rate 521 of prod id <342> - vendor id 208 traffic stopped by credit: account balance 28187.807834 ( limit 0.0000 ), dropped
Check rate 521 of prod id <329> - , poi list [], chosen poi list []no POI found for prod id <329>, dropped
Check rate 52 of prod id <319> - , poi list [4630, 4640], chosen poi list [4630, 4640], op <Maladi Communications> id<185>, bal
-927.63(lim 0.0000), cur EUR/1, rate 0.00346(0.00346), prod <Wholesale> id 319, 2 POIs - added
Check rate 521 of prod id <285> - , poi list [], chosen poi list []no POI found for prod id <285>, dropped
Check rate 521 of prod id <263> - op <ABC Networks>, outdated POI 3550, poi list [], chosen poi list []no POI found for prod id
<263>, dropped
Check rate 521 of prod id <194> - , poi list [], chosen poi list []no POI found for prod id <194>, dropped
Check rate 521 of prod id <186> - , poi list [1940], chosen poi list [1940], op <Supplier A> id<153>, bal 174364.91(lim <no
limit>), cur USD/1, rate 0.13100(0.13100), prod <Test_A> id 186, 1 POIs - added
Check rate 521 of prod id <178> - , poi list [1890], chosen poi list [1890], op <Test Vendor 3> id<148>, bal 1046912.12(lim <no
limit>), cur USD/1, rate 0.07940(0.07940), prod <Super Premium> id 178, 1 POIs - added
Check rate 521 of prod id <177> - , poi list [1880], chosen poi list [1880], op <Test Vendor 2> id<147>, bal 134380.69(lim <no
limit>), cur USD/1, rate 0.12770(0.12770), prod <Wonderful> id 177, 1 POIs - added
Check rate 521 of prod id <122> - , poi list [], chosen poi list []no POI found for prod id <122>, dropped
Check rate 521 of prod id <100> - , poi list [], chosen poi list []no POI found for prod id <100>, dropped
--------- STAGE 5: looking for routing rules ( 8 routes found ) --------------// Applying routing rules, building up the final list of routes
// Search always begins in the DEFAULT context
context DEFAULT, rule id <1055>, type REGULAR, prio 100 - dropped by INCLUSIVE client product filter
// Rule dropped because the client product isn't on the client product list in the rule
context DEFAULT, rule id <1062>, type REGULAR, prio 75 - dropped by INCLUSIVE dial code filter (INCL)
// Rule dropped because the reference dial code isn't on the dial code list in the rule
context DEFAULT, rule id <1075>, type REGULAR, prio 70 - dropped by INCLUSIVE dial code filter (INCL)
context DEFAULT, rule id <1061>, type REGULAR, prio 10 - dropped by INCLUSIVE client product filter
context DEFAULT, rule id <1051>, type REGULAR, prio 5 - dropped by INCLUSIVE client product filter
context DEFAULT, rule id <1043>, type REGULAR, prio 1 selected
// Rule applied since it is a context-switching rule, no vendors are actually selected here but the search moves to the PREMIUM
context
context PREMIUM, rule id <1073>, type REGULAR, prio 100 - dropped by INCLUSIVE dial code filter (INCL)

context PREMIUM, rule id <1074>, type REGULAR, prio 50 - dropped by INCLUSIVE dial code filter (INCL)
context PREMIUM, rule id <1053>, type REGULAR, prio 12 - dropped by destination filter (INCL)
context PREMIUM, rule id <1044>, type REGULAR, prio 10 selected
// Rule applied, route selection is performed
poolNum 0, pool len 1
// Choice #1, one product or formula inside
choice 0 selected, type DYNAMIC
// Checking the current stats for the rule and the potential vendors, evaluating the formula in the choice, applying the choice
condition to the vendor products/POIs on the list, trying to calculate vendor weights
//Rule stats
cProd 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0, BNumLen 12
cPOI 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
rule 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
// Evaluating potential vendors one by one
// Checking the vendor rate note for compliance with the rule filter
dstProd 524 <A_V_1> <Vender 1> - rate note valid
// Per-minute margin for this vendor, random value (just in case it will be required to determine vendor weight), vendor product
and POI stats
MRG 0.00569999963045, RND 0.0341157842117
vProd 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
dstPoi id 7780 vPOI 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
// Rule condition is True for this vendor, weight calculation, no VoIP protocol defined for the vendor POI
condition True, weight 0.00569999963045, proto None
dstProd 521 <AA_Tata> <AA_T_TATA_PRODUCT> - rate note valid
MRG 0.00699999928474, RND 0.0341157842117
vProd 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
dstPoi id 7730 vPOI 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
condition True, weight 0.00699999928474, proto 1
dstProd 492 <Test carrier 449> <Belgacom-vendor> - rate note valid
MRG 0.0610000025481, RND 0.0341157842117
vProd 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
dstPoi id 7490 vPOI 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
condition True, weight 0.0610000025481, proto 1
dstProd 479 <Test carrier 445> <wholesale> - rate note valid
MRG 0.0710000032559, RND 0.0341157842117
vProd 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
dstPoi id 7440 vPOI 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
condition True, weight 0.0710000032559, proto 1
dstProd 319 <Maladi Communications> <Wholesale> - rate note valid
MRG 0.0825400028843, RND 0.0341157842117
vProd 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
dstPoi id 4630 vPOI 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
condition True, weight 0.0825400028843, proto None
dstPoi id 4640 vPOI 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
condition True, weight 0.0825400028843, proto None
dstProd 186 <Supplier A> <Test_A> - rate note valid
MRG -0.0449999943376, RND 0.0341157842117
vProd 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
dstPoi id 1940 vPOI 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
condition True, MRG -0.04500, skipped
dstProd 178 <Test Vendor 3> <Super Premium> - rate note valid
MRG 0.00659999996424, RND 0.0341157842117
vProd 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
dstPoi id 1890 vPOI 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
condition True, weight 0.00659999996424, proto 2
dstProd 177 <Test Vendor 2> <Wonderful> - rate note valid
MRG -0.0416999980807, RND 0.0341157842117
vProd 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
dstPoi id 1880 vPOI 0.000/0.000/0.000/0/0.000/0 0.000/0.000/0.000/0/0.000/0
condition True, MRG -0.04170, skipped
Route added: 1. DNIS #5735521689987900, POI 172.20.184.193:None
Route added: 2. DNIS #7583521689987900, POI 133.123.122.136:None
Route added: 3. DNIS 521689987900, POI 80.239.172.144:5060
Route added: 4. DNIS 555521689987900, POI 80.239.172.144:5060
Route added: 5. DNIS 521689987900, POI 10.0.0.2:5060
Route added: 6. DNIS 07111917#521689987900, POI 192.168.1.2:1720
Route added: 7. DNIS 521689987900, POI 1.202.36.126:None
// Resulting sorted list of routes to be returned to the switch
+----+------------+-----------+-----------------+--------------+-----------------------+-----------------------+--------+------+----------+----------+------------+
| N |
Context |
Weight |
Vendor
|
Product
|
Vendor POI
|
Called
|
ASR | ACD |
Rate
| Margin | Dial code |
+----+------------+-----------+-----------------+--------------+-----------------------+-----------------------+--------+------+----------+----------+------------+
| 1 |
PREMIUM |
0.08 | Maladi Communic |
Wholesale |
172.20.184.193:None |
#5735521689987900 |
0.0% |
0.0 |
0.00346 | 0.08254 |
52 |
| 2 |
PREMIUM |
0.08 | Maladi Communic |
Wholesale | 133.123.122.136:None |
#7583521689987900 |
0.0% |
0.0 |
0.00346 | 0.08254 |
52 |
| 3 |
PREMIUM |
0.07 | Test carrier 44 |
wholesale |
80.239.172.144:5060 |
521689987900 |
0.0% |
0.0 |
0.01500 | 0.07100 |
521689 |
| 4 |
PREMIUM |
0.06 | Test carrier 44 | Belgacom-ven |
80.239.172.144:None |
555521689987900 |
0.0% |
0.0 |
0.02500 | 0.06100 |
521689 |
| 5 |
PREMIUM |
0.01 |
AA_Tata | AA_T_TATA_PR |
10.0.0.2:None |
521689987900 |
0.0% |
0.0 |
0.07900 | 0.00700 |
521 |
| 6 |
PREMIUM |
0.01 |
Test Vendor 3 | Super Premiu |
192.168.1.2:None | 07111917#521689987900 |
0.0% |
0.0 |
0.07940 | 0.00660 |
521 |
| 7 |
PREMIUM |
0.01 |
A_V_1 |
Vender 1 |
1.202.36.126:None |
521689987900 |
0.0% |
0.0 |
0.08030 | 0.00570 |
521 |
+----+------------+-----------+-----------------+--------------+-----------------------+-----------------------+--------+------+----------+----------+------------+

Customer Portal
The customer portal is an uncomplicated user-friendly interface by means of
which authorized partners can receive direct access to all balance relevant
information concerning their own accounts and can easily replenish them if so
desired.
System owner provides access to the portal by registering a clients user in
Carriers >> Users and setting the Is active flag. After that the user receives
an automatically generated email with the login and password. Relevant
information contained in the system is displayed through the portal interface
to the user reflecting current state of the account and its balance.
System owner may also choose to provide access to the portal through a link
on the corporate website. In this case potential clients can register in the
system autonomously by providing real company name, valid email address
registered in the company domain and setting a password.

Next, an easy three-step procedure activates the account:

Submission of company and contact details (company name,


jurisdiction, and address; user position, first name and last name,
phone number; mandate is set by either Send rate changes or Send
invoices, or both; additional user may be registered any time);

Registration of VoIP POIs (IP address; technical prefix is selected


automatically by the system; parent product and account are selected
from lists restricted by the system owner in System settings >>
Parameters >> Partner portal >> Available currencies and Available
product IDs);

Balance setting (the window is set automatically displaying carrier and


user name, and validity date; balance value if moused over shows
billing period dates and time of the balance update.

At registration new users are granted a welcome bonus of $1 which can come
useful for testing purposes; two buttons are available to the user:
send an email to account manager, who is specified by the system
owner in System settings >> Parameters >> Partner portal >> Default
account manager user ID
top up the balance, where user after specifying amount may select the
Pay Now option, payment is effected through PayPal system)

All the data submitted at the portal by clients is automatically transferred to


the system. Notifications about new registrants and executed payments are
forwarded to email address preset in System settings >> Parameters >>
Partner portal >> Send portal notifications to (may be omitted or several
comma separated addresses may be indicated).

Portal Data
Through the portal client receives access to the following data contained in
the system: call statistics, rates, invoices, payments, user profile, VoIP POIs.
Only the last two sections (User profile and VoIP POIs) may be edited by the
user, the remaining sections are referential.

Statistics

Call statistics may be filtered according to the specified time range and
selected product, or a targeted search may be carried out.
Data

displayed is arranged in a table indicating:


Date (call date)
Country (country of call origin)
Destination (call destination)
Attempts (number of call attempts)
Calls (number of calls)
Volume (traffic volume)
Cost (total cost)

Rates

Rate entries may be filtered according to their effective dates and selected
product, or a targeted search may be carried out
Data displayed is arranged in a table indicating:
Dial code

Start date (rate effective from)


End date (rate effective till)
Increment (billing increment)
Schedule (peak/offpeak schedule)
Notes (any comments)

Invoices

Data on pending invoices is arranged in a table specifying:


Reference code (actual invoice number - for detailed description see
Financial Module >> Invoices >> Invoice Filter)
Start date (starting date of the billing period)
End date (last date of the billing period)
Issue date (invoice creation date - for detailed description see Financial
Module >> Invoices >> Interface Controls >> Lower tool bar )
Due date (payment due date as per the payment period set in Carriers
>> Agreements >> In payment period)
Amount (due amount)
Status (invoice status - for detailed description see Financial Module >>
Invoices >> Invoice Filter)
Notes (any comments)

Payments

Payment records are arranged in a table specifying:


Account currency (set by the system owner in System settings >>
Parameters >> Partner portal >> Available currencies)
Reference code (internal system number of payment record)
Date (date of actual payment execution)
Amount (paid amount)
User profile
Editable section with obligatory fields to be filled in: Company name (name
with which the system identifies under Carriers section) and Company
address. Company jurisdiction might also be indicated.

Contact information includes users job title in the company, first name, last
name, email (serving simultaneously as a login), and a phone number. User
may be authorized to receive invoices, or information on rate changes, or
both, by setting Send invoices or Send rate changes flags. Other users may
be introduced to the system with the Add new person button.

VoIP POIs

List of available VoIP POIs contains the following data:


ID (POI identification number in the system)
Product (parent product)
Currency
IP
Prefix (technical prefix assigned by the system)
User may introduce new POIs to the system by filling in the Add new VoIP
POI tab:

All fields are obligatory:


IP (new IP address)
Tech. prefix (is automatically generated by the system and may be
reset at creation)
Parent product (type of product selected from the list restricted by the
system owner in System settings >> Parameters >> Partner portal >>
Available product IDs)
Account (account selected from the list with currency restrictions set by
the system owner in System settings >> Parameters >> Partner portal
>> Available currencies)

You might also like