According to an embodiment of the present invention, the present system and method addresses subscription management and billing in cloud computing environments comprising sales and distribution channels involving multiple buyers and sellers. In particular, the invention presents a system and method for a distributor to manage and bill for cloud services sold to end customers through resellers, as well as a system and method for a distributor to provide billing and management capabilities to those resellers.
IT solution providers, managed service providers, value added resellers, and IT consultants, collectively referred to herein as “resellers,” are in the business of selling, managing and administering a customer's server and workstation computer systems, the networks that connect them, and the application software that runs on them. The emergence of cloud computing has caused a shift from computer hardware and software installed on that hardware to subscription-based cloud computing services. This shift has created new challenges for resellers, particularly in the area of invoicing and billing.
Providing a complete cloud computing solution generally involves provisioning many cloud services from different vendors for each customer. Each cloud service is purchased by a reseller from a vendor, and is then resold to a customer. Volume selling justifies a lower price from the vendor, which enables the reseller to make a profit on the subscription service.
At the end of each month, or some other interval, the reseller is invoiced by each vendor from which the reseller has purchased services on behalf of customers. The reseller must then create an invoice for each customer. Reconciling the total amount charged by each vendor and individually invoicing customers becomes a significant challenge, especially as the reseller's customer base grows. Calculating profitability on a per customer basis is equally problematic.
A reseller sometimes purchases cloud services directly from the vendor and resells those service to customers, as discussed above. In other instances, however, a Reseller A aggregates many cloud services and sells them to other resellers, thereby providing those resellers the benefit of “one stop shopping.” In this case, Reseller A is known in the industry as a “distributor,” or a “value-added distributor” (VAD). When a distributor sells a product or service to a Reseller B, which in turn sells it to Reseller C, Reseller C is known as a “downstream reseller.” Reseller C then sells to a customer, or to another downstream reseller, which then sells it to a customer.
There is thus a cloud services supply chain consisting of a series of buyer/seller transactions, wherein the seller acquires the product in a first transaction, then sells it to a buyer at a higher price. An example sequence of buyer/seller transactions is: (1) Distributor (buyer at price A)/vendor (seller), (2) Reseller A (buyer at price B)/Distributor (seller), (3) Reseller B (buyer at price C)/Reseller A (seller), and (4) End customer (buyer at price D)/Reseller B (seller).
Each seller in this supply chain bills its buyer, and makes a profit that is determined by the price difference between the price at which the seller acquired the product and the price at which that seller sells it to its customer. So, in the example above, (1) Vendor invoices Distributor at price A, and makes a profit A multiplied by the number of products minus the vendor's cost of providing that service, (2) Distributor invoices Reseller A at price B, and make a profit on each product of price A minus price B, and (3) Reseller B invoices End Customer at price C, and makes a profit on each product sold of price B minus price C. Management of the financials associated with these sales across the entire supply chain, such as the generation of invoices, tracking payments, and account profitability, can be very difficult to manage.
It should be noted that in some business arrangements the reseller does not invoice the buyer directly. Instead, an upstream reseller invoices the buyer of a product on behalf of the downstream reseller who sold the product to that buyer. For instance, in the example above, Distributor could invoice End Customer on behalf of Reseller B, invoice Reseller A on behalf of Reseller B, and then pay to each reseller in the chain the profit they would have made if they had invoiced their buyer directly. In this example, for each product, Distributor would pay Reseller A an amount equal to price A minus price B, and Reseller B an amount equal to price B minus price C. Each reseller makes the same profit in this arrangement, but the distributor manages cloud subscriptions on behalf of its downstream resellers and handles billing and invoices. The distributor often charges an additional management fee for this service.
In order to close a particularly beneficial sale, a reseller may want to reduce the price of a particular cloud service for a particular buyer. In this case, the profit margin per product is reduced, but might be compensated by some other benefit such as high sales volume of that product or a lucrative sale of another product. This situation can occur anywhere in the supply chain. Making immediate sales commitments with altered product pricing is often difficult because calculations need to be made in order to assure sufficient profitability. Moreover, managing multiple exceptions significantly increases the complexity of financial management.
Given these challenges, it would be desirable to provide a billing system that manages and tracks cloud services subscriptions across the entire supply chain, permits any seller in the supply chain to instantaneously change pricing for any single order during the order or quoting process, and calculates profitability on a per customer basis in real time for use during the negotiation process. Entities in the supply chain would also benefit from a billing system that generates unified and itemized charge information, and allows resellers to elect from different billing options, such as invoicing or automatically charging customers through the billing system, or receiving aggregated charge monthly charge information for all customers.
In addition, entities in the supply chain would benefit from a system for tracking, studying, and responding to customer buying habits and price sensitivity. For a distributor, an ideal tool would track and analyze sales associated both with the distributor's direct-relationship resellers and with end customers. This information would enable a distributor to be responsive to the entire supply chain in terms of product offerings, subscription plans and pricing, and discounts.
The prior art includes various subscription management and billing systems. It includes, for example, a subscription billing system that accommodates multiple rate plans, permits a quote to be converted into an order that creates a subscription, includes a billing engine, and allows for hierarchical customer accounts. (US Application Pub. No. 2014/0012706—Foerster—Methods and Systems for Processing Orders in a Subscription Based Billing System). It includes various cloud services marketplaces and management platforms designed for a multi-tiered supply chain and a subscription-based delivery model. Many of these platforms include billing capabilities and/or integrate with other billing programs. These include the services provided by AppDirect, Nuvotera, Jamcracker, and ArrowSphere. The prior art also includes a method for improved billing and ordering for phone and Internet services that involves storing rate plan information and includes some dynamic features, such as usage and order entry (WO Publication No. 2012/135163, Published Oct. 4, 2012, —Netcracker Technology Corp—Systems and Methods for Improved Billing and Ordering).
The prior art describes a dynamic pricing method that applies multiple pricing states to a particular product, defines one or more triggers that enable the pricing to transition from one pricing state to another, and associates each pricing state with a pricing mechanism (such as auction, sale, rental, or subscription). The pricing program can be implemented immediately or stored for implementation at a later time (U.S. Pat. No. 8,533,058 B1, Issued Sep. 10, 2013, Agarwal et al., Method and Computer-Readable Medium for Automated Dynamic Pricing of Products with Parameter-Driven State Transitions).
Apparently missing from existing systems and services, however, is the combination of several key billing capabilities designed for a complex subscription-based distribution channel: the ability for a seller to simultaneously employ multiple active rate tables that apply to different product-buyer combinations, instantly generate a new pricing structure (rate table), to see the effect of the new rate table on profit margins, apply the new rate table to a particular buyer or set of buyers, and use it to instantly generate a quote or order.
Thus, there remains a need for a single billing system that can be used by entities on multiple tiers of the supply chain to manage subscriptions, instantly create new rate tables to meet specific margin requirements or to accommodate specific customers, use those rate tables to instantly generate quotes, and convert those quotes to orders.
Embodiments of the present invention describe a system and method for managing, billing, and analyzing transactions involving cloud products and services from multiple vendors across a multi-tiered supply chain. The supply chain generally consists of a distributor, which sells products and services from multiple vendors to multiple resellers, who in turn supply numerous end customers.
In at least some embodiments, the distributor negotiates terms and rates with the vendors, which are stored in the system. The distributor may then establish pricing for its resellers, which is also stored in the billing system. The billing system stores pricing information in the form of rate tables, and accommodates multiple rate tables for each product and each seller. The system is further configured to allow sellers using the system to instantaneously generate new rate tables and use them to generate quotes, which can then be converted to orders.
Cloud services are often purchased as annual or monthly subscriptions. Each subscription is charged according to a rate table, which may include volume, tiered, or usage-based pricing. The billing system is configured to store multiple subscriptions for each buyer, and may also be configured to accommodate one-time charges. The system is further configured to aggregate subscription and other charges on a periodic basis, such as monthly, and to generate account statements or invoices, which can be made accessible or presented to resellers and/or end users.
The system also stores the supply chain hierarchy and includes control features so that, at each level, the “parent” entity has control over the billing system features and privileges available to its “child” entities.
The billing system also makes available to each seller in the hierarchy information about all of its customer accounts, recurring and one-time transactions, and its profit margins for each product and each customer. The system may also be configured to provide additional financial and market analytics.
Referring to
The internal structure of the billing system is displayed in
The Accounts database 321 of
The Products database 322 of
The Subscriptions database 323 stores and tracks information about all of the subscriptions that exist in the system. It tracks the number of subscriptions for each product, the number of subscriptions for each product for each user, and the number of units cumulatively purchased by each user. All one-time transactions are contained in the One-Time Transactions database 324.
The Rate Tables database 325 stores the price of each product for each reseller under various conditions such as volume of products purchased and discounts.
The Bill Rating process 331 of
The Bill Processing component 332 is configured to compile, at the close of the billing period, the transactional items generated by the bill rating process 331. The bill processing component compiles the items into the appropriate format, as determined by each buyer (reseller or company) and/or its seller (distributor or reseller). The functions of the bill processing component may include storing merchant account information and credit card information. It may include preferences such as whether the system sends aggregate charge information in spreadsheet form to the seller, or sends an invoice directly to the buyer. In some embodiments, it also allows an upstream seller to bill on behalf of a downstream seller.
The financial analysis 333 and market metrics 334 processes draw information from all parts of the system to provide real-time financial and market analysis. Results can be summarized and displayed on the screen during the order and quoting process, and used to evaluate if/then scenarios before an entity commits to a new price. Financial analysis may include profit margin calculations, discounts from previous prices, average price and profit margin across a seller's customer base for a given product, and the average margin across all sellers on a particular tier of the supply chain or throughout the supply chain.
In addition, the data structure can support real-time market analysis across the entire supply chain, including: 1) volume of products sold by a seller versus the per-unit price of a given product; 2) characteristics of companies (size, revenue, etc.) versus product usage & profitability; 3) performance characteristics of the product for any given customer versus price paid.
In some embodiments, the financial analysis engine may be configured to communicate with external databases to provide an even more robust market analysis.
The system also includes at least one user interface 340 that permits users, depending on the system configurations, user type, and level of access, to order, quote, bill, and establish account and billing preferences.
In a usual cloud services supply chain, a distributor negotiates wholesale rates with multiple vendors, then establishes default reseller pricing and suggested retail pricing for each product. In addition, the distributor can generate different pricing for a particular reseller or group of resellers, and resellers can establish different pricing for a particular company or group of companies. The billing system therefore accounts for and distinguishes between at least the following different types of prices:
While
ARP Tables: A reseller may override the SRP default values for any given company, resulting in a new actual retail pricing (ARP) table. For example, if a reseller alters the distributor's default SRP for Company A1, a new rate table: CompanyA1 (CoA1), Actual Retail Price (ARP) for Product X (ProdX) 503 is created. A reseller may alter the pricing for Company A again, thus generating a new rate table for Company A, or it may alter the suggested retail pricing for another company or group of companies. The reseller may also create its own default retail pricing, which it may then apply to all companies unless altered for a specific company or subset of companies.
Pricing for any particular entity may be updated any number of times, each time creating a new table which becomes the active table. Though inactive, older tables are kept in the rate table database for billing, reporting, and analysis purposes.
A rate table contains all pricing information for a particular product as between one seller or set of sellers and one buyer or set of buyers. This includes whether the price is recurring (generally monthly) 510 or non-recurring 512. The system is configured so that prices are recurring by default. If the non-recurring option is checked, the product has a one-time price.
A rate table also includes any special pricing information and applicable discounts or promotions. For example, the distributor may offer a first free month of a subscription service 511 as part of the default reseller pricing 500, but it may decide not to pass this on to companies as part of its suggested retail pricing 502. A reseller, however, may elect to pass on the first free month promotion to a particular company, Company A-1 513.
In addition, any volume discounts are reflected in the rate table for a given product. A volume discount reduces the price for one unit of a product by a given percentage for each non-overlapping range of units. For example, the per unit price for a given product may be $1.05 per unit if up to 25 units are purchased 514, but $1.00 per unit if 26-50 units are purchased 515.
A tiered pricing structure may also be used. Volume pricing is the default, but tiered pricing may be applied if specified by the entity establishing the pricing. With tiered pricing, prices for multiple volume tiers may apply to a single transaction. For example, for a Product X for which the rate table establishes volume tiers, with 1-50 units as the first tier and 51-100 units as the second tier, tiered pricing would mean that a buyer of 75 units pays the first tier price for the first 50 units, and the second tier price for the next 25 units. In addition to per license or “per seat” pricing, pricing may be based on capacity, such as per gigabyte 516 or terabyte 517. Pricing may also be based on the customer's actual usage of a resource, such as bandwidth or virtual storage space.
When an order is placed for a particular product, the billing system uses stored information to create at least one subscription (recurring charge) and/or at least one non-recurring charge. In the example depicted in
When the order is placed, the system accesses the account information for the entity placing the order to determine which other entities in the supply chain are involved in the transaction 602. In the example depicted in
In the example depicted in
Having determined the appropriate rate tables 610, 611, the system queries whether there is a non-recurring cost associated with Company A's order for Product P. In the example in
In other instances, an order would consist only of a product or service with nonrecurring pricing. Similarly in that instance, a nonrecurring charge would be created in the one-time transactions database.
The system uses a bill rating process to tally these recurring and one-time transactions for billing and reporting purposes. In the preferred embodiment, the bill rating process is used both to tally transactions on a real-time or nearly real-time basis for informational and reporting purposes, and to generate billing statements and invoices on a less frequent basis such as monthly.
During a rating event, the billing system identifies the appropriate data components from the subscription database and the one-time transactions database and uses them to create charge line items. Assuming daily rating has been chosen, at the end of every day, a single charge line item is generated for each product-buyer combination. Thus, a line item is created for each Product X and each Reseller W that is paying the default RP for a given quantity Q, the price of which is determined as follows:
Q(ProdX,ResW)*(Def-RP-ProdX)*[1/(days in the month)]
If the price for a particular Reseller Y was changed, then the table specific to that reseller would apply. In this case, the price is determined as follows:
Q(ProdX,ResY)*(ResY1-RP-ProdX)*[1/(days in the month)]
Similarly, for any given Company X that is paying SRP, a transaction for each product is sent to the billing engine, the price determined as follows:
Q(ProdX,CoX)*(SRP-ProdX)*[1/(days in the month)]
If the Reseller changes the pricing for any Company A, then the price of the transaction for a given product X that is sent to the billing engine is determined as follows:
Q(ProdX,CoA)*(CoA-ASP-ProdX)*[1/(days in the month)]
If the rate table for an entity with an existing subscription is changed, the entity making the change may specify the effective date of the new rate table. A new rate table will generally take effect at the beginning of a new billing period. If no effective date is specified, the change will take effect during the next rating event. Therefore, if daily rating is chosen, the rate change will take effect with the next daily rating event unless another effective date is specified.
These line item data can be used for a variety of informational and reporting purposes performed by the financial analysis 333 and market metrics 344 processes. For example, the billing system may be configured to display to the distributor a daily tally of its recurring revenue and nonrecurring revenue. It may also be used to display to the distributor or a reseller the revenue associated with a particular company or a particular product, or the number of subscriptions for a given product.
Assuming a monthly billing cycle, bill rating can also be conducted monthly to generate charge line items for billing purposes.
If no Company A-specific rate table exists 708, the rate table for the default suggested retail price 709 is used. Using the quantity information 710 and the rate table 709, a charge line item 711 is generated.
This process is repeated for Company A for every product for which Company A has a subscription, then for each of Company A's one-time transactions during the relevant billing period.
The individual charge line items can be combined in a number of ways for billing purposes, depending on the system configurations and the preferences of the relevant entities. For example, the line items may simply be used to generate an invoice for a particular company. The distributor may offer its resellers a “bill on behalf” option, where the distributor, through the billing system, bills the company on behalf of the reseller.
In another billing arrangement (not shown), the reseller may elect to receive a compilation of all its companies' charge line items at the close of every billing period, usually in spreadsheet form. The reseller may then use this information to prepare its own billing statements or invoices.
Several additional options and variables are associated with the bill processing component of the system.
One variable is whether a distributor handles billing 900. A distributor may handle billing for, some, all, or none of the transactions managed through the billing system. For at least some products, the distributor may not handle any billing; the vendor would then bill resellers and/or companies 901. If the distributor does handle billing for a given product 902, it may bill resellers only 903, or it may offer a “bill on behalf” service 905, whereby it will bill a reseller's company on behalf of a reseller, if the reseller so chooses. The distributor may charge a fee for this service. If the distributor does not offer this option, or the reseller chooses not to use this service, the reseller bills its own companies 904.
If the reseller chooses to use the distributor's “bill on behalf” service, the distributor bills the company on the reseller's behalf 906. This may take the form of an invoice generated through the system, or an automatic charge through an electronic funds transfer.
The billing system is configured with hierarchical controls so that the upstream entity controls the features and options available to the downstream entity.
The user interface for Reseller A includes a list of products established by the Distributor to which the Reseller has access. Reseller A selects from this list the products it wishes to sell 1003. Reseller A may also add additional products (and associated specifications and pricing) that it wishes to sell but acquires from a source other than the Distributor 1004 (products not already set up in the system). Depending on the arrangement, Reseller A may also enter its billing information as part of the set-up process 1005.
In at least some embodiments, Reseller A may also configure certain billing and invoicing features of the system which will apply to Reseller A's transactions with downstream resellers and/or companies 1006. For example, Reseller A may elect to have Distributor (through the system) bill on Reseller A's behalf. Distributor has configured the system to allow Reseller A this option. If Reseller A elects to use this feature, Distributor will transmit invoices (brand-able by Reseller A), to Reseller A's downstream resellers and/or end customers.
In some instances, Reseller A acquires products and services from the Distributor, and resells them to a downstream reseller, Reseller X, which in turn sells them to companies. In this situation, Reseller A may give Reseller X access to the system and exercises full control over the features available to Reseller X 1007. An administrator for Reseller A logs into the system and enters basic account information for Reseller X, including the identity of the Reseller X administrator 1008. The Reseller A administrator establishes the privileges and features that will be associated with Reseller X's account. For example, Reseller A establishes which products and services Reseller X may sell (by selecting which products will appear in the product catalogue in Reseller X's user interface) 1009. Reseller A also controls Reseller X's access to any billing options made available to Reseller X by the distributor or vendor 1009. In some embodiments, a distributor may provide a billing service, such that the distributor (through the billing system), bills a reseller's customers on behalf of the reseller. If the distributor has made this service available to Reseller A, Reseller A has control over whether it is available to Reseller X as part of the process of establishing Reseller X's account in the system. Finally, the Reseller X administrator is given the credentials for the new account 1010.
Reseller X, in turn, may decide whether to give its companies' end users access to the system and, if it does, what features are available to those users. For instance, Reseller X may want customers to have access to the system in order to place orders, but may configure the system to require Reseller X's approval before an order is finalized. Reseller X may also give companies' users view-only access, so that a company can see its orders and charges but does not have the ability to generate orders.
While there have been described above the principles of the present invention in conjunction with specific systems and methods of operation, it is to be dearly understood that the foregoing description is made only by way of example and not as a limitation to the scope of the invention. Particularly, it is recognized that the teachings of the foregoing disclosure will suggest other modifications to those persons skilled in the relevant art. Such modifications may involve other features which are already known per se and which may be used instead of or in addition to features already described herein. Although claims have been formulated in this application to particular combinations of features, it should be understood that the scope of the disclosure herein also includes any novel feature or any novel combination of features disclosed either explicitly or implicitly or any generalization or modification thereof which would be apparent to persons skilled in the relevant art, whether or not such relates to the same invention as presently claimed in any claim and whether or not it mitigates any or all of the same technical problems as confronted by the present invention. The applicant hereby reserves the right to formulate new claims to such features and/or combinations of such features during the prosecution of the present application or of any further application derived therefrom.
The present application is related to and claims priority of U.S. provisional patent application (“Provisional Patent Application”), Ser. No. 61/900,857, filed on Nov. 6, 2013. The disclosure of the Provisional Patent Application is hereby incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
61900857 | Nov 2013 | US |