MOR X17 Release

15 min read

We are happy to announce the MOR X17 release. The complete list of changes and improvements is below:

Reworked Subscriptions system

We have implemented extended functionality to the Subscriptions. Now it can start any day and can be billed at the start of the period, at the end, or on each day. This change looks simple from the gif picture, but underneath is quite complex and allows much more freedom to deal with Subscriptions. We will make additional improvements in this area in the future.

2FA Implementation

Security improvement to help you protect your system using 2FA

IP Whitelist

It allows you to enter IP addresses which will not be blocked in any case:

Automatic Tariff Import from links in email/site

Implemented functionality that allows downloading rate files from links in the emails and websites. Example: Voxbeam:

Automatic Tariff Import on scheduled date/time

Import not at once, but on the selected date/time

User Bulk Management

Change settings for all Users at once:

Reworked Blocked IP management

A more responsive and more informative way to block some unwanted IPs

Log about Blocked/Unblocked Country

Easy check who blocked which country and when

Device Registration status for Users

Now users can see the registration status of their Devices:

Agreement Date import with User Import

Additional field to ease the migration/import process:

IP Range in Whitelisted IPs

Range support when adding IPs to the Whitelist:

API device_get returns CallerID

Hide finances for Users in Quick Stats

Per-User permission to hide monetary info from their front page:

Unregister the Device/Connection Point

Added the functionality to unregister the device/connection point. A great tool to have in case of troubleshooting:

Same custom password for all Bulk-created Devices

Create all Devices with the same password (if necessary):

Direct links to Alert Object

Get direct links in the Alert Emails for faster navigation and better work-flow (to save time):

LCR management improvements

Show dependant Users, Destinations, Alerts when trying to delete LCRs. Helps to keep track of where these LCRs are linked and how it will impact the configuration if they will be gone.

Option to Delete Rates for Prefixes that are not present in the imported file

It allows you to keep your Tariff clean and avoid mismatches with the Vendor’s rates:

Export Tariff Analysis results to CSV

Later you can use these results in other tasks, like importing back after fixing them:

Email variables for the Tariff Import emails

Get informative emails about your Tariff Jobs:

Tariff Jobs better status

Visible at once the status of the Tariff Job. Is it done, active, or in the waiting state:

Blocked IPs page rework

Page rework for fast load with many blocked IPs, search, pagination, etc:

IP Blocking rework

The script which does all the work is reworked and its performance is increased many many times.

Suggest Strong Password

Quality of life improvement:

PCAP for Resellers

Give permission for the Resellers to see PCAPs on the Call-Info page. Make sure you want to show your Vendor’s IPs to the Reseller because PCAPs are LegA+LegB:

Fax Email improvements

Design improvements to show Fax Email information:

Protection against wrong mass Recording delete

Additional dialog to be sure that the selected period to delete Recordings is the right one:

Integration with CloudPBX

Improved integration with CloudPBX by allowing Resellers to have their own Carriers and manage them easily from the MOR interface.

Time Zone support in Tariff Import

Set the exact Time Zone for the Tariff / Rate Sheet file.

Separate Alerts/Rejects Notifications

Now different emails can be sent on Tariff Import Analysis for Alerts and Rejects.

Reason column in Tariff Import Analysis CSV

See the exact reason why Analysis failed for a particular rate.

CallerID Name on forwarded call

New setting save_did_device_callerid_name_to_db – Default 0. If 1, then MOR will save DID Device CallerID name (if set in Device settings) to database.

Time Zone per Voicemail box

DID Bulk Management Number control

Functionality to avoid huge problems when too big DID range is entered by mistake

Security Settings

Separated Security settings into their own tab for easier management

DID Search count

Shows how many DIDs are selected by the search criteria

Privacy ID with Hide CallerID

PrivacyID header now is added when Hide CallerID functionality is activated.

Failed Tariff Import handling improved

When Automatic Tariff Import fails for some reason, it is retried now up to 3 times. After that, it is considered Failed and the process can proceed with other related Tariff imports without stopping the queue.

Improved Tariff warnings

Not so intrusive warnings when there are active Tariff Jobs:

Manual Backup usability tune

Helps against the misclicks and shows status:

Tariff Jobs/Analysis usability improvements

Many small changes to allow a more streamlined work process:

Tariff Import Rules improvements

Interface fixes and usability tunes:

