Other Configurable Settings

App Settings Table

There are few configurable settings in Usage and Billing which can be configured by editing ‘dbo.AppSettings’ table in the ‘CloudAssertBilling’ database.

Key

Values

Default

Functionality

MaxHourlyUnitPriceAllowed

Number

100

Does not calculate the usage cost if the hourly unit price for the resource exceeds the ‘MaxHourlyUnitPriceAllowed’ value

MaxMonthlyUnitPriceAllowed

Number

74400

Does not calculate the usage cost if the monthly unit price for the resource exceeds the ‘MaxMonthlyUnitPriceAllowed value

IsAutoApproveInvoices

Text

False

Invoice will be auto-approved by admin when the value is set to true and will be ready to be processed in WHMCS payment portal.

IsAutoSuspendSubscriptionOnLowCredit

Text

False

When the value is set to true, subscriptions will be auto-suspended when the credit runs out. This works only if ‘LowCreditChecker’ is enabled Agent Service config file.

PriceCatalogsTheme

Text

EffectivePriceCatalog.html

Changing it changes the appearance of the market place tile. Themes for the tile cane be seen in ‘C:\inetpub\MgmtSvc-Tenantsite\Content\CloudAssertBilling\Themes’ folder. Any customized html file can be placed in this folder and can be set in the app setting table.

PriceCatalogsViewOptions

Text

GridAndTiles

Shows both Grid and List view of plans in the tenant portal MARKETPLACE Tab. Other values are ‘Grid’ and ‘Tile’.

MaximumPurchaseLimitForAddOnAtAnInstance

Number

5

Will not allow the tenants to purchase multiple instances of an add-on beyond ‘5’ at a single purchase.

DefaultCustomerDomainSuffix

Text

.onmicrosoft.com

This will be suffixed to the domain name when a new customer creates a CSP customer profile from the tenant portal

CsvColumnOrderForSubscription

Text

SubscriptionId, ProviderName, ServiceType, MeteredResourceDisplayName:ResourceName, ResourceId, PropertiesJson:Properties, StartTime:Date, ISOCurrencySymbol:CurrencyText, CurrencySymbol, Units:TotalUnits, Cost:TotalCost, PlanName, SubscriptionName

Contains the column order for the subscription summary csv file. (the value given right to the colon is a friendly name, it is optional)

CsvColumnOrderForAllUsers

Text

AccountAdminEmailId:User, SubscriptionId:Subscription ID, PlanName:Plan Name, SubscriptionName:Subscription Name, ISOCurrencySymbol:Curreny Text, CurrencySymbol:Currency Symbol, AddOnMonthlyFee:AddOn Cost, ProratedMinimumMonthlyFee:Monthly Fee, OneTimeFee: One-Time Fee, TotalCost:Total Cost, TotalIncludedOfferCredits:Included Offer Credits, TaxAmount:Tax Amount, CreditBalance:User Credits, CurrentBillAmount:Billable Cost, SubscriptionProvisionedDate:Subscription Created Time

Contains the column order for the subscription summary of all users csv file. (the value given right to the colon is a friendly name, it is optional)

CsvColumnOrderForAllInvoices

Text

Id:Invoice ID, AccountUserId:User, PlanName:Plan Name, SubscriptionName:Subscription Name, Subscription_Id:Subscription ID, InvoiceStartTime:Start, InvoiceEndTime:End, InvoiceDueDate:Due Date, ProcessingStatusString:Processing Status, PaymentStatusString:Payment Status, IsOfflinePayment:Is Offline Payment, ISOCurrencySymbol:Currency,

TotalAmountToPay:Total Amount

Contains the column order for the invoice summary of all users csv file. (the value given right to the colon is a friendly name, it is optional)

IncludeExtendedResourcePropeties

Text

False

When the value is set to true, the usage cost will be set based on the custom property of the VM.

TimeoutIntervalSeconds

Number

300

Used for subscription sync process after addon is purchased.

PollingIntervalSeconds

Number

20

Waiting time for subscription sync process state checking.

MaxAutoRetry

Number

2

Maximum auto retries for subscription sync process (if it is failed to sync) when addon purchase is failed.

ShowRemainingDaysInOverviewTile

Text

True

When the value is set to false, in the tenant portal overview tab, remaining days will not be shown.

ShowOverviewTileText

Text

False

When the value is set to true, in the tenant portal overview tab, a text will be shown just below the Current bill amount.

TenantOverviewTileText

Text

Prices do not include tax

In the tenant portal overview tab, the specified value will be shown just below the Current bill amount.

DownloadUsageCsvGranularity

Text

Daily

When the value is set to Monthly, the usage will be downloaded for monthly usage instead of daily.

ShouldSendEmailAlertForAgentServiceHealtStatus

Text

False

When the value is set to True, an email notification will be sent to Admin if Agent service or any usage processor goes down.

AgentServiceHealthNotificationCatchupHours

Number

2

Monitoring the agent service health status every 2 hours.

UsageRecordProcessorEmailCatchupHours

Number

3

Monitoring the Usage Record Processor health status every 3 hours.

BillingDailyAggregatorEmailCatchupHours

Number

25

Monitoring the Billing Daily Aggregator health status every 3 hours.

UsageExtensionProcessorEmailCatchupHours

Number

3

