https://wiki.kolmisoft.com/api.php?action=feedcontributions&user=Tomas&feedformat=atomKolmisoft Wiki - User contributions [en]2024-03-29T13:04:19ZUser contributionsMediaWiki 1.37.1https://wiki.kolmisoft.com/index.php?title=Subscriptions&diff=22074Subscriptions2017-03-21T16:12:54Z<p>Tomas: /* Usage */</p>
<hr />
<div>= Description = <br />
<br />
If you want to assign [http://wiki.kolmisoft.com/index.php/Services Service] to a client, you need to make a subscription for that [http://wiki.kolmisoft.com/index.php/Users user]. Only then user can use the service and is monthly, daily or one time charged for the product he gets. <br />
<br><br><br />
== Who can configure and use services? ==<br />
* Creating, editing, deleting subscriptions can be done by Admin, Reseller/Reseller PRO, Partner, and Accountant with permissions. <br />
<br />
* Simple users can see his subscriptions in his Personal Menu: '''Personal details –> Subscriptions''', but cannot edit or delete them. <br />
<br />
* Subscription payments from Reseller's users are only visible to the Reseller, as for payments from Admin's users are only visible to Admin and Accountant.<br />
<br><br><br />
<br />
= Usage =<br />
<br />
Go to '''SETTINGS –> Accounting –> Services –> Subscriptions''':<br />
<br><br><br />
[[File:subscriptions-menu.png]]<br />
<br><br><br />
Here you can see the list of subscriptions and the details of the subscriptions. <br />
<br><br><br />
[[Image:Subscriptions_all_list.png]]<br />
<br><br><br />
By clicking on the icon [[Image:icon_subscriptions.png]] in '''Subscriptions''' page or '''Users list''' you will see all Subscriptions assigned to that User. <br />
<br><br><br />
[[File:Users_subscriptions.png]]<br />
<br><br><br />
Every month a subscription about all subscriptions made in the system during the month is sent to admin. Also resellers' subscriptions are also sent to admin.<br />
<br><br><br />
'''NOTE''' Subscription will be created in [[ System_Time_Zone | System Time Zone]], because of a more simple Subscriptions management. As it is known, Invoices are generated in System Time Zone, and when Subscription is created in the same Time Zone as Invoice is generated, it is more simple to understand, how Subscription will be added to that Invoice. Also it prevents confusion between Admin and Accountant with different Time Zones. <br />
<br><br><br />
===Create Subscription===<br />
<br />
In the list of Subscriptions for specific User you are able to add new Subscription to that just click [[Image:icon_add.png]] '''New subscription''' and you will reach page below:<br />
<br><br><br />
[[File:create_subscription.png]]<br />
<br><br><br />
<br />
* '''Service''' – lets you to select service which you want to subscribe to the User.<br />
* '''Memo''' – For example: if you sell DID, you can make a note of its number here. <br />
* '''Activation start''' and '''Activation end''' – This data interval will be billed in the invoice, but dates before and after this interval will not be billed. A service is billed from Activation Start till Activation End, and from the start till the end of the invoice period. The time period that fits within both the previous periods is the actual period that will be billed. <br />
** '''Until canceled?''' – It is also possible setting ''Activation End'' to '''''Until canceled''''' option. In this case ''Subscription'' will only end, when it is removed or ''Activation End'' option is changed to a specific date (except ''Until canceled'').<br />
* '''No Expiration at the end of a Month''' – active only if [[Flat-Rates]] or [[Dynamic Flat-Rates]] Service is selected. When this option is checked, unused minutes are never reset and User can continue to use his previously assigned minutes for more than a month.<br />
<br />
===Update Subscription===<br />
<br />
Subscription edit page is pretty similar to Creation page:<br />
<br><br><br />
[[File:edit_subscription.png]]<br />
<br><br><br />
Just here you are not able to change [[Services|Service]] type. <br />
<br><br><br />
=== Deleting Subscription ===<br />
<br />
It is not recommended to delete subscriptions, or the user will not be billed for that subscription. If the user stops using a service, set the '''Activation end''' value to the date when he does so.<br />
<br><br><br />
<br />
= Advanced information =<br />
<br />
In this section you can find out how subscriptions works and how users are paid according to their type. <br />
<br />
==== Example of email with subscriptions ====<br />
<br />
Charging for subscriptions.<br><br />
Date: 2012-5<br><br />
1 User: Test User #1(101):<br><br />
Service: Test_periodic_service - 10.0000<br><br />
Service: Test_periodic_service - 10.0000<br><br />
2 User: User Resellers(user_reseller):<br><br />
Service: res_1 - 110.0000<br><br />
<br><br><br />
=== Subscription calculation ===<br />
<br />
Subscriptions are calculated by the following rules:<br />
<br />
* When a Subscription is assigned to the Prepaid user, the price for the first month is deducted from the user's balance instantly (and an appropriate Payment with type = subscription is created).<br />
** If the Prepaid user does not have enough balance to cover this subscription, the subscription fails.<br />
* When a Subscription is assigned to a Postpaid user, no changes are made to his balance instantly.<br />
<hr><br />
<br />
On a first day of every month at 00:10:00 an action is executed which performs the calculations (blocked users are skipped).<br />
<br><br><br />
==== Prepaid users ====<br />
<br />
For Prepaid users, the balance subtracts the Subscription price for this new month.<br />
<br />
A New Payment is created, with type = 'Subscription', to mark the user's balance deduction (only for Prepaid users), the payment will be visible only to the user's owner.<br />
<br />
If a Prepaid user's balance becomes negative, this user is blocked and receives a notification email (as does his owner).<br />
<br><br><br />
=====Allow prepaid users balance to drop below zero =====<br />
<!---This functionality is available from MOR 9---><br />
There is an option to allow or not user balance to drop below zero. Go to '''SETTINGS -> Setup -> Settings -> Various -> Do not allow prepaid user balance drop below zero''': <br />
<br><br><br />
[[File:do-not-allow.png]]<br />
<br><br><br />
If this option is '''not enabled''' - then MOR allows user balance to drop below zero. If this option '''is enabled''' - user is blocked when there is not enough money for a subscription - both user and admin are informed about this by email.<br />
<br><br><br />
<br />
==== Postpaid users ====<br />
<br />
For Postpaid users, the balance subtracts the Subscription price for the previous month.<br />
<br />
If the Postpaid user's balance + credit < 0, he is blocked and receives a notification email (as does his owner).<br />
<br><br><br />
===Subscriptions scheme===<br />
<br><br><br />
[[File:Subscriptions_scheme.png]]<br />
<br><br><br />
* Account type '''Prepaid''' or '''Postpaid''' can be changed in [[User_Details|user details]]<br />
* [[Balance_and_Credit|'''Credit''']] is an amount of money which user [[Balance_and_Credit|is allowed to owe]] you.<br />
'''Example 1''': user balance is -4.00 USD, credit = 5.00 USD. Balance + credit = 1 USD, so user will still be able to call.<br />
<br />
'''Example 2:''' user balance is -4.00 USD, credit = 4.00 USD. Balance + credit = 0 USD, so user will not be able call. <br />
<br />
Credit can be changed in [[User_Details|user details]]<br />
<br />
* '''Balance''' is an amount of money user <u>already</u> paid you, but <u>have not been spent yet</u> on services you provide (can make calls using this money). Current user '''balance''' can be checked in [[User_Details|user details]]<br />
<br />
* [[Subscriptions#Allow_prepaid_users_balance_to_drop_below_zero|Allow prepaid users balance to drop below zero]]<br />
<br><br />
====Example====<br />
<br />
The user is postpaid.<br />
<br />
=====On a first day of his first month:=====<br />
<br />
* User balance is: -75 USD.<br />
<br />
-75 USD is for calls. Also, the user has to pay 475 USD for subscriptions.<br />
<br />
* The system calculates the subscription price and deducts 475 USD from his balance.<br />
* The user balance becomes -550 USD.<br />
* The user gets an invoice for 550 USD.<br />
* He makes a payment of 500 USD.<br />
* The user's balance becomes -50 USD.<br />
<br />
=====On the first day of the next month:=====<br />
<br />
In the next month, the user gets an invoice for calls made over that month + subscription prices in that month.<br />
<br />
-50 USD will be shown on the invoice, but will not be included in the new invoice.<br />
<br><br><br />
= From Accountant =<br />
<br />
* Accountant needs '''See Financial Data''' [http://wiki.kolmisoft.com/index.php/Accountant_permissions permission] to access Accounting menu and '''Subscriptions''' permission to see this page. <br />
<br><br><br />
= See Also =<br />
* [[Services]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=File:Subscriptions_all_list.png&diff=22073File:Subscriptions all list.png2017-03-21T16:12:04Z<p>Tomas: </p>
<hr />
<div></div>Tomashttps://wiki.kolmisoft.com/index.php?title=Subscriptions&diff=22072Subscriptions2017-03-21T15:40:12Z<p>Tomas: /* Usage */</p>
<hr />
<div>= Description = <br />
<br />
If you want to assign [http://wiki.kolmisoft.com/index.php/Services Service] to a client, you need to make a subscription for that [http://wiki.kolmisoft.com/index.php/Users user]. Only then user can use the service and is monthly, daily or one time charged for the product he gets. <br />
<br><br><br />
== Who can configure and use services? ==<br />
* Creating, editing, deleting subscriptions can be done by Admin, Reseller/Reseller PRO, Partner, and Accountant with permissions. <br />
<br />
* Simple users can see his subscriptions in his Personal Menu: '''Personal details –> Subscriptions''', but cannot edit or delete them. <br />
<br />
* Subscription payments from Reseller's users are only visible to the Reseller, as for payments from Admin's users are only visible to Admin and Accountant.<br />
<br><br><br />
<br />
= Usage =<br />
<br />
Go to '''SETTINGS –> Accounting –> Services –> Subscriptions''':<br />
<br><br><br />
[[File:subscriptions-menu.png]]<br />
<br><br><br />
Here you can see the list of subscriptions and the details of the subscriptions. <br />
<br><br><br />
[[Image:Updated_subscriptions.png]]<br />
<br><br><br />
By clicking on the icon [[Image:icon_subscriptions.png]] in '''Subscriptions''' page or '''Users list''' you will see all Subscriptions assigned to that User. <br />
<br><br><br />
[[File:Users_subscriptions.png]]<br />
<br><br><br />
Every month a subscription about all subscriptions made in the system during the month is sent to admin. Also resellers' subscriptions are also sent to admin.<br />
<br><br><br />
'''NOTE''' Subscription will be created in [[ System_Time_Zone | System Time Zone]], because of a more simple Subscriptions management. As it is known, Invoices are generated in System Time Zone, and when Subscription is created in the same Time Zone as Invoice is generated, it is more simple to understand, how Subscription will be added to that Invoice. Also it prevents confusion between Admin and Accountant with different Time Zones. <br />
<br><br><br />
===Create Subscription===<br />
<br />
In the list of Subscriptions for specific User you are able to add new Subscription to that just click [[Image:icon_add.png]] '''New subscription''' and you will reach page below:<br />
<br><br><br />
[[File:create_subscription.png]]<br />
<br><br><br />
<br />
* '''Service''' – lets you to select service which you want to subscribe to the User.<br />
* '''Memo''' – For example: if you sell DID, you can make a note of its number here. <br />
* '''Activation start''' and '''Activation end''' – This data interval will be billed in the invoice, but dates before and after this interval will not be billed. A service is billed from Activation Start till Activation End, and from the start till the end of the invoice period. The time period that fits within both the previous periods is the actual period that will be billed. <br />
** '''Until canceled?''' – It is also possible setting ''Activation End'' to '''''Until canceled''''' option. In this case ''Subscription'' will only end, when it is removed or ''Activation End'' option is changed to a specific date (except ''Until canceled'').<br />
* '''No Expiration at the end of a Month''' – active only if [[Flat-Rates]] or [[Dynamic Flat-Rates]] Service is selected. When this option is checked, unused minutes are never reset and User can continue to use his previously assigned minutes for more than a month.<br />
<br />
===Update Subscription===<br />
<br />
Subscription edit page is pretty similar to Creation page:<br />
<br><br><br />
[[File:edit_subscription.png]]<br />
<br><br><br />
Just here you are not able to change [[Services|Service]] type. <br />
<br><br><br />
=== Deleting Subscription ===<br />
<br />
It is not recommended to delete subscriptions, or the user will not be billed for that subscription. If the user stops using a service, set the '''Activation end''' value to the date when he does so.<br />
<br><br><br />
<br />
= Advanced information =<br />
<br />
In this section you can find out how subscriptions works and how users are paid according to their type. <br />
<br />
==== Example of email with subscriptions ====<br />
<br />
Charging for subscriptions.<br><br />
Date: 2012-5<br><br />
1 User: Test User #1(101):<br><br />
Service: Test_periodic_service - 10.0000<br><br />
Service: Test_periodic_service - 10.0000<br><br />
2 User: User Resellers(user_reseller):<br><br />
Service: res_1 - 110.0000<br><br />
<br><br><br />
=== Subscription calculation ===<br />
<br />
Subscriptions are calculated by the following rules:<br />
<br />
* When a Subscription is assigned to the Prepaid user, the price for the first month is deducted from the user's balance instantly (and an appropriate Payment with type = subscription is created).<br />
** If the Prepaid user does not have enough balance to cover this subscription, the subscription fails.<br />
* When a Subscription is assigned to a Postpaid user, no changes are made to his balance instantly.<br />
<hr><br />
<br />
On a first day of every month at 00:10:00 an action is executed which performs the calculations (blocked users are skipped).<br />
<br><br><br />
==== Prepaid users ====<br />
<br />
For Prepaid users, the balance subtracts the Subscription price for this new month.<br />
<br />
A New Payment is created, with type = 'Subscription', to mark the user's balance deduction (only for Prepaid users), the payment will be visible only to the user's owner.<br />
<br />
If a Prepaid user's balance becomes negative, this user is blocked and receives a notification email (as does his owner).<br />
<br><br><br />
=====Allow prepaid users balance to drop below zero =====<br />
<!---This functionality is available from MOR 9---><br />
There is an option to allow or not user balance to drop below zero. Go to '''SETTINGS -> Setup -> Settings -> Various -> Do not allow prepaid user balance drop below zero''': <br />
<br><br><br />
[[File:do-not-allow.png]]<br />
<br><br><br />
If this option is '''not enabled''' - then MOR allows user balance to drop below zero. If this option '''is enabled''' - user is blocked when there is not enough money for a subscription - both user and admin are informed about this by email.<br />
<br><br><br />
<br />
==== Postpaid users ====<br />
<br />
For Postpaid users, the balance subtracts the Subscription price for the previous month.<br />
<br />
If the Postpaid user's balance + credit < 0, he is blocked and receives a notification email (as does his owner).<br />
<br><br><br />
===Subscriptions scheme===<br />
<br><br><br />
[[File:Subscriptions_scheme.png]]<br />
<br><br><br />
* Account type '''Prepaid''' or '''Postpaid''' can be changed in [[User_Details|user details]]<br />
* [[Balance_and_Credit|'''Credit''']] is an amount of money which user [[Balance_and_Credit|is allowed to owe]] you.<br />
'''Example 1''': user balance is -4.00 USD, credit = 5.00 USD. Balance + credit = 1 USD, so user will still be able to call.<br />
<br />
'''Example 2:''' user balance is -4.00 USD, credit = 4.00 USD. Balance + credit = 0 USD, so user will not be able call. <br />
<br />
Credit can be changed in [[User_Details|user details]]<br />
<br />
* '''Balance''' is an amount of money user <u>already</u> paid you, but <u>have not been spent yet</u> on services you provide (can make calls using this money). Current user '''balance''' can be checked in [[User_Details|user details]]<br />
<br />
* [[Subscriptions#Allow_prepaid_users_balance_to_drop_below_zero|Allow prepaid users balance to drop below zero]]<br />
<br><br />
====Example====<br />
<br />
The user is postpaid.<br />
<br />
=====On a first day of his first month:=====<br />
<br />
* User balance is: -75 USD.<br />
<br />
-75 USD is for calls. Also, the user has to pay 475 USD for subscriptions.<br />
<br />
* The system calculates the subscription price and deducts 475 USD from his balance.<br />
* The user balance becomes -550 USD.<br />
* The user gets an invoice for 550 USD.<br />
* He makes a payment of 500 USD.<br />
* The user's balance becomes -50 USD.<br />
<br />
=====On the first day of the next month:=====<br />
<br />
In the next month, the user gets an invoice for calls made over that month + subscription prices in that month.<br />
<br />
-50 USD will be shown on the invoice, but will not be included in the new invoice.<br />
<br><br><br />
= From Accountant =<br />
<br />
* Accountant needs '''See Financial Data''' [http://wiki.kolmisoft.com/index.php/Accountant_permissions permission] to access Accounting menu and '''Subscriptions''' permission to see this page. <br />
<br><br><br />
= See Also =<br />
* [[Services]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=File:Updated_subscriptions.png&diff=22071File:Updated subscriptions.png2017-03-21T15:36:45Z<p>Tomas: </p>
<hr />
<div></div>Tomashttps://wiki.kolmisoft.com/index.php?title=MOR_API_device_update&diff=22052MOR API device update2017-03-07T12:32:20Z<p>Tomas: /* Parameters */</p>
<hr />
<div>=Description=<br />
<br />
<!---This functionality is available from MOR X4---><br />
[[MOR API]] update existing Device from params. <br />
<br><br><br />
=Usage=<br />
<br />
* Call: /api/device_update<br />
* Methods: POST, GET(if allowed, not recomended)<br />
<br><br><br />
===Parameters===<br />
<br />
Parameters which are '''included''' into hash:<br />
<br />
* '''device''' - device_id. '''Required'''.<br />
* '''authentication''' - 0 stands for "Dynamic (Username/Password)" Device Authentication, 1 stands for "IP Authentication:"<br />
* '''username''' - sets value for Username if device Authentication value is Dynamic. <!--su #12727 ticketu apdaryta kad sitas apram veiktu ir su username ir su device_name parametrais---><br />
* '''host''' - sets value for IP Address if device Authentication value is IP Authentication<br />
* '''port''' - sets value for Port if device Authentication value is IP Authentication<br />
<br />
<br />
'''Note that parameters are shown in the same order as they have to be when generating the hash. Last parameter in a row is API_Secret_Key'''<br />
<br><br><br />
Parameters which are '''not included''' into hash:<br />
* '''[[MOR API hash construction | hash]]''' - SHA1 hash constructed using '''parameters''' which are listed above. Note that parameters are shown in the same order as they have to be when generating the hash. Last parameter in a row is '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.<br><br />
* '''u''' - username for authentication. '''Required'''.<br />
* '''new_location_id''' - location_id.<br />
<!--FROM MOR X5---><br />
* '''callerid_number''' - number.<br />
* '''callerid_name''' - name.<br />
<!--FROM MOR X6---><br />
* '''trunk''' - 0 stand for "No", 1 stand for "Yes", 2 stands for "Yes with ANI".<br />
* '''fax_email_add''' - email address to add.<br />
* '''fax_email_delete''' - email address to delete.<br />
* '''call_limit''' - call limit. Set 0 if you want unlimited sim. calls.<br />
* '''fromuser''' - sets value for Fromuser.<br />
* '''password''' - sets value for Password if device Authentication value is Dynamic.<br />
* '''call_timeout''' - max call duration (in seconds).<br />
* '''extension''' - device extension. Allowed symbols: a-z0-9#*.<br />
* '''pin''' - device PIN. Allowed symbols: 0-9 or empty parameter.<br />
<br />
<br><br />
'''Additional feature''' <br />
<br><br><br />
If API setting '''Allow Resellers to use Admin Localization Rules''' is enabled:<br>Reseller is able to set location inherited from Admin. '''new_location_id''' should be used as a parameter for location.<br />
<br><br><br />
<br />
===Request===<br />
<br />
HTML POST: http://<SERVER_IP>/billing/api/device_update?u=admin&device=2&new_location_id=7&hash=297dab8c386794b2e947d52affb8f576c643569e<br />
<br><br><br />
<br />
===Returns===<br />
<br />
'''Success'''<br />
<br />
<page><br />
<status><br />
<success>Device successfully updated</success><br />
</status><br />
</page><br />
<br><br><br />
----<br />
'''Errors'''<br />
<br />
* <error>Incorrect hash</error> - Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.<br />
* <error>Access Denied</error> - access not allowed<br />
* <error>Device was not found</error> - Device id incorrect or does not exist<br />
* <error>Location was not found</error> - Location id incorrect or does not exist<br />
* <error>Password is too short</error> - Password of device is too short<br />
<br><br><br />
==Examples==<br />
<br />
Change Username/Password authenticated Device to IP authenticated Device:<br />
http://<SERVER_IP>/billing/api/device_update?u=admin&device=51&authentication=1&host=192.168.5.20&port=5060&hash=XXXX<br />
<br />
=See also=<br />
<br />
* [[MOR API]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=MOR_API_device_update&diff=22051MOR API device update2017-03-07T12:31:45Z<p>Tomas: /* Parameters */</p>
<hr />
<div>=Description=<br />
<br />
<!---This functionality is available from MOR X4---><br />
[[MOR API]] update existing Device from params. <br />
<br><br><br />
=Usage=<br />
<br />
* Call: /api/device_update<br />
* Methods: POST, GET(if allowed, not recomended)<br />
<br><br><br />
===Parameters===<br />
<br />
Parameters which are '''included''' into hash:<br />
<br />
* '''device''' - device_id. '''Required'''.<br />
* '''authentication''' - 0 stands for "Dynamic (Username/Password)" Device Authentication, 1 stands for "IP Authentication:"<br />
* '''username''' - sets value for Username if device Authentication value is Dynamic. <!--su #12727 ticketu apdaryta kad sitas apram veiktu ir su username ir su device_name parametrais---><br />
* '''host''' - sets value for IP Address if device Authentication value is IP Authentication<br />
* '''port''' - sets value for Port if device Authentication value is IP Authentication<br />
<br />
<br />
'''Note that parameters are shown in the same order as they have to be when generating the hash. Last parameter in a row is API_Secret_Key'''<br />
<br><br><br />
Parameters which are '''not included''' into hash:<br />
* '''[[MOR API hash construction | hash]]''' - SHA1 hash constructed using '''parameters''' which are listed above. Note that parameters are shown in the same order as they have to be when generating the hash. Last parameter in a row is '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.<br><br />
* '''u''' - username for authentication. '''Required'''.<br />
* '''new_location_id''' - location_id.<br />
<!--FROM MOR X5---><br />
* '''callerid_number''' - number.<br />
* '''callerid_name''' - name.<br />
<!--FROM MOR X6---><br />
* '''trunk''' - 0 stand for "No", 1 stand for "Yes", 2 stands for "Yes with ANI".<br />
* '''fax_email_add''' - email address to add.<br />
* '''fax_email_delete''' - email address to delete.<br />
* '''call_limit''' - call limit. Set 0 if you want unlimited sim. calls.<br />
* '''fromuser''' - sets value for Fromuser.<br />
* '''password''' - sets value for Password if device Authentication value is Dynamic.<br />
* '''call_timeout''' - max call duration (in seconds).<br />
* '''extension''' - device extension. Allowed symbols: a-z0-9#*.<br />
* '''pin''' - device PIN. Allowed symbols: 0-9.<br />
<br />
<br><br />
'''Additional feature''' <br />
<br><br><br />
If API setting '''Allow Resellers to use Admin Localization Rules''' is enabled:<br>Reseller is able to set location inherited from Admin. '''new_location_id''' should be used as a parameter for location.<br />
<br><br><br />
<br />
===Request===<br />
<br />
HTML POST: http://<SERVER_IP>/billing/api/device_update?u=admin&device=2&new_location_id=7&hash=297dab8c386794b2e947d52affb8f576c643569e<br />
<br><br><br />
<br />
===Returns===<br />
<br />
'''Success'''<br />
<br />
<page><br />
<status><br />
<success>Device successfully updated</success><br />
</status><br />
</page><br />
<br><br><br />
----<br />
'''Errors'''<br />
<br />
* <error>Incorrect hash</error> - Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.<br />
* <error>Access Denied</error> - access not allowed<br />
* <error>Device was not found</error> - Device id incorrect or does not exist<br />
* <error>Location was not found</error> - Location id incorrect or does not exist<br />
* <error>Password is too short</error> - Password of device is too short<br />
<br><br><br />
==Examples==<br />
<br />
Change Username/Password authenticated Device to IP authenticated Device:<br />
http://<SERVER_IP>/billing/api/device_update?u=admin&device=51&authentication=1&host=192.168.5.20&port=5060&hash=XXXX<br />
<br />
=See also=<br />
<br />
* [[MOR API]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=M4_Customer_Invoices&diff=22027M4 Customer Invoices2017-02-21T09:03:01Z<p>Tomas: /* XLSX invoice files without Currency names */</p>
<hr />
<div>= Description =<br />
<br />
M2 '''Customer Invoice''' is dedicated for final User of M2, who have to pay for made Calls. Admin can see and manage them in '''ACCOUNTING –> Customer Invoices''', User can reach list of his Invoices and check them from main menu. Despite your settings all values in Invoices are rounded into two digits after comma.<br><br><br />
Invoices are generated automatically according to User's Billing Period (weekly, bi-weekly or monthly).<br />
==Invoices List==<br />
<br />
Invoices can be viewed, created (WIP) or exported to XLSX file in '''ACCOUNTING –> Customer Invoices'''. In the main window, you can see list of all the Invoices.<br />
<br />
All Prices are displayed in particular Invoice Currency. That means that in each line of Invoice Price and Price with TAX will be shown in currency which is written in Currency column. The Currency column tells which currency Invoice was generated with. Also the exchange rate at the invoice generation moment is saved in the database so it may differ from the up to date exchange rate.<br />
<br><br />
Total Price and Price with TAX are calculated into viewing Currency, which you can choose in upper corner of page. In Total price calculation there are used saved exchange Rate of each Invoice.<br />
<br><br><br />
'''Example'''<br />
<br><br><br />
Default system Currency is USD<br />
<br><br />
Invoice A is generated on price = 100 in currency EUR with exchange rate 0.5<br><br />
Invoice B is generated on price = 100 in currency DZD with exchange rate 0.25<br><br />
Invoice C is generated on price = 100 in currency ALL with exchange rate 0.75<br><br />
<br><br />
But now exchange rate are different: EUR - 0.75, DZD - 0.5 and ALL - 1.0. <br><br />
<br><br />
If you want to see Total price(sum of these 3 Invoices) in EUR. For Invoice B and C will be set exchange rate of today, but for invoice A exchange rate will be from that day when invoice was generated (0.5).<br><br />
<br />
Same calculations with other currencies<br><br />
If you want to see Total price in DZD. For Invoice A and C will be set exchange rate of today, but for invoice B exchange rate will be from that day when invoice was generated (0.25).<br><br />
If you want to see Total price in ALL. For Invoice A and B will be set exchange rate of today, but for invoice C exchange rate will be from that day when invoice was generated (0.75).<br><br />
<br><br />
Total price will be 733.3333 USD, or 500 EUR, or 266.6667 DZD, or 700 ALL<br><br />
<br><br><br />
==Invoice Edit==<br />
<br />
Invoice edit is accessed from invoices list.<br />
<br />
Here you are able to see some information of the user and Invoice displayed and also some details of the Invoice can be edited.<br />
<br />
'''Price''' and '''Price with TAX''' are displayed in a currency the invoice was generated with. It will not be changed according to system settings. <br><br />
The '''Exchange rate''' at the invoice generation moment is also saved in the database and displayed in Invoice Edit page. <br><br />
'''Period Start''' and '''Period End''' dates are not affected by time zones: only '''Issue Date''', '''Date Due''' and '''Status changed at''' changes according to the [[GUI_time_zone | time zone]] of the system.<br><br />
<br><br />
Also you are able to refresh Client Details and regenerate xlsx file by pressing '''RECALCULATE''' in particular Invoice edit.<br />
<br><br><br />
<br />
==Invoice Details==<br />
<br />
You can find this page by clicking '''Invoice details''' link in the Invoice Edit page.<br />
<br />
In the Invoice Lines page there is information about destinations, rates assigned to those destinations, calls made to the destinations, total time per destination and price for all the calls made to the specific destination. <br />
<br />
This page can be accessed from Invoice edit page.<br><br />
<br />
In this page you can search by destination prefix. For example: enter ''35567'' and ''Albania mobile'' destination will be displayed.<br />
<br />
Search can also be made with wildcard %. If you enter ''35%'', ''%67'', ''3%7'' or ''%56%'', ''Albania mobile'' will also be displayed.<br />
<br><br><br />
<br />
==Billing Period==<br />
<br />
User can have 3 different Billing Periods:<br><br />
<br />
* Weekly - every week for Monday - Sunday<br />
* Bi-weekly - twice a month for 1 - 15 and 16 - end of month<br />
* Monthly - every month for 1 - end of month<br />
<br />
If you change User's Billing Period, old Invoices will be generated automatically. To disable this feature, you may set variable ''skip_missing_invoices = 1'' in ''/etc/m2/system.conf''. This way only new Invoices will be generated and missing/deleted Invoices will not be re-generated automatically.<br />
<br />
==Invoice recalculate==<br />
<br />
Invoices can be recalculated in Invoice list by selecting check boxes for each Invoice individually and then pressing "Recalculate selected" button or by pressing "Recalculate" button in specific Invoice edit page.<br />
<br />
==Send selected==<br />
<br />
Invoices can be sent to User manually by selecting check boxes in Invoice list for each Invoice individually and then pressing "Send selected" button.<br />
<br />
=User Invoices=<br />
Invoices can be viewed by Users and exported in XLSX format<br />
<br><br><br />
[[File:Fine results.png]]<br />
<br><br><br />
By pressing on DETAILS User will be redirected to Invoice Details page<br />
<br><br><br />
[[File:M2_invoice_edit_2.png]]<br />
<br><br><br />
<br />
= Manual Invoices generation =<br />
Invoices can be generated manually in Invoices list.<br />
<br><br><br />
[[File:Invoice generation.png]]<br />
<br />
= XLSX Invoices =<br />
<br />
XLSX file to export an Invoice is made from your own XLSX format template and information from Invoices main window. <br />
<br><br><br />
===Default XLSX template===<br />
<br />
Create a xlsx file. Template you can prepare as you wish, you can fill it with information of company, draw tables with column names, describe information taken from Invoice main window and so on. Template '''have to be uploaded in MAINTENANCE -> Settings''', INVOICES setting '''XSLX Template'''<br />
* Check '''New XLSX template apply for old Invoices''' if you want to change XLSX template for Invoices which is already generated.<br />
<br><br><br />
===Configuration for Dynamic information===<br />
<br />
When you already have a template for example with all data of your company, with drawn tables and so on, you need to define where should be shown the dynamic information of invoice. How and what information is displayed can be set same '''MAINTENANCE -> Settings''' page. Just need to define cell address in correct format. <br />
<br />
For example "A2", "B15", "AA9"<br />
<br><br><br />
[[File:callc.png]]<br />
<br><br><br />
'''NOTE''': If you do not want to use particular dynamic value just leave empty input for it.<br />
<br><br><br />
===XLSX invoice files without Currency names ===<br />
<br />
In some cases when you want to add additional mathematical formulas in XLSX file, you will need invoice prices without Currency names. In this case you should use setting '''Do not show currencies in XLSX Invoices''' in<br />
'''MAINTENANCE -> Settings'''. <br />
<br />
<br><br />
[[File:Invoice setting.png]]<br />
<br><br></div>Tomashttps://wiki.kolmisoft.com/index.php?title=M4_Customer_Invoices&diff=22026M4 Customer Invoices2017-02-21T09:02:35Z<p>Tomas: /* XLSX invoice files without Currency names */</p>
<hr />
<div>= Description =<br />
<br />
M2 '''Customer Invoice''' is dedicated for final User of M2, who have to pay for made Calls. Admin can see and manage them in '''ACCOUNTING –> Customer Invoices''', User can reach list of his Invoices and check them from main menu. Despite your settings all values in Invoices are rounded into two digits after comma.<br><br><br />
Invoices are generated automatically according to User's Billing Period (weekly, bi-weekly or monthly).<br />
==Invoices List==<br />
<br />
Invoices can be viewed, created (WIP) or exported to XLSX file in '''ACCOUNTING –> Customer Invoices'''. In the main window, you can see list of all the Invoices.<br />
<br />
All Prices are displayed in particular Invoice Currency. That means that in each line of Invoice Price and Price with TAX will be shown in currency which is written in Currency column. The Currency column tells which currency Invoice was generated with. Also the exchange rate at the invoice generation moment is saved in the database so it may differ from the up to date exchange rate.<br />
<br><br />
Total Price and Price with TAX are calculated into viewing Currency, which you can choose in upper corner of page. In Total price calculation there are used saved exchange Rate of each Invoice.<br />
<br><br><br />
'''Example'''<br />
<br><br><br />
Default system Currency is USD<br />
<br><br />
Invoice A is generated on price = 100 in currency EUR with exchange rate 0.5<br><br />
Invoice B is generated on price = 100 in currency DZD with exchange rate 0.25<br><br />
Invoice C is generated on price = 100 in currency ALL with exchange rate 0.75<br><br />
<br><br />
But now exchange rate are different: EUR - 0.75, DZD - 0.5 and ALL - 1.0. <br><br />
<br><br />
If you want to see Total price(sum of these 3 Invoices) in EUR. For Invoice B and C will be set exchange rate of today, but for invoice A exchange rate will be from that day when invoice was generated (0.5).<br><br />
<br />
Same calculations with other currencies<br><br />
If you want to see Total price in DZD. For Invoice A and C will be set exchange rate of today, but for invoice B exchange rate will be from that day when invoice was generated (0.25).<br><br />
If you want to see Total price in ALL. For Invoice A and B will be set exchange rate of today, but for invoice C exchange rate will be from that day when invoice was generated (0.75).<br><br />
<br><br />
Total price will be 733.3333 USD, or 500 EUR, or 266.6667 DZD, or 700 ALL<br><br />
<br><br><br />
==Invoice Edit==<br />
<br />
Invoice edit is accessed from invoices list.<br />
<br />
Here you are able to see some information of the user and Invoice displayed and also some details of the Invoice can be edited.<br />
<br />
'''Price''' and '''Price with TAX''' are displayed in a currency the invoice was generated with. It will not be changed according to system settings. <br><br />
The '''Exchange rate''' at the invoice generation moment is also saved in the database and displayed in Invoice Edit page. <br><br />
'''Period Start''' and '''Period End''' dates are not affected by time zones: only '''Issue Date''', '''Date Due''' and '''Status changed at''' changes according to the [[GUI_time_zone | time zone]] of the system.<br><br />
<br><br />
Also you are able to refresh Client Details and regenerate xlsx file by pressing '''RECALCULATE''' in particular Invoice edit.<br />
<br><br><br />
<br />
==Invoice Details==<br />
<br />
You can find this page by clicking '''Invoice details''' link in the Invoice Edit page.<br />
<br />
In the Invoice Lines page there is information about destinations, rates assigned to those destinations, calls made to the destinations, total time per destination and price for all the calls made to the specific destination. <br />
<br />
This page can be accessed from Invoice edit page.<br><br />
<br />
In this page you can search by destination prefix. For example: enter ''35567'' and ''Albania mobile'' destination will be displayed.<br />
<br />
Search can also be made with wildcard %. If you enter ''35%'', ''%67'', ''3%7'' or ''%56%'', ''Albania mobile'' will also be displayed.<br />
<br><br><br />
<br />
==Billing Period==<br />
<br />
User can have 3 different Billing Periods:<br><br />
<br />
* Weekly - every week for Monday - Sunday<br />
* Bi-weekly - twice a month for 1 - 15 and 16 - end of month<br />
* Monthly - every month for 1 - end of month<br />
<br />
If you change User's Billing Period, old Invoices will be generated automatically. To disable this feature, you may set variable ''skip_missing_invoices = 1'' in ''/etc/m2/system.conf''. This way only new Invoices will be generated and missing/deleted Invoices will not be re-generated automatically.<br />
<br />
==Invoice recalculate==<br />
<br />
Invoices can be recalculated in Invoice list by selecting check boxes for each Invoice individually and then pressing "Recalculate selected" button or by pressing "Recalculate" button in specific Invoice edit page.<br />
<br />
==Send selected==<br />
<br />
Invoices can be sent to User manually by selecting check boxes in Invoice list for each Invoice individually and then pressing "Send selected" button.<br />
<br />
=User Invoices=<br />
Invoices can be viewed by Users and exported in XLSX format<br />
<br><br><br />
[[File:Fine results.png]]<br />
<br><br><br />
By pressing on DETAILS User will be redirected to Invoice Details page<br />
<br><br><br />
[[File:M2_invoice_edit_2.png]]<br />
<br><br><br />
<br />
= Manual Invoices generation =<br />
Invoices can be generated manually in Invoices list.<br />
<br><br><br />
[[File:Invoice generation.png]]<br />
<br />
= XLSX Invoices =<br />
<br />
XLSX file to export an Invoice is made from your own XLSX format template and information from Invoices main window. <br />
<br><br><br />
===Default XLSX template===<br />
<br />
Create a xlsx file. Template you can prepare as you wish, you can fill it with information of company, draw tables with column names, describe information taken from Invoice main window and so on. Template '''have to be uploaded in MAINTENANCE -> Settings''', INVOICES setting '''XSLX Template'''<br />
* Check '''New XLSX template apply for old Invoices''' if you want to change XLSX template for Invoices which is already generated.<br />
<br><br><br />
===Configuration for Dynamic information===<br />
<br />
When you already have a template for example with all data of your company, with drawn tables and so on, you need to define where should be shown the dynamic information of invoice. How and what information is displayed can be set same '''MAINTENANCE -> Settings''' page. Just need to define cell address in correct format. <br />
<br />
For example "A2", "B15", "AA9"<br />
<br><br><br />
[[File:callc.png]]<br />
<br><br><br />
'''NOTE''': If you do not want to use particular dynamic value just leave empty input for it.<br />
<br><br><br />
===XLSX invoice files without Currency names ===<br />
<br />
In some cases when you want to add additional mathematical formulas in XLSX file, you will need invoice prices without Currency names. In this case you should use setting '''Do not show currencies in XLSX Invoices''' in<br />
'''MAINTENANCE -> Settings'''. <br />
<br />
<br><br><br />
[[File:Invoice setting.png]]<br />
<br><br></div>Tomashttps://wiki.kolmisoft.com/index.php?title=M4_Customer_Invoices&diff=22025M4 Customer Invoices2017-02-21T09:02:06Z<p>Tomas: /* XLSX Invoices */</p>
<hr />
<div>= Description =<br />
<br />
M2 '''Customer Invoice''' is dedicated for final User of M2, who have to pay for made Calls. Admin can see and manage them in '''ACCOUNTING –> Customer Invoices''', User can reach list of his Invoices and check them from main menu. Despite your settings all values in Invoices are rounded into two digits after comma.<br><br><br />
Invoices are generated automatically according to User's Billing Period (weekly, bi-weekly or monthly).<br />
==Invoices List==<br />
<br />
Invoices can be viewed, created (WIP) or exported to XLSX file in '''ACCOUNTING –> Customer Invoices'''. In the main window, you can see list of all the Invoices.<br />
<br />
All Prices are displayed in particular Invoice Currency. That means that in each line of Invoice Price and Price with TAX will be shown in currency which is written in Currency column. The Currency column tells which currency Invoice was generated with. Also the exchange rate at the invoice generation moment is saved in the database so it may differ from the up to date exchange rate.<br />
<br><br />
Total Price and Price with TAX are calculated into viewing Currency, which you can choose in upper corner of page. In Total price calculation there are used saved exchange Rate of each Invoice.<br />
<br><br><br />
'''Example'''<br />
<br><br><br />
Default system Currency is USD<br />
<br><br />
Invoice A is generated on price = 100 in currency EUR with exchange rate 0.5<br><br />
Invoice B is generated on price = 100 in currency DZD with exchange rate 0.25<br><br />
Invoice C is generated on price = 100 in currency ALL with exchange rate 0.75<br><br />
<br><br />
But now exchange rate are different: EUR - 0.75, DZD - 0.5 and ALL - 1.0. <br><br />
<br><br />
If you want to see Total price(sum of these 3 Invoices) in EUR. For Invoice B and C will be set exchange rate of today, but for invoice A exchange rate will be from that day when invoice was generated (0.5).<br><br />
<br />
Same calculations with other currencies<br><br />
If you want to see Total price in DZD. For Invoice A and C will be set exchange rate of today, but for invoice B exchange rate will be from that day when invoice was generated (0.25).<br><br />
If you want to see Total price in ALL. For Invoice A and B will be set exchange rate of today, but for invoice C exchange rate will be from that day when invoice was generated (0.75).<br><br />
<br><br />
Total price will be 733.3333 USD, or 500 EUR, or 266.6667 DZD, or 700 ALL<br><br />
<br><br><br />
==Invoice Edit==<br />
<br />
Invoice edit is accessed from invoices list.<br />
<br />
Here you are able to see some information of the user and Invoice displayed and also some details of the Invoice can be edited.<br />
<br />
'''Price''' and '''Price with TAX''' are displayed in a currency the invoice was generated with. It will not be changed according to system settings. <br><br />
The '''Exchange rate''' at the invoice generation moment is also saved in the database and displayed in Invoice Edit page. <br><br />
'''Period Start''' and '''Period End''' dates are not affected by time zones: only '''Issue Date''', '''Date Due''' and '''Status changed at''' changes according to the [[GUI_time_zone | time zone]] of the system.<br><br />
<br><br />
Also you are able to refresh Client Details and regenerate xlsx file by pressing '''RECALCULATE''' in particular Invoice edit.<br />
<br><br><br />
<br />
==Invoice Details==<br />
<br />
You can find this page by clicking '''Invoice details''' link in the Invoice Edit page.<br />
<br />
In the Invoice Lines page there is information about destinations, rates assigned to those destinations, calls made to the destinations, total time per destination and price for all the calls made to the specific destination. <br />
<br />
This page can be accessed from Invoice edit page.<br><br />
<br />
In this page you can search by destination prefix. For example: enter ''35567'' and ''Albania mobile'' destination will be displayed.<br />
<br />
Search can also be made with wildcard %. If you enter ''35%'', ''%67'', ''3%7'' or ''%56%'', ''Albania mobile'' will also be displayed.<br />
<br><br><br />
<br />
==Billing Period==<br />
<br />
User can have 3 different Billing Periods:<br><br />
<br />
* Weekly - every week for Monday - Sunday<br />
* Bi-weekly - twice a month for 1 - 15 and 16 - end of month<br />
* Monthly - every month for 1 - end of month<br />
<br />
If you change User's Billing Period, old Invoices will be generated automatically. To disable this feature, you may set variable ''skip_missing_invoices = 1'' in ''/etc/m2/system.conf''. This way only new Invoices will be generated and missing/deleted Invoices will not be re-generated automatically.<br />
<br />
==Invoice recalculate==<br />
<br />
Invoices can be recalculated in Invoice list by selecting check boxes for each Invoice individually and then pressing "Recalculate selected" button or by pressing "Recalculate" button in specific Invoice edit page.<br />
<br />
==Send selected==<br />
<br />
Invoices can be sent to User manually by selecting check boxes in Invoice list for each Invoice individually and then pressing "Send selected" button.<br />
<br />
=User Invoices=<br />
Invoices can be viewed by Users and exported in XLSX format<br />
<br><br><br />
[[File:Fine results.png]]<br />
<br><br><br />
By pressing on DETAILS User will be redirected to Invoice Details page<br />
<br><br><br />
[[File:M2_invoice_edit_2.png]]<br />
<br><br><br />
<br />
= Manual Invoices generation =<br />
Invoices can be generated manually in Invoices list.<br />
<br><br><br />
[[File:Invoice generation.png]]<br />
<br />
= XLSX Invoices =<br />
<br />
XLSX file to export an Invoice is made from your own XLSX format template and information from Invoices main window. <br />
<br><br><br />
===Default XLSX template===<br />
<br />
Create a xlsx file. Template you can prepare as you wish, you can fill it with information of company, draw tables with column names, describe information taken from Invoice main window and so on. Template '''have to be uploaded in MAINTENANCE -> Settings''', INVOICES setting '''XSLX Template'''<br />
* Check '''New XLSX template apply for old Invoices''' if you want to change XLSX template for Invoices which is already generated.<br />
<br><br><br />
===Configuration for Dynamic information===<br />
<br />
When you already have a template for example with all data of your company, with drawn tables and so on, you need to define where should be shown the dynamic information of invoice. How and what information is displayed can be set same '''MAINTENANCE -> Settings''' page. Just need to define cell address in correct format. <br />
<br />
For example "A2", "B15", "AA9"<br />
<br><br><br />
[[File:callc.png]]<br />
<br><br><br />
'''NOTE''': If you do not want to use particular dynamic value just leave empty input for it.<br />
<br><br><br />
===XLSX invoice files without Currency names ===<br />
<br />
In some cases when you want to add additional mathematical formulas in XLSX file, you will need invoice prices without Currency names. In this case you should use setting '''Do not show currencies in XLSX Invoices''' in<br />
'''MAINTENANCE -> Settings'''. <br />
<br />
<br><br><br />
[[File:invoices_setting.png]]<br />
<br><br></div>Tomashttps://wiki.kolmisoft.com/index.php?title=File:Invoice_setting.png&diff=22024File:Invoice setting.png2017-02-21T09:01:50Z<p>Tomas: </p>
<hr />
<div></div>Tomashttps://wiki.kolmisoft.com/index.php?title=MOR_API_tariff_rates_get&diff=22023MOR API tariff rates get2017-02-21T08:33:25Z<p>Tomas: /* Parameters */</p>
<hr />
<div>=Description=<br />
<!---This functionality is available from MOR 11---><br />
Exports Wholesale Tariff rates<br />
<br><br />
If Admin has checked Allow Resellers to use Admin Tariffs in [[API Configuration]] then using this API Reseller can get Tariffs which belongs to Admin.<br />
<br><br><br />
<br />
=Usage=<br />
<br />
* Call: '''/api/tariff_rates_get'''<br />
* For Backwards-compatibility old name 'get_tariff' is also usable. Call: '''/api/get_tariff'''<br />
* Methods: POST, GET(if allowed, not recomended)<br />
<br><br><br />
===Parameters===<br />
<br />
* u - username for authentication. '''Required'''.<br />
* tariff_id - user tariff id (option for admin or reseller). If not sent, user gets his tariff rates and custom rates.<br />
* user_id - this specifies user id whose custom rates and tariffs to show. When sending user_id parameter tariff_id parameter is ignored. <br />
* additional_retail_info=1 - this includes additional information about retail tariffs, destination names and prefixes for these destinations.<br />
* [[MOR API hash construction | hash]] - SHA1 hash constructed using '''tariff_id''' and/or '''user_id''' and '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.<br />
<br><br><br />
<br />
===Request===<br />
<br />
We have API Secret Key = 456789, tariff_id = 100<br />
<br />
We send:<br />
<br />
HTML POST: http://<SERVER_IP>/billing/api/get_tariff?u=admin&user_id=5&tariff_id=100&hash=71516eea4850f7e0300ac86adf9fb64bca845aa7<br />
<br />
'''* Note that username and password are not included in hash'''<br />
Returning XML is put in file. That file is ziped and returned as a response content.<br />
<br />
Please note that admin can retrieve any tariff, reseller - only users' tariffs and the one assigned to him by admin and user can only retrieve to his own tariff.<br />
<br><br><br />
<br />
===Returns===<br />
<br />
<span style="color:#ff0000">'''IMPORTANT: response is returned in the archived zip format. Make sure to extract it from the zip format first.'''</span><br />
<br><br><br />
<!--<br />
Example in PHP how to extract from GZIP [http://php.net/manual/en/function.gzdecode.php here]. */ <br />
--><br />
<br><br />
'''Success'''<br />
<br />
* Retail:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<destination><br />
<destination_group_name> ''name'' </destination_group_name><br />
<rate><br />
<duration> ''duration'' </duration><br />
<type> ''type'' </type><br />
<round_by> ''round by'' </round_by><br />
<tariff_rate> ''rate'' </tariff_rate><br />
<start_time> ''start time'' </start_time><br />
<end_time> ''end time'' </end_time><br />
<from> ''from'' </from><br />
<daytype> ''daytype'' </daytype><br />
</rate><br />
</destination><br />
</rates><br />
</page><br />
<br />
* Retail with '''additional_retail_info = 1''':<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<destination><br />
<destination_group_name> ''name'' </destination_group_name><br />
<destinations><br />
<destination_name>''Destination name''</destination_name><br />
<prefix>''Prefix''</prefix><br />
</destinations><br />
<rate><br />
<duration> ''duration'' </duration><br />
<type> ''type'' </type><br />
<round_by> ''round by'' </round_by><br />
<tariff_rate> ''rate'' </tariff_rate><br />
<start_time> ''start time'' </start_time><br />
<end_time> ''end time'' </end_time><br />
<from> ''from'' </from><br />
<daytype> ''daytype'' </daytype><br />
</rate><br />
</destination><br />
</rates><br />
</page><br />
<br />
<br />
* Wholesale:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<rate><br />
<direction> ''direction'' </direction><br />
<destination> ''destination'' </destination><br />
<prefix> ''prefix'' </prefix><br />
<code> ''code'' </code><br />
<tariff_rate> ''rate'' </tariff_rate><br />
<con_fee> ''connection fee'' </con_fee><br />
<increment> ''increment'' </increment><br />
<min_time> ''minimal time'' </min_time><br />
<start_time> ''start time'' </start_time><br />
<end_time> ''end time'' </end_time><br />
<daytype> ''daytype'' </daytype><br />
</rate><br />
</rates><br />
</page><br />
<br><br><br />
----<br />
<br />
'''Errors'''<br />
<br />
* Tariff was not found.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>No tariff found</error><br />
</status><br />
</page><br />
<br />
* User was not found by username and password. Use correct username and password. Make sure that username (u) and password (p) are specified.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>Bad login</error><br />
</status><br />
</page><br />
<br />
* Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>Incorrect hash</error><br />
</status><br />
<br><br><br />
<br />
=See also=<br />
* [[API returns garbage]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=MOR_API_tariff_rates_get&diff=22022MOR API tariff rates get2017-02-21T08:32:56Z<p>Tomas: /* Returns */</p>
<hr />
<div>=Description=<br />
<!---This functionality is available from MOR 11---><br />
Exports Wholesale Tariff rates<br />
<br><br />
If Admin has checked Allow Resellers to use Admin Tariffs in [[API Configuration]] then using this API Reseller can get Tariffs which belongs to Admin.<br />
<br><br><br />
<br />
=Usage=<br />
<br />
* Call: '''/api/tariff_rates_get'''<br />
* For Backwards-compatibility old name 'get_tariff' is also usable. Call: '''/api/get_tariff'''<br />
* Methods: POST, GET(if allowed, not recomended)<br />
<br><br><br />
===Parameters===<br />
<br />
* u - username for authentication. '''Required'''.<br />
* tariff_id - user tariff id (option for admin or reseller). If not sent, user gets his tariff rates and custom rates.<br />
* user_id - this specifies user id whose custom rates and tariffs to show. When sending user_id parameter tariff_id parameter is ignored. <br />
* additional_retail_info = 1 - this includes additional information about retail tariffs, destination names and prefixes for these destinations.<br />
* [[MOR API hash construction | hash]] - SHA1 hash constructed using '''tariff_id''' and/or '''user_id''' and '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.<br />
<br><br><br />
<br />
===Request===<br />
<br />
We have API Secret Key = 456789, tariff_id = 100<br />
<br />
We send:<br />
<br />
HTML POST: http://<SERVER_IP>/billing/api/get_tariff?u=admin&user_id=5&tariff_id=100&hash=71516eea4850f7e0300ac86adf9fb64bca845aa7<br />
<br />
'''* Note that username and password are not included in hash'''<br />
Returning XML is put in file. That file is ziped and returned as a response content.<br />
<br />
Please note that admin can retrieve any tariff, reseller - only users' tariffs and the one assigned to him by admin and user can only retrieve to his own tariff.<br />
<br><br><br />
<br />
===Returns===<br />
<br />
<span style="color:#ff0000">'''IMPORTANT: response is returned in the archived zip format. Make sure to extract it from the zip format first.'''</span><br />
<br><br><br />
<!--<br />
Example in PHP how to extract from GZIP [http://php.net/manual/en/function.gzdecode.php here]. */ <br />
--><br />
<br><br />
'''Success'''<br />
<br />
* Retail:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<destination><br />
<destination_group_name> ''name'' </destination_group_name><br />
<rate><br />
<duration> ''duration'' </duration><br />
<type> ''type'' </type><br />
<round_by> ''round by'' </round_by><br />
<tariff_rate> ''rate'' </tariff_rate><br />
<start_time> ''start time'' </start_time><br />
<end_time> ''end time'' </end_time><br />
<from> ''from'' </from><br />
<daytype> ''daytype'' </daytype><br />
</rate><br />
</destination><br />
</rates><br />
</page><br />
<br />
* Retail with '''additional_retail_info = 1''':<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<destination><br />
<destination_group_name> ''name'' </destination_group_name><br />
<destinations><br />
<destination_name>''Destination name''</destination_name><br />
<prefix>''Prefix''</prefix><br />
</destinations><br />
<rate><br />
<duration> ''duration'' </duration><br />
<type> ''type'' </type><br />
<round_by> ''round by'' </round_by><br />
<tariff_rate> ''rate'' </tariff_rate><br />
<start_time> ''start time'' </start_time><br />
<end_time> ''end time'' </end_time><br />
<from> ''from'' </from><br />
<daytype> ''daytype'' </daytype><br />
</rate><br />
</destination><br />
</rates><br />
</page><br />
<br />
<br />
* Wholesale:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<rate><br />
<direction> ''direction'' </direction><br />
<destination> ''destination'' </destination><br />
<prefix> ''prefix'' </prefix><br />
<code> ''code'' </code><br />
<tariff_rate> ''rate'' </tariff_rate><br />
<con_fee> ''connection fee'' </con_fee><br />
<increment> ''increment'' </increment><br />
<min_time> ''minimal time'' </min_time><br />
<start_time> ''start time'' </start_time><br />
<end_time> ''end time'' </end_time><br />
<daytype> ''daytype'' </daytype><br />
</rate><br />
</rates><br />
</page><br />
<br><br><br />
----<br />
<br />
'''Errors'''<br />
<br />
* Tariff was not found.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>No tariff found</error><br />
</status><br />
</page><br />
<br />
* User was not found by username and password. Use correct username and password. Make sure that username (u) and password (p) are specified.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>Bad login</error><br />
</status><br />
</page><br />
<br />
* Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>Incorrect hash</error><br />
</status><br />
<br><br><br />
<br />
=See also=<br />
* [[API returns garbage]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=MOR_API_tariff_rates_get&diff=22021MOR API tariff rates get2017-02-21T08:27:49Z<p>Tomas: /* Parameters */</p>
<hr />
<div>=Description=<br />
<!---This functionality is available from MOR 11---><br />
Exports Wholesale Tariff rates<br />
<br><br />
If Admin has checked Allow Resellers to use Admin Tariffs in [[API Configuration]] then using this API Reseller can get Tariffs which belongs to Admin.<br />
<br><br><br />
<br />
=Usage=<br />
<br />
* Call: '''/api/tariff_rates_get'''<br />
* For Backwards-compatibility old name 'get_tariff' is also usable. Call: '''/api/get_tariff'''<br />
* Methods: POST, GET(if allowed, not recomended)<br />
<br><br><br />
===Parameters===<br />
<br />
* u - username for authentication. '''Required'''.<br />
* tariff_id - user tariff id (option for admin or reseller). If not sent, user gets his tariff rates and custom rates.<br />
* user_id - this specifies user id whose custom rates and tariffs to show. When sending user_id parameter tariff_id parameter is ignored. <br />
* additional_retail_info = 1 - this includes additional information about retail tariffs, destination names and prefixes for these destinations.<br />
* [[MOR API hash construction | hash]] - SHA1 hash constructed using '''tariff_id''' and/or '''user_id''' and '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.<br />
<br><br><br />
<br />
===Request===<br />
<br />
We have API Secret Key = 456789, tariff_id = 100<br />
<br />
We send:<br />
<br />
HTML POST: http://<SERVER_IP>/billing/api/get_tariff?u=admin&user_id=5&tariff_id=100&hash=71516eea4850f7e0300ac86adf9fb64bca845aa7<br />
<br />
'''* Note that username and password are not included in hash'''<br />
Returning XML is put in file. That file is ziped and returned as a response content.<br />
<br />
Please note that admin can retrieve any tariff, reseller - only users' tariffs and the one assigned to him by admin and user can only retrieve to his own tariff.<br />
<br><br><br />
<br />
===Returns===<br />
<br />
<span style="color:#ff0000">'''IMPORTANT: response is returned in the archived zip format. Make sure to extract it from the zip format first.'''</span><br />
<br><br><br />
<!--<br />
Example in PHP how to extract from GZIP [http://php.net/manual/en/function.gzdecode.php here]. */ <br />
--><br />
<br><br />
'''Success'''<br />
<br />
* Retail:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<destination><br />
<destination_group_name> ''name'' </destination_group_name><br />
<rate><br />
<duration> ''duration'' </duration><br />
<type> ''type'' </type><br />
<round_by> ''round by'' </round_by><br />
<tariff_rate> ''rate'' </tariff_rate><br />
<start_time> ''start time'' </start_time><br />
<end_time> ''end time'' </end_time><br />
<from> ''from'' </from><br />
<daytype> ''daytype'' </daytype><br />
</rate><br />
</destination><br />
</rates><br />
</page><br />
<br />
* Wholesale:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<rate><br />
<direction> ''direction'' </direction><br />
<destination> ''destination'' </destination><br />
<prefix> ''prefix'' </prefix><br />
<code> ''code'' </code><br />
<tariff_rate> ''rate'' </tariff_rate><br />
<con_fee> ''connection fee'' </con_fee><br />
<increment> ''increment'' </increment><br />
<min_time> ''minimal time'' </min_time><br />
<start_time> ''start time'' </start_time><br />
<end_time> ''end time'' </end_time><br />
<daytype> ''daytype'' </daytype><br />
</rate><br />
</rates><br />
</page><br />
<br><br><br />
----<br />
<br />
'''Errors'''<br />
<br />
* Tariff was not found.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>No tariff found</error><br />
</status><br />
</page><br />
<br />
* User was not found by username and password. Use correct username and password. Make sure that username (u) and password (p) are specified.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>Bad login</error><br />
</status><br />
</page><br />
<br />
* Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>Incorrect hash</error><br />
</status><br />
<br><br><br />
<br />
=See also=<br />
* [[API returns garbage]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=MOR_API_tariff_rates_get&diff=22020MOR API tariff rates get2017-02-21T08:27:17Z<p>Tomas: /* Parameters */</p>
<hr />
<div>=Description=<br />
<!---This functionality is available from MOR 11---><br />
Exports Wholesale Tariff rates<br />
<br><br />
If Admin has checked Allow Resellers to use Admin Tariffs in [[API Configuration]] then using this API Reseller can get Tariffs which belongs to Admin.<br />
<br><br><br />
<br />
=Usage=<br />
<br />
* Call: '''/api/tariff_rates_get'''<br />
* For Backwards-compatibility old name 'get_tariff' is also usable. Call: '''/api/get_tariff'''<br />
* Methods: POST, GET(if allowed, not recomended)<br />
<br><br><br />
===Parameters===<br />
<br />
* u - username for authentication. '''Required'''.<br />
* tariff_id - user tariff id (option for admin or reseller). If not sent, user gets his tariff rates and custom rates.<br />
* user_id - this specifies user id whose custom rates and tariffs to show. When sending user_id parameter tariff_id parameter is ignored. <br />
* additional_retail_info = 1 - this includes additional information about retail tariffs, destination names and prefixes for this destination.<br />
* [[MOR API hash construction | hash]] - SHA1 hash constructed using '''tariff_id''' and/or '''user_id''' and '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.<br />
<br><br><br />
<br />
===Request===<br />
<br />
We have API Secret Key = 456789, tariff_id = 100<br />
<br />
We send:<br />
<br />
HTML POST: http://<SERVER_IP>/billing/api/get_tariff?u=admin&user_id=5&tariff_id=100&hash=71516eea4850f7e0300ac86adf9fb64bca845aa7<br />
<br />
'''* Note that username and password are not included in hash'''<br />
Returning XML is put in file. That file is ziped and returned as a response content.<br />
<br />
Please note that admin can retrieve any tariff, reseller - only users' tariffs and the one assigned to him by admin and user can only retrieve to his own tariff.<br />
<br><br><br />
<br />
===Returns===<br />
<br />
<span style="color:#ff0000">'''IMPORTANT: response is returned in the archived zip format. Make sure to extract it from the zip format first.'''</span><br />
<br><br><br />
<!--<br />
Example in PHP how to extract from GZIP [http://php.net/manual/en/function.gzdecode.php here]. */ <br />
--><br />
<br><br />
'''Success'''<br />
<br />
* Retail:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<destination><br />
<destination_group_name> ''name'' </destination_group_name><br />
<rate><br />
<duration> ''duration'' </duration><br />
<type> ''type'' </type><br />
<round_by> ''round by'' </round_by><br />
<tariff_rate> ''rate'' </tariff_rate><br />
<start_time> ''start time'' </start_time><br />
<end_time> ''end time'' </end_time><br />
<from> ''from'' </from><br />
<daytype> ''daytype'' </daytype><br />
</rate><br />
</destination><br />
</rates><br />
</page><br />
<br />
* Wholesale:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<rate><br />
<direction> ''direction'' </direction><br />
<destination> ''destination'' </destination><br />
<prefix> ''prefix'' </prefix><br />
<code> ''code'' </code><br />
<tariff_rate> ''rate'' </tariff_rate><br />
<con_fee> ''connection fee'' </con_fee><br />
<increment> ''increment'' </increment><br />
<min_time> ''minimal time'' </min_time><br />
<start_time> ''start time'' </start_time><br />
<end_time> ''end time'' </end_time><br />
<daytype> ''daytype'' </daytype><br />
</rate><br />
</rates><br />
</page><br />
<br><br><br />
----<br />
<br />
'''Errors'''<br />
<br />
* Tariff was not found.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>No tariff found</error><br />
</status><br />
</page><br />
<br />
* User was not found by username and password. Use correct username and password. Make sure that username (u) and password (p) are specified.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>Bad login</error><br />
</status><br />
</page><br />
<br />
* Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>Incorrect hash</error><br />
</status><br />
<br><br><br />
<br />
=See also=<br />
* [[API returns garbage]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=M4_Calls_List&diff=21993M4 Calls List2017-02-07T18:56:10Z<p>Tomas: </p>
<hr />
<div>= Description =<br />
<br />
'''REPORTS –> Calls List''' shows the most recent calls in the system. It is used in [[MOR_Manual#Troubleshooting | Troubleshooting]].<br />
<br />
Last Calls search is available both for users and administrators.<br />
You can make search by '''User''', '''Origination Points''', call '''Status''', '''Hangup Couse''', '''Termination Points''', '''Source''' or '''Destination'''. <br />
<br><br><br />
== Search usage ==<br />
<br />
Destination field allows to search by Exact destination, by first digits and by matching pattern.<br />
<br />
Examples:<br />
<br />
*'''370123''' will return all calls where number '''is''' "370123";<br />
<br />
*'''370%''' will return all calls where number '''begins with''' "370";<br />
<br />
*'''%70%''' will return all calls where number '''contains''' "70".<br />
<br><br><br />
== CSV ==<br />
<br />
Using the "Export to CSV" icon you can export your currently displayed calls into CSV<br />
<br><br><br />
== PDF ==<br />
<br />
Using the "Export to PDF" icon you can export your currently displayed calls into PDF<br />
<br><br><br />
== Additional columns ==<br />
<br />
Admin can add additional columns in Calls list by selecting settings in '''MAINTENANCE -> Settings -> Visual ''' tab.<br />
<br><br><br />
[[File:M2 last calls settings.png]]<br />
<br><br><br />
=Call Info=<br />
<br />
In '''REPORTS –> Calls List''' page there is an icon [[Image:icon_callinfo.png]] which is leading to page where is more detailed [[M2 Call Info|Call info]].</div>Tomashttps://wiki.kolmisoft.com/index.php?title=File:M2_last_calls_settings.png&diff=21992File:M2 last calls settings.png2017-02-07T18:53:17Z<p>Tomas: </p>
<hr />
<div></div>Tomashttps://wiki.kolmisoft.com/index.php?title=Online_registration&diff=21991Online registration2017-02-07T17:38:59Z<p>Tomas: </p>
<hr />
<div>This function lets a user register online. It can be accessed in MOR's entry page by clicking on: '''If you are new user you can signup here:'''<br />
<br><br><br />
[[Image:Registration1X3.png]]<br />
<br><br><br />
'''NOTE:''' Registration should be enabled in '''SETTINGS –> Setup –> Settings –> [[Configuration from GUI#Registration | Registration]]''' in order to work.<br />
<br />
In the following window, the user should enter his details. Fields marked by * are mandatory:<br />
<br><br><br />
[[Image:Registration2X3.png]]<br />
<br><br><br />
'''Note:''' if phone number is entered, it will be automatically added as [[CLIs_(Incoming_CallerIDs)|CLI]] for user device.<br />
<br />
<br />
After clicking on '''Sign up''', the user is registered, his account is created and he will see connection info on his screen:<br />
<br><br><br />
[[Image:Registration3X3.png]]<br />
<br><br><br />
If email sending is enabled (in Settings) and the email SMTP server details are valid, the user will receive an mail containing all the settings. The administrator will also get an email with information about the user who has registered with the system. These two settings should also be enabled.<br />
<br />
If you have set every setting to send email to Admin or Reseller when a new user registers, but no email arrives - check whether you have Email set for Admin user.<br />
<br><br><br />
== User Registration settings from Reseller perspective==<br />
Reseller has User Online registration settings for his users registration.<br />
<br><br><br />
[[Image:Reseller registration settings.png]]<br />
<br><br><br />
'''Send Email to User after Registration:''' - after registration, registered User will receive Email.<br />
<br />
'''Send Email to Reseller after Registration:''' - after User registration, Reseller will receive Email.<br />
<br><br><br />
=See also=<br />
<br />
* [[Configuration from GUI#Registration | Registration Configuratin]]<br />
* [[ReCAPTCHA]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=File:Reseller_registration_settings.png&diff=21990File:Reseller registration settings.png2017-02-07T17:22:02Z<p>Tomas: </p>
<hr />
<div></div>Tomashttps://wiki.kolmisoft.com/index.php?title=Invoices&diff=21989Invoices2017-02-07T17:06:02Z<p>Tomas: /* XLSX Invoices */</p>
<hr />
<div>= Description =<br />
<br />
An invoice, bill or tab is a commercial document issued by a seller to a buyer, relating to a sale transaction and indicating the products, quantities, and agreed prices for products or services the seller had provided the buyer.<br />
<br><br><br />
= Configuration =<br />
<br />
You can manage Invoices settings, details, Address information and functionality in the Invoices section of the [[Configuration_from_GUI#Invoices | SETTINGS -> Setup -> Settings]] window.<br><br />
If you want show user_billsec instead of billsec in Users invoices and last calls, go to [[Configuration_from_GUI#Visual | Settings –> Various]] and check ''Show user_billsec for Users instead of billsec''<br />
<br><br><br />
<br />
Go to User's edit page to enable or disable types of invoices he can see in his invoices details. And also these selected types will be the ones that are sent to user via email. <br />
<br />
[[File:Invoice types.png]]<br />
<br />
=Invoices list=<br />
<br />
Invoices can be viewed, generated, recalculated, sent, also <!---...from MOR 9---> list of Invoices can be exported to CSV file (Invoice number and TAX Registration Number are included in the output CSV file) in '''SETTINGS –> Accounting –> Invoices'''. In the main window, you can see list of all Invoices:<br />
<br><br><br />
[[Image:Invoice list small.png]]<br />
<br><br><br />
The icons [[Image:icon_check.png]] and [[Image:icon_cross.png]] show whether this invoice is Paid or Unpaid, Sent or Not Sent. <br />
<br><br />
'''NOTE''' Each Invoice generated in particular Time Zone and on particular Currency. That means that in each line of Invoice Price and Price with TAX will be shown in currency which is written in Currency column. The Currency column tells which currency Invoice was generated with. Also the exchange rate at the invoice generation moment is saved in the database so it may differ from the up to date exchange rate.<br />
<br><br />
Total Price and Price with TAX are calculated into viewing Currency, which you can choose in upper corner of page. In Total price calculation there are used saved exchange Rate of each Invoice.<br />
<br><br><br />
'''Example'''<br />
<br><br><br />
Default system Currency is USD<br />
<br><br />
Invoice A is generated on price = 100 in currency EUR with exchange rate 0.5<br><br />
Invoice B is generated on price = 100 in currency DZD with exchange rate 0.25<br><br />
Invoice C is generated on price = 100 in currency ALL with exchange rate 0.75<br><br />
<br><br />
But now exchange rate are different: EUR - 0.75, DZD - 0.5 and ALL - 1.0. <br><br />
<br><br />
If you want to see Total price(sum of these 3 Invoices) in EUR. For Invoice B and C will be set exchange rate of today, but for Invoice A exchange rate will be from that day when Invoice was generated (0.5).<br><br />
<br />
Same calculations with other currencies:<br><br />
If you want to see Total price in USD. For Invoice A, B and C the exchange rates will be set from the day when invoice was generated (EUR - 0.5, DZD - 0.25 and ALL - 0.75).<br><br />
If you want to see Total price in DZD. For Invoice A and C will be set exchange rate of today, but for Invoice B exchange rate will be from the day when Invoice was generated (0.25).<br><br />
If you want to see Total price in ALL. For Invoice A and B will be set exchange rate of today, but for Invoice C exchange rate will be from the day when Invoice was generated (0.75).<br><br />
<br><br />
Total price will be 733.3333 USD, or 500 EUR, or 266.6667 DZD, or 700 ALL<br><br />
<br><br><br />
<br />
=Invoice details=<br />
<br />
Click on the [[Image:icon_details.png]] icon to get details of the Invoice:<br />
<br><br><br />
[[Image:invoice_details_x6.png]]<br />
<br><br><br />
Invoice details are shown in Currency which was used to generate Invoice. <br />
<br><br><br />
==General Details==<br />
<br />
'''Payment date''' - An option which will set the period of payment on current month. By default ''Years'' and ''Month'' is current, it is only possible to change ''Day of Month'' which is indicating the last date of ''Invoice'' issue.<br><br />
'''Currecy of Invoice''' - <!---This functionality is available from MOR X6---> Invoices are exported in Invoice currency.<br />
<br />
'''Language of Invoice'''<br />
<br><br />
Default language in MOR is English. However, you can send invoices in different languages (click on the flag icon on the top of the page).<br />
<br><br><br />
<br />
==User Details==<br />
<br />
User Details which will be used in xlsx file of invoice. These Details are taken form [[User Details]] and it can be changed manually, but after recalculate it will be reset to same information as it is in [[User Details]].<br />
<br><br><br />
==Files to send or download==<br />
<br />
Here you can view the details of all invoices and click on the [[Image:icon_pdf.png]] or [[Image:icon_csv.png]] icons to generate invoice files in PDF or CSV formats accordingly. First icon [[Image:icon_csv.png]] will download a xlsx file.<br />
<br />
*'''Invoice XLSX''' xlsx file shows information which are set by you. Check [[Invoices#XLSX_Invoices | XLSX Invoice]]<br />
*'''Invoice''' PDF shows separate services Prices and Total Invoice Prices, CSV shows just Total Invoice Prices.<br />
*'''Invoice detailed''' shows same information like simple Invoice and includes Calls list grouped by Destination.<br />
*'''Invoice by CallerID''' shows Calls list grouped by CallerID.<br />
*'''Invoice Destinations''' shows Calls list grouped by Destination. <br />
<br />
You can manage what kind of Invoice should be showed for User and/or sent to User as email attachment in [[User_Details#Invoices |User Details]]. Here you can check ''Show zero Calls'' option if you need to calculate 0 price Calls into Invoices.<br />
<br><br><br />
=== XLSX Invoices ===<br />
<br />
XLSX file to export an Invoice is made from your own XLSX format template and information from Invoices main window.<br />
Example of template can be downloaded for [http://www.kolmisoft.com/packets/x6_invoice_template.xlsx here].<br />
<br><br><br />
'''Default XLSX template'''<br />
<br />
Create a xlsx file. Template you can prepare as you wish, you can fill it with information of company, draw tables with column names, describe information taken from Invoice main window and so on. Template '''have to be uploaded in SETTINGS -> Setup -> Settings''', Invoices - XLSX tab setting '''XSLX Template'''<br />
* Check '''New XLSX template apply for old Invoices''' if you want to change XLSX template for Invoices which is already generated.<br />
* Check '''Group regular Calls by Destinations''' if you want XLSX file us as detailed Invoice.<br />
<br><br />
'''Balance Line settings'''<br />
<br />
''Outstanding balance (Debt)'', ''Outstanding balance (Debt) with TAX'', ''Total amount due'' options are present when ''Show balance line'' ('''SETTINGS -> Setup -> Settings''', Invoices - Postpaid - Settings) setting is enabled.<br />
<br><br><br />
'''Configuration for Dynamic information'''<br />
<br />
When you already have a template for example with all data of your company, with drawn tables and so on, you need to define where should be shown the dynamic information of invoice. How and what information is displayed can be set same '''SETTINGS -> Setup -> Settings''', Invoices - XLSX tab. Just need to define cell address in correct format.<br />
<br><br> <br />
[[File:Setttings xlsx.png]]<br />
<br><br><br />
For example "A2", "B15", "AA9"<br />
<br><br><br />
[[File:callc.png]]<br />
<br><br><br />
<br />
'''NOTE''': If you do not want to use particular dynamic value just leave empty input for it.<br />
<br />
=== PDF invoices ===<br />
<br />
The layout of PDF invoices is not customizable. <br />
<br />
Logos are not supported in PDF invoices.<br />
<br />
You can print your invoices on paper with a pre-printed logo if you want to send paper invoices.<br />
<br><br><br />
=== CSV invoices ===<br />
<br />
Detailed CSV invoice does not include list of all calls. Please use [[How_to_export_CDRs|CDR export]] if you need list of calls in CSV format.<br />
<br><br><br />
<br />
==Comment==<br />
<br><br />
<!---This functionality is available from MOR 9---><br />
Sometimes it is useful to add a comment to the invoice. It can be used in xlsx file also.<br />
<br><br><br />
==Invoice Details==<br />
Click on the Invoice Details icon in the Invoice details page <br />
<br><br><br />
[[Image:Service_details.png]]<br />
<br><br><br />
to get Services Details of the Invoice: <br />
<br><br><br />
[[Image:invoice_services_x6.png]]<br />
<br><br><br />
'''Services:'''<br />
<br><br />
* '''SMS''' – quantity and price of SMS sent in selected period. Invoice for Reseller counts all SMS that was sent by his users using price for Reseller. Note, that SMS are included to Invoice only when [[SMS Addon]] is used<br />
* '''DID Owner Cost''' – price for having and using own DID(s)<br />
* '''Subscriptions''' – price of subscription applied to selected period. Period considered as month is from first till last day of month and from concrete day of month till next month one day before selected last month. Eg. from 2013-02-26 till 2013-03-25<br />
* '''Calls''' – quantity and price of outgoing calls<br />
* '''Calls from Users''' – quantity and price of resellers users calls<br />
* '''Calls to DIDs''' – price for calling to DID(s)<br />
<br><br><br />
<br />
= Invoice generation =<br />
<br />
In the main Invoices window, click [[Image:icon_generate_invoices.png]] '''Generate Invoices''' to generate additional invoices:<br />
<br><br><br />
[[Image:generate_invoices_x6.png]]<br />
<br><br><br />
Select for which users to generate invoices. Prepaid and Postpaid users can have separate details. Also, you can check to generate an invoice for only one particular user. Invoice will be generated if selected User existed at least one day of all Invoice period. When Invoice Generation Task is created, admin can check the progress in [[Background Tasks]]. <br />
<br />
'''NOTE:''' For Prepaid User after every executed Manual Payment will be generated Invoice automatically.<br><br />
<!---This functionality is available from MOR X5---><br />
'''NOTE:''' If Currency of User is different than default System Currency. All his Invoices will be generated with [[Currencies| Currency]] Exchange Rate of current day. <br><br />
'''NOTE:''' When generating invoice, current user details will be used. <br> <br />
<br><br><br />
<br />
= Invoice recalculation =<br />
<br />
An invoice cannot be modified after being sent. But if you want to allow recalculations after sending invoices, go to: '''Settings -> Setup -> Settings'''. Then click on the tabs: '''Invoices -> Functionality'''. Select ''Invoice allow recalculate after send'':<br />
<br><br><br />
[[Image:ivoicesnewnew.png]]<br />
<br><br><br />
===Recalculate a group of Invoices===<br />
<br />
To recalculate invoices in the main Invoices window click [[Image:icon_generate_invoices.png]] '''Recalculate invoices''':<br />
<br><br><br />
[[Image:recalc.png]]<br />
<br><br><br />
Select which type of Invoices or whose Invoices to recalculate.<br />
<br><br><br />
=== Recalculate a single Invoice ===<br />
<br />
If an invoice is not marked as paid - it can be recalculated for the same user, same period. To achieve this - press the marked icon:<br />
<br><br><br />
[[File:Recalculate_single_invoice_x6.png]]<br />
<br><br><br />
<br />
= Pay unpaid Invoices =<br />
<br />
In list of Invoices click [[Image:icon_edit.png]]'''Bulk management''' and button '''Pay unpaid Invoices''' will appear.<br />
<br><br><br />
[[File:Pay_unpaid_invocies.png]]<br />
<br><br><br />
Click '''Pay unpaid Invoices''' and '''All''' unpaid Invoices will be marked as paid. For each marked Invoice Payment will be created.<br />
<br><br><br />
<br />
<br />
= Delete all Invoices =<br />
<br />
In list of Invoices click [[Image:icon_edit.png]]'''Bulk management''' and button '''Delete all invoices''' will appear.<br />
<br><br><br />
[[File:Delete_all_invoices.png]]<br />
<br><br><br />
Click '''Delete all invoices''' and '''all Invoices owned by a current User''' will be deleted (search filter settings do not affect the process). <br />
<br><br><br />
'''Note:''' Invoices, which were already sent, are possible to delete only with option enabled in: Invoices->Functionality-> Invoice allow recalculate after send.<br />
<br><br><br />
<br />
= Send invoices by email (manual) =<br />
<br />
Click '''Send Invoices over Email to Users''' to send invoices to their Users in this period:<br />
<br><br><br />
[[Image:Invoce email.png]]<br />
<br><br><br />
You can use these settings to choose which users should get an email with the invoice. Using these settings you can send emails in parts.<br />
<br><br />
* '''Email sending''' option must be enabled in Email Settings to use this feature<br />
* Tip: you can '''send invoices in parts''' by using text fields to send invoices for users which '''Username, First name, Last name''' or '''Number''' begins with some letters. For example: you have users with usernames john, albert and alex. You want to send invoices only for users whose usernames begins with '''"a"''' so you just have to enter '''"a"''' in a '''Username text field''' to send invoices only to albert and alex.<br />
<br />
<br />
<br><br><br />
<br />
= Generate and send invoices by email (automatically) =<br />
<br />
Use [http://wiki.kolmisoft.com/index.php/Cron_actions#Generate_Invoices_and_send_by_Email Cron Actions] to Generate and send Emails automatically.<br />
<br />
<br><br><br />
<br />
=See also=<br />
<br />
* [[Accounting]]<br />
* [[Invoice configuration]]<br />
* [[Pay Invoice with balance deduction]]<br />
* [[Outstanding balance(Debt)]]<br />
* [[Invoice by CallerID]]<br />
* [[MOR API invoices_get]]<br />
* [[Cannot generate Invoice]]<br />
* [[Duplicate value in Cell Address field]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=Invoices&diff=21988Invoices2017-02-07T17:05:39Z<p>Tomas: /* XLSX Invoices */</p>
<hr />
<div>= Description =<br />
<br />
An invoice, bill or tab is a commercial document issued by a seller to a buyer, relating to a sale transaction and indicating the products, quantities, and agreed prices for products or services the seller had provided the buyer.<br />
<br><br><br />
= Configuration =<br />
<br />
You can manage Invoices settings, details, Address information and functionality in the Invoices section of the [[Configuration_from_GUI#Invoices | SETTINGS -> Setup -> Settings]] window.<br><br />
If you want show user_billsec instead of billsec in Users invoices and last calls, go to [[Configuration_from_GUI#Visual | Settings –> Various]] and check ''Show user_billsec for Users instead of billsec''<br />
<br><br><br />
<br />
Go to User's edit page to enable or disable types of invoices he can see in his invoices details. And also these selected types will be the ones that are sent to user via email. <br />
<br />
[[File:Invoice types.png]]<br />
<br />
=Invoices list=<br />
<br />
Invoices can be viewed, generated, recalculated, sent, also <!---...from MOR 9---> list of Invoices can be exported to CSV file (Invoice number and TAX Registration Number are included in the output CSV file) in '''SETTINGS –> Accounting –> Invoices'''. In the main window, you can see list of all Invoices:<br />
<br><br><br />
[[Image:Invoice list small.png]]<br />
<br><br><br />
The icons [[Image:icon_check.png]] and [[Image:icon_cross.png]] show whether this invoice is Paid or Unpaid, Sent or Not Sent. <br />
<br><br />
'''NOTE''' Each Invoice generated in particular Time Zone and on particular Currency. That means that in each line of Invoice Price and Price with TAX will be shown in currency which is written in Currency column. The Currency column tells which currency Invoice was generated with. Also the exchange rate at the invoice generation moment is saved in the database so it may differ from the up to date exchange rate.<br />
<br><br />
Total Price and Price with TAX are calculated into viewing Currency, which you can choose in upper corner of page. In Total price calculation there are used saved exchange Rate of each Invoice.<br />
<br><br><br />
'''Example'''<br />
<br><br><br />
Default system Currency is USD<br />
<br><br />
Invoice A is generated on price = 100 in currency EUR with exchange rate 0.5<br><br />
Invoice B is generated on price = 100 in currency DZD with exchange rate 0.25<br><br />
Invoice C is generated on price = 100 in currency ALL with exchange rate 0.75<br><br />
<br><br />
But now exchange rate are different: EUR - 0.75, DZD - 0.5 and ALL - 1.0. <br><br />
<br><br />
If you want to see Total price(sum of these 3 Invoices) in EUR. For Invoice B and C will be set exchange rate of today, but for Invoice A exchange rate will be from that day when Invoice was generated (0.5).<br><br />
<br />
Same calculations with other currencies:<br><br />
If you want to see Total price in USD. For Invoice A, B and C the exchange rates will be set from the day when invoice was generated (EUR - 0.5, DZD - 0.25 and ALL - 0.75).<br><br />
If you want to see Total price in DZD. For Invoice A and C will be set exchange rate of today, but for Invoice B exchange rate will be from the day when Invoice was generated (0.25).<br><br />
If you want to see Total price in ALL. For Invoice A and B will be set exchange rate of today, but for Invoice C exchange rate will be from the day when Invoice was generated (0.75).<br><br />
<br><br />
Total price will be 733.3333 USD, or 500 EUR, or 266.6667 DZD, or 700 ALL<br><br />
<br><br><br />
<br />
=Invoice details=<br />
<br />
Click on the [[Image:icon_details.png]] icon to get details of the Invoice:<br />
<br><br><br />
[[Image:invoice_details_x6.png]]<br />
<br><br><br />
Invoice details are shown in Currency which was used to generate Invoice. <br />
<br><br><br />
==General Details==<br />
<br />
'''Payment date''' - An option which will set the period of payment on current month. By default ''Years'' and ''Month'' is current, it is only possible to change ''Day of Month'' which is indicating the last date of ''Invoice'' issue.<br><br />
'''Currecy of Invoice''' - <!---This functionality is available from MOR X6---> Invoices are exported in Invoice currency.<br />
<br />
'''Language of Invoice'''<br />
<br><br />
Default language in MOR is English. However, you can send invoices in different languages (click on the flag icon on the top of the page).<br />
<br><br><br />
<br />
==User Details==<br />
<br />
User Details which will be used in xlsx file of invoice. These Details are taken form [[User Details]] and it can be changed manually, but after recalculate it will be reset to same information as it is in [[User Details]].<br />
<br><br><br />
==Files to send or download==<br />
<br />
Here you can view the details of all invoices and click on the [[Image:icon_pdf.png]] or [[Image:icon_csv.png]] icons to generate invoice files in PDF or CSV formats accordingly. First icon [[Image:icon_csv.png]] will download a xlsx file.<br />
<br />
*'''Invoice XLSX''' xlsx file shows information which are set by you. Check [[Invoices#XLSX_Invoices | XLSX Invoice]]<br />
*'''Invoice''' PDF shows separate services Prices and Total Invoice Prices, CSV shows just Total Invoice Prices.<br />
*'''Invoice detailed''' shows same information like simple Invoice and includes Calls list grouped by Destination.<br />
*'''Invoice by CallerID''' shows Calls list grouped by CallerID.<br />
*'''Invoice Destinations''' shows Calls list grouped by Destination. <br />
<br />
You can manage what kind of Invoice should be showed for User and/or sent to User as email attachment in [[User_Details#Invoices |User Details]]. Here you can check ''Show zero Calls'' option if you need to calculate 0 price Calls into Invoices.<br />
<br><br><br />
=== XLSX Invoices ===<br />
<br />
XLSX file to export an Invoice is made from your own XLSX format template and information from Invoices main window.<br />
Example of template can be downloaded for [http://www.kolmisoft.com/packets/x6_invoice_template.xlsx here].<br />
<br><br><br />
'''Default XLSX template'''<br />
<br />
Create a xlsx file. Template you can prepare as you wish, you can fill it with information of company, draw tables with column names, describe information taken from Invoice main window and so on. Template '''have to be uploaded in SETTINGS -> Setup -> Settings''', Invoices - XLSX tab setting '''XSLX Template'''<br />
* Check '''New XLSX template apply for old Invoices''' if you want to change XLSX template for Invoices which is already generated.<br />
* Check '''Group regular Calls by Destinations''' if you want XLSX file us as detailed Invoice.<br />
<br><br />
'''Balance Line settings'''<br />
<br />
''Outstanding balance (Debt)'', ''Outstanding balance (Debt) with TAX'', ''Total amount due'' options are present when ''Show balance line'' ('''SETTINGS -> Setup -> Settings''', Invoices - Postpaid - Settings) setting is enabled.<br />
<br><br><br />
'''Configuration for Dynamic information'''<br />
<br />
When you already have a template for example with all data of your company, with drawn tables and so on, you need to define where should be shown the dynamic information of invoice. How and what information is displayed can be set same '''SETTINGS -> Setup -> Settings''', Invoices - XLSX tab. Just need to define cell address in correct format.<br />
[[File:Setttings xlsx.png]]<br />
<br><br> <br />
[[File:Setttings xlsx.png]]<br />
<br><br><br />
For example "A2", "B15", "AA9"<br />
<br><br><br />
[[File:callc.png]]<br />
<br><br><br />
<br />
'''NOTE''': If you do not want to use particular dynamic value just leave empty input for it.<br />
<br />
=== PDF invoices ===<br />
<br />
The layout of PDF invoices is not customizable. <br />
<br />
Logos are not supported in PDF invoices.<br />
<br />
You can print your invoices on paper with a pre-printed logo if you want to send paper invoices.<br />
<br><br><br />
=== CSV invoices ===<br />
<br />
Detailed CSV invoice does not include list of all calls. Please use [[How_to_export_CDRs|CDR export]] if you need list of calls in CSV format.<br />
<br><br><br />
<br />
==Comment==<br />
<br><br />
<!---This functionality is available from MOR 9---><br />
Sometimes it is useful to add a comment to the invoice. It can be used in xlsx file also.<br />
<br><br><br />
==Invoice Details==<br />
Click on the Invoice Details icon in the Invoice details page <br />
<br><br><br />
[[Image:Service_details.png]]<br />
<br><br><br />
to get Services Details of the Invoice: <br />
<br><br><br />
[[Image:invoice_services_x6.png]]<br />
<br><br><br />
'''Services:'''<br />
<br><br />
* '''SMS''' – quantity and price of SMS sent in selected period. Invoice for Reseller counts all SMS that was sent by his users using price for Reseller. Note, that SMS are included to Invoice only when [[SMS Addon]] is used<br />
* '''DID Owner Cost''' – price for having and using own DID(s)<br />
* '''Subscriptions''' – price of subscription applied to selected period. Period considered as month is from first till last day of month and from concrete day of month till next month one day before selected last month. Eg. from 2013-02-26 till 2013-03-25<br />
* '''Calls''' – quantity and price of outgoing calls<br />
* '''Calls from Users''' – quantity and price of resellers users calls<br />
* '''Calls to DIDs''' – price for calling to DID(s)<br />
<br><br><br />
<br />
= Invoice generation =<br />
<br />
In the main Invoices window, click [[Image:icon_generate_invoices.png]] '''Generate Invoices''' to generate additional invoices:<br />
<br><br><br />
[[Image:generate_invoices_x6.png]]<br />
<br><br><br />
Select for which users to generate invoices. Prepaid and Postpaid users can have separate details. Also, you can check to generate an invoice for only one particular user. Invoice will be generated if selected User existed at least one day of all Invoice period. When Invoice Generation Task is created, admin can check the progress in [[Background Tasks]]. <br />
<br />
'''NOTE:''' For Prepaid User after every executed Manual Payment will be generated Invoice automatically.<br><br />
<!---This functionality is available from MOR X5---><br />
'''NOTE:''' If Currency of User is different than default System Currency. All his Invoices will be generated with [[Currencies| Currency]] Exchange Rate of current day. <br><br />
'''NOTE:''' When generating invoice, current user details will be used. <br> <br />
<br><br><br />
<br />
= Invoice recalculation =<br />
<br />
An invoice cannot be modified after being sent. But if you want to allow recalculations after sending invoices, go to: '''Settings -> Setup -> Settings'''. Then click on the tabs: '''Invoices -> Functionality'''. Select ''Invoice allow recalculate after send'':<br />
<br><br><br />
[[Image:ivoicesnewnew.png]]<br />
<br><br><br />
===Recalculate a group of Invoices===<br />
<br />
To recalculate invoices in the main Invoices window click [[Image:icon_generate_invoices.png]] '''Recalculate invoices''':<br />
<br><br><br />
[[Image:recalc.png]]<br />
<br><br><br />
Select which type of Invoices or whose Invoices to recalculate.<br />
<br><br><br />
=== Recalculate a single Invoice ===<br />
<br />
If an invoice is not marked as paid - it can be recalculated for the same user, same period. To achieve this - press the marked icon:<br />
<br><br><br />
[[File:Recalculate_single_invoice_x6.png]]<br />
<br><br><br />
<br />
= Pay unpaid Invoices =<br />
<br />
In list of Invoices click [[Image:icon_edit.png]]'''Bulk management''' and button '''Pay unpaid Invoices''' will appear.<br />
<br><br><br />
[[File:Pay_unpaid_invocies.png]]<br />
<br><br><br />
Click '''Pay unpaid Invoices''' and '''All''' unpaid Invoices will be marked as paid. For each marked Invoice Payment will be created.<br />
<br><br><br />
<br />
<br />
= Delete all Invoices =<br />
<br />
In list of Invoices click [[Image:icon_edit.png]]'''Bulk management''' and button '''Delete all invoices''' will appear.<br />
<br><br><br />
[[File:Delete_all_invoices.png]]<br />
<br><br><br />
Click '''Delete all invoices''' and '''all Invoices owned by a current User''' will be deleted (search filter settings do not affect the process). <br />
<br><br><br />
'''Note:''' Invoices, which were already sent, are possible to delete only with option enabled in: Invoices->Functionality-> Invoice allow recalculate after send.<br />
<br><br><br />
<br />
= Send invoices by email (manual) =<br />
<br />
Click '''Send Invoices over Email to Users''' to send invoices to their Users in this period:<br />
<br><br><br />
[[Image:Invoce email.png]]<br />
<br><br><br />
You can use these settings to choose which users should get an email with the invoice. Using these settings you can send emails in parts.<br />
<br><br />
* '''Email sending''' option must be enabled in Email Settings to use this feature<br />
* Tip: you can '''send invoices in parts''' by using text fields to send invoices for users which '''Username, First name, Last name''' or '''Number''' begins with some letters. For example: you have users with usernames john, albert and alex. You want to send invoices only for users whose usernames begins with '''"a"''' so you just have to enter '''"a"''' in a '''Username text field''' to send invoices only to albert and alex.<br />
<br />
<br />
<br><br><br />
<br />
= Generate and send invoices by email (automatically) =<br />
<br />
Use [http://wiki.kolmisoft.com/index.php/Cron_actions#Generate_Invoices_and_send_by_Email Cron Actions] to Generate and send Emails automatically.<br />
<br />
<br><br><br />
<br />
=See also=<br />
<br />
* [[Accounting]]<br />
* [[Invoice configuration]]<br />
* [[Pay Invoice with balance deduction]]<br />
* [[Outstanding balance(Debt)]]<br />
* [[Invoice by CallerID]]<br />
* [[MOR API invoices_get]]<br />
* [[Cannot generate Invoice]]<br />
* [[Duplicate value in Cell Address field]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=Invoices&diff=21987Invoices2017-02-07T17:03:30Z<p>Tomas: /* XLSX Invoices */</p>
<hr />
<div>= Description =<br />
<br />
An invoice, bill or tab is a commercial document issued by a seller to a buyer, relating to a sale transaction and indicating the products, quantities, and agreed prices for products or services the seller had provided the buyer.<br />
<br><br><br />
= Configuration =<br />
<br />
You can manage Invoices settings, details, Address information and functionality in the Invoices section of the [[Configuration_from_GUI#Invoices | SETTINGS -> Setup -> Settings]] window.<br><br />
If you want show user_billsec instead of billsec in Users invoices and last calls, go to [[Configuration_from_GUI#Visual | Settings –> Various]] and check ''Show user_billsec for Users instead of billsec''<br />
<br><br><br />
<br />
Go to User's edit page to enable or disable types of invoices he can see in his invoices details. And also these selected types will be the ones that are sent to user via email. <br />
<br />
[[File:Invoice types.png]]<br />
<br />
=Invoices list=<br />
<br />
Invoices can be viewed, generated, recalculated, sent, also <!---...from MOR 9---> list of Invoices can be exported to CSV file (Invoice number and TAX Registration Number are included in the output CSV file) in '''SETTINGS –> Accounting –> Invoices'''. In the main window, you can see list of all Invoices:<br />
<br><br><br />
[[Image:Invoice list small.png]]<br />
<br><br><br />
The icons [[Image:icon_check.png]] and [[Image:icon_cross.png]] show whether this invoice is Paid or Unpaid, Sent or Not Sent. <br />
<br><br />
'''NOTE''' Each Invoice generated in particular Time Zone and on particular Currency. That means that in each line of Invoice Price and Price with TAX will be shown in currency which is written in Currency column. The Currency column tells which currency Invoice was generated with. Also the exchange rate at the invoice generation moment is saved in the database so it may differ from the up to date exchange rate.<br />
<br><br />
Total Price and Price with TAX are calculated into viewing Currency, which you can choose in upper corner of page. In Total price calculation there are used saved exchange Rate of each Invoice.<br />
<br><br><br />
'''Example'''<br />
<br><br><br />
Default system Currency is USD<br />
<br><br />
Invoice A is generated on price = 100 in currency EUR with exchange rate 0.5<br><br />
Invoice B is generated on price = 100 in currency DZD with exchange rate 0.25<br><br />
Invoice C is generated on price = 100 in currency ALL with exchange rate 0.75<br><br />
<br><br />
But now exchange rate are different: EUR - 0.75, DZD - 0.5 and ALL - 1.0. <br><br />
<br><br />
If you want to see Total price(sum of these 3 Invoices) in EUR. For Invoice B and C will be set exchange rate of today, but for Invoice A exchange rate will be from that day when Invoice was generated (0.5).<br><br />
<br />
Same calculations with other currencies:<br><br />
If you want to see Total price in USD. For Invoice A, B and C the exchange rates will be set from the day when invoice was generated (EUR - 0.5, DZD - 0.25 and ALL - 0.75).<br><br />
If you want to see Total price in DZD. For Invoice A and C will be set exchange rate of today, but for Invoice B exchange rate will be from the day when Invoice was generated (0.25).<br><br />
If you want to see Total price in ALL. For Invoice A and B will be set exchange rate of today, but for Invoice C exchange rate will be from the day when Invoice was generated (0.75).<br><br />
<br><br />
Total price will be 733.3333 USD, or 500 EUR, or 266.6667 DZD, or 700 ALL<br><br />
<br><br><br />
<br />
=Invoice details=<br />
<br />
Click on the [[Image:icon_details.png]] icon to get details of the Invoice:<br />
<br><br><br />
[[Image:invoice_details_x6.png]]<br />
<br><br><br />
Invoice details are shown in Currency which was used to generate Invoice. <br />
<br><br><br />
==General Details==<br />
<br />
'''Payment date''' - An option which will set the period of payment on current month. By default ''Years'' and ''Month'' is current, it is only possible to change ''Day of Month'' which is indicating the last date of ''Invoice'' issue.<br><br />
'''Currecy of Invoice''' - <!---This functionality is available from MOR X6---> Invoices are exported in Invoice currency.<br />
<br />
'''Language of Invoice'''<br />
<br><br />
Default language in MOR is English. However, you can send invoices in different languages (click on the flag icon on the top of the page).<br />
<br><br><br />
<br />
==User Details==<br />
<br />
User Details which will be used in xlsx file of invoice. These Details are taken form [[User Details]] and it can be changed manually, but after recalculate it will be reset to same information as it is in [[User Details]].<br />
<br><br><br />
==Files to send or download==<br />
<br />
Here you can view the details of all invoices and click on the [[Image:icon_pdf.png]] or [[Image:icon_csv.png]] icons to generate invoice files in PDF or CSV formats accordingly. First icon [[Image:icon_csv.png]] will download a xlsx file.<br />
<br />
*'''Invoice XLSX''' xlsx file shows information which are set by you. Check [[Invoices#XLSX_Invoices | XLSX Invoice]]<br />
*'''Invoice''' PDF shows separate services Prices and Total Invoice Prices, CSV shows just Total Invoice Prices.<br />
*'''Invoice detailed''' shows same information like simple Invoice and includes Calls list grouped by Destination.<br />
*'''Invoice by CallerID''' shows Calls list grouped by CallerID.<br />
*'''Invoice Destinations''' shows Calls list grouped by Destination. <br />
<br />
You can manage what kind of Invoice should be showed for User and/or sent to User as email attachment in [[User_Details#Invoices |User Details]]. Here you can check ''Show zero Calls'' option if you need to calculate 0 price Calls into Invoices.<br />
<br><br><br />
=== XLSX Invoices ===<br />
<br />
XLSX file to export an Invoice is made from your own XLSX format template and information from Invoices main window.<br />
Example of template can be downloaded for [http://www.kolmisoft.com/packets/x6_invoice_template.xlsx here].<br />
<br><br><br />
'''Default XLSX template'''<br />
<br />
Create a xlsx file. Template you can prepare as you wish, you can fill it with information of company, draw tables with column names, describe information taken from Invoice main window and so on. Template '''have to be uploaded in SETTINGS -> Setup -> Settings''', Invoices - XLSX tab setting '''XSLX Template'''<br />
* Check '''New XLSX template apply for old Invoices''' if you want to change XLSX template for Invoices which is already generated.<br />
* Check '''Group regular Calls by Destinations''' if you want XLSX file us as detailed Invoice.<br />
<br><br />
'''Balance Line settings'''<br />
<br />
''Outstanding balance (Debt)'', ''Outstanding balance (Debt) with TAX'', ''Total amount due'' options are present when ''Show balance line'' ('''SETTINGS -> Setup -> Settings''', Invoices - Postpaid - Settings) setting is enabled.<br />
<br><br><br />
'''Configuration for Dynamic information'''<br />
<br />
When you already have a template for example with all data of your company, with drawn tables and so on, you need to define where should be shown the dynamic information of invoice. How and what information is displayed can be set same '''SETTINGS -> Setup -> Settings''', Invoices - XLSX tab. Just need to define cell address in correct format. <br />
[[File:Setttings xlsx.png]]<br />
<br><br><br />
For example "A2", "B15", "AA9"<br />
<br><br><br />
[[File:callc.png]]<br />
<br><br><br />
<br />
'''NOTE''': If you do not want to use particular dynamic value just leave empty input for it.<br />
<br />
=== PDF invoices ===<br />
<br />
The layout of PDF invoices is not customizable. <br />
<br />
Logos are not supported in PDF invoices.<br />
<br />
You can print your invoices on paper with a pre-printed logo if you want to send paper invoices.<br />
<br><br><br />
=== CSV invoices ===<br />
<br />
Detailed CSV invoice does not include list of all calls. Please use [[How_to_export_CDRs|CDR export]] if you need list of calls in CSV format.<br />
<br><br><br />
<br />
==Comment==<br />
<br><br />
<!---This functionality is available from MOR 9---><br />
Sometimes it is useful to add a comment to the invoice. It can be used in xlsx file also.<br />
<br><br><br />
==Invoice Details==<br />
Click on the Invoice Details icon in the Invoice details page <br />
<br><br><br />
[[Image:Service_details.png]]<br />
<br><br><br />
to get Services Details of the Invoice: <br />
<br><br><br />
[[Image:invoice_services_x6.png]]<br />
<br><br><br />
'''Services:'''<br />
<br><br />
* '''SMS''' – quantity and price of SMS sent in selected period. Invoice for Reseller counts all SMS that was sent by his users using price for Reseller. Note, that SMS are included to Invoice only when [[SMS Addon]] is used<br />
* '''DID Owner Cost''' – price for having and using own DID(s)<br />
* '''Subscriptions''' – price of subscription applied to selected period. Period considered as month is from first till last day of month and from concrete day of month till next month one day before selected last month. Eg. from 2013-02-26 till 2013-03-25<br />
* '''Calls''' – quantity and price of outgoing calls<br />
* '''Calls from Users''' – quantity and price of resellers users calls<br />
* '''Calls to DIDs''' – price for calling to DID(s)<br />
<br><br><br />
<br />
= Invoice generation =<br />
<br />
In the main Invoices window, click [[Image:icon_generate_invoices.png]] '''Generate Invoices''' to generate additional invoices:<br />
<br><br><br />
[[Image:generate_invoices_x6.png]]<br />
<br><br><br />
Select for which users to generate invoices. Prepaid and Postpaid users can have separate details. Also, you can check to generate an invoice for only one particular user. Invoice will be generated if selected User existed at least one day of all Invoice period. When Invoice Generation Task is created, admin can check the progress in [[Background Tasks]]. <br />
<br />
'''NOTE:''' For Prepaid User after every executed Manual Payment will be generated Invoice automatically.<br><br />
<!---This functionality is available from MOR X5---><br />
'''NOTE:''' If Currency of User is different than default System Currency. All his Invoices will be generated with [[Currencies| Currency]] Exchange Rate of current day. <br><br />
'''NOTE:''' When generating invoice, current user details will be used. <br> <br />
<br><br><br />
<br />
= Invoice recalculation =<br />
<br />
An invoice cannot be modified after being sent. But if you want to allow recalculations after sending invoices, go to: '''Settings -> Setup -> Settings'''. Then click on the tabs: '''Invoices -> Functionality'''. Select ''Invoice allow recalculate after send'':<br />
<br><br><br />
[[Image:ivoicesnewnew.png]]<br />
<br><br><br />
===Recalculate a group of Invoices===<br />
<br />
To recalculate invoices in the main Invoices window click [[Image:icon_generate_invoices.png]] '''Recalculate invoices''':<br />
<br><br><br />
[[Image:recalc.png]]<br />
<br><br><br />
Select which type of Invoices or whose Invoices to recalculate.<br />
<br><br><br />
=== Recalculate a single Invoice ===<br />
<br />
If an invoice is not marked as paid - it can be recalculated for the same user, same period. To achieve this - press the marked icon:<br />
<br><br><br />
[[File:Recalculate_single_invoice_x6.png]]<br />
<br><br><br />
<br />
= Pay unpaid Invoices =<br />
<br />
In list of Invoices click [[Image:icon_edit.png]]'''Bulk management''' and button '''Pay unpaid Invoices''' will appear.<br />
<br><br><br />
[[File:Pay_unpaid_invocies.png]]<br />
<br><br><br />
Click '''Pay unpaid Invoices''' and '''All''' unpaid Invoices will be marked as paid. For each marked Invoice Payment will be created.<br />
<br><br><br />
<br />
<br />
= Delete all Invoices =<br />
<br />
In list of Invoices click [[Image:icon_edit.png]]'''Bulk management''' and button '''Delete all invoices''' will appear.<br />
<br><br><br />
[[File:Delete_all_invoices.png]]<br />
<br><br><br />
Click '''Delete all invoices''' and '''all Invoices owned by a current User''' will be deleted (search filter settings do not affect the process). <br />
<br><br><br />
'''Note:''' Invoices, which were already sent, are possible to delete only with option enabled in: Invoices->Functionality-> Invoice allow recalculate after send.<br />
<br><br><br />
<br />
= Send invoices by email (manual) =<br />
<br />
Click '''Send Invoices over Email to Users''' to send invoices to their Users in this period:<br />
<br><br><br />
[[Image:Invoce email.png]]<br />
<br><br><br />
You can use these settings to choose which users should get an email with the invoice. Using these settings you can send emails in parts.<br />
<br><br />
* '''Email sending''' option must be enabled in Email Settings to use this feature<br />
* Tip: you can '''send invoices in parts''' by using text fields to send invoices for users which '''Username, First name, Last name''' or '''Number''' begins with some letters. For example: you have users with usernames john, albert and alex. You want to send invoices only for users whose usernames begins with '''"a"''' so you just have to enter '''"a"''' in a '''Username text field''' to send invoices only to albert and alex.<br />
<br />
<br />
<br><br><br />
<br />
= Generate and send invoices by email (automatically) =<br />
<br />
Use [http://wiki.kolmisoft.com/index.php/Cron_actions#Generate_Invoices_and_send_by_Email Cron Actions] to Generate and send Emails automatically.<br />
<br />
<br><br><br />
<br />
=See also=<br />
<br />
* [[Accounting]]<br />
* [[Invoice configuration]]<br />
* [[Pay Invoice with balance deduction]]<br />
* [[Outstanding balance(Debt)]]<br />
* [[Invoice by CallerID]]<br />
* [[MOR API invoices_get]]<br />
* [[Cannot generate Invoice]]<br />
* [[Duplicate value in Cell Address field]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=File:Setttings_xlsx.png&diff=21986File:Setttings xlsx.png2017-02-07T17:00:17Z<p>Tomas: </p>
<hr />
<div></div>Tomashttps://wiki.kolmisoft.com/index.php?title=Invoices&diff=21911Invoices2017-01-10T13:35:20Z<p>Tomas: </p>
<hr />
<div>= Description =<br />
<br />
An invoice, bill or tab is a commercial document issued by a seller to a buyer, relating to a sale transaction and indicating the products, quantities, and agreed prices for products or services the seller had provided the buyer.<br />
<br><br><br />
= Configuration =<br />
<br />
You can manage Invoices settings, details, Address information and functionality in the Invoices section of the [[Configuration_from_GUI#Invoices | SETTINGS -> Setup -> Settings]] window.<br><br />
If you want show user_billsec instead of billsec in Users invoices and last calls, go to [[Configuration_from_GUI#Visual | Settings –> Various]] and check ''Show user_billsec for Users instead of billsec''<br />
<br><br><br />
<br />
Go to User's edit page to enable or disable types of invoices he can see in his invoices details. And also these selected types will be the ones that are sent to user via email. <br />
<br />
[[File:Invoice types.png]]<br />
<br />
=Invoices list=<br />
<br />
Invoices can be viewed, generated, recalculated, sent, also <!---...from MOR 9---> list of Invoices can be exported to CSV file (Invoice number is included in the output data) in '''SETTINGS –> Accounting –> Invoices'''. In the main window, you can see list of all Invoices:<br />
<br><br><br />
[[Image:Invoice list small.png]]<br />
<br><br><br />
The icons [[Image:icon_check.png]] and [[Image:icon_cross.png]] show whether this invoice is Paid or Unpaid, Sent or Not Sent. <br />
<br><br />
'''NOTE''' Each Invoice generated in particular Time Zone and on particular Currency. That means that in each line of Invoice Price and Price with TAX will be shown in currency which is written in Currency column. The Currency column tells which currency Invoice was generated with. Also the exchange rate at the invoice generation moment is saved in the database so it may differ from the up to date exchange rate.<br />
<br><br />
Total Price and Price with TAX are calculated into viewing Currency, which you can choose in upper corner of page. In Total price calculation there are used saved exchange Rate of each Invoice.<br />
<br><br><br />
'''Example'''<br />
<br><br><br />
Default system Currency is USD<br />
<br><br />
Invoice A is generated on price = 100 in currency EUR with exchange rate 0.5<br><br />
Invoice B is generated on price = 100 in currency DZD with exchange rate 0.25<br><br />
Invoice C is generated on price = 100 in currency ALL with exchange rate 0.75<br><br />
<br><br />
But now exchange rate are different: EUR - 0.75, DZD - 0.5 and ALL - 1.0. <br><br />
<br><br />
If you want to see Total price(sum of these 3 Invoices) in EUR. For Invoice B and C will be set exchange rate of today, but for Invoice A exchange rate will be from that day when Invoice was generated (0.5).<br><br />
<br />
Same calculations with other currencies:<br><br />
If you want to see Total price in USD. For Invoice A, B and C the exchange rates will be set from the day when invoice was generated (EUR - 0.5, DZD - 0.25 and ALL - 0.75).<br><br />
If you want to see Total price in DZD. For Invoice A and C will be set exchange rate of today, but for Invoice B exchange rate will be from the day when Invoice was generated (0.25).<br><br />
If you want to see Total price in ALL. For Invoice A and B will be set exchange rate of today, but for Invoice C exchange rate will be from the day when Invoice was generated (0.75).<br><br />
<br><br />
Total price will be 733.3333 USD, or 500 EUR, or 266.6667 DZD, or 700 ALL<br><br />
<br><br><br />
<br />
=Invoice details=<br />
<br />
Click on the [[Image:icon_details.png]] icon to get details of the Invoice:<br />
<br><br><br />
[[Image:invoice_details_x6.png]]<br />
<br><br><br />
Invoice details are shown in Currency which was used to generate Invoice. <br />
<br><br><br />
==General Details==<br />
<br />
'''Payment date''' - An option which will set the period of payment on current month. By default ''Years'' and ''Month'' is current, it is only possible to change ''Day of Month'' which is indicating the last date of ''Invoice'' issue.<br><br />
'''Currecy of Invoice''' - <!---This functionality is available from MOR X6---> Invoices are exported in Invoice currency.<br />
<br />
'''Language of Invoice'''<br />
<br><br />
Default language in MOR is English. However, you can send invoices in different languages (click on the flag icon on the top of the page).<br />
<br><br><br />
<br />
==User Details==<br />
<br />
User Details which will be used in xlsx file of invoice. These Details are taken form [[User Details]] and it can be changed manually, but after recalculate it will be reset to same information as it is in [[User Details]].<br />
<br><br><br />
==Files to send or download==<br />
<br />
Here you can view the details of all invoices and click on the [[Image:icon_pdf.png]] or [[Image:icon_csv.png]] icons to generate invoice files in PDF or CSV formats accordingly. First icon [[Image:icon_csv.png]] will download a xlsx file.<br />
<br />
*'''Invoice XLSX''' xlsx file shows information which are set by you. Check [[Invoices#XLSX_Invoices | XLSX Invoice]]<br />
*'''Invoice''' PDF shows separate services Prices and Total Invoice Prices, CSV shows just Total Invoice Prices.<br />
*'''Invoice detailed''' shows same information like simple Invoice and includes Calls list grouped by Destination.<br />
*'''Invoice by CallerID''' shows Calls list grouped by CallerID.<br />
*'''Invoice Destinations''' shows Calls list grouped by Destination. <br />
<br />
You can manage what kind of Invoice should be showed for User and/or sent to User as email attachment in [[User_Details#Invoices |User Details]]. Here you can check ''Show zero Calls'' option if you need to calculate 0 price Calls into Invoices.<br />
<br><br><br />
=== XLSX Invoices ===<br />
<br />
XLSX file to export an Invoice is made from your own XLSX format template and information from Invoices main window.<br />
Example of template can be downloaded for [http://www.kolmisoft.com/packets/x6_invoice_template.xlsx here].<br />
<br><br><br />
'''Default XLSX template'''<br />
<br />
Create a xlsx file. Template you can prepare as you wish, you can fill it with information of company, draw tables with column names, describe information taken from Invoice main window and so on. Template '''have to be uploaded in SETTINGS -> Setup -> Settings''', Invoices - XLSX tab setting '''XSLX Template'''<br />
* Check '''New XLSX template apply for old Invoices''' if you want to change XLSX template for Invoices which is already generated.<br />
* Check '''Group regular Calls by Destinations''' if you want XLSX file us as detailed Invoice.<br />
<br><br />
'''Balance Line settings'''<br />
<br />
''Outstanding balance (Debt)'', ''Outstanding balance (Debt) with TAX'', ''Total amount due'' options are present when ''Show balance line'' ('''SETTINGS -> Setup -> Settings''', Invoices - Postpaid - Settings) setting is enabled.<br />
<br><br><br />
'''Configuration for Dynamic information'''<br />
<br />
When you already have a template for example with all data of your company, with drawn tables and so on, you need to define where should be shown the dynamic information of invoice. How and what information is displayed can be set same '''SETTINGS -> Setup -> Settings''', Invoices - XLSX tab. Just need to define cell address in correct format. <br />
<br />
For example "A2", "B15", "AA9"<br />
<br><br><br />
[[File:callc.png]]<br />
<br><br><br />
<br />
'''NOTE''': If you do not want to use particular dynamic value just leave empty input for it.<br />
<br />
=== PDF invoices ===<br />
<br />
The layout of PDF invoices is not customizable. <br />
<br />
Logos are not supported in PDF invoices.<br />
<br />
You can print your invoices on paper with a pre-printed logo if you want to send paper invoices.<br />
<br><br><br />
=== CSV invoices ===<br />
<br />
Detailed CSV invoice does not include list of all calls. Please use [[How_to_export_CDRs|CDR export]] if you need list of calls in CSV format.<br />
<br><br><br />
<br />
==Comment==<br />
<br><br />
<!---This functionality is available from MOR 9---><br />
Sometimes it is useful to add a comment to the invoice. It can be used in xlsx file also.<br />
<br><br><br />
==Invoice Details==<br />
Click on the Invoice Details icon in the Invoice details page <br />
<br><br><br />
[[Image:Service_details.png]]<br />
<br><br><br />
to get Services Details of the Invoice: <br />
<br><br><br />
[[Image:invoice_services_x6.png]]<br />
<br><br><br />
'''Services:'''<br />
<br><br />
* '''SMS''' – quantity and price of SMS sent in selected period. Invoice for Reseller counts all SMS that was sent by his users using price for Reseller. Note, that SMS are included to Invoice only when [[SMS Addon]] is used<br />
* '''DID Owner Cost''' – price for having and using own DID(s)<br />
* '''Subscriptions''' – price of subscription applied to selected period. Period considered as month is from first till last day of month and from concrete day of month till next month one day before selected last month. Eg. from 2013-02-26 till 2013-03-25<br />
* '''Calls''' – quantity and price of outgoing calls<br />
* '''Calls from Users''' – quantity and price of resellers users calls<br />
* '''Calls to DIDs''' – price for calling to DID(s)<br />
<br><br><br />
<br />
= Invoice generation =<br />
<br />
In the main Invoices window, click [[Image:icon_generate_invoices.png]] '''Generate Invoices''' to generate additional invoices:<br />
<br><br><br />
[[Image:generate_invoices_x6.png]]<br />
<br><br><br />
Select for which users to generate invoices. Prepaid and Postpaid users can have separate details. Also, you can check to generate an invoice for only one particular user. Invoice will be generated if selected User existed at least one day of all Invoice period. When Invoice Generation Task is created, admin can check the progress in [[Background Tasks]]. <br />
<br />
'''NOTE:''' For Prepaid User after every executed Manual Payment will be generated Invoice automatically.<br><br />
<!---This functionality is available from MOR X5---><br />
'''NOTE:''' If Currency of User is different than default System Currency. All his Invoices will be generated with [[Currencies| Currency]] Exchange Rate of current day. <br><br />
'''NOTE:''' When generating invoice, current user details will be used. <br> <br />
<br><br><br />
<br />
= Invoice recalculation =<br />
<br />
An invoice cannot be modified after being sent. But if you want to allow recalculations after sending invoices, go to: '''Settings -> Setup -> Settings'''. Then click on the tabs: '''Invoices -> Functionality'''. Select ''Invoice allow recalculate after send'':<br />
<br><br><br />
[[Image:ivoicesnewnew.png]]<br />
<br><br><br />
===Recalculate a group of Invoices===<br />
<br />
To recalculate invoices in the main Invoices window click [[Image:icon_generate_invoices.png]] '''Recalculate invoices''':<br />
<br><br><br />
[[Image:recalc.png]]<br />
<br><br><br />
Select which type of Invoices or whose Invoices to recalculate.<br />
<br><br><br />
=== Recalculate a single Invoice ===<br />
<br />
If an invoice is not marked as paid - it can be recalculated for the same user, same period. To achieve this - press the marked icon:<br />
<br><br><br />
[[File:Recalculate_single_invoice_x6.png]]<br />
<br><br><br />
<br />
= Pay unpaid Invoices =<br />
<br />
In list of Invoices click [[Image:icon_edit.png]]'''Bulk management''' and button '''Pay unpaid Invoices''' will appear.<br />
<br><br><br />
[[File:Pay_unpaid_invocies.png]]<br />
<br><br><br />
Click '''Pay unpaid Invoices''' and '''All''' unpaid Invoices will be marked as paid. For each marked Invoice Payment will be created.<br />
<br><br><br />
<br />
<br />
= Delete all Invoices =<br />
<br />
In list of Invoices click [[Image:icon_edit.png]]'''Bulk management''' and button '''Delete all invoices''' will appear.<br />
<br><br><br />
[[File:Delete_all_invoices.png]]<br />
<br><br><br />
Click '''Delete all invoices''' and '''All''' listed Invoices will be deleted.<br />
<br><br><br />
<br />
= Send invoices by email (manual) =<br />
<br />
Click '''Send Invoices over Email to Users''' to send invoices to their Users in this period:<br />
<br><br><br />
[[Image:Invoce email.png]]<br />
<br><br><br />
You can use these settings to choose which users should get an email with the invoice. Using these settings you can send emails in parts.<br />
<br><br />
* '''Email sending''' option must be enabled in Email Settings to use this feature<br />
* Tip: you can '''send invoices in parts''' by using text fields to send invoices for users which '''Username, First name, Last name''' or '''Number''' begins with some letters. For example: you have users with usernames john, albert and alex. You want to send invoices only for users whose usernames begins with '''"a"''' so you just have to enter '''"a"''' in a '''Username text field''' to send invoices only to albert and alex.<br />
<br />
<br />
<br><br><br />
<br />
= Generate and send invoices by email (automatically) =<br />
<br />
Use [http://wiki.kolmisoft.com/index.php/Cron_actions#Generate_Invoices_and_send_by_Email Cron Actions] to Generate and send Emails automatically.<br />
<br />
<br><br><br />
<br />
=See also=<br />
<br />
* [[Accounting]]<br />
* [[Invoice configuration]]<br />
* [[Pay Invoice with balance deduction]]<br />
* [[Outstanding balance(Debt)]]<br />
* [[Invoice by CallerID]]<br />
* [[MOR API invoices_get]]<br />
* [[Cannot generate Invoice]]<br />
* [[Duplicate value in Cell Address field]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=File:Delete_all_invoices.png&diff=21908File:Delete all invoices.png2017-01-10T13:31:00Z<p>Tomas: </p>
<hr />
<div></div>Tomashttps://wiki.kolmisoft.com/index.php?title=File:Pay_unpaid_invocies.png&diff=21907File:Pay unpaid invocies.png2017-01-10T13:30:49Z<p>Tomas: </p>
<hr />
<div></div>Tomashttps://wiki.kolmisoft.com/index.php?title=Privacy_to_hide_Source_number&diff=21886Privacy to hide Source number2017-01-09T15:51:51Z<p>Tomas: </p>
<hr />
<div><!---This functionality is available from MOR 9---><br />
= Description =<br />
<br />
This functionality hides source number for user if requered <br />
<br />
In MOR it is possible to set up User, that his source number would be hidden when setting in user edit checked and Privacy header of call is presented.<br />
<br />
Destinations are hidden only for End Users.<br />
<br />
It is possible to hide Destinations in three places:<br />
<br />
* GUI - what users see on the monitor.<br />
* CSV - in CSV file reports.<br />
* PDF - in PDF invoices/reports.<br />
<br />
<br><br><br />
<br />
= Per User settings =<br />
<br />
In Users details, '''Hide CallerID if Privacy header is presented''' setting for this User:<br />
<br><br><br />
[[Image:Hide_callerid_if_header_is_present.png]]<br />
<br><br></div>Tomashttps://wiki.kolmisoft.com/index.php?title=File:Hide_callerid_if_header_is_present.png&diff=21885File:Hide callerid if header is present.png2017-01-09T15:46:49Z<p>Tomas: </p>
<hr />
<div></div>Tomashttps://wiki.kolmisoft.com/index.php?title=Privacy_to_hide_Source_number&diff=21884Privacy to hide Source number2017-01-09T15:38:14Z<p>Tomas: </p>
<hr />
<div><!---This functionality is available from MOR 9---><br />
= Description =<br />
<br />
This functionality hides source number for user if requered <br />
<br />
<br />
In MOR it is possible to set up User, that his source number would be hidden.<br />
<br />
Destinations are hidden only for End Users.<br />
<br />
It is possible to hide Destinations in three places:<br />
<br />
* GUI - what users see on the monitor.<br />
* CSV - in CSV file reports.<br />
* PDF - in PDF invoices/reports.<br />
<br />
<br><br><br />
<br />
<br />
In Users details, set to use Global settings or select different settings just for this User:<br />
<br><br><br />
[[Image:per_user_privacy.png]]<br />
<br><br><br />
= How it looks =</div>Tomashttps://wiki.kolmisoft.com/index.php?title=Privacy_to_hide_Source_number&diff=21883Privacy to hide Source number2017-01-09T15:35:57Z<p>Tomas: Created page with '<!---This functionality is available from MOR 9---> = Description = This functionality hides source number for user if requered In MOR it is possible to set up User, that his…'</p>
<hr />
<div><!---This functionality is available from MOR 9---><br />
= Description =<br />
<br />
This functionality hides source number for user if requered <br />
<br />
<br />
In MOR it is possible to set up User, that his source number would be hidden.<br />
<br />
Destinations are hidden only for End Users.<br />
<br />
It is possible to hide Destinations in three places:<br />
<br />
* GUI - what users see on the monitor.<br />
* CSV - in CSV file reports.<br />
* PDF - in PDF invoices/reports.<br />
<br />
<br><br></div>Tomashttps://wiki.kolmisoft.com/index.php?title=Online_registration&diff=21882Online registration2017-01-09T15:28:19Z<p>Tomas: </p>
<hr />
<div>This function lets a user register online. It can be accessed in MOR's entry page by clicking on: '''If you are new user you can signup here:'''<br />
<br><br><br />
[[Image:Registration1X3.png]]<br />
<br><br><br />
'''NOTE:''' Registration should be enabled in '''SETTINGS –> Setup –> Settings –> [[Configuration from GUI#Registration | Registration]]''' in order to work.<br />
<br />
In the following window, the user should enter his details. Fields marked by * are mandatory:<br />
<br><br><br />
[[Image:Registration2X3.png]]<br />
<br><br><br />
'''Note:''' if phone number is entered, it will be automatically added as [[CLIs_(Incoming_CallerIDs)|CLI]] for user device.<br />
<br />
<br />
After clicking on '''Sign up''', the user is registered, his account is created and he will see connection info on his screen:<br />
<br><br><br />
[[Image:Registration3X3.png]]<br />
<br><br><br />
If email sending is enabled (in Settings) and the email SMTP server details are valid, the user will receive an mail containing all the settings. The administrator will also get an email with information about the user who has registered with the system. These two settings should also be enabled.<br />
<br />
If you have set every setting to send email to Admin or Reseller when a new user registers, but no email arrives - check whether you have Email set for Admin user.<br />
<br><br><br />
=See also=<br />
<br />
* [[Configuration from GUI#Registration | Registration Configuratin]]<br />
* [[ReCAPTCHA]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=Payments&diff=21741Payments2016-12-13T16:20:38Z<p>Tomas: /* Initial balance */</p>
<hr />
<div>= Definition =<br />
<br />
A Payment is created when a user pays the system owner for some Service:<br />
<br />
[[Image:payments_list.png]]<br />
<br />
<br />
Possible payment types are:<br />
<br />
* '''Card''' - when a card is bought.<br />
* '''Invoice''' - when an invoice is paid.<br />
* '''Paypal''' - when a payment is made using Paypal.<br />
* '''Webmoney''' - when a payment is made using WebMoney.<br />
* '''Linkedin''' - when a payment is made using Linkedin.<br />
* '''Cyberplat''' - when a payment is made using Cyberplat.<br />
* '''Voucher''' - when a Voucher is used.<br />
* '''Subscription''' - for Prepaid users when charged for a subscription.<br />
* '''Manual''' - a manually added payment.<br />
* '''Credit note''' - when a [[Credit notes|credit note]] is paid.<br />
* '''Initial balance''' - it's a user's primary balance.<br />
<br><br><br />
<br />
= Manual payments = <br />
<br />
Sometimes customers send money through a bank or other means, or they might use some online gateway not implemented in MOR. To handle such transactions, MOR has Manual Payments.<br />
<br><br><br />
When a user sends an amount to you as the owner, you need to enter this amount into MOR using the Manual Payment window, which can be found in '''SETTINGS''' –> '''Accounting''' –> '''Payments''' –> [[Image:icon_add.png]]'''Add manual payment'''.<br />
<br />
The first window lets you choose the user and enter the amount (with TAX) in the selected currency:<br />
<br><br><br />
[[Image:manual_payment1.png]]<br />
<br><br><br />
Also you are able to put some private comments or dedicated for User. <br />
Next, click ''Proceed'' to see the calculated values for this Payment:<br />
<br><br><br />
[[Image:manual_payment2.png]]<br />
<br><br><br />
Click ''Confirm'' to enter this payment, which can be seen in the Payments window:<br />
<br><br><br />
[[Image:manual_payment3.png]]<br />
<br><br><br />
By clicking [[file:icon_comment_edit.png]] you will see the editable entered comment of a payment. <br />
<br />
After payment is entered, the user's balance will increase and he will see the payment in his Payment sections. <br />
<br />
The Administrator can delete this payment by the User. After it is deleted, the user's account will decrease accordingly.<br />
<br />
Use '''negative payment''' to remove money from a user's balance.<br />
<br />
An invoice is created for PREPAID users, once a Manual payment is made.<br />
<br><br><br />
<br />
=Initial balance=<br />
<br />
Initial balance is the balance that was added to user during its creation. Initial balance is valid for registered users (via GUI or API), users created by admin and users created by reseller. <br />
<br />
<br />
[[File:Payments initial 2.png]]<br />
<br />
<br />
Initial balance lets you see user's primary balance without CLI.<br />
<br />
=See also=<br />
<br />
* [[Accounting]]<br />
* [[Payment Gateway Addon]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=File:Payments_initial_2.png&diff=21740File:Payments initial 2.png2016-12-13T16:20:02Z<p>Tomas: </p>
<hr />
<div></div>Tomashttps://wiki.kolmisoft.com/index.php?title=Call_Tracing&diff=21713Call Tracing2016-12-12T15:57:27Z<p>Tomas: /* Device testing */</p>
<hr />
<div><mkmeta>How to trace MOR Call</mkmeta><br />
= MOR Call Tracing Overview = <br />
<br />
This function is for checking the setup of MOR in order to be sure a user will be able to dial out. To set MOR up isn't simple, but we are trying to make it easier with this manual and with improvements to GUI. It often happens that users miss some important detail while trying to make everything work. Call Tracing will save a lot of head-scratching, and we hope it will be helpful for beginners.<br />
<br />
<br />
This function can be found in '''SETTINGS –> Billing –> Function –> Call Tracing'''. It can be quickly accessed in the Users menu (SETTINGS –> Users) as well. Just click on the [[Image:icon_call_tracing.png]] icon for a user.<br />
<br />
In the first window, we have to select which user we want to check:<br />
<br />
<br />
[[Image:calltracing1.png]]<br />
<br />
= User testing = <br />
<br />
The next window shows us whether we have configured everything properly for the selected user. Let's look at each section separately. <br />
<br />
The first section shows information special to the user:<br />
<br />
[[Image:calltracing2.png]]<br />
<br />
<br />
<br />
Here we see four errors [[Image:icon_cross.png]] that prevent the user from operating. Let's say we want to allow a user to make calls. We will go through each of the errors and fix them.<br />
<br />
<br />
1. This error tells us that the user is Blocked and so unable to make calls. We should go to [[User Details]] and unblock him.<br />
<br />
2. Balance and Credit for this user are empty, and the user type is Prepaid. That means he has no funds to cover the call fees. There are several ways to go about fixing this:<br />
<br />
* If the user is postpaid, he should use some payment method to increase his balance. [[PayPal]] and [[Payments | Manual Payment]], among others, are good ways to do this.<br />
* We can change the user type to postpaid and then we should adjust his credit. Maybe it is unlimited, maybe some limit exists. But this will allow the user to dial out.<br />
<br />
3. We see that the user has assigned a tariff and a type of tariff. The type of tariff is just for informational purposes. Here 'Explanation' tells us that Tariff is empty. That is the reason why the user is not able to dial out. In addition, the user can dial out only to those destinations which have rates. Currently none of them has. You need to add some rates to the existing tariff or assign a non-empty tariff to this user.<br />
<br />
4. The user has no devices. A Device is necessary in order to dial out. Just create one for this user.<br />
<br />
<br />
After solving all these issues, we should see:<br />
<br />
[[Image:calltracing3.png]]<br />
<br />
<br />
<br />
<br><br><br />
<br />
= Device testing = <br />
<br />
The following section lets us choose a Device, Source, Server, Destination and a Call Time we want to test. For example:<br />
<br />
[[Image:Device call tracing.png]]<br />
<br />
<br />
<br />
This data means that we are testing a virtual call from device IAX1/101 to number 863042438 on 2016 September 28th 12:59.<br />
<br />
When we click '''Trace Call''', we will go to the next page and we will see something like:<br />
<br />
[[Image:New mor call tracing.png]]<br />
<br />
<br />
<br />
The '''Details''' section shows us just routine information. We already knew this information, so it is not important.<br />
<br />
<br />
Call Tracing Log will show self explanatory warnings, errors (in red colored text) and other messages. <br />
<br />
<br />
<br><br><br />
<br />
=From Accountant=<br />
<br />
Accountant must have '''Call tracing usage''' permission in [[Accountant_permissions | Accountant permissions group]] to use this functionality.</div>Tomashttps://wiki.kolmisoft.com/index.php?title=File:Device_call_tracing.png&diff=21712File:Device call tracing.png2016-12-12T15:56:31Z<p>Tomas: </p>
<hr />
<div></div>Tomashttps://wiki.kolmisoft.com/index.php?title=File:Ct1.png&diff=21711File:Ct1.png2016-12-12T15:56:01Z<p>Tomas: uploaded a new version of "File:Ct1.png"</p>
<hr />
<div></div>Tomashttps://wiki.kolmisoft.com/index.php?title=Emails&diff=21542Emails2016-11-08T17:02:42Z<p>Tomas: /* Where I can find Emails? */</p>
<hr />
<div>=What are Emails?=<br />
<br />
This function is used to send emails to your clients. It can be used to send commercials, notes about service unavailability or anything else – maybe Christmas greetings!<br />
<br><br><br />
<br />
=Where I can find Emails?=<br />
<br />
This function can be found in '''SETTINGS –> Setup –> Emails''':<br />
<br><br><br />
[[File:emails_path.png]]<br />
<br><br><br />
Here you see emails which are templates for emails about various system messages.<br />
<br><br />
* '''registration_confirmation_for_user''' - User will get after he registers new account via [[Online registration]].<br />
* '''registration_confirmation_for_admin''' - Admin will get after new User is registered.<br />
* '''cyberplat_announce''' - will be sent after [[CyberPlat Payment Gateway | CuberPlat payment]] will be made.<br />
* '''invoices''' - customer will get his [[Invoices|Invoice]] files when they are will be sent [[Invoices#Send_invoices_by_email_.28manual.29|manually]].<br />
* '''calling_cards_data_to_paypal''' - will be sent after [[MOR API card from group sell | card_from_group_sell API method]] usege if email address will be given.<br />
* '''warning_balance_email''' - User will get when balance becomes lower than [[Warning balance]].<br />
* '''recording_new''' - will be sent after new recording is created.<br />
* '''recording_delete''' - will be sent after recording is deleted.<br />
* '''block_when_no_balance''' - will be sent after account is blocked due insufficient balance.<br />
* '''payment_notification_integrations''' - will be sent after MOR has received a payment notification from [[PayPal| PayPal Standard]] which requires a confirmation in order to complete the transaction.<br />
* '''payment_notification_regular''' - will be sent after MOR has received a payment notification from [[Payment_Gateway_Addon |Payment Gateway]] which requires a confirmation in order to complete the transaction.<br />
* '''password_reminder''' - will be sent after MOR has received a [[MOR forgot user password|User password reminder]] request.<br />
* '''warning_balance_email_local''' - Admin or/and Accountant gets warning when Users' balance becomes lower than [[Warning balance]].<br />
* '''server_low_free_space''' - will be sent when free space is to low in some of Servers. Information about the Server and the remaining free space will be provided.<br />
* '''device_changes_announcement''' - will be sent after each modification of Device if "Inform when Devices are created or updated" is checked in [[Configuration_from_GUI#Various|Various]] settings tab.<br />
<br><br><br />
Next is how to [[Image:icon_edit.png]] edit email. Creating email and editing it are very similar processes. Here is how to edit:<br />
<br><br><br />
[[Image:email2.png]]<br />
<br><br><br />
The '''Name''' and '''Subject''' fields are simple. The most important field is '''Message text'''. Here you enter message for the user. Also, you can use the following [[Email_variables|variables]] here:<br />
<br />
<%= server_ip %> - Server IP where your users should register their SIP/IAX2 devices.<br />
<%= device_type %> - Used on user registration - shows the device type the user has selected.<br />
<%= device_username %> - Used on user registration - shows the device's username.<br />
<%= device_password %> - Used on user registration - shows device's password.<br />
<%= login_url %> - GUI login url.<br />
<%= login_username %> - User's username to login to GUI.<br />
<%= login_password %> - User's password to login to GUI.<br />
<%= username %> - same as login_username.<br />
<%= first_name %> - First name of the user.<br />
<%= last_name %> - Last name of the user.<br />
<%= full_name %> - First name and last name of the user.<br />
<br />
Click on '''Change''' to save any of these variables.<br />
<br />
'''Full list of MOR supported [[Email_variables|email variables]] can be found [[Email_variables|HERE]]'''<br />
<br />
<br />
<br />
In the main window ('''SETTINGS –> Setup –> Emails'''), you can press on [[Image:icon_email.png]] icon to select to which recipients to send this email:<br />
<br />
[[Image:Send email.png]]<br />
<br />
<br><br />
Note: only custom templates created by administrator can be sent using this feature.<br />
<br />
=Additional Notes=<br />
* [[Configuration_from_GUI#Emails|Emails sending]] must be enabled to use this functionality<br />
* Full list of MOR supported [[Email_variables|email variables]] can be found [[Email_variables|HERE]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=File:Send_email.png&diff=21541File:Send email.png2016-11-08T17:02:12Z<p>Tomas: </p>
<hr />
<div></div>Tomashttps://wiki.kolmisoft.com/index.php?title=Configuration_from_GUI&diff=21540Configuration from GUI2016-11-08T16:43:54Z<p>Tomas: /* Visual */</p>
<hr />
<div>=Where I can find this settings menu?=<br />
<br />
You can find this menu in '''SETTINGS –> Setup –> Settings'''<br />
<br />
[[File:Settings_path.png]]<br />
<br><br><br />
== Global ==<br />
<br />
'''SETTINGS –> Setup –> Settings –> [[Global_Settings | Global]]'''<br />
<br />
* '''Company''' – name of the company.<br />
* '''Company email''' – email address of the company.<br />
* '''Version''' – version number.<br />
* '''Copyright Title''' – copyright title supports html text format.<br />
* '''Browser Title''' – browser title for MOR GUI.<br />
* '''Front Page Text''' – some text to place on front page.<br />
* '''Login Page Text''' – some text to place on login page<br />
<br><br><br />
<br />
== Registration == <br />
<br />
'''SETTINGS –> Setup –> Settings –> Registration'''<br />
<br />
* '''Enabled?''' – do we want to let users [[Online registration | register online]] automatically?<br />
* '''Hide registration link in Login page?''' – tick this option if you do not want users to be able to register online.<br />
* '''Default country'''<br />
* '''Asterisk server IP''' – what IP should user connect his softphone/server to?<br />
* '''Send email to user after registration''' – just yes or no.<br />
* '''Send email to admin after registration''' – just yes or no.<br />
* '''[[ReCAPTCHA]] configuration'''<br />
* '''[[User_Agreement|Terms and conditions]]'''<br />
* '''Allow to create user and device with matching username and password''' – just yes or no. If this setting is not enabled - username and password from MOR GUI will have to be different than device's username and password.<br />
* '''Enable VAT checking for EU companies''' – you can choose whether to check '''TAX Registration Number:''' during the [[Online registration]] or not. Done over [http://ec.europa.eu/taxation_customs/vies/?locale=lt EU page].<br />
* '''Allow blank VAT for EU companies''' – allows to leave blank '''TAX Registration Number:''' field during the [[Online registration]]<br />
<br><br><br />
===See also===<br />
<br />
* [[Default user]]<br />
<br><br><br />
<br />
== Invoices ==<br />
<br />
'''SETTINGS –> Setup –> Settings –> Invoices'''<br />
<br />
Invoice configuration is divided into '''Prepaid''' and '''Postpaid'''. <br />
<br><br><br />
=== Settings ===<br />
<br />
* '''Number start''' – how the invoice number should start.<br />
* '''Number length''' – the length in digits AFTER Number Start – e.g. Number Start is not counted into this length. This value is active only for first number type.<br />
* '''Number type''' – select more appropriate number format.<br />
* '''Invoice period start''' – when invoices are issued, default is first day of the month.<br />
* '''Show calls in detailed invoice''' – yes or no.<br />
* '''[[Outstanding balance(Debt) | Show balance line]]''' – shows balance line in Invoice PDF files when Invoice is generated from first day of month till last one. <br />
* '''Round finals to 2 decimals''' – round or not total in Invoices to 2 decimals.<br />
* '''Use short file name'''<br />
* '''Group Subscriptions''' - User's subscriptions will be grouped by service (only applies to PDF and XLSX invoice).<br />
* '''Invoice Page Limit:''' – invoice will be generated till this page limit. Additional page is added with an explanation that page limit was reached. <br />
<br><br><br />
<br />
=== Details ===<br />
<br />
* '''Address format''' – changes field positioning in the invoice for the address. You must select it in order to show address in the invoice. <br />
* '''Address line 1-4''' – address info.<br />
* '''Bank details line 1-5''' – bank details info.<br />
* '''Invoice balance line''' – line for balance (e.g. "Your current balance is")<br />
* '''Invoice to pay Line'''<br />
* '''End title''' – a title for the end of your invoice.<br />
<!---This functionality is available from MOR 12---><br />
* '''Add Average rate in detailed invoice''' – adds average rate in detailed invoice.<br />
* '''Show Time in Minute''' – shows time in mm:ss instead of hh:mm:ss, for example, not 02:13:42 but 133:42.<br />
<br><br><br />
<br />
=== Additional ===<br />
<br />
* '''Show additional details on separate page''' – enables additional custom page at the end of the invoice.<br />
* '''Additional details''' – the information to be displayed in a custom page at the end of the invoice.<br />
<br><br><br />
=== Functionality ===<br />
<br />
* '''Invoice allow recalculate after send''' – allows recalculating invoices after being sent.<br />
<br><br><br />
===See also===<br />
<br />
* [[Invoices]]<br />
* [[Invoice configuration]]<br />
<br><br><br />
<br />
== Emails ==<br />
<br />
'''SETTINGS –> Setup –> Settings –> Emails'''<br />
<br />
* ''' Sending globally enabled''' – if this is checked, you will be able to use Mass Mailing and the system will send emails upon user registration.<br />
* '''SMTP server''' – hostname of the server.<br />
* '''Port''' – port of SMTP server.<br />
* '''Login''' – username to your SMTP server.<br />
* '''Password''' – password to your SMTP server.<br />
* '''Batch size''' – value for Mass Mailing, or how many emails to send at once.<br />
* '''From''' – email address to put into From: field in email. It is required to fill in(correctly) this field if email sending is enabled.<br />
* '''Test email sending''' – save settings and press this to test email sending. Do not forget to save settings first!<br />
<br />
'''P.S. Remember to set admin's e-mail in admin's personal settings. Without this test email sending will not work!'''<br />
<br />
<br><br><br />
===See also===<br />
<br />
* [[Emails|Mass Emails]]<br />
* [[Email variables]]<br />
<br><br><br />
== Various ==<br />
<br />
'''SETTINGS –> Setup –> Settings –> Various'''<br />
<br />
* '''Days for DID to close''' – how long to keep DID closed before making it free.<br />
* '''Agreement number length''' – number length in digits.<br />
* '''Change dahdi''' – Sometimes this is used to change "Zap" to something else in GUI, e.g. to "PSTN", mainly because not everybody knows what Zap stands for. PSTN is more common.<br />
* '''Device PIN length''' – length for automatically generated PIN codes for devices.<br />
* '''Device range MIN''' – from which extension automatic extension assigning starts.<br />
* '''Device range MAX''' – till which extension automatic extension assigning goes.<br />
** For example, from this interval: [Device range MIN, Device range MAX] MOR will select extensions for newly created Devices.<br />
* '''Enable "Allowed addresses" option for Devices:''' – allows [[Device_settings#Allowed_Addresses | Allowed Addresses]] functionality in Devices settings.<br />
* '''Enable "Allowed addresses" option for Providers:''' – allows Allowed Addresses functionality in Providers settings.<br />
* '''User wholesale tariff enabled''' – enables user wholesale tariffs.<br />
* '''Play IVR for unauthenticated call'''<br />
* '''Banned CLIs default IVR''' – default IVR to route banned numbers.<br />
* '''Do not allow duplicate device user names'''<br />
* '''Do not allow users to change their email addresses'''<br />
* '''Allow short passwords in devices'''<br />
* '''Logout link''' – a user will be redirected to this link after pressing "Logout"<br />
* '''Change ANSWER to FAILED if HGC not equal to 16 for Users''' – changes the Hangupcause for users in call reports from Answered to Failed if Hangupcause is not 16.<br />
* '''Inform when Devices are created or updated''' – check to get email about every newly created or updated Device. <br />
* '''Show Usernames on PDF/CSV Export Files in Last Calls''' – if checked, when particular User in Last Calls page search is selected, Last Calls PDF/CSV file name will be composed also from Name of selected User. If you are looking for All Users, no User Name will be used. (Name of User will be shown in Name of CSV/PDF file).<br />
* '''Do not allow PREPAID User balance drop below zero (block them instead)'''<br />
<!---from X5---><br />
* '''Do not block POSTPAID User when balance goes bellow zero on subscription count'''<br />
* '''Allow identical email addresses to different Users''' – allows to create Users or Register users with identical email addresses. After checking this setting you will be not able to check '''Show forgot password''', because this functionality require unique email in all system. Setting can be unchecked if all emails are unique in system. <br />
* '''Allow same IP and Port combinations in multiple Devices''' – allows to create Devices with the same IP and Port combination.<br />
* '''Low Disk Space Alert''' – indicator when system should inform admin about low [[Multi_Server_support|Server]] space. By default 20%. Notice will appear in [[Integrity Check]] and every hour will send an email "Low Disk Space Alert". Which template can be found and edited in [[Emails]] page. Information about the Server and the remaining free space will be provided.<br />
* '''Limit PDF size in Last Calls''' - limits how many pages can be exported from Last Calls to PDF. It takes a lot of system resources to generate PDF files therefore this limit should be low enough to prevent high load on system.<br />
* '''Google Maps API key''' - the setting is necessary for using the Google Maps functionality. More on how to configure this key please check [[Get Google Maps key]].<br />
* '''Allow login by email''' - allow users to login by email instead of username.<br />
<br />
== Tax ==<br />
<br />
'''SETTINGS –> Setup –> Settings –> Tax'''<br />
<br />
Settings are explained here: [[Multi-Tax system]]<br />
<br><br><br />
== Backups ==<br />
<br />
'''SETTINGS –> Setup –> Settings –> Backups'''<br />
<br />
Configuration is explained here: [[Backup system]]<br />
<br><br><br />
== API ==<br />
<br />
'''SETTINGS –> Setup –> Settings –> API'''<br />
<br />
* '''Allow API''' – enable/disable API.<br />
* '''Allow GET API''' – enable/disable GET in API - use only for testing!<br />
* '''API Secret Key''' – secret key for API. This will be used as a password for signing queries to MOR API, check [[MOR_API | MOR API documentation]] for more information<br />
* '''XML API Extension''' – .NET does not follow standards (surprise!); enable this setting if you are using it to get XML starting with HTTP tags.<br />
* '''Allow API Login Redirect''' – enable/disable<br />
* '''API allow registration''' – enable/disable registration through API<br />
* '''API allow Payments''' – enable/disable payments through API<br />
* '''API Payment confirmation''' – enable/disable payments confirmation through API<br />
* '''[[Balance_in_phone|Allow devices to check balance over HTTP]]''' – enable/disable device balance checking<br />
* '''[[MOR_API_rate_get|Allow devices to check rate over HTTP]]''' – enable/disable device rate checking<br />
* '''Disable hash checking''' – lets you skip hash parameter using API<br />
* '''Uniquehash''' – shows your uniquehash <br />
<br><br><br />
===See also===<br />
<br />
[[MOR API]]<br />
<br><br><br />
<br />
== Functionality ==<br />
<br />
'''SETTINGS –> Setup –> Settings –> Functionality'''<br />
<br><br><br />
===FAX===<br />
<br />
* '''Fax device enabled''' – enable/disable Fax device in MOR. When admin enables FAX, Functionality tab appears in Reseller's GUI configuration. He can then enable or disabled fax for his own users himself. <br />
* '''Fax2Email From Sender''' – there is a field "From:" in an email form. When MOR sends Fax to Email, "Fax2Email From Sender" value is displayed in "From:" field.<br />
* '''Allow Users to change FAX email''' - allow simple Users to add/remove/edit FAX emails in FAX Devices.<br />
<br><br><br />
<br />
===CSV===<br />
<br />
* '''CSV Column Separator''' – how columns are separated in imported/exported CSV files.<br />
* '''CSV Decimal Separator''' – how decimal parts in numbers are separated in imported/exported CSV files.<br />
* ''' Archive CSV file when size reaches''' – if CSV file reaches a certain size, the system will archive it to save time to download it (0 means to archive always)<br />
<br><br><br />
===Active Calls===<br />
<br />
* '''How many maximum [[Active_Calls|Active Calls]] to show in GUI''' – how many [[Active_Calls| Active Calls]] to show in GUI<br />
* '''[[Active_Calls| Active Calls]] refresh interval''' – [[Active_Calls|Active Calls]] refresh interval in seconds<br />
* '''Show [[Active_Calls|Active Calls]] for Users''' – tick if you want to allow users to see [[Active_Calls|Active Calls]]<br />
* '''Show Servers in [[Active_Calls|Active Calls]]'''<br />
* '''Show DIDs in [[Active_Calls|Active Calls]]'''<br />
<br><br><br />
<br />
===Tariffs/Rates===<br />
<br />
* '''Show rates for users''' – allows users to see rates<br />
* '''Show rates without Tax''' – shows rates without TAX<br />
* '''Show [[Advanced_Rates|Advanced Rates]] for users''' – allows users to see [[Advanced_Rates|Advanced Rates]]<br />
* '''Show zero rates in LCR tariff export:''' – shows zero rates in LCR tariff exported file.<br />
NOTE: if [[Custom Rates]] and/or Tariff Rates are set for the user, only the custom rates will be shown in the details of destination rates. <br />
<br><br><br />
<br />
==Privacy==<br />
<br />
'''SETTINGS –> Setup –> Settings –> Privacy'''<br />
<br />
Settings are explained here: [[Privacy_to_hide_Destination_ends|Privacy to hide Destination ends]]<br />
<br><br><br />
== Visual ==<br />
<br />
'''SETTINGS –> Setup –> Settings –> Visual'''<br />
<br />
* '''Items per page''' – the number of items to display per one page<br />
* '''[[Global_date_format| Default date format]]''' – System default date format<br />
* '''Default Time Format''' – System default time format<br />
* '''Number digits''' – how many digits to display after a comma<br />
* '''Hide Quick Stats in Start page''' – hide Quick stats from start page<br />
* '''Hide device passwords for users''' – do not display device passwords for users<br />
* '''Hide HELP banner''' – hide HELP banner in GUI<br />
* '''Hide "I want to" help links'''<br />
* '''[[Remove_Manual_link_from_admin_GUI|Hide "Manual" link]]''' – hides "Manual" link<br />
* '''Show logo on first page''' - untick to hide logo on the start page<br />
* '''Show Full Source (CallerID Name and Number)'''<br />
* '''Use <> brackets in CDR export''' - changes brackets in CDR export<br />
* '''Hide payment options for postpaid users''' - will hide the payment option for all postpaid users (including Resellers if they are postpaid).<br />
* '''Hide non-completed payments for user''' – hides non-completed payments (the ones which are started in MOR, but are not completed in a payment gateway website)<br />
* '''Show only main page''' – this is a very advanced feature for those who want to hide default MOR menu tree on the left so that they could build their own menu using advanced techniques without modifying MOR GUI sources.<br />
* '''Show forgot password''' – turns on '''[[MOR_forgot_user_password | Forgot password]]''' functionality.<br />
* '''Hide Recordings for all users''' – hides recordings for all system users from menu and device settings.<br />
* '''Show recordings with zero billsec''' – shows recordings with zero billsec<br />
* '''[[Last_Calls#Faster_Page_Loading|Count Last Calls total values only after click]]''' – select to load Total Values lines separately in order to dramatically improve Last calls and Old calls loading time. <br />
* '''Default Number Decimal''' – with this option you can set default number decimal for all GUI<br />
* '''Show user_billsec for Users instead of billsec''' – shows user_billsec instead of billsec in Users invoices and last calls. Notice that Billsec shows real Call duration, user_billsec shows Call duration after minimal time or increment applied. For example, if user tariff has 60 sec minimal time and user made a Call for 20 sec, then billsec will show 20 sec and user_billsec will show 60 sec (minimal time is applied).<br />
<!--- from X5---><br />
* '''Show Calls statistics to User for last''' – number of Calls statistics to show in days. For example, if you enter 5 days, users will only see 5 days old calls, they will not be able to check older calls. <br />
* '''Show Device and it's CallerID in Last Calls''' – shows additional column in [[Last Calls]] page with Device and its CallerID information. Click to reach that Device settings page.<br />
* '''Show DID User instead of Device User in Last Calls''' - if enabled, always shows DID User name in Last Calls.<br />
<br><br><br />
<br />
== Server load ==<br />
<br />
'''SETTINGS –> Setup –> Settings –> Server load'''<br />
<br><br><br />
Settings for GUI Server and Database Server<br />
<br />
* '''HDD utilisation higher than''' – Percentage of CPU time during which I/O requests were issued to the device (bandwidth utilization for the device).<br />
* '''CPU General Load higher than''' – CPU General load higher than – Percentage of the CPU for user processes.<br />
* '''CPU Load Stats 1 higher than''' – average load per one minute on the system<br />
* '''CPU MySQL process higher than''' – Percentage of the CPU for MySQL process<br />
* '''CPU Ruby process higher than''' – Percentage of the CPU for Ruby process<br />
* '''CPU Asterisk process (if present) higher than''' – Percentage of the CPU for Asterisk process<br />
<br><br />
* '''Delete Server Load Stats older than''' – deletes internal servers load statistics older than defined number of days.<br />
<br><br />
<br />
== Calls ==<br />
<br />
'''SETTINGS –> Setup –> Settings –> Calls'''<br />
<br><br><br />
[[Archived calls]]<br />
<br><br />
<br />
=See also=<br />
<br />
* [[Server is overloaded]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=M4_API_device_details_get&diff=21521M4 API device details get2016-10-24T13:47:17Z<p>Tomas: Created page with '=Description= <!---This functionality is available from MOR X5---> MOR API Device details get <br><br> =Usage= * Call: '''/api/device_details_get''' * Methods: POST, GET(if…'</p>
<hr />
<div>=Description=<br />
<br />
<!---This functionality is available from MOR X5---><br />
[[MOR API]] Device details get<br />
<br><br><br />
=Usage=<br />
<br />
* Call: '''/api/device_details_get'''<br />
* Methods: POST, GET(if allowed, not recomended)<br />
<br><br><br />
===Parametres===<br />
<br />
* u – username for authentication. '''Required'''.<br />
* device_id – id of the device which details you want to get.<br />
* [[MOR API hash construction | hash]] – SHA1 hash constructed using '''device_id''' and '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.<br />
<br />
Please note that admin can retrieve Device details just for their own Users. Simple users cannot check device details.<br />
<br><br><br />
===Request===<br />
<br />
We have API Secret Key = 456789, device_id = 5<br />
<br />
We send:<br />
<br />
HTML POST: http://<SERVER_IP>/billing/api/device_details_get?u=admin&device_id=5&hash=65fd575c441513bd114b84c7dbdb01e0f2716d27<br />
<br />
'''* Note that username is not included in hash'''<br />
<br><br><br />
===Returns===<br />
<br />
'''Success'''<br />
<br />
<page><br />
<status><br />
<devices><br />
<device><br />
<id>5</id><br />
<name>103</name><br />
<host>127.0.1.3</host><br />
<secret></secret><br />
<ipaddr>127.0.1.3</ipaddr><br />
<port>5060</port><br />
<accountcode>2</accountcode><br />
<callerid>"103" <103></callerid><br />
<username></username><br />
<device_type>SIP</device_type><br />
<user_id>2</user_id><br />
<insecure>no</insecure><br />
<description>Test Device for Admin</description><br />
<timeout>60</timeout><br />
<allow_duplicate_calls>0</allow_duplicate_calls><br />
<call_limit>0</call_limit><br />
<grace_time>0</grace_time><br />
<server_id>1</server_id><br />
<change_failed_code_to>0</change_failed_code_to><br />
<max_timeout>0</max_timeout><br />
<cps_call_limit>0</cps_call_limit><br />
<cps_period>0</cps_period><br />
<callerid_number_pool_id>0</callerid_number_pool_id><br />
<op>1</op><br />
<op_active>0</op_active><br />
<op_tech_prefix></op_tech_prefix><br />
<op_routing_algorithm>lcr</op_routing_algorithm><br />
<op_routing_group_id>12001</op_routing_group_id><br />
<op_tariff_id>2</op_tariff_id><br />
<op_capacity>500</op_capacity><br />
<op_src_regexp>.*</op_src_regexp><br />
<op_src_deny_regexp></op_src_deny_regexp><br />
<tp>0</tp><br />
<tp_active>0</tp_active><br />
<tp_tech_prefix></tp_tech_prefix><br />
<tp_tariff_id>0</tp_tariff_id><br />
<tp_capacity>500</tp_capacity><br />
<tp_src_regexp></tp_src_regexp><br />
<tp_src_deny_regexp></tp_src_deny_regexp><br />
<custom_sip_header></custom_sip_header><br />
<register>0</register><br />
<interpret_busy_as_failed>0</interpret_busy_as_failed><br />
<interpret_noanswer_as_failed>0</interpret_noanswer_as_failed><br />
<sticky_contact>0</sticky_contact><br />
<periodic_check>0</periodic_check><br />
<alive>0</alive><br />
<op_custom_tariff_id></op_custom_tariff_id><br />
<ipaddr_range_start>0</ipaddr_range_start><br />
<ipaddr_range_end>0</ipaddr_range_end><br />
<op_destination_transformation> </op_destination_transformation><br />
<quality_routing_id>0</quality_routing_id><br />
<op_source_transformation></op_source_transformation><br />
<tp_source_transformation></tp_source_transformation><br />
<disable_q850>0</disable_q850><br />
<forward_rpid>1</forward_rpid><br />
<forward_pai>1</forward_pai><br />
<bypass_media>0</bypass_media><br />
<codecs><br />
<audio_codecs></audio_codecs><br />
</codecs><br />
</device><br />
</devices><br />
</status><br />
</page><br />
<br><br><br />
----<br />
<br />
'''Errors'''<br />
<br />
* <error>Access Denied</error> – User was not found by such username. Make sure that username (u) is specified.<br />
* <error>Device was not found</error> – such device does not exist in the system or device does not belong to your scope.<br />
* <error>You are not authorized to manage devices</error> – Manager does not have permissions to view devices.<br />
* <error>You are not authorized to view this page</error> – Simple User is not authorized to view devices.<br />
* <error>Incorrect hash</error> – Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.<br />
<br><br><br />
<br />
=See also=<br />
<br />
* [[M2 API]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=M4_API&diff=21519M4 API2016-10-24T12:56:18Z<p>Tomas: /* Device */</p>
<hr />
<div>[[File:api.png|right|alt="api"|link=]]<br />
<mkmeta>Application Program Interface for MOR Class 5 Softswitch</mkmeta><br />
<br />
<br><br><br />
=About=<br />
MOR API lets other software interact with MOR without knowing the internal structure of the database (DB) and other logic.<br />
<br />
MOR accepts requests by HTML POST and returns results in XML.<br />
<br />
<br><br><br />
=MOR users that are allowed to use MOR API=<br />
* Admin<br />
* Manager - only by using Admin Hash and Secret key<br />
* Simple User<br />
<br />
<br><br><br />
<br />
=Functions=<br />
<br />
== API Related ==<br />
* [[M2 API Configuration]] – configuration options for API.<br />
* [[M2 API hash construction|Hash construction]] – how to construct hash to authenticate data over API.<br />
<br />
<br><br />
==Balance==<br />
* [[M2 API user balance update | user_balance_update]] (change_user_balance) – changes User's Balance<br />
Various methods to retrieve User balance<br />
* [[M2 API user_balance_get|user_balance_get]] (balance) – retrieves a User Balance.<br />
* [[M2 Balance in phone | user_simple_balance_get]] (simple_balance) – gets User's Balance<br />
<br />
<br><br />
==Calls==<br />
* [[M2 user calls get|user_calls_get]] (user_calls) – retrieves a list of calls in a selected time period for a user/device.<br />
<br />
<br><br />
==Device==<br />
* [[M2 API devices get | devices_get]] (device_list) – users device list<br />
* [[M2 API device details get | device_details_get]] – shows all information about specified device.<br />
<br><br />
<br />
==Login==<br />
* [[M2 API user_login|user_login]] (login) – logs user in to MOR.<br />
* [[M2 API user_logout|user_logout]] (logout) – logs user out from MOR.<br />
<br />
==Payments==<br />
* [[M2 API payment_create| payment_create]] (create_payment) – create payment.<br />
* [[M2 API payments_get| payments_get]] (payments_list) – payments list.<br />
<br />
<br><br />
==Rates==<br />
* [[M2 API tariff rates get| tariff_rates_get]] (get_tariff) – get all tariff's rates<br />
* [[M2 API tariff_wholesale_update | tariff_wholesale_update ]] (wholesale_tariff) – update or create wholesale tariff<br />
<br />
<br><br />
==Statistics==<br />
* [[M2 API quickstats_get | quickstats_get]] – gets today's [[Quick Stats]] and [[Active Calls]] count<br />
<br />
<br><br />
==User==<br />
* [[M2 API user_details_get | user_details_get]] (user_details) – gets user details.<br />
<br />
<br><br />
= Examples =<br />
* [[MOR API PHP Examples]]<br />
<br />
<br><br><br />
=HTML POST=<br />
All requests are in a similar format:<br />
<br />
HTML POST: http://<SERVER_IP>/billing/api/<function>?u=username<br />
<br />
* username - the user name and password of the user who is asking for the data. <br />
<br />
If the user has 'admin' rights, he will get more results and can perform more actions compared to a user who does not have such rights.<br />
<br><br><br />
=Useful to know=<br />
<br />
* All API methods returns data straight from database. It means that MOR GUI settings does not affect data, it will be returned as it is saved in database. For example:<br />
** Value of money will be returned in Default System [[Currencies|Currency]].<br />
** Date will not be affected of [[Configuration_from_GUI#Visual| Default date format]] setting.<br />
** Value of money will not be affected of [[Configuration_from_GUI#Visual|Number digits]] setting.<br />
<br />
<br><br><br />
=See also =<br />
* [[M2 API Configuration]]<br />
* [[MOR integration]]<br />
* [[How to block access to some API functions]]<br />
* [[API specification to be implemented in the future]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=M4_API_tariff_rates_get&diff=21500M4 API tariff rates get2016-10-11T13:49:17Z<p>Tomas: /* Request */</p>
<hr />
<div>=Description=<br />
<!---This functionality is available from MOR 11---><br />
[[MOR API]] Tariff rates - allows to get rates by specific tariff.<br />
<br><br><br />
<br />
=Usage=<br />
<br />
'''M2''' call: '''/api/tariff_rates_get'''<br />
* For Backwards-compatibility old name 'get_tariff' is also usable. Call: '''/api/get_tariff'''<br />
* Methods: POST, GET(if allowed, not recomended)<br />
<br><br><br />
===Parametres===<br />
Parameters which are '''included''' into hash (if it is used):<br />
<br />
* tariff_id - tariff_id parameter returns tariff and rates by specific tariff_id.<br />
* device_id - tariff parameter returns tariff and rates by device id. If device has both Orginator point and Terminator point tariffs, Originator point tariff is returned. When sending device_id parameter tariff_id parameter is ignored. <br />
'''* Note that tariff_id or device_id is required and must be provided in to the request'''.<br />
<br />
<br><br />
<br />
Parameters which are not included into hash: <br />
* u - username for authentication. '''Required'''.<br />
* [[MOR API hash construction | hash]] - SHA1 hash constructed using '''tariff_id''' and/or '''user_id''' and '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.<br />
<br />
<br><br><br />
<br />
===Request===<br />
<br />
We have API Secret Key = 456789, tariff_id = 2<br />
<br />
We send:<br />
<br />
HTML POST: http://<SERVER_IP>/billing/api/get_tariff?u=admin&tariff_id=2&hash=d674ef6e3ceb3145e825709ac2233c710db15af8<br />
<br />
Returning XML is put in file. That file is gziped and returned as a response content.<br />
<br />
Please note that admin can retrieve any tariff, user can only retrieve his own tariff.<br />
<br><br><br />
<br />
===Returns===<br />
<br />
'''Success'''<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<rate><br />
<direction> '' </direction><br />
<destination> '' </destination><br />
<prefix> '' </prefix> <br />
<tariff_rate> '' </tariff_rate><br />
<con_fee> '' </con_fee><br />
<increment> '' </increment><br />
<min_time> '' </min_time><br />
<start_time> '' </start_time><br />
<end_time> '' </end_time><br />
<daytype> '' <daytype/><br />
</rate><br />
</rates><br />
</page><br />
<br />
----<br />
<br />
'''Errors'''<br />
<br />
* Tariff was not found.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>No tariff found</error><br />
</status><br />
</page><br />
<br />
* User was not found by username. Use correct username. Make sure that username (u).<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>Bad login</error><br />
</status><br />
</page><br />
<br />
* Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>Incorrect hash</error><br />
</status><br />
<br />
* Parameters device_id or tariff_id must be provided.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>device_id or tariff_id was not found</error><br />
</status><br />
<br />
* User can access only his own tariffs.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>Access Denied</error><br />
</status><br />
<br />
* Manager does not have permisions to access tariffs functionality.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>You are not authorized to manage tariffs</error><br />
</status><br />
<br />
<br><br></div>Tomashttps://wiki.kolmisoft.com/index.php?title=M4_API_tariff_rates_get&diff=21499M4 API tariff rates get2016-10-11T12:40:28Z<p>Tomas: /* Parametres */</p>
<hr />
<div>=Description=<br />
<!---This functionality is available from MOR 11---><br />
[[MOR API]] Tariff rates - allows to get rates by specific tariff.<br />
<br><br><br />
<br />
=Usage=<br />
<br />
'''M2''' call: '''/api/tariff_rates_get'''<br />
* For Backwards-compatibility old name 'get_tariff' is also usable. Call: '''/api/get_tariff'''<br />
* Methods: POST, GET(if allowed, not recomended)<br />
<br><br><br />
===Parametres===<br />
Parameters which are '''included''' into hash (if it is used):<br />
<br />
* tariff_id - tariff_id parameter returns tariff and rates by specific tariff_id.<br />
* device_id - tariff parameter returns tariff and rates by device id. If device has both Orginator point and Terminator point tariffs, Originator point tariff is returned. When sending device_id parameter tariff_id parameter is ignored. <br />
'''* Note that tariff_id or device_id is required and must be provided in to the request'''.<br />
<br />
<br><br />
<br />
Parameters which are not included into hash: <br />
* u - username for authentication. '''Required'''.<br />
* [[MOR API hash construction | hash]] - SHA1 hash constructed using '''tariff_id''' and/or '''user_id''' and '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.<br />
<br />
<br><br><br />
<br />
===Request===<br />
<br />
We have API Secret Key = 456789, tariff_id = 2<br />
<br />
We send:<br />
<br />
HTML POST: http://<SERVER_IP>/billing/api/get_tariff?u=admin&tariff_id=2&hash=d674ef6e3ceb3145e825709ac2233c710db15af8<br />
<br />
Returning XML is put in file. That file is gziped and returned as a response content.<br />
<br />
Please note that admin can retrieve any tariff, user can only retrieve to his own tariff.<br />
<br><br><br />
<br />
===Returns===<br />
<br />
'''Success'''<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<rate><br />
<direction> '' </direction><br />
<destination> '' </destination><br />
<prefix> '' </prefix> <br />
<tariff_rate> '' </tariff_rate><br />
<con_fee> '' </con_fee><br />
<increment> '' </increment><br />
<min_time> '' </min_time><br />
<start_time> '' </start_time><br />
<end_time> '' </end_time><br />
<daytype> '' <daytype/><br />
</rate><br />
</rates><br />
</page><br />
<br />
----<br />
<br />
'''Errors'''<br />
<br />
* Tariff was not found.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>No tariff found</error><br />
</status><br />
</page><br />
<br />
* User was not found by username. Use correct username. Make sure that username (u).<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>Bad login</error><br />
</status><br />
</page><br />
<br />
* Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>Incorrect hash</error><br />
</status><br />
<br />
* Parameters device_id or tariff_id must be provided.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>device_id or tariff_id was not found</error><br />
</status><br />
<br />
* User can access only his own tariffs.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>Access Denied</error><br />
</status><br />
<br />
* Manager does not have permisions to access tariffs functionality.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>You are not authorized to manage tariffs</error><br />
</status><br />
<br />
<br><br></div>Tomashttps://wiki.kolmisoft.com/index.php?title=M4_API_tariff_rates_get&diff=21498M4 API tariff rates get2016-10-11T10:52:42Z<p>Tomas: /* Returns */</p>
<hr />
<div>=Description=<br />
<!---This functionality is available from MOR 11---><br />
[[MOR API]] Tariff rates - allows to get rates by specific tariff.<br />
<br><br><br />
<br />
=Usage=<br />
<br />
'''M2''' call: '''/api/tariff_rates_get'''<br />
* For Backwards-compatibility old name 'get_tariff' is also usable. Call: '''/api/get_tariff'''<br />
* Methods: POST, GET(if allowed, not recomended)<br />
<br><br><br />
===Parametres===<br />
Parameters which are '''included''' into hash (if it is used):<br />
<br />
* tariff_id - tariff_id parameter returns tariff and rates by specific tariff_id.<br />
* device_id - tariff parameter returns tariff and rates by device id. If device has both Orginator point and Terminator point tariffs, Originator point tariff is returned. When sending device_id parameter tariff_id parameter is ignored. <br />
'''* Note that tariff_id or device_id is required and must by provided in to the request'''<br />
<br />
<br><br />
<br />
Parameters which are not included into hash: <br />
* u - username for authentication. '''Required'''.<br />
* [[MOR API hash construction | hash]] - SHA1 hash constructed using '''tariff_id''' and/or '''user_id''' and '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.<br />
<br />
<br><br><br />
<br />
===Request===<br />
<br />
We have API Secret Key = 456789, tariff_id = 2<br />
<br />
We send:<br />
<br />
HTML POST: http://<SERVER_IP>/billing/api/get_tariff?u=admin&tariff_id=2&hash=d674ef6e3ceb3145e825709ac2233c710db15af8<br />
<br />
Returning XML is put in file. That file is gziped and returned as a response content.<br />
<br />
Please note that admin can retrieve any tariff, user can only retrieve to his own tariff.<br />
<br><br><br />
<br />
===Returns===<br />
<br />
'''Success'''<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<rate><br />
<direction> '' </direction><br />
<destination> '' </destination><br />
<prefix> '' </prefix> <br />
<tariff_rate> '' </tariff_rate><br />
<con_fee> '' </con_fee><br />
<increment> '' </increment><br />
<min_time> '' </min_time><br />
<start_time> '' </start_time><br />
<end_time> '' </end_time><br />
<daytype> '' <daytype/><br />
</rate><br />
</rates><br />
</page><br />
<br />
----<br />
<br />
'''Errors'''<br />
<br />
* Tariff was not found.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>No tariff found</error><br />
</status><br />
</page><br />
<br />
* User was not found by username. Use correct username. Make sure that username (u).<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>Bad login</error><br />
</status><br />
</page><br />
<br />
* Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>Incorrect hash</error><br />
</status><br />
<br />
* Parameters device_id or tariff_id must be provided.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>device_id or tariff_id was not found</error><br />
</status><br />
<br />
* User can access only his own tariffs.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>Access Denied</error><br />
</status><br />
<br />
* Manager does not have permisions to access tariffs functionality.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>You are not authorized to manage tariffs</error><br />
</status><br />
<br />
<br><br></div>Tomashttps://wiki.kolmisoft.com/index.php?title=M4_API_tariff_rates_get&diff=21495M4 API tariff rates get2016-10-11T10:50:08Z<p>Tomas: /* Parametres */</p>
<hr />
<div>=Description=<br />
<!---This functionality is available from MOR 11---><br />
[[MOR API]] Tariff rates - allows to get rates by specific tariff.<br />
<br><br><br />
<br />
=Usage=<br />
<br />
'''M2''' call: '''/api/tariff_rates_get'''<br />
* For Backwards-compatibility old name 'get_tariff' is also usable. Call: '''/api/get_tariff'''<br />
* Methods: POST, GET(if allowed, not recomended)<br />
<br><br><br />
===Parametres===<br />
Parameters which are '''included''' into hash (if it is used):<br />
<br />
* tariff_id - tariff_id parameter returns tariff and rates by specific tariff_id.<br />
* device_id - tariff parameter returns tariff and rates by device id. If device has both Orginator point and Terminator point tariffs, Originator point tariff is returned. When sending device_id parameter tariff_id parameter is ignored. <br />
'''* Note that tariff_id or device_id is required and must by provided in to the request'''<br />
<br />
<br><br />
<br />
Parameters which are not included into hash: <br />
* u - username for authentication. '''Required'''.<br />
* [[MOR API hash construction | hash]] - SHA1 hash constructed using '''tariff_id''' and/or '''user_id''' and '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.<br />
<br />
<br><br><br />
<br />
===Request===<br />
<br />
We have API Secret Key = 456789, tariff_id = 2<br />
<br />
We send:<br />
<br />
HTML POST: http://<SERVER_IP>/billing/api/get_tariff?u=admin&tariff_id=2&hash=d674ef6e3ceb3145e825709ac2233c710db15af8<br />
<br />
Returning XML is put in file. That file is gziped and returned as a response content.<br />
<br />
Please note that admin can retrieve any tariff, user can only retrieve to his own tariff.<br />
<br><br><br />
<br />
===Returns===<br />
<br />
'''Success'''<br />
<br />
* Retail:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<rate><br />
<direction> '' </direction><br />
<destination> '' </destination><br />
<prefix> </prefix><br />
<code> </code><br />
<tariff_rate></tariff_rate><br />
<con_fee></con_fee><br />
<increment></increment><br />
<min_time></min_time><br />
<start_time></start_time><br />
<end_time></end_time><br />
<daytype><daytype/><br />
</rate><br />
</rates><br />
</page><br />
<br />
----<br />
<br />
'''Errors'''<br />
<br />
* Tariff was not found.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>No tariff found</error><br />
</status><br />
</page><br />
<br />
* User was not found by username. Use correct username. Make sure that username (u).<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>Bad login</error><br />
</status><br />
</page><br />
<br />
* Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>Incorrect hash</error><br />
</status><br />
<br />
* Parameters device_id or tariff_id must be provided.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>device_id or tariff_id was not found</error><br />
</status><br />
<br />
* User can access only his own tariffs.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>Access Denied</error><br />
</status><br />
<br />
* Manager does not have permisions to access tariffs functionality.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>You are not authorized to manage tariffs</error><br />
</status><br />
<br />
<br><br></div>Tomashttps://wiki.kolmisoft.com/index.php?title=M4_API_tariff_rates_get&diff=21494M4 API tariff rates get2016-10-11T10:49:28Z<p>Tomas: /* Returns */</p>
<hr />
<div>=Description=<br />
<!---This functionality is available from MOR 11---><br />
[[MOR API]] Tariff rates - allows to get rates by specific tariff.<br />
<br><br><br />
<br />
=Usage=<br />
<br />
'''M2''' call: '''/api/tariff_rates_get'''<br />
* For Backwards-compatibility old name 'get_tariff' is also usable. Call: '''/api/get_tariff'''<br />
* Methods: POST, GET(if allowed, not recomended)<br />
<br><br><br />
===Parametres===<br />
Parameters which are '''included''' into hash (if it is used):<br />
<br />
* tariff_id - tariff_id parameter returns tariff and rates by specific tariff_id.<br />
* device_id - tariff parameter returns tariff and rates by device id. If device has both Orginator point and Terminator point tariffs, Originator point tariff is returned. When sending device_id parameter tariff_id parameter is ignored. <br />
'''* Note that tariff_id or device_id must by provided in to the request'''<br />
<br />
<br><br />
<br />
Parameters which are not included into hash: <br />
* u - username for authentication. '''Required'''.<br />
* [[MOR API hash construction | hash]] - SHA1 hash constructed using '''tariff_id''' and/or '''user_id''' and '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.<br />
<br />
<br><br><br />
<br />
===Request===<br />
<br />
We have API Secret Key = 456789, tariff_id = 2<br />
<br />
We send:<br />
<br />
HTML POST: http://<SERVER_IP>/billing/api/get_tariff?u=admin&tariff_id=2&hash=d674ef6e3ceb3145e825709ac2233c710db15af8<br />
<br />
Returning XML is put in file. That file is gziped and returned as a response content.<br />
<br />
Please note that admin can retrieve any tariff, user can only retrieve to his own tariff.<br />
<br><br><br />
<br />
===Returns===<br />
<br />
'''Success'''<br />
<br />
* Retail:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<rate><br />
<direction> '' </direction><br />
<destination> '' </destination><br />
<prefix> </prefix><br />
<code> </code><br />
<tariff_rate></tariff_rate><br />
<con_fee></con_fee><br />
<increment></increment><br />
<min_time></min_time><br />
<start_time></start_time><br />
<end_time></end_time><br />
<daytype><daytype/><br />
</rate><br />
</rates><br />
</page><br />
<br />
----<br />
<br />
'''Errors'''<br />
<br />
* Tariff was not found.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>No tariff found</error><br />
</status><br />
</page><br />
<br />
* User was not found by username. Use correct username. Make sure that username (u).<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>Bad login</error><br />
</status><br />
</page><br />
<br />
* Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>Incorrect hash</error><br />
</status><br />
<br />
* Parameters device_id or tariff_id must be provided.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>device_id or tariff_id was not found</error><br />
</status><br />
<br />
* User can access only his own tariffs.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>Access Denied</error><br />
</status><br />
<br />
* Manager does not have permisions to access tariffs functionality.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>You are not authorized to manage tariffs</error><br />
</status><br />
<br />
<br><br></div>Tomashttps://wiki.kolmisoft.com/index.php?title=M4_API_tariff_rates_get&diff=21491M4 API tariff rates get2016-10-11T10:34:30Z<p>Tomas: /* Request */</p>
<hr />
<div>=Description=<br />
<!---This functionality is available from MOR 11---><br />
[[MOR API]] Tariff rates - allows to get rates by specific tariff.<br />
<br><br><br />
<br />
=Usage=<br />
<br />
'''M2''' call: '''/api/tariff_rates_get'''<br />
* For Backwards-compatibility old name 'get_tariff' is also usable. Call: '''/api/get_tariff'''<br />
* Methods: POST, GET(if allowed, not recomended)<br />
<br><br><br />
===Parametres===<br />
Parameters which are '''included''' into hash (if it is used):<br />
<br />
* tariff_id - tariff_id parameter returns tariff and rates by specific tariff_id.<br />
* device_id - tariff parameter returns tariff and rates by device id. If device has both Orginator point and Terminator point tariffs, Originator point tariff is returned. When sending device_id parameter tariff_id parameter is ignored. <br />
'''* Note that tariff_id or device_id must by provided in to the request'''<br />
<br />
<br><br />
<br />
Parameters which are not included into hash: <br />
* u - username for authentication. '''Required'''.<br />
* [[MOR API hash construction | hash]] - SHA1 hash constructed using '''tariff_id''' and/or '''user_id''' and '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.<br />
<br />
<br><br><br />
<br />
===Request===<br />
<br />
We have API Secret Key = 456789, tariff_id = 2<br />
<br />
We send:<br />
<br />
HTML POST: http://<SERVER_IP>/billing/api/get_tariff?u=admin&tariff_id=2&hash=d674ef6e3ceb3145e825709ac2233c710db15af8<br />
<br />
Returning XML is put in file. That file is gziped and returned as a response content.<br />
<br />
Please note that admin can retrieve any tariff, user can only retrieve to his own tariff.<br />
<br><br><br />
<br />
===Returns===<br />
<br />
'''Success'''<br />
<br />
* Retail:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<destination><br />
<destination_group_name> ''name'' </destination_group_name><br />
<destination_group_type> ''destination type'' </destination_group_type><br />
<rate><br />
<duration> ''duration'' </duration><br />
<type> ''type'' </type><br />
<round_by> ''round by'' </round_by><br />
<tariff_rate> ''rate'' </tariff_rate><br />
<start_time> ''start time'' </start_time><br />
<end_time> ''end time'' </end_time><br />
<from> ''from'' </from><br />
<daytype> ''daytype'' </daytype><br />
</rate><br />
</destination><br />
</rates><br />
</page><br />
<br />
* Wholesale:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<rate><br />
<direction> ''direction'' </direction><br />
<destination> ''destination'' </destination><br />
<prefix> ''prefix'' </prefix><br />
<subcode> ''subcode'' </subcode><br />
< code> ''code'' </code><br />
<tariff_rate> ''rate'' </tariff_rate><br />
<con_fee> ''connection fee'' </con_fee><br />
<increment> ''increment'' </increment><br />
<min_time> ''minimal time'' </min_time><br />
<start_time> ''start time'' </start_time><br />
<end_time> ''end time'' </end_time><br />
<daytype> ''daytype'' </daytype><br />
</rate><br />
</rates><br />
</page><br />
<br><br><br />
----<br />
<br />
'''Errors'''<br />
<br />
* Tariff was not found.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>No tariff found</error><br />
</status><br />
</page><br />
<br />
* User was not found by username and password. Use correct username and password. Make sure that username (u) and password (p) are specified.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>Bad login</error><br />
</status><br />
</page><br />
<br />
* Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>Incorrect hash</error><br />
</status><br />
<br><br></div>Tomashttps://wiki.kolmisoft.com/index.php?title=M4_API_tariff_rates_get&diff=21490M4 API tariff rates get2016-10-11T10:30:47Z<p>Tomas: /* Parametres */</p>
<hr />
<div>=Description=<br />
<!---This functionality is available from MOR 11---><br />
[[MOR API]] Tariff rates - allows to get rates by specific tariff.<br />
<br><br><br />
<br />
=Usage=<br />
<br />
'''M2''' call: '''/api/tariff_rates_get'''<br />
* For Backwards-compatibility old name 'get_tariff' is also usable. Call: '''/api/get_tariff'''<br />
* Methods: POST, GET(if allowed, not recomended)<br />
<br><br><br />
===Parametres===<br />
Parameters which are '''included''' into hash (if it is used):<br />
<br />
* tariff_id - tariff_id parameter returns tariff and rates by specific tariff_id.<br />
* device_id - tariff parameter returns tariff and rates by device id. If device has both Orginator point and Terminator point tariffs, Originator point tariff is returned. When sending device_id parameter tariff_id parameter is ignored. <br />
'''* Note that tariff_id or device_id must by provided in to the request'''<br />
<br />
<br><br />
<br />
Parameters which are not included into hash: <br />
* u - username for authentication. '''Required'''.<br />
* [[MOR API hash construction | hash]] - SHA1 hash constructed using '''tariff_id''' and/or '''user_id''' and '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.<br />
<br />
<br><br><br />
<br />
===Request===<br />
<br />
We have API Secret Key = 456789, tariff_id = 100<br />
<br />
We send:<br />
<br />
HTML POST: http://<SERVER_IP>/billing/api/get_tariff?u=admin&p=admin&tariff_id=100&hash=71516eea4850f7e0300ac86adf9fb64bca845aa7<br />
<br />
'''* Note that username and password are not included in hash'''<br />
Returning XML is put in file. That file is gziped and returned as a response content.<br />
<br />
Please note that admin can retrieve any tariff, reseller - only users' tariffs and the one assigned to him by admin and user can only retrieve to his own tariff.<br />
<br><br><br />
===Returns===<br />
<br />
'''Success'''<br />
<br />
* Retail:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<destination><br />
<destination_group_name> ''name'' </destination_group_name><br />
<destination_group_type> ''destination type'' </destination_group_type><br />
<rate><br />
<duration> ''duration'' </duration><br />
<type> ''type'' </type><br />
<round_by> ''round by'' </round_by><br />
<tariff_rate> ''rate'' </tariff_rate><br />
<start_time> ''start time'' </start_time><br />
<end_time> ''end time'' </end_time><br />
<from> ''from'' </from><br />
<daytype> ''daytype'' </daytype><br />
</rate><br />
</destination><br />
</rates><br />
</page><br />
<br />
* Wholesale:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<rate><br />
<direction> ''direction'' </direction><br />
<destination> ''destination'' </destination><br />
<prefix> ''prefix'' </prefix><br />
<subcode> ''subcode'' </subcode><br />
< code> ''code'' </code><br />
<tariff_rate> ''rate'' </tariff_rate><br />
<con_fee> ''connection fee'' </con_fee><br />
<increment> ''increment'' </increment><br />
<min_time> ''minimal time'' </min_time><br />
<start_time> ''start time'' </start_time><br />
<end_time> ''end time'' </end_time><br />
<daytype> ''daytype'' </daytype><br />
</rate><br />
</rates><br />
</page><br />
<br><br><br />
----<br />
<br />
'''Errors'''<br />
<br />
* Tariff was not found.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>No tariff found</error><br />
</status><br />
</page><br />
<br />
* User was not found by username and password. Use correct username and password. Make sure that username (u) and password (p) are specified.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>Bad login</error><br />
</status><br />
</page><br />
<br />
* Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>Incorrect hash</error><br />
</status><br />
<br><br></div>Tomashttps://wiki.kolmisoft.com/index.php?title=M4_API_tariff_rates_get&diff=21486M4 API tariff rates get2016-10-11T10:21:33Z<p>Tomas: /* Description */</p>
<hr />
<div>=Description=<br />
<!---This functionality is available from MOR 11---><br />
[[MOR API]] Tariff rates - allows to get rates by specific tariff.<br />
<br><br><br />
<br />
=Usage=<br />
<br />
'''M2''' call: '''/api/tariff_rates_get'''<br />
* For Backwards-compatibility old name 'get_tariff' is also usable. Call: '''/api/get_tariff'''<br />
* Methods: POST, GET(if allowed, not recomended)<br />
<br><br><br />
===Parametres===<br />
<br />
* u - username for authentication. '''Required'''.<br />
* tariff_id - user tariff id (option for admin or reseller). If not sent, user gets his tariff rates and custom rates.<br />
* user_id - this specifies user id whose custom rates and tariffs to show. When sending user_id parameter tariff_id parameter is ignored. <br />
* [[MOR API hash construction | hash]] - SHA1 hash constructed using '''tariff_id''' and/or '''user_id''' and '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.<br />
<br><br><br />
===Request===<br />
<br />
We have API Secret Key = 456789, tariff_id = 100<br />
<br />
We send:<br />
<br />
HTML POST: http://<SERVER_IP>/billing/api/get_tariff?u=admin&p=admin&tariff_id=100&hash=71516eea4850f7e0300ac86adf9fb64bca845aa7<br />
<br />
'''* Note that username and password are not included in hash'''<br />
Returning XML is put in file. That file is gziped and returned as a response content.<br />
<br />
Please note that admin can retrieve any tariff, reseller - only users' tariffs and the one assigned to him by admin and user can only retrieve to his own tariff.<br />
<br><br><br />
===Returns===<br />
<br />
'''Success'''<br />
<br />
* Retail:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<destination><br />
<destination_group_name> ''name'' </destination_group_name><br />
<destination_group_type> ''destination type'' </destination_group_type><br />
<rate><br />
<duration> ''duration'' </duration><br />
<type> ''type'' </type><br />
<round_by> ''round by'' </round_by><br />
<tariff_rate> ''rate'' </tariff_rate><br />
<start_time> ''start time'' </start_time><br />
<end_time> ''end time'' </end_time><br />
<from> ''from'' </from><br />
<daytype> ''daytype'' </daytype><br />
</rate><br />
</destination><br />
</rates><br />
</page><br />
<br />
* Wholesale:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<pagename> Tariff </pagename><br />
<tariff_name> ''tariff name'' </tariff_name><br />
<purpose> ''tariff type'' </purpose><br />
<currency> ''currency'' </currency><br />
<rates><br />
<rate><br />
<direction> ''direction'' </direction><br />
<destination> ''destination'' </destination><br />
<prefix> ''prefix'' </prefix><br />
<subcode> ''subcode'' </subcode><br />
< code> ''code'' </code><br />
<tariff_rate> ''rate'' </tariff_rate><br />
<con_fee> ''connection fee'' </con_fee><br />
<increment> ''increment'' </increment><br />
<min_time> ''minimal time'' </min_time><br />
<start_time> ''start time'' </start_time><br />
<end_time> ''end time'' </end_time><br />
<daytype> ''daytype'' </daytype><br />
</rate><br />
</rates><br />
</page><br />
<br><br><br />
----<br />
<br />
'''Errors'''<br />
<br />
* Tariff was not found.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>No tariff found</error><br />
</status><br />
</page><br />
<br />
* User was not found by username and password. Use correct username and password. Make sure that username (u) and password (p) are specified.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<page><br />
<status><br />
<error>Bad login</error><br />
</status><br />
</page><br />
<br />
* Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<status><br />
<error>Incorrect hash</error><br />
</status><br />
<br><br></div>Tomashttps://wiki.kolmisoft.com/index.php?title=Invoices&diff=21461Invoices2016-10-06T11:14:38Z<p>Tomas: /* Invoice recalculation */</p>
<hr />
<div>= Description =<br />
<br />
An invoice, bill or tab is a commercial document issued by a seller to a buyer, relating to a sale transaction and indicating the products, quantities, and agreed prices for products or services the seller had provided the buyer.<br />
<br><br><br />
= Configuration =<br />
<br />
You can manage Invoices settings, details, Address information and functionality in the Invoices section of the [[Configuration_from_GUI#Invoices | SETTINGS -> Setup -> Settings]] window.<br><br />
If you want show user_billsec instead of billsec in Users invoices and last calls, go to [[Configuration_from_GUI#Visual | Settings –> Various]] and check ''Show user_billsec for Users instead of billsec''<br />
<br><br><br />
<br />
Go to User's edit page to enable or disable types of invoices he can see in his invoices details. And also these selected types will be the ones that are sent to user via email. <br />
<br />
[[File:Invoice types.png]]<br />
<br />
=Invoices list=<br />
<br />
Invoices can be viewed, generated, recalculated, sent, also <!---...from MOR 9---> list of Invoices can be exported to CSV file (Invoice number is included in the output data) in '''SETTINGS –> Accounting –> Invoices'''. In the main window, you can see list of all Invoices:<br />
<br><br><br />
[[Image:Invoice list small.png]]<br />
<br><br><br />
The icons [[Image:icon_check.png]] and [[Image:icon_cross.png]] show whether this invoice is Paid or Unpaid, Sent or Not Sent. <br />
<br><br />
'''NOTE''' Each Invoice generated in particular Time Zone and on particular Currency. That means that in each line of Invoice Price and Price with TAX will be shown in currency which is written in Currency column. The Currency column tells which currency Invoice was generated with. Also the exchange rate at the invoice generation moment is saved in the database so it may differ from the up to date exchange rate.<br />
<br><br />
Total Price and Price with TAX are calculated into viewing Currency, which you can choose in upper corner of page. In Total price calculation there are used saved exchange Rate of each Invoice.<br />
<br><br><br />
'''Example'''<br />
<br><br><br />
Default system Currency is USD<br />
<br><br />
Invoice A is generated on price = 100 in currency EUR with exchange rate 0.5<br><br />
Invoice B is generated on price = 100 in currency DZD with exchange rate 0.25<br><br />
Invoice C is generated on price = 100 in currency ALL with exchange rate 0.75<br><br />
<br><br />
But now exchange rate are different: EUR - 0.75, DZD - 0.5 and ALL - 1.0. <br><br />
<br><br />
If you want to see Total price(sum of these 3 Invoices) in EUR. For Invoice B and C will be set exchange rate of today, but for Invoice A exchange rate will be from that day when Invoice was generated (0.5).<br><br />
<br />
Same calculations with other currencies:<br><br />
If you want to see Total price in USD. For Invoice A, B and C the exchange rates will be set from the day when invoice was generated (EUR - 0.5, DZD - 0.25 and ALL - 0.75).<br><br />
If you want to see Total price in DZD. For Invoice A and C will be set exchange rate of today, but for Invoice B exchange rate will be from the day when Invoice was generated (0.25).<br><br />
If you want to see Total price in ALL. For Invoice A and B will be set exchange rate of today, but for Invoice C exchange rate will be from the day when Invoice was generated (0.75).<br><br />
<br><br />
Total price will be 733.3333 USD, or 500 EUR, or 266.6667 DZD, or 700 ALL<br><br />
<br><br><br />
<br />
=Invoice details=<br />
<br />
Click on the [[Image:icon_details.png]] icon to get details of the Invoice:<br />
<br><br><br />
[[Image:invoice_details_x6.png]]<br />
<br><br><br />
Invoice details are shown in Currency which was used to generate Invoice. <br />
<br><br><br />
==General Details==<br />
<br />
'''Payment date''' - An option which will set the period of payment on current month. By default ''Years'' and ''Month'' is current, it is only possible to change ''Day of Month'' which is indicating the last date of ''Invoice'' issue.<br><br />
'''Currecy of Invoice''' - <!---This functionality is available from MOR X6---> Invoices are exported in Invoice currency.<br />
<br />
'''Language of Invoice'''<br />
<br><br />
Default language in MOR is English. However, you can send invoices in different languages (click on the flag icon on the top of the page).<br />
<br><br><br />
<br />
==User Details==<br />
<br />
User Details which will be used in xlsx file of invoice. These Details are taken form [[User Details]] and it can be changed manually, but after recalculate it will be reset to same information as it is in [[User Details]].<br />
<br><br><br />
==Files to send or download==<br />
<br />
Here you can view the details of all invoices and click on the [[Image:icon_pdf.png]] or [[Image:icon_csv.png]] icons to generate invoice files in PDF or CSV formats accordingly. First icon [[Image:icon_csv.png]] will download a xlsx file.<br />
<br />
*'''Invoice XLSX''' xlsx file shows information which are set by you. Check [[Invoices#XLSX_Invoices | XLSX Invoice]]<br />
*'''Invoice''' PDF shows separate services Prices and Total Invoice Prices, CSV shows just Total Invoice Prices.<br />
*'''Invoice detailed''' shows same information like simple Invoice and includes Calls list grouped by Destination.<br />
*'''Invoice by CallerID''' shows Calls list grouped by CallerID.<br />
*'''Invoice Destinations''' shows Calls list grouped by Destination. <br />
<br />
You can manage what kind of Invoice should be showed for User and/or sent to User as email attachment in [[User_Details#Invoices |User Details]]. Here you can check ''Show zero Calls'' option if you need to calculate 0 price Calls into Invoices.<br />
<br><br><br />
=== XLSX Invoices ===<br />
<br />
XLSX file to export an Invoice is made from your own XLSX format template and information from Invoices main window.<br />
Example of template can be downloaded for [http://www.kolmisoft.com/packets/x6_invoice_template.xlsx here].<br />
<br><br><br />
'''Default XLSX template'''<br />
<br />
Create a xlsx file. Template you can prepare as you wish, you can fill it with information of company, draw tables with column names, describe information taken from Invoice main window and so on. Template '''have to be uploaded in SETTINGS -> Setup -> Settings''', Invoices - XLSX tab setting '''XSLX Template'''<br />
* Check '''New XLSX template apply for old Invoices''' if you want to change XLSX template for Invoices which is already generated.<br />
* Check '''Group regular Calls by Destinations''' if you want XLSX file us as detailed Invoice.<br />
<br><br />
'''Balance Line settings'''<br />
<br />
''Outstanding balance (Debt)'', ''Outstanding balance (Debt) with TAX'', ''Total amount due'' options are present when ''Show balance line'' ('''SETTINGS -> Setup -> Settings''', Invoices - Postpaid - Settings) setting is enabled.<br />
<br><br><br />
'''Configuration for Dynamic information'''<br />
<br />
When you already have a template for example with all data of your company, with drawn tables and so on, you need to define where should be shown the dynamic information of invoice. How and what information is displayed can be set same '''SETTINGS -> Setup -> Settings''', Invoices - XLSX tab. Just need to define cell address in correct format. <br />
<br />
For example "A2", "B15", "AA9"<br />
<br><br><br />
[[File:callc.png]]<br />
<br><br><br />
<br />
'''NOTE''': If you do not want to use particular dynamic value just leave empty input for it.<br />
<br />
=== PDF invoices ===<br />
<br />
The layout of PDF invoices is not customizable. <br />
<br />
Logos are not supported in PDF invoices.<br />
<br />
You can print your invoices on paper with a pre-printed logo if you want to send paper invoices.<br />
<br><br><br />
=== CSV invoices ===<br />
<br />
Detailed CSV invoice does not include list of all calls. Please use [[How_to_export_CDRs|CDR export]] if you need list of calls in CSV format.<br />
<br><br><br />
<br />
==Comment==<br />
<br><br />
<!---This functionality is available from MOR 9---><br />
Sometimes it is useful to add a comment to the invoice. It can be used in xlsx file also.<br />
<br><br><br />
==Invoice Details==<br />
Click on the Invoice Details icon in the Invoice details page <br />
<br><br><br />
[[Image:Service_details.png]]<br />
<br><br><br />
to get Services Details of the Invoice: <br />
<br><br><br />
[[Image:invoice_services_x6.png]]<br />
<br><br><br />
'''Services:'''<br />
<br><br />
* '''SMS''' – quantity and price of SMS sent in selected period. Invoice for Reseller counts all SMS that was sent by his users using price for Reseller. Note, that SMS are included to Invoice only when [[SMS Addon]] is used<br />
* '''DID Owner Cost''' – price for having and using own DID(s)<br />
* '''Subscriptions''' – price of subscription applied to selected period. Period considered as month is from first till last day of month and from concrete day of month till next month one day before selected last month. Eg. from 2013-02-26 till 2013-03-25<br />
* '''Calls''' – quantity and price of outgoing calls<br />
* '''Calls from Users''' – quantity and price of resellers users calls<br />
* '''Calls to DIDs''' – price for calling to DID(s)<br />
<br><br><br />
<br />
= Invoice generation =<br />
<br />
In the main Invoices window, click [[Image:icon_generate_invoices.png]] '''Generate Invoices''' to generate additional invoices:<br />
<br><br><br />
[[Image:generate_invoices_x6.png]]<br />
<br><br><br />
Select for which users to generate invoices. Prepaid and Postpaid users can have separate details. Also, you can check to generate an invoice for only one particular user. Invoice will be generated if selected User existed at least one day of all Invoice period. When Invoice Generation Task is created, admin can check the progress in [[Background Tasks]]. <br />
<br />
'''NOTE:''' For Prepaid User after every executed Manual Payment will be generated Invoice automatically.<br><br />
<!---This functionality is available from MOR X5---><br />
'''NOTE:''' If Currency of User is different than default System Currency. All his Invoices will be generated with [[Currencies| Currency]] Exchange Rate of current day. <br><br />
'''NOTE:''' When generating invoice, current user details will be used. <br> <br />
<br><br><br />
<br />
= Invoice recalculation =<br />
<br />
An invoice cannot be modified after being sent. But if you want to allow recalculations after sending invoices, go to: '''Settings -> Setup -> Settings'''. Then click on the tabs: '''Invoices -> Functionality'''. Select ''Invoice allow recalculate after send'':<br />
<br><br><br />
[[Image:ivoicesnewnew.png]]<br />
<br><br><br />
===Recalculate a group of Invoices===<br />
<br />
To recalculate invoices in the main Invoices window click [[Image:icon_generate_invoices.png]] '''Recalculate invoices''':<br />
<br><br><br />
[[Image:recalc.png]]<br />
<br><br><br />
Select which type of Invoices or whose Invoices to recalculate.<br />
<br><br><br />
=== Recalculate a single Invoice ===<br />
<br />
If an invoice is not marked as paid - it can be recalculated for the same user, same period. To achieve this - press the marked icon:<br />
<br><br><br />
[[File:Recalculate_single_invoice_x6.png]]<br />
<br><br><br />
<br />
= Pay unpaid Invoices =<br />
<br />
In list of Invoices click [[Image:icon_edit.png]]'''Bulk management''' and button '''Pay unpaid Invoices''' will appear.<br />
<br><br><br />
[[File:Invoice bulk management v2.png]]<br />
<br><br><br />
Click '''Pay unpaid Invoices''' and '''All''' unpaid Invoices will be marked as paid. For each marked Invoice Payment will be created.<br />
<br><br><br />
<br />
= Send invoices by email (manual) =<br />
<br />
Click '''Send Invoices over Email to Users''' to send invoices to their Users in this period:<br />
<br><br><br />
[[Image:Invoce email.png]]<br />
<br><br><br />
You can use these settings to choose which users should get an email with the invoice. Using these settings you can send emails in parts.<br />
<br><br />
* '''Email sending''' option must be enabled in Email Settings to use this feature<br />
* Tip: you can '''send invoices in parts''' by using text fields to send invoices for users which '''Username, First name, Last name''' or '''Number''' begins with some letters. For example: you have users with usernames john, albert and alex. You want to send invoices only for users whose usernames begins with '''"a"''' so you just have to enter '''"a"''' in a '''Username text field''' to send invoices only to albert and alex.<br />
<br />
<br />
<br><br><br />
<br />
= Generate and send invoices by email (automatically) =<br />
<br />
Use [http://wiki.kolmisoft.com/index.php/Cron_actions#Generate_Invoices_and_send_by_Email Cron Actions] to Generate and send Emails automatically.<br />
<br />
<br><br><br />
<br />
=See also=<br />
<br />
* [[Accounting]]<br />
* [[Invoice configuration]]<br />
* [[Pay Invoice with balance deduction]]<br />
* [[Outstanding balance(Debt)]]<br />
* [[Invoice by CallerID]]<br />
* [[MOR API invoices_get]]<br />
* [[Cannot generate Invoice]]<br />
* [[Duplicate value in Cell Address field]]</div>Tomashttps://wiki.kolmisoft.com/index.php?title=User_Blocking&diff=21449User Blocking2016-09-27T08:20:54Z<p>Tomas: /* Allow to loggin and receive emails */</p>
<hr />
<div>= Definition =<br />
<br />
When a User is blocked, he is unable to make outgoing calls login to the user interface or receive any kind of emails.<br />
<br />
NOTE: the User is still able to receive calls. Unassign DID for him to keep him from receiving incoming calls.<br />
<br />
= Direct blocking = <br />
<br />
Mark User '''Blocked''' or '''Not Blocked''' to instantly block/unblock him.<br />
<br><br><br />
[[Image:white_line.jpg]]<br />
<br><br><br />
= Unconditional blocking =<br />
<br><br />
[[Image:block_at.png|upright]]<br />
<br><br><br />
[[Image:white_line.jpg]]<br />
<br><br><br />
This option sets the date when user should be blocked.<br />
<br />
If date is in the past, this option is not active.<br />
<br />
Block check is done every night at 00:00:00.<br />
<br />
NOTE #1: if you want to block the user in the future, set this date in '''Block at''' BUT do not mark this user as '''Blocked''' (if you do so, the block will take effect instantly). The system will mark the user as '''Blocked''' at your selected date.<br />
<br />
NOTE #2: If you want to block the user today, just mark the user as '''Blocked'''. DO NOT enter today's date into '''Block at''' field - the system will not block it if you do so, because it will not check until tomorrow 00:00:00.<br />
<br />
Email is sent to User to inform him that he was blocked.<br />
<br><br><br />
[[Image:white_line.jpg]]<br />
<br><br><br />
<br />
= Conditional blocking =<br />
<br><br />
[[Image:block_at_conditional.png]]<br />
<br><br><br />
[[Image:white_line.jpg]]<br />
<br><br><br />
Under this option, select '''day of the month when to perform check'''.<br />
<br />
The check is done at night at 00:00:00. <br />
<br />
On the day the user is checked, the following questions are asked:<br />
<br />
* Is he POSTPAID ?<br />
* Is his BALANCE < 0 ?<br />
* Has he UNPAID INVOICES ?<br />
<br />
If all conditions are met, this user is blocked.<br />
<br />
Email is sent to User to inform him that he was blocked.<br />
<br><br><br />
<br />
= Allow to login and receive emails=<br />
<br><br />
[[Image:Allow to login and reveice emails.png]]<br />
<br><br><br />
When this option is checked, blocked user is allowed to login and receive emails.<br />
<br />
=See Also=<br />
*[[Monitorings_Addon|Monitoring Addon]]</div>Tomas