Cloud Billing For WHMCS
Line 1: | Line 1: | ||
− | <meta name="keywords" content=" | + | <meta name="keywords" content="aws billing for whmcs, cloud billing for whmcs, azure billing for whmcs, google cloud billing for whmcs, microsoft csp billing for whmcs, amazon web services whmcs, amazon web services billing whmcs, amazon aws whmcs, amazon aws billing whmcs, cloud billing configuration, whmcs cloud billing management, whmcs cloud billing installation, whmcs cloud billing common problems, about whmcs cloud billing, whmcs cloud billing documentation, whmcs cloud billing faq, whmcs cloud billing help, whmcs cloud billing guide, whmcs cloud billing wiki, whmcs cloud billing tutorial, whmcs cloud billing tips"></meta> |
− | <meta name="description" content="ModulesGarden Wiki Contains All The Information You Need About The | + | <meta name="description" content="ModulesGarden Wiki Contains All The Information You Need About The Cloud Billing For WHMCS Solution."></meta> |
− | + | =About [https://www.modulesgarden.com/products/whmcs/cloud-billing Cloud Billing For WHMCS]= | |
− | + | ||
− | + | ||
− | =About [https://www.modulesgarden.com/products/whmcs/ | + | |
{| | {| | ||
− | |style="padding: 10px 0px 10px 0px;"|''' | + | |style="padding: 10px 0px 10px 0px;"|'''Cloud Billing For WHMCS''' is a sophisticated module that consists of: |
− | + | ||
− | + | ||
|} | |} | ||
− | |||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 0px 30px;"|✔ AWS Billing For WHMCS |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ | + | |style="padding: 0px 0px 0px 30px;"|✔ Google Cloud Billing For WHMCS |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ | + | |style="padding: 0px 0px 0px 30px;"|✔ Azure Billing For WHMCS ''(coming soon)'' |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ | + | |style="padding: 0px 0px 0px 30px;"|✔ Microsoft CSP Billing For WHMCS ''(coming soon)'' |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 10px 0px 10px 0px;"|'''Cloud Billing For WHMCS''' offers you a powerful billing model management of Google Cloud and Amazon Web Services to broaden your target audience.<br/> The module allows you to gather all the services in one place, connect to the external platforms in two different ways- with the use of your account or your customer account.<br /> Except for setting percentage billing margin for WHMCS products per service, you are given the possibility to generate detailed reports on billing management, earnings, resource usage per service, and much more. |
|} | |} | ||
+ | *'''Core Features:''' | ||
{| | {| | ||
− | |style="padding: | + | |style="padding: 10px 0px 0px 30px;"|✔ Efficiently Bill Customers For Management of Amazon Web Services |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 0px 30px;"|✔ Earn From Your Percentage Margins Based On User AWS Services |
|} | |} | ||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 0px 30px;"|✔ Connect With Amazon Web Services Using: |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Own Account With All Services Of Your Customers |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ With Customers' Accounts To Keep Their Management Separate |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ | + | |style="padding: 0px 0px 0px 30px;"|✔ Keep Customers Up To Date With Their Current And Upcoming Costs |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 10px 30px;"|✔ Access Insightful Expenses, Earnings And Resources Usage Graphs |
|} | |} | ||
+ | |||
+ | *'''Admin Area Features:''' | ||
{| | {| | ||
− | |style="padding: | + | |style="padding: 10px 0px 0px 30px;"|✔ View Dashboard Summaries: |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Invoices And Earnings Per Last Week/Month/Quarter/Year |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Expenses And Earnings |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Earnings Per Service |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Most Profitable Clients |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Latest Invoices |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Paid API Requests Usage |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ | + | |style="padding: 0px 0px 0px 30px;"|✔ Create Pricing Groups With Multiple Pricing Margins Per AWS Services |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ | + | |style="padding: 0px 0px 0px 30px;"|✔ Assign WHMCS Products To Selected Pricing Groups |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ | + | |style="padding: 0px 0px 0px 30px;"|✔ Select Billing Method For Product: |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ On WHMCS Invoice Generation |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ On First Day Of Month |
|} | |} | ||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 0px 45px;"|✔ On Last Day Of Month |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 30px;"|✔ Create And Manage Service Relations Between: |
|} | |} | ||
− | {| | + | {| |
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Clients And Their WHMCS Products |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 45px;"|✔ | + | |style="padding: 0px 0px 0px 45px;"|✔ Pricing Groups |
|} | |} | ||
− | {| | + | {| |
− | |style="padding: 0px 0px 0px 45px;"|✔ | + | |style="padding: 0px 0px 0px 45px;"|✔ Used API Credentials |
− | + | ||
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 45px;"|✔ | + | |style="padding: 0px 0px 0px 45px;"|✔ Chosen Billing Types: |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ Default - Billing Services Based On Assigned Tag Names On Your AWS Account |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ Organization - Bill Services Based On Provided Organization ID On Your AWS Account |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 60px;"|✔ Custom Details - Bill All Services From Individual Customer AWS Account |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 30px;"|✔ View Service Details: |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Total Paid And Charged Amount Per Client |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 45px;"|✔ | + | |style="padding: 0px 0px 0px 45px;"|✔ Current Usage With Cost And Charged Amount Per Service |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 45px;"|✔ | + | |style="padding: 0px 0px 0px 45px;"|✔ Changes Per Service Graph |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 45px;"|✔ | + | |style="padding: 0px 0px 0px 45px;"|✔ Generated Invoices Per Service |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 30px;"|✔ View Created Invoices Per Client |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ | + | |style="padding: 0px 0px 0px 30px;"|✔ Provide Multiple API Credentials: |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 45px;"|✔ | + | |style="padding: 0px 0px 0px 45px;"|✔ To Your Own AWS Accounts |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 45px;"|✔ | + | |style="padding: 0px 0px 0px 45px;"|✔ To Your Individual Customers Accounts |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 45px;"|✔ Run API Connection Test |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 30px;"|✔ View Service Details, Usage And Charges From Client's Products/Services Tab |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ | + | |style="padding: 0px 0px 0px 30px;"|✔ Access Your License Information With Selected Plan Based On Current Income |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 30px;"|✔ Toggle Debug Mode For API Request Logging |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 10px 30px;"|✔ View Module Logs |
|} | |} | ||
+ | |||
+ | *'''Client Area Features:''' | ||
{| | {| | ||
− | |style="padding: | + | |style="padding: 10px 0px 0px 30px;"|✔ View Current Usage Per Service |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 30px;"|✔ View Charges Per Service Graph: |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 45px;"|✔ | + | |style="padding: 0px 0px 0px 45px;"|✔ Select Services Types |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 10px 45px;"|✔ Define Graph Scope |
|} | |} | ||
+ | |||
+ | *'''General Info:''' | ||
{| | {| | ||
− | |style="padding: | + | |style="padding: 10px 0px 0px 30px;"|✔ Supports All Offered AWS Services |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 30px;"|✔ Supports Multiple AWS Accounts |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px | + | |style="padding: 0px 0px 0px 30px;"|✔ Multi-Language Support |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 0px 30px;"|✔ Supports PHP 7.1 Up To PHP 7.4 |
|} | |} | ||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS Template Six |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 10px 30px;"|✔ Supports WHMCS V7.9 And Later |
|} | |} | ||
+ | |||
+ | *'''Requirements:''' | ||
{| | {| | ||
− | |style="padding: 0px | + | |style="padding: 10px 0px 30px 30px;"|✔ Amazon Web Services Account |
|} | |} | ||
+ | |||
+ | =Installation and Configuration= | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 10px 0px 30px 0px;"|'''This tutorial will show you how to successfully install and configure [https://www.modulesgarden.com/products/whmcs/cloud-billing Cloud Billing For WHMCS] smoothly.''' <br /> |
+ | We will guide you step by step through the whole process. | ||
|} | |} | ||
− | =Installation= | + | ==Installation== |
+ | |||
{| | {| | ||
− | |style="padding: 10px 0px | + | |style="padding: 10px 0px 20px 15px;"|'''1. Log in to our client area and download the module.''' |
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_1.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 15px 15px;"|'''2. Upload and extract the extension into the main WHMCS directory.<br /> |
+ | Extracted files in your WHMCS directory should look like this: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_2.png]] |
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 15px 15px;"|'''3. When you install Cloud Billing For WHMCS for the first time, you have to rename the '' 'license_RENAME.php' '' file.'''<br /> |
+ | The file is located in '' 'modules/addons/CloudBilling/license_RENAME.php'.'' Rename it from '' 'license_RENAME.php' '' to '' 'license.php'.'' | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_3.png]] |
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 15px 15px;"|'''4. In order to configure your license key, you have to edit the previously renamed '' 'license.php' '' file.'''<br /> |
+ | Enter your license key between quotation marks as presented on the following screen. You can find your license key in our client area'' → 'My Products'.'' | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_4.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|''' | + | |style="padding: 0px 0px 15px 15px;"|'''5. In the next step, set up the '' 'storage' '' folder as recursively writable.'''<br /> |
− | + | This folder is available at '' 'your_whmcs/modules/addons/CloudBilling/' ''. | |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 30px 25px;"|[[File:AWS_5.png]] |
|} | |} | ||
+ | |||
+ | ==Activating Addon Module== | ||
{| | {| | ||
− | |style="padding: 0px | + | |style="padding: 10px 0px 20px 15px;"|'''6. Now, you have to activate the module in your WHMCS system.'''<br /> |
− | + | Log in to your WHMCS admin area. Go to '' 'System Settings' '' → '' 'Addon Modules'. '' Afterward, find '' 'Cloud Billing' '' and press the '' 'Activate' '' button.<br /> | |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_6.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 15px;"|'''7. In the next step, you need to grant access to this module.'''<br /> |
− | + | To do so, click on the '' 'Configure' '' button, go to the '' 'Access Control' '' area and check the required admin role groups. Press '' 'Save Changes'.''<br /> | |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_7.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 15px;"|'''8. Good job! You have just successfully installed Cloud Billing For WHMCS! Now in your WHMCS press '' 'Addons' '' and then '' 'Cloud Billing'. '' ''' |
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 30px 25px;"|[[File:AWS_8.png]] |
|} | |} | ||
+ | <!-- | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 15px;"|'''9. Before you finish the configuration process, you need to set up the following folders as recursively writable:<br /> |
− | + | <pre>'your_whmcs/modules/addons/CloudBilling/storage/logs' | |
+ | 'your_whmcs/modules/addons/CloudBilling/storage/app' | ||
+ | 'your_whmcs/modules/addons/CloudBilling/storage/crons'</pre> | ||
+ | |}--> | ||
+ | |||
+ | ==AWS Billing For WHMCS== | ||
+ | {| | ||
+ | |style="padding: 10px 0px 20px 15px;"|'''9. In order to continue the configuration process. At first, proceed to the '' 'API Credentials' '' section as presented on the screen.<br/> | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_9.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 15px;"|'''To complete the previous step and connect to the platform properly, you need to generate your AWS access details.'''<br/> |
− | + | Underneath, you will find detailed instructions on where to find this information. | |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 15px;"|'''10. Log in to your [https://aws.amazon.com/console/ Amazon AWS Management Console] and find '' 'My Security Credentials' '' section under your account name dropdown. |
|} | |} | ||
− | |||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 20px 25px;"|[[File:ALS_6.png]] |
− | + | ||
|} | |} | ||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 20px 15px;"|'''11. There, move to the '' 'Access Keys (access key ID and secret access key)' '' section. |
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:ALS_7.png]] |
|} | |} | ||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 20px 15px;"|'''12. If you do not have any active keys yet, then press the '' 'Create New Access Key' '' button to generate a new set of details. |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:ALS_8.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 15px;"|'''13. A modal with Access Key ID and Secret Access Key will appear, so copy this information and keep it safe. You may also download a suitable file with these details. '''<br/> |
− | + | '' '''Note:''' This is the only place where you can find the corresponding secret key later. It will not be visible next to the Key ID in the panel. | |
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:ALS_9.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 15px;"| | + | |style="padding: 0px 0px 20px 15px;"|'''14. Now, come back the '' 'API Credentials' '' section and press the '' 'Add Credentials' '' button. In the new pop-up window, provide a name, API Key, API Secret. |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_10.png]] |
|} | |} | ||
− | |||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 20px 15px;"|In the new pop-up window, provide a name, API Key, API Secret. Press '' 'Add' '' when ready. |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_12.png]] |
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px | + | |style="padding: 0px 0px 20px 15px;"|'''15. To check if the entered data is correct, click on the '' 'Test Connection' '' button. |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 30px 25px;"|[[File:AWS_13.png]] |
− | + | |} | |
− | + | ==Google Cloud Billing For WHMCS== | |
− | + | {| | |
+ | |style="padding: 10px 0px 20px 15px;"|Before you can go on, you must configure your google service account appropriately and then generate your Google Cloud access details. You will need them to create connection between the module and the Google Cloud server. | ||
+ | |} | ||
+ | ===Billing Export=== | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|Underneath, you will find instructions on how to export billing data and create datasets. This step is obligatory and without proper configuration here the module will not work correctly. | ||
− | + | '''9. At first, proceed to '' 'Billing' → 'Billing Export' '' section of your project. There under '' 'Daily Cost Detail' '' press '' 'Edit Settings'.''''' | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_13_1.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|''' | + | |style="padding: 0px 0px 15px 15px;"|'''10. Now create a BigQuery dataset.'''<br/> |
− | + | This step is crucial for the whole module managemnt. Billing datasets are generated now, they will be assigned to services in the module to allow their billing. | |
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_13_2.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 15px;"|Press '' 'Create Dataset'.'' |
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_13_3.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 15px;"|Enter the dataset ID and select localisation ''(the same for the project and the dataset).'' |
− | + | |} | |
− | + | {| | |
− | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_13_3_1.png]] | |
− | + | |} | |
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"|A new table with billing data should appear in the Explorer in a while. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 25px;"|[[File:AWS_13_3_2.png]] | ||
+ | |} | ||
− | + | ===API Credentials=== | |
− | + | {| | |
− | + | |style="padding: 10px 0px 15px 15px;"|'''11. Next, you will have to create your personal login credentials.'''<br/> | |
+ | You will need them to successfuly connect the Cloud Billing module with the platform.<br/> | ||
+ | Move to '' 'APIs & Service' → 'Credentials'. '' There press '' '+ Create Credentials' → 'Service Account'. '' | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_13_4.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"|'''12. Provide the serivce account details and press '' 'Create'.'' You will be automatically moved to the next step.''' | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_13_5.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|'''13.Grant the service account access to the project, add two roles:''' | ||
+ | * BigQuery Job User | ||
+ | * BigQuery Resource Viewer | ||
− | + | If you need you may grant users access to the service account, however, this step is not required. Press '' 'Done' '' when everything is ready. | |
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_13_6.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 15px;"|'''14. Next, open the service accunt details by pressing the icon. You will have to add a new JSON key to the just generated credentials.''' |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_13_7.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 15px;"|'''15. When you have the service account detils open, find '' 'Add Key' '' at the page bottom. Select '' 'Create new key'.'' ''' |
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_13_8.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 15px;"|'''16. Select the key type - '' 'JSON' '' and creat it. A JSON format file will be immediatelly saved on your disk.'''<br/> |
− | + | Keep it save as there is no way to download it again. You will need it in a moment. | |
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_13_9.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"| | + | |style="padding: 0px 0px 15px 15px;"|Underneath you may see how an exemplary content of a JSON file may look like. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_13_10.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 15px;"|'''17. Move to your '' 'WHMCS' → 'Addons' → 'Cloud Billing'.'' There open the '' 'API Credentials' '' section and add new credentials.''' |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_13_11.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"| | + | |style="padding: 0px 0px 15px 15px;"|'''18. Select credentials type - in our case, that will be '' 'Google Cloud' '' and type in your custom name for this entry.'''<br/> |
− | + | In the '' 'JSON File Content' '' field paste the input of the file that you have just saved, make sure you are pasting the exact content of that file, otherwise, the connection will fail. | |
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_13_12.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 15px;"|'''19. New Credentials appear on the list, test the connection to make sure everything is working as expected.''' |
− | + | ||
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px 25px;"|[[File: | + | |style="padding: 0px 0px 30px 25px;"|[[File:AWS_13_13.png]] |
|} | |} | ||
− | == | + | =Management= |
+ | ==Pricing Groups== | ||
{| | {| | ||
− | |style="padding: 10px 0px | + | |style="padding: 10px 0px 20px 15px;"|In this section, you can easily create new pricing groups. To do so, please click on the button as shown below. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_14.png]] |
|} | |} | ||
− | |||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 20px 15px;"|Here, you will be asked to provide a group name and set up the default pricing margin. <br/> |
− | + | '''Note:''' ''The default pricing margin means the percentage that will be added to the invoice.<br/> If you do not define the margin for a particular product, then the module will use the margin which is given in the 'Others' field. '' <br/> | |
− | + | '''Example: If the Amazon's charge is 10$ and we set up 20% margin, the client will receive an invoice for 12$.''' | |
− | '' | + | |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_15.png]] |
|} | |} | ||
− | |||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 20px 15px;"|If you wish to add more payable services, click on the '' 'Add Billing Service' '' button to add a new one. |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_16.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px | + | |style="padding: 0px 0px 20px 15px;"|Next, you can choose the services that will be payable. |
+ | '''Note:''' '' Please remember that if you do not select any service type from the drop-down list, the pricing margin that you enter will be automatically assigned to the 'Other' service type. '' | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_17.png]] |
|} | |} | ||
− | |||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 20px 15px;"|Pricing groups may be easily edited. If you wish to delete any of your pricing groups, firstly, make sure that the particular pricing group is not used anywhere. Otherwise, you will not be able to delete it. |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px 25px;"|[[File: | + | |style="padding: 0px 0px 30px 25px;"|[[File:AWS_18.png]] |
|} | |} | ||
− | == | + | ==Products== |
{| | {| | ||
− | |style="padding: 10px 0px | + | |style="padding: 10px 0px 20px 15px;"|The '' 'Products' '' section grants you a possibility to add a new product and assign a pricing group to it. Moreover, you can select one of three available billing methods which will be allotted to the newly created product. |
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_19.png]] |
|} | |} | ||
− | |||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_20.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 15px;"|This image presents what the summary of your products should look like: |
|} | |} | ||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_21.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 15px;"|If you wish to disable a particular product, just click the following button: |
+ | '''Note:''' '' Please remember that a disabled product may be activated again anytime. '' | ||
|} | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_22.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"|If you need to introduce some changes to your product, then click on the '' 'Edit' '' button. If some products are no longer necessary, then '' 'Delete' '' them. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 25px;"|[[File:AWS_23.png]] | ||
+ | |} | ||
+ | {| | ||
− | + | ==Services== | |
− | + | ||
− | == | + | |
{| | {| | ||
− | |style="padding: 10px 0px | + | |style="padding: 10px 0px 20px 15px;"|Under this tab, new services can be added. To do so, click the '' 'Add Service' '' button. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_24.png]] |
|} | |} | ||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 10px 15px;"|In the newly opened window, you will be asked to complete the following information:<br /> |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 15px 15px;"|'''Amazon type services:''' |
+ | *'' 'Client' '' - select one of your clients, | ||
+ | *'' 'Service' '' - choose one service which was ordered by your client, | ||
+ | *'' 'Pricing Group' '' - decide which of the previously created pricing groups should be allotted to this service, | ||
+ | *'' 'Credentials' '' - if you created more than one credentials then you can define which one will be assigned to this service, | ||
+ | *'' 'Billing Type' '' - determines the way of searching the resources that your clients will be billed for, there are three options available: | ||
+ | **'' 'Default' '' – all resources containing a tag name provided by you will be billed,<br /> For instance, when you enter ‘WHMCS’ in the '' 'Tag Name' '' field, this entry with the value of the service will be automatically searched for in a dedicated platform | ||
+ | **'' 'Organization' '' – all resources in a particular company will be billed, type in the organization ID then | ||
+ | **'' 'Custom details' '' – all resources in a particular account will be billed. The module connects to AWS and sums everything that is available there, | ||
+ | *'' 'Organization ID' '' - enter the ID if you have selected '' 'Organization' '' in the '' 'Billing Type' '' selection | ||
+ | *'' 'Tag Name' '' – if you wish your services to be filtered according to the particular tag name. <br/>Make sure the used tag has been activated under '' 'AWS Billing Dashboard' → 'Cost Allocation Tags'.''<br/> '''''Important:''' The tag name entered in the Cloud Billing module must be exactly the same as the tag name provided in the EC2 [https://www.docs.modulesgarden.com/Amazon_EC2_For_WHMCS#tag_name_20] or Lightsail [https://www.docs.modulesgarden.com/Amazon_Lightsail_For_WHMCS#tagname_20] products module settings, whether it is a default 'WHMCS' or a custom one.'' | ||
|} | |} | ||
− | |||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_25.png]] |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px 25px;"|[[File: | + | |style="padding: 0px 0px 15px 15px;"|'''Google Cloud type services:''' |
+ | *'' 'Client' '' - select one of your clients, | ||
+ | *'' 'Service' '' - choose one service which was ordered by your client, | ||
+ | *'' 'Pricing Group' '' - decide which of the previously created pricing groups should be allotted to this service, | ||
+ | *'' 'Credentials' '' - if you created more than one credentials then you can define which one will be assigned to this service, | ||
+ | *'' 'Billing Type' '' - determines the way of searching the resources that your clients will be billed for, there are three options available: | ||
+ | **'' 'Label' '' – all resources containing labels provided by you will be billed,<br /> For instance, when you enter ‘WHMCS’ in the '' 'Label' '' field, this entry with the value of the service will be automatically searched for in a dedicated platform | ||
+ | **'' 'Project (Custom details)' '' – all resources in a particular account will be billed. The module connects to Google Cloud and sums everything that is available there, | ||
+ | *'' 'Project Dataset' '' - Choose from available the dataset that will be assigned to this service | ||
+ | *'' 'Project' '' - Enter the project ID name, instance that will be assigned to this service must belong to this project | ||
+ | *'' 'Label' '' – if you wish your services to be filtered according to the particular label <br/>'''''Important:''' The label entered in the Cloud Billing module must be exactly the same as the label manually created in the virtual machine details on the Google Cloud Platform.<br/> Remember to add an appropriate ID number to the label in the Google Cloud Platform when creating it. You will find it in the last position of the service details URL, e.g.: '<nowiki>http://your_whmcs/test/admin/....id=7</nowiki>' ''<br/> For example:<br/> '''''Label: WHMCS''''' (module)<br/> '''''Label: WHMCS 7''''' (platform) | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_25_1.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"|Here you can check what the newly added service looks like:<br /> | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_26.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"| If you wish to check more details, press the following button. <br /> | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_27.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"| Now, you will be redirected to a new subpage. <br /> | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_28.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"| Please remember that there is a difference between '' 'Cost' '' and '' 'Charge Amount' '' in the '' 'Current Usage' ''section. <br /> | ||
+ | *'' 'Cost' '' refers to the amount that is billed by Amazon. | ||
+ | * '' 'Charge Amount' '' is the amount that your client will be billed. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"|If any values for usage have been counted, there will be a possibility to create invoices. To generate an invoice, simply press the icon as shown in the picture: <br /> | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 25px;"|[[File:AWS_29.png]] | ||
|} | |} | ||
+ | ==Settings== | ||
+ | {| | ||
+ | |style="padding: 10px 0px 20px 15px;"|In order to collect the data properly, the following cron tasks may be needed. | ||
+ | ''' Note:''' '' Please remember that the following picture is only a suggestion how to set up cron and of course it can be modified by you.<br /> Keep in mind that each cron should be used once a day because Amazon charges for every API request. '' <br /> | ||
+ | '''Note:''' It is possible to collect your '' 'Billing Data' '' from the preferred period of time. To do so, add date range '''--from --to''' at the end of your cron command as shown in the following example:<br /> | ||
+ | <pre> php -q /your_whmcs/modules/addons/CloudBilling/cron/cron.php billing --from 2020-01-05 --to 2020-01-10</pre> | ||
+ | Once you enter this command, you will receive the '' 'Billing Data' '' from 05.01.2020 to 10.01.2020. <br /> | ||
+ | '''To obtain precise information, we highly recommend performing the '' 'Billing Data Collecting' '' cron at 22:00 UTC time and the '' 'Invoicing' '' cron at 23:00 UTC time. ''' <br/> <br/> | ||
+ | You may also define the '' 'Cron Setup' '' by providing one of the following values: 1, 2, 3, 4, 6, 8 that can be selected from the dropdown menu. <br/> These are the factors of 24. As an example, if you choose '4' then the cron task will be run 4 times within 24 hours (about every 6 hours). | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 25px;"|[[File:AWS_30.png]] | ||
+ | |} | ||
− | == | + | ==Dashboard== |
{| | {| | ||
− | |style="padding: 10px 0px | + | |style="padding: 10px 0px 20px 15px;"|It is possible to count the number of your API requests as well as their cost. This option is located at the bottom of the ‘Dashboard’ section. |
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px 25px;"|[[File: | + | |style="padding: 0px 0px 30px 25px;"|[[File:AWS_31.png]] |
|} | |} | ||
− | == | + | ==Invoices== |
{| | {| | ||
− | |style="padding: 10px 0px 20px 15px;"|'' ' | + | |style="padding: 10px 0px 20px 15px;"| All generated invoices are gathered in the '' 'Invoices' '' tab. <br /> Here you can check the most essential information of a particular invoice such as '' 'ID' '', '' 'Client' '', '' 'Status' '', '' 'Amount' '' and the creation date. The search box allows you to filter invoices of a particular client. |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_32.png]] |
|} | |} | ||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 20px 15px;"|In order to check the details of a specific invoice, please click the info button as presented below: <br /> |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_33.png]] |
|} | |} | ||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 20px 15px;"|Next, you will be redirected to the details of the selected invoice. |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px 25px;"|[[File: | + | |style="padding: 0px 0px 30px 25px;"|[[File:AWS_34.png]] |
|} | |} | ||
− | == | + | ==Logs== |
{| | {| | ||
− | |style="padding: 10px 0px 20px 15px;"|'' ' | + | |style="padding: 10px 0px 20px 15px;"|The '' 'Logs' '' section stores the history of all actions performed in the module. <br /> If you wish to filter the history by one of these options: '' 'ID' '', '' 'Service ID' '', '' 'Message' '', '' 'Type' '', '' 'Date' '', simply click on the preferred one. |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_35.png]] |
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"|There is a possibility to delete the selected item from the '' 'Logs' '' section by pressing the following icon.<br /> | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 25px;"|[[File:AWS_36.png]] | ||
|} | |} | ||
− | == | + | ==Documentation== |
{| | {| | ||
− | |style="padding: 10px 0px 20px 15px;"| | + | |style="padding: 10px 0px 20px 15px;"|Once you click on the '' 'Documentation' '' section, you will be redirected to the website you are currently reading. |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px 25px;"|[[File: | + | |style="padding: 0px 0px 30px 25px;"|[[File:AWS_37.png]] |
|} | |} | ||
− | == | + | |
+ | ==Admin Area== | ||
{| | {| | ||
− | |style="padding: 10px 0px 20px 15px;"| | + | |style="padding: 10px 0px 20px 15px;"|Cloud Billing For WHMCS allows you to monitor and manage your customer services from the admin area of your WHMCS system. |
+ | This includes supervision of such features as: | ||
+ | |||
+ | *Module commands to allow easy and quick management of the service, | ||
+ | *Service details, | ||
+ | *Current Usage, | ||
+ | *Charges per Service, | ||
+ | *Service Invoices. | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px 25px;"|[[File: | + | |style="padding: 0px 0px 30px 25px;"|[[File:AWS_37_1.png]] |
|} | |} | ||
− | == | + | ==Client Area== |
{| | {| | ||
− | |style="padding: 10px 0px 20px 15px;"|'' ' | + | |style="padding: 10px 0px 20px 15px;"|In the client area, proceed to '' 'My Products&Services' '' → '' 'Product Details' ''. <br /> Here, you can check the '' 'Current Usage' '' as well as '' 'Charges per Service' '' which can be modified according to your preferences. |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_38.png]] |
|} | |} | ||
− | |||
{| | {| | ||
− | |style="padding: | + | |style="padding: 0px 0px 20px 15px;"|Once clicked on the edit icon, a new pop-up will show up.<br /> |
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px 25px;"|[[File: | + | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_39.png]] |
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"|Here, you can select a type of your service and choose a time frame for a graph from these available ones: '' 'Current Month' '', '' 'Last Month' '', '' 'Last Quarter' '', '' 'This Year' ''. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 25px;"|[[File:AWS_40.png]] | ||
|} | |} | ||
− | = | + | <!-- == Cloud Billing == |
{| | {| | ||
− | |style="padding: 10px 0px | + | |style="padding: 10px 0px 20px 15px;"|Under this section you can easily analyze the '' 'Current Usage' '', '' 'Charges per Services' '', '' 'Services List' ''.<br /> |
− | + | Please remember that from this place in the module, you can also modify the '' 'Charges per Services' '' section as it was described previously. To do so, simply click on the edit icon and define the data to be displayed. | |
|} | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:AWS_41.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"|In the '' 'Services List' ''part you are able to find the selected services and check their details by pressing the appropriate icon: | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 25px;"|[[File:AWS_42.png]] | ||
+ | |} | ||
+ | --> | ||
=Update Instructions= | =Update Instructions= | ||
{| | {| | ||
− | |style="padding: 10px 0px | + | |style="padding: 10px 0px 10px 15px;"|An essential guidance through the process of updating the module is offered '''[https://www.docs.modulesgarden.com/How_To_Update_WHMCS_Module here]'''. |
− | + | ||
− | + | ||
|} | |} | ||
+ | |||
=Common Problems= | =Common Problems= | ||
{| | {| | ||
− | |style="padding: 10px 0px | + | |style="padding: 10px 0px 10px 15px;"|'''1. When you have problems with connection, check whether your SELinux or firewall does not block ports.''' |
|} | |} |
Revision as of 10:15, 1 March 2021
Contents |
About Cloud Billing For WHMCS
Cloud Billing For WHMCS is a sophisticated module that consists of: |
✔ AWS Billing For WHMCS |
✔ Google Cloud Billing For WHMCS |
✔ Azure Billing For WHMCS (coming soon) |
✔ Microsoft CSP Billing For WHMCS (coming soon) |
Cloud Billing For WHMCS offers you a powerful billing model management of Google Cloud and Amazon Web Services to broaden your target audience. The module allows you to gather all the services in one place, connect to the external platforms in two different ways- with the use of your account or your customer account. Except for setting percentage billing margin for WHMCS products per service, you are given the possibility to generate detailed reports on billing management, earnings, resource usage per service, and much more. |
- Core Features:
✔ Efficiently Bill Customers For Management of Amazon Web Services |
✔ Earn From Your Percentage Margins Based On User AWS Services |
✔ Connect With Amazon Web Services Using: |
✔ Own Account With All Services Of Your Customers |
✔ With Customers' Accounts To Keep Their Management Separate |
✔ Keep Customers Up To Date With Their Current And Upcoming Costs |
✔ Access Insightful Expenses, Earnings And Resources Usage Graphs |
- Admin Area Features:
✔ View Dashboard Summaries: |
✔ Invoices And Earnings Per Last Week/Month/Quarter/Year |
✔ Expenses And Earnings |
✔ Earnings Per Service |
✔ Most Profitable Clients |
✔ Latest Invoices |
✔ Paid API Requests Usage |
✔ Create Pricing Groups With Multiple Pricing Margins Per AWS Services |
✔ Assign WHMCS Products To Selected Pricing Groups |
✔ Select Billing Method For Product: |
✔ On WHMCS Invoice Generation |
✔ On First Day Of Month |
✔ On Last Day Of Month |
✔ Create And Manage Service Relations Between: |
✔ Clients And Their WHMCS Products |
✔ Pricing Groups |
✔ Used API Credentials |
✔ Chosen Billing Types: |
✔ Default - Billing Services Based On Assigned Tag Names On Your AWS Account |
✔ Organization - Bill Services Based On Provided Organization ID On Your AWS Account |
✔ Custom Details - Bill All Services From Individual Customer AWS Account |
✔ View Service Details: |
✔ Total Paid And Charged Amount Per Client |
✔ Current Usage With Cost And Charged Amount Per Service |
✔ Changes Per Service Graph |
✔ Generated Invoices Per Service |
✔ View Created Invoices Per Client |
✔ Provide Multiple API Credentials: |
✔ To Your Own AWS Accounts |
✔ To Your Individual Customers Accounts |
✔ Run API Connection Test |
✔ View Service Details, Usage And Charges From Client's Products/Services Tab |
✔ Access Your License Information With Selected Plan Based On Current Income |
✔ Toggle Debug Mode For API Request Logging |
✔ View Module Logs |
- Client Area Features:
✔ View Current Usage Per Service |
✔ View Charges Per Service Graph: |
✔ Select Services Types |
✔ Define Graph Scope |
- General Info:
✔ Supports All Offered AWS Services |
✔ Supports Multiple AWS Accounts |
✔ Multi-Language Support |
✔ Supports PHP 7.1 Up To PHP 7.4 |
✔ Supports WHMCS Template Six |
✔ Supports WHMCS V7.9 And Later |
- Requirements:
✔ Amazon Web Services Account |
Installation and Configuration
This tutorial will show you how to successfully install and configure Cloud Billing For WHMCS smoothly. We will guide you step by step through the whole process. |
Installation
1. Log in to our client area and download the module. |
![]() |
2. Upload and extract the extension into the main WHMCS directory. Extracted files in your WHMCS directory should look like this: |
![]() |
3. When you install Cloud Billing For WHMCS for the first time, you have to rename the 'license_RENAME.php' file. The file is located in 'modules/addons/CloudBilling/license_RENAME.php'. Rename it from 'license_RENAME.php' to 'license.php'. |
![]() |
4. In order to configure your license key, you have to edit the previously renamed 'license.php' file. Enter your license key between quotation marks as presented on the following screen. You can find your license key in our client area → 'My Products'. |
![]() |
5. In the next step, set up the 'storage' folder as recursively writable. This folder is available at 'your_whmcs/modules/addons/CloudBilling/' . |
![]() |
Activating Addon Module
6. Now, you have to activate the module in your WHMCS system. Log in to your WHMCS admin area. Go to 'System Settings' → 'Addon Modules'. Afterward, find 'Cloud Billing' and press the 'Activate' button. |
![]() |
7. In the next step, you need to grant access to this module. To do so, click on the 'Configure' button, go to the 'Access Control' area and check the required admin role groups. Press 'Save Changes'. |
![]() |
8. Good job! You have just successfully installed Cloud Billing For WHMCS! Now in your WHMCS press 'Addons' and then 'Cloud Billing'. |
![]() |
AWS Billing For WHMCS
9. In order to continue the configuration process. At first, proceed to the 'API Credentials' section as presented on the screen. |
![]() |
To complete the previous step and connect to the platform properly, you need to generate your AWS access details. Underneath, you will find detailed instructions on where to find this information. |
10. Log in to your Amazon AWS Management Console and find 'My Security Credentials' section under your account name dropdown. |
![]() |
11. There, move to the 'Access Keys (access key ID and secret access key)' section. |
![]() |
12. If you do not have any active keys yet, then press the 'Create New Access Key' button to generate a new set of details. |
![]() |
13. A modal with Access Key ID and Secret Access Key will appear, so copy this information and keep it safe. You may also download a suitable file with these details. Note: This is the only place where you can find the corresponding secret key later. It will not be visible next to the Key ID in the panel. |
![]() |
14. Now, come back the 'API Credentials' section and press the 'Add Credentials' button. In the new pop-up window, provide a name, API Key, API Secret. |
![]() |
In the new pop-up window, provide a name, API Key, API Secret. Press 'Add' when ready. |
![]() |
15. To check if the entered data is correct, click on the 'Test Connection' button. |
![]() |
Google Cloud Billing For WHMCS
Before you can go on, you must configure your google service account appropriately and then generate your Google Cloud access details. You will need them to create connection between the module and the Google Cloud server. |
Billing Export
Underneath, you will find instructions on how to export billing data and create datasets. This step is obligatory and without proper configuration here the module will not work correctly.
9. At first, proceed to 'Billing' → 'Billing Export' section of your project. There under 'Daily Cost Detail' press 'Edit Settings'. |
![]() |
10. Now create a BigQuery dataset. This step is crucial for the whole module managemnt. Billing datasets are generated now, they will be assigned to services in the module to allow their billing. |
![]() |
Press 'Create Dataset'. |
![]() |
Enter the dataset ID and select localisation (the same for the project and the dataset). |
![]() |
A new table with billing data should appear in the Explorer in a while. |
![]() |
API Credentials
11. Next, you will have to create your personal login credentials. You will need them to successfuly connect the Cloud Billing module with the platform. |
![]() |
12. Provide the serivce account details and press 'Create'. You will be automatically moved to the next step. |
![]() |
13.Grant the service account access to the project, add two roles:
If you need you may grant users access to the service account, however, this step is not required. Press 'Done' when everything is ready. |
![]() |
14. Next, open the service accunt details by pressing the icon. You will have to add a new JSON key to the just generated credentials. |
![]() |
15. When you have the service account detils open, find 'Add Key' at the page bottom. Select 'Create new key'. |
![]() |
16. Select the key type - 'JSON' and creat it. A JSON format file will be immediatelly saved on your disk. Keep it save as there is no way to download it again. You will need it in a moment. |
![]() |
Underneath you may see how an exemplary content of a JSON file may look like. |
![]() |
17. Move to your 'WHMCS' → 'Addons' → 'Cloud Billing'. There open the 'API Credentials' section and add new credentials. |
![]() |
18. Select credentials type - in our case, that will be 'Google Cloud' and type in your custom name for this entry. In the 'JSON File Content' field paste the input of the file that you have just saved, make sure you are pasting the exact content of that file, otherwise, the connection will fail. |
![]() |
19. New Credentials appear on the list, test the connection to make sure everything is working as expected. |
![]() |
Management
Pricing Groups
In this section, you can easily create new pricing groups. To do so, please click on the button as shown below. |
![]() |
Here, you will be asked to provide a group name and set up the default pricing margin. Note: The default pricing margin means the percentage that will be added to the invoice. |
![]() |
If you wish to add more payable services, click on the 'Add Billing Service' button to add a new one. |
![]() |
Next, you can choose the services that will be payable.
Note: Please remember that if you do not select any service type from the drop-down list, the pricing margin that you enter will be automatically assigned to the 'Other' service type. |
![]() |
Pricing groups may be easily edited. If you wish to delete any of your pricing groups, firstly, make sure that the particular pricing group is not used anywhere. Otherwise, you will not be able to delete it. |
![]() |
Products
The 'Products' section grants you a possibility to add a new product and assign a pricing group to it. Moreover, you can select one of three available billing methods which will be allotted to the newly created product. |
![]() |
![]() |
This image presents what the summary of your products should look like: |
![]() |
If you wish to disable a particular product, just click the following button:
Note: Please remember that a disabled product may be activated again anytime. |
![]() |
If you need to introduce some changes to your product, then click on the 'Edit' button. If some products are no longer necessary, then 'Delete' them. |
![]() |
Under this tab, new services can be added. To do so, click the 'Add Service' button. |
![]() |
In the newly opened window, you will be asked to complete the following information: |
Amazon type services:
|
![]() |
Google Cloud type services:
|
![]() |
Here you can check what the newly added service looks like: |
![]() |
If you wish to check more details, press the following button. |
![]() |
Now, you will be redirected to a new subpage. |
![]() |
Please remember that there is a difference between 'Cost' and 'Charge Amount' in the 'Current Usage' section.
|
If any values for usage have been counted, there will be a possibility to create invoices. To generate an invoice, simply press the icon as shown in the picture: |
![]() |
Settings
In order to collect the data properly, the following cron tasks may be needed.
Note: Please remember that the following picture is only a suggestion how to set up cron and of course it can be modified by you. php -q /your_whmcs/modules/addons/CloudBilling/cron/cron.php billing --from 2020-01-05 --to 2020-01-10 Once you enter this command, you will receive the 'Billing Data' from 05.01.2020 to 10.01.2020. |
![]() |
Dashboard
It is possible to count the number of your API requests as well as their cost. This option is located at the bottom of the ‘Dashboard’ section. |
![]() |
Invoices
All generated invoices are gathered in the 'Invoices' tab. Here you can check the most essential information of a particular invoice such as 'ID' , 'Client' , 'Status' , 'Amount' and the creation date. The search box allows you to filter invoices of a particular client. |
![]() |
In order to check the details of a specific invoice, please click the info button as presented below: |
![]() |
Next, you will be redirected to the details of the selected invoice. |
![]() |
Logs
The 'Logs' section stores the history of all actions performed in the module. If you wish to filter the history by one of these options: 'ID' , 'Service ID' , 'Message' , 'Type' , 'Date' , simply click on the preferred one. |
![]() |
There is a possibility to delete the selected item from the 'Logs' section by pressing the following icon. |
![]() |
Documentation
Once you click on the 'Documentation' section, you will be redirected to the website you are currently reading. |
![]() |
Admin Area
Cloud Billing For WHMCS allows you to monitor and manage your customer services from the admin area of your WHMCS system.
This includes supervision of such features as:
|
![]() |
Client Area
In the client area, proceed to 'My Products&Services' → 'Product Details' . Here, you can check the 'Current Usage' as well as 'Charges per Service' which can be modified according to your preferences. |
![]() |
Once clicked on the edit icon, a new pop-up will show up. |
![]() |
Here, you can select a type of your service and choose a time frame for a graph from these available ones: 'Current Month' , 'Last Month' , 'Last Quarter' , 'This Year' . |
![]() |
Update Instructions
An essential guidance through the process of updating the module is offered here. |
Common Problems
1. When you have problems with connection, check whether your SELinux or firewall does not block ports. |