Tariff Import Inbox rework

Changes to the GUI and no more filter by date to minimize the confusion when emails could not be found due to the wrong selected time period:

Delete All Imported Tariff Jobs

Quickly eliminate unnecessary items:

Delete All Completed Background Tasks

Efficient housekeeping:

Archive CSV default size increased to 1MB (from 0)

This helps in the cases when the file is too large and the download takes a lot of time:

Protected Rate CSV export

Now not possible to click several times and choke the database:

Web Address for Users

New field to save the web address of your Client:

INVOICE change to something else

Some authorities (Australia) insist to see Tax Invoice instead of Invoice for example, so now it can be changed to anything:

Alphanumeric extensions support

Now MOR accepts “numbers” starting not only from digits but also from A-Z letters. This is usually necessary for Mobile Number Portability.

Stop calls on empty Flat-Rate plan

Now system stops Prepaid calls if the Flat-Rate plan is exhausted.

Improved DID import

Now after the import DIDs can be used at once without any additional steps:

Functionality to Merge Destination Groups

For easier management, when you have too much Dst. Groups:

Aggregates search by CLID

Additional option to make a better search. Most useful in the callback calls when real CallerID is saved into CLID field:

Delete Faxes functionality

Now possible to delete Faxes from the system:

Recordings Delete reworked

Delete action speed increased many times

PCAP Capture reworked

Now PCAPs are captured by TShark which should allow avoid problems with PCAP capture

Tariff Import Effective Date from Email Body

Now possible to retrieve the Effective Date from the Email body for imported Tariffs:

Quick Date select for Call List

To speed up the work-flow:

Functionality to add/remove Prefixes from Destination Groups

Using CSV file import:

Number Pools speedup/optimization

A solution to some slow down in a specific edge case:

From Email to Rates Notifications Emails

Custom From field to personalize your emails:

List for Provider to show in which LCRs it is assigned

Quickly find out the necessary relations:

LegA and LegB in API/DB/Call Info

Could be useful in special scenarios for CDR mapping:

Option to pass SIP Headers to the Provider

Resend necessary Headers to the Provider from the User/Device:

Option to control CallerID by matching destination

Find the best match by prefix vs find the best match by the nearest DID:

Pickup Groups support on Proxy

The proper way to handle Pickup Groups in the Proxy system:

Tuned Tariff Link Attachment Rules

Design changes and tunes for usability:

Action Log shows when some IP was blocked/unblocked

Now Accountant can see the Call Flow icon near the DID’s Device (same as Admin)

That would speedup the Device’s Call Flow management:

Completely reworked service availability checking and alerting for Elasticsearch, MySQL Replication, Radius, Freeswitch, Asterisk

Now alerting should be without false positives:

More informative Alert Email Subject

Previously it was: Alert Notification. Currently, it is more dynamic in the form: [Alert] ALERT_NAME for OBJECT_TYPE: OBJECT_NAME


  • [Alert] Test Alert for USER: Kolmisoft
  • [Alert] Device Registration Status for DEVICE: Test Device
  • [Alert] Provider Bilsec for PROVIDER: Test Provider
  • [Alert] System Calls for SYSTEM: system
  • [Alert] Destination Alert for DESTINATION: 370

Balance history before and after the payment to reduce the chance of disagreements with the Clients

Also visible by the Client:

Elasticsearch sync logic rework

A huge internal task, not visible on the GUI, but nevertheless very important to keep the data synchronized perfectly. We moved from 24h sync-window to 1h sync-window to be sure that all data are synced at all times perfectly. It should eliminate the need to delay invoice generation in rare cases.

Device/Provider settings view tune

More logical settings rearranging for better workflow and productivity.

Additional Currency info in Call Info and DIDs pages

Usability improvement that shows currency in which rates and prices are presented on these pages to eliminate any possible confusion.

Device Ringing Timeout change via API

Extended API to change Device Ringing Timeout

New API subscription_create_bulk method

Allows to create subscriptions en masse

API method to get number status if it is covered under the Flat-Rate subscription

More info here.


API method to delete recordings by various parameters


API method to update recording info

Implemented Tariffs by CLIs to handle the European way of charging calls

Implemented Device Registration status for users

Implemented Permission for users to hide financial data in Quick Stats

Implemented User Settings Bulk management

Implemented Password options Random/Custom for Device bulk creation