Monitoring the Usage Extension Processor health status every 3 hours.

InvoiceProcessorForWHMCSEmailCatchupHours

Number

2

Monitoring the Invoice Processor for WHMCS health status every 3 hours.

UpdateBillingHistoryForMonths

Number

3

Billing History table will be updated with previous 3 months.

API Service Configuration File

The ‘Web.config’ file is located at ‘C:\inetpub\MgmtSvc-CloudAssertBilling’ in the machines where the Cloud Assert Usage and Billing API Service is installed.

  • Replace the ‘Data Source’, ‘User Id’ and ‘Password’ values with the WAP server name, database User Id and Password in the following line if already not set.

<add name="WapMembershipDatabase" connectionString="Data Source=localhost;User Id=sa; Password=[[ReplaceWithYourPassword]]; Initial Catalog=Microsoft.MgmtSvc.PortalConfigStore;" />

Agent Service Configuration File

The job processors of Usage and Billing solutions can turned on and off by changing the values in the ‘CloudAssert.WAP.Billing.AgentService.exe.config’ file located at ‘C:\Program Files\ CloudAssertBilling\ CloudAssert.WAP.Billing.AgentService’ in the machine where the Cloud Assert Usage and Billing Agent Service is installed.

Updating WAP Membership Connection

  • Find the line that has ‘WapMembershipDatabase’ in it.

  • Replace the ‘Data Source’, ‘User Id’ and ‘Password’ values with the WAP server name, database User Id and Password in the following line if already not set.

<add name="WapMembershipDatabase" connectionString="Data Source=localhost;User Id=sa; Password=[[ReplaceWithYourPassword]]; Initial Catalog=Microsoft.MgmtSvc.PortalConfigStore;" />

Invoice Processor Settings

This setting has to be set as ‘TRUE’ for WHMCS integration. It sends the invoices of tenants to the WHMCS portal.

Setting ‘IsAutoApproveInvoices’ value to ‘True’ from the above image will auto-approve the invoices by admin, and will be made ready for processing by WHMCS. This has to be set in ‘App Settings’ table also (Refer App Settings Table).

Invoice notifier Settings

Marking this setting ‘True’ will auto-suspend the subscription if the tenants fail to pay the invoice on or before the Due date (Refer step 335 & 6 from Step 6 – Configure Invoice Settings). It is also responsible for sending warning and reminder emails to tenants on invoice due date. It also reactivates the subscriptions automatically upon successful payment of invoice.

Low Credit Checker Settings

Marking this setting ‘True’ will auto-suspends the subscriptions of the user if more credits are consumed beyond the allotted limit. It also sends an email notification to the user upon suspending or reactivating the subscriptions.

Once the setting is set to ‘True’ in configuration file, it has to be set in the ‘App Settings’ table as well (Refer App Settings Table).

User Invoice Aggregator Settings

This setting has to be set as ‘TRUE’ to generate invoices per user.

Subscription State Processor Settings

This setting has to be set as ‘TRUE’ to auto suspend / delete the subscription upon reaching its expiry date/ delete after days.

FTP Push Setting

This setting will push the invoice csv files to the ftp server location which can be later used by any ERP system.

  • Logon to WAP Admin portal, click on Usage and Billing on the Left.

  • Click on the ‘SETTINGS’ Tab.

  • Click ‘FTP SERVER’ sub tab.

  • Check the ‘IS FTP PUSH ENABLED’ checkbox for the invoices to be sent to the FTP/SFTP severs.

  • Specify the fields as seen in the above screenshot.

  • Click ‘Save’ button.

Note: A manual restart of the Billing Agent service might be required for the FTP Push settings to work properly.

Customizing Column Order in CSV Files

Usage and Billing solutions allows to set the column order, remove unwanted columns and give friendly name for any downloadable csv file. This can be done by editing the App Settings Table values for ‘CsvColumnOrderForSubscription’, ‘CsvColumnOrderForAllUsers’ and ‘CsvColumnOrderForAllInvoices’.

Adding Custom Column and Custom Data in Invoice CSV File

Custom column and custom data for each and every column for the invoice CSV file can be added.

Adding Custom Column

  • Logon to the machine where Usage and Billing database is installed.

  • Navigate to [dbo].[AppSettings] table.

C:\Users\Aashish\Documents\My Received Files\8ADF05A9.PNG
  • Right click on the table name and click ‘Edit top 200 Rows’.

  • Search for the key ‘CsvColumnOrderForAllInvoices’ (Refer App Settings Table).

  • In the corresponding value add the custom column name anywhere separated by a comma (,).

Adding Custom Data

  • Logon to WAP Admin portal, click on Usage and Billing on the Left.

  • Click on the ‘USAGE’ Tab.

  • Click ‘SUBSCRIPTION PROPERTIES’ sub tab.

  • Drill down into a desired subscription and click on the ‘ADD CUSTOM PROPERTIES’ button at the bottom.

  • Check the ‘Include Custom Properties in Invoice Csv?’ to view the available coumns.

  • In the following dialog box that appears, specify the column name from the ‘AVAILABLE COLUMNS’ list and specify the value.

  • Click complete button to save the values.

  • Click ‘INVOICES’ sub tab under ‘USAGE’ tab.

  • Click ‘Export All Invoices’ button at the bottom to download the csv file.