Implemented Subscription period logic

Implemented Subscription charge everyday logic

Implemented Tariff Import for User Wholesale Tariffs

Implemented CDR autoexport to FTP

Implemented Self-Healing ES Sync Control Script to manage ES-MySQL sync status

Implemented ES control script functionality on non-ES servers

Implemented ES cleanup on Calls Archiving

Implemented API for Autodialer: Change status of a campaign

Implemented API for Autodialer: Enter Numbers in Auto-dialer

Implemented API for Autodialer: Get IVR/poll results in a string

Implemented API for Autodialer: Send “Redial all failed Calls” request

Implemented API for Autodialer: Get Campaign Stats

Implemented API user_details_raw_get

Implemented API subscription_create_bulk

Implemented API user_subscriptions_check_number_status

Implemented APIs recordings_delete, recording_update

Implemented custom debug option for API calls

Implemented Match Destination by Location Group in Combined Rules

Implemented Terminated By column on Last Calls page

Implemented service status checking in the cron

Implemented several ES servers in the multi-server system support

Implemented Tariff download from the link in the email

Implemented Scheduled Tariff Import

Implemented blocking SIP scanners in the iptables

Implemented an option to pass custom SIP Header from Leg A to Leg B

Implemented Destination Group management with CSV file import

Implemented Destination Group Merge functionality

Implemented ‘Delete Rates if not present’ functionality in Partial Update/Tariff Import

Implemented Tariff Import Date with hours support

Implemented advanced logging from the GUI for easier troubleshooting

Implemented an option to set Recording limit in GB vs %

Implemented saving LegA/B Call-IDs to DB and retrieval over API

Implemented custom From in the Rate Notification emails

Implemented Provider info that shows used in which LCR it is used

Implemented Tariff Import Analysis export to CSV

Implemented Whitelisted IP functionality

Implemented call termination on Flat-Rate plan exhaustion

Implemented DID import and activation from CSV file

Implemented CLID field support in Aggregate Reports

Implemented Effective Date from the Emeilo body

Implemented HTTPS support for Cloud PBX requests

Implemented Delete Faxes functionality

Implemented PCAP capture on the proxy server

Implemented new logic for PCAP capture

Implemented permission for Reseller to work with PCAP files

Implemented Mass Email pagination and sending emails to a limited amount of Users

Implemented separate Tariff Import notification emails for Alerts and Rejects

Implemented MNP support for Auto-Dialer and PIN/ANI calls

Implemented 2FA Authentication

Implemented Loading Line to show page load progress

Implemented ES Sync rework for huge speed and stability gain

Implemented Dynamic Flat-Rate into Profit calculation

Implemented Blocked User import

Implemented IP Range in Whitelist IPs

Implemented Call Limiting per User setting


Added DID management functionality for Reseller PRO users

Added field tariff_id to API user_details_get
Added fields src_user_id and dst_user_id to API user_calls_get

Added user_balance_before_payment and user_balance_after_payment to payments_get API

Added Balance Before/After to the Payments Info

Added field subscription_discount_percent to API subscription_create

Added Serbian Dinar RSD support

Added support for non-numerical DIDs

Added additional log for Country IP blocking

Added possibility for the Accountant to assign PBX Pool to the User

Added permission for the Partner to create Subscriptions

Added 3 retries for failed email sending for Automatic CDR Export

Added Call Flow access to the Accountant

Added option to recalculate Invoice for Reseller

Added log for Country blocked/unblocked IPs

Added rate-limiting on iptables in Centos 7

Added additional option for call length limiting in Active Calls

Added additional email variables for Tariff Import emails

Added CallerID Control by Destination tun option to match DID by prefix vs nearest

Added Tariff Import Email variable support to email Subject

Added option to rename ‘Invoice’ text in the Invoices

Added option to delete all Imported Tariff Jobs at once

Added support for Alphanumeric extensions

Added support for partitioning on Rerating

Added 404-page error redirection to a proper error page

Added info about the failed prefixes in the Dest.Group import from CSV

Added an option to show all Emails in the Inbox

Added an option to delete all completed Background Tasks

Added Web Address field in the User details

Added the type of the import to the Tariff Import Job

Added possibility to have a very long email password to use services with long API Keys (SendGrid)

Added in-call transfers in Cloud PBX

Added ES Realtime Check/Fix script

Added quick links for better navigation in Tariff Import windows

Added quick-select options for a date on the Call List page

Added ES, Proxy options to Servers for proper markup

Added option to loosen up PCAP search not matching CallerID

Added Suggest strong Password to the User Edit window

Added Destination Group in Alert Email

Added Privacy: ID with Hide CallerID function

Added Servers Adding for Resellers in Cloud PBX

Added Time Zone support into Tariff Import Rules

Added Reason column into Tariff Import Analysis CSV export

Added an option to manage Time Zone for Voicemail

Added an option to check DID length in DID Bulk Management

Added an option to block all Countries with iptables

Added callerid_control_by_dids in the API device_update

Added grace_time in the API did_details_update

Added Serbia to Blocked Countries list

Added DID Count by search

Added currency information into DID Rates and Call Info pages

Added ringing_timeout into API device_update

Added Aggregates CSV export testing routines

Added Number Pool info on the Number management page

Added CallerID into API devices_get

Added agreement_date import on a User import

Added direct link to object in Alerts

Added fetchmail control to handle failures

Added support for many XLS sheets in Rate Import

Added an option to do not play announcement at the end of DID call

Added Subscription ID and Memo into the Payment Private Comment field

Added Subscription setting – Charge for past


Improved API parameter warning messages

Improved API user_register for reseller, accountant users

Improved API services_get to properly return results

Improved Server Details for ‘other’ type of servers

Improved Servers with Real authentication handling for Cloud PBX devices

Improved Percona script to properly work with replication

Improved CSV export to properly handle escaped symbols

Improved SQL for IVR Actions to properly handle Number Pools

Improved functionality with non-digit numbers to properly support ;user=phone

Improved Subscriptions Report for Periodic Fee and Flat-Rate type subscriptions

Improved Copy Leg A Name to Leg B Number to be activated before Provider Source rules

Improved Recordings for Devices in the Queue

Improved DID call handling in the extensions when a call comes without the DID Number

Improved CallerID presentation in the forwarded calls

Improved automatic Invoice sending for Resellers and Users

Improved CallerID for Fax devices handling

Improved Cron job handling for Tariff Import on several server systems

Improved Tariff Job-status information

Improved Action search functionality

Improved Recording notifications and warnings

Improved notification when blocked User is trying to reset a password

Improved IP banning on failed login attempts

Improved FTP connection mode from passive to passive-active

Improved Alert email notification on registered Devices

Improved Alert email with more information in the email subject

Improved calls rerating with Ghost Time enabled

Improved Tariff Convert script

Improved Email to Tariff conversion script

Improved Integrity Check to skip disabled servers

Improved DID bulk management Terminate functionality

Improved Alert User email sending

Improved Blocked IP visualization in the GUI for better UX

Improved Blocked Countries functionality

Improved SSH security with Fail2Ban on Centos 7

Improved Country Blocking with iptables to work properly on server restarts
Improved Provider hiding with DIDs

Improved core recompile procedure

Improved mail retrieval procedure to minimize log pollution

Improved large call log retrieval

Improved Tariff Import Template handling

Improved seamless Tariff Import procedure

Improved recording copying to the remote server to handle failures

Improved Alert for Device Registration status

Improved recordings_get API to retrieve local call recordings

Improved Tariff Import Jobs to handle failures

Improved custom login form creation and handling

Improved Tariff Import to support messed up prices in CSV files

Improved Tariff Job functionality by allowing to delete Job with status ‘Waiting for confirmation’

Improved logging when Send Email To Admin after API/Balance Update is disabled

Improved email parsing for Tariff Import

Improved DB Backup creation on MySQL v5.7

Improved Tariff Import handling on MySQL timeout

Improved Tariff Import Analysis/Import speed several times

Improved translation selection

Improved Tariff Link Rules, Inbox/Show Source pages for UX

Improved Tariff Import Rule editing permissions when Job is active using this Rule

Improved Number Pool update/retrieval procedure speed several times

Improved PBX User filtering

Improved Payment Gateway configuration menu, removed outdated ones

Improved Tariff Jobs statuses and notifications

Improved Backup create procedure UX

Improved Exception handling in the Tariff Import

Improved Providers tariff representation UX

Improved Tariff Jobs, Inbox, Import Rules, Rate Check, Analysis UX

Improved Archive when the size reaches logic

Improved Recording DB records

Improved Tariff Import log to describe the exact error

Improved Rate export to CSV to avoid several clicks

Improved Tariff Generator functionality

Improved Tariff Import Email sending to avoid duplicates

Improved Recording Bulk Delete functionality

Improved Call Log retrieval procedure

Improved Bulk Recording delete speed (10k recordings 59s vs 0.09s)

Improved Recording handling with unreachable External Server

Improved time selection for Scheduled Tariff Import

Improved hints for Tariff Import Job Status

Improved ES resync for speed and usage

Improved Number Pool import to strip not-printable Unicode characters

Improved email parsing to skip HTML tags for proper data retrieval

Improved Alert Update handling with messes up session

Improved PCAP retrieval for DID-Trunk call flow

Improved some pages to speed up loading when Google services are not reachable

Improved cron scripts install on system update logic

Improved payment created over API handling

Improved IVR Timeout Response minimal value handling

Improved FAX over Email reporting and logging

Improved Settings layout for better UX

Improved Make Tariff LCR functionality

Improved Recording Bulk delete to lower the chance of deleting too much

Improved Blocked IPs page, added pagination and search

Improved Blocked IP to properly handle DROP rules

Improved install procedure to avoid unnecessary check warnings

Improved ES configuration for proper RAM assignment

Improved m2_get_blocked script for speedup

Improved G729 codec visualization in Active Calls from Core

Improved delete_old_calls script to resync only 1h instead 1d

Improvided DID Bulk Management to disallow non-digit numbers and avoid mistakes

Improved Last Calls filter to do not show hidden Resellers

Improved Settings UX

Improved Tariff Import failed Jobs handling

Improved Call Info log parsing to properly avoid HTML tags

Improved Last Calls search to accept Enter as the start of the search

Improved Email Attachment handling with an encoded filename

Improved Limited Paypal Addon notification

Improved Device Bulk Creation speed

Improved CallerID handling on forwarded calls

Improved CLIs search functionality

Improved FTP credential usage logic

Improved calls table structure

Improved speed of several SQLs

Improved IP Location retrieval logic

Improved Attachment encoding and parsing

Improved Device Qualify default value to support more devices

Improved ES install logic

Improved general code quality with cleaning and refactoring

Improved Blocked rate support from the imported Tariffs

Improved Recording delete logic

Improved CDR Import CSV separators handling logic

Improved Recording deleting older than logic

Improved missing session handling

Improved Warning Balance send Email hint UX

Improved device prune procedure to skip proxy servers

Improved Security Settings UX

Improved proxy marking in DB on server type change

Improved by rework

Improved GUI to support several Pickup Groups

Improved long data saving into actions table

Improved the procedure to handle subscription generation failure

Improved Login page translation

Improved Reseller user creation with Cloud PBX

Improved long SQL handling procedures

Improved routing selection on the matching and the longest prefix

Improved calleridpres and subscibemwi field data handling

Improved Device Edit UX

Improved Provider Edit UX

Improved Load Stats data gathering on non-standard locales

Improved HGC 0 handling on the Proxy

Improved API device_callflow_update with several Users

Improved PBX User creation with some symbols in the password

Improved ES timeout to handle huge data-sets

Improved Asterisk peer registration handling

Improved separator guessing and handling in CSV import

Improved invoice generation log with additional data

Improved concurrent core generation on several servers

Improved Strong Password generator

Improved Authorization UX

Improved Rate Search functionality by limiting the max number to 20

Improved dependent Users when trying to delete LCR UX

Improved Background Tasks data retrieval from DB for speedup

Improved Auto-Dialer logging

Improved Archive Calls on AWS functionality

Improved Blocked Rate as -1 handling

Improved ES installation procedure

Improved MOR 200OK+instant BYE handling


Fixed notification email on low Balance during the Subscription payment

Fixed rare case with duplicate Server Devices

Fixed an issue with Warning Balance active when user type changed to Accountant

Fixed upgrade procedure to keep the server status ‘pbx’ during the upgrade

Fixed Centos 7 nodejs packet installation

Fixed email sending from several instances without the From: header

Fixed CallerID representation for the calls to the Cloud PBX

Fixed Backup file rotation

Fixed an issue when Admin was able to assign Flat-Rate to Reseller

Fixed issue when invoices were sent to Reseller Users

Fixed Alerts to properly show the Type and Name

Fixed Rate Import Rules page with the wrong Increment value input

Fixed issue with missing decimals in the PDF Invoice

Fixed issue with troubleshooting email sending

Fixed duplicate Custom Header on Failover Provider

Fixed issue with Reseller Invoice details and rates

Fixed saving correct value to the DB for terminated_by

Fixed wrong date with time-zone calculation on Invoice generation

Fixed fail2ban installation on Centos 7

Fixed rare case with not visible PayPal settings

Fixed Tariff Import Scheduler date picking in the past

Fixed Tariff Import Rule presentation in the Attachment section

Fixed Provider deletion procedure

Fixed Time Period representation in the PDF Invoice

Fixed rare case with prefix import

Fixed error with prefix comparison in the Tariff Analysis

Fixed bug with zero-rate import

Fixed missing DMTF test sound files

Fixed missing Call-ID column in the Queue report for Asterisk 15

Fixed undefined behavior for one case in Combined Localisation Rules

Fixed MNP installation procedure for Centos7/Asterisk 15

Fixed Opus codec not visible for devices

Fixed bad redirect from the Whitelisted IP page

Fixed cron not working in rare cases after GUI update

Fixed cron starting scripts when old instances still running

Fixed CDR import to properly populate some DB fields

Fixed Blocked IPs database structure

Fixed Auto Tariff Import not updating Tariff date value

Fixed user_login API to properly support hash

Fixed sounds installation

Fixed ES options to lock the necessary memory

Fixed bad fail2ban rules which messed up with some traffic

Fixed PAI handling in some edge-case

Fixed double Diversion header in one scenario

Fixed an issue where CDR was missing to the call with dst ‘0’

Fixed an issue with email flood on Asterisk malfunction

Fixed escaping wrong chars in Aggregates CSV export

Fixed From field to properly send server IP, not device IP

Fixed Invoice generation issue just after ES sync period

Fixed DID Summary calculation

Fixed issue with deleted CLIs from imported Devices

Fixed an issue when dialing an invalid extension in IVR

Fixed Whitelisted IP page selection box

Fixed import_device_under_reseller_error problem

Fixed an issue with time zones in the Effective Rate date field

Fixed currency conversion issue with Tariff by Provider

Fixed an issue that allowed to create of duplicate Localization rules over API

Fixed Direction delete procedure

Fixed issue with custom SIP Header visible on LegB

Fixed issue with Effective Date from File Name parsing

Fixed issue with Time Zone in Tariff Analysis

Fixed Localisation rules handling after Copy Leg A Name to Leg B Number

Fixed issue with commas in Active Calls data

Fixed File Name parsing in rare cases

Fixed Automatic CDR export reset issue

Fixed Make Tariff from LCR Providers to CSV rate selection

Fixed Recording checking on the External Server function

Fixed Recording delete API bug with hash formation and notifications

Fixed Tariff Template issues with Minimal Time/Increment

Fixed differences in GUI call price and exported file

Fixed delta applying to the Tariff issue

Fixed XLSX parsing issue

Fixed terminator_IP issue with PCAPs

Fixed an issue with DID Rates when DID created using API

Fixed crash on Subscription creation in a rare case

Fixed an issue with Lima destination creation

Fixed ‘comments_for_user’ doesn’t have a default value issue

Fixed incorrect integer value: ‘false’ for column ‘sold’

Fixed Effective From incorrect format handling

Fixed issue when simple calls marked as DID calls in the Invoice

Fixed currency conversion in Provider Statistics

Fixed an issue with SQL in Last Calls export

Fixed CDR export skipped due to day-light saving changes

Fixed CDR export email From handling

Fixed MySQL argument list too long problem in Tariff Import

Fixed PBX Pools IVR issue

Fixed Workday / Free day rate invalid configuration

Fixed subscription bundle API error

Fixed LCR Provider selection by longest prefix vs best rate

Fixed PCAP size limitation

Fixed Show User Stats with usernames with weird chars

Fixed an issue with Call Traced call logging

Fixed a bug with DID billing logic

Fixed a bug in Subscriptions SQL

Fixed an issue with duplicate file creation on Tariff Import

Fixed missing Callback menu item

Fixed a bug with a bad link to Reseller Pro User Rates

One Reply to “MOR X17 Release”

Leave a Reply

Your email address will not be published. Required fields are marked *