When we first started to conceive Invoices for Salesforce® we envisioned a whole billing platform rather than an invoicing app. This is because invoicing apps in general offer little room for customization of the billing process, and practically no control over the content and layout of the invoices. In addition, the invoices data often needs to be edited manually, which is inefficient, error prone, and does not scale. Our ambition, on the other hand, was to give companies the ability to design their own custom-made billing flows, and provide the means to execute them so companies can invoice the way they need. And when it comes to controlling the invoices documents look-and-feel and data, we aimed to give companies complete freedom to design their invoices to include the information they want, and to look the way they want. In order to accomplish our goals we invented a new invoicing approach, and used it as the basis to build a new billing platform.
Our new approach to invoicing is about design and execution of custom-made billing flows, so let's first look at what a custom-made billing flow is.
In every company sales are always billed when they reach the end of the sales pipeline, and become ready to be invoiced. What varies from company to company is the criteria a sale record must meet to be invoiced. For instance, the most basic condition is that a sale must be closed and won before it can be invoiced. However, in practice billing is often subject to additional conditions which are specific to each company. For example, companies may have an internal approval process where billing is subject to sales being approved for invoicing. In other companies billing may need to be broken down by customer location, or language, or currency, or department, or branch, or any other condition related to the company's business.
In addition to being subject to the status of sales and customers, it is quite common that billing is subject to conditions on the sales line items too. For instance, in companies offering subscriptions, billing is subject to the subscriptions schedule date. Similarly, in companies that offer installment plans for their products or services, billing is subject to the product or service installment date. In some cases companies may need their invoices to be split up by product type, or include the products that have shipped, or, when invoicing projects, include only completed tasks.
Based upon the idea that billing is subject to conditions we define a custom-made billing flow as a process to which any of such conditions can be added upfront, and are later enforced at the time of invoicing when the process is run. Our new approach to invoicing and its implementation in our platform are about providing companies with the building blocks necessary to design their own custom-made billing flows, and the framework to run these flows to process the company's invoices.
Depending on how regular their billing runs are, companies and their billing flows broadly fall into two different groups. One group includes companies where the billing runs involve processing invoices at regular periods. For instance, companies which do daily, weekly, or monthly billing runs to invoice all the sales closed on that day, week, or month respectively. Typically, these billing runs involve processing multiple invoices at once, or batch invoicing. Moreover, in these cases billing is always subject to time-related conditions such as, for example, the sales close date. In the other group there are companies where invoices are processed as needed, and generally are done one at a time. Examples in this category include companies that process an invoice for a sale as soon as the sale is closed. So to be widely useful, a billing platform must support both: processing muliple invoices at once in batch mode, normally associated with periodic billing runs, and processing invoices one at time in single mode, often in an ad hoc basis. This is what our new approach to invoices and its implementation does.
The new invoicing approach is aimed at enabling companies to design and run their own custom-made billing flows, and to that end it intoduces two new concepts: billing scenarios and billing rules.
A billing scenario represents a custom-made billing flow, and as such, it holds a recipe for how to process the invoices in every billing run with that scenario. For example, a scenario includes aspects such as what invoice number sequence to use, how to email the invoices to customers, and more. Scenarios are created upfront during setup.
A scenario in turn has one or multiple rules, or billing rules, that define the criteria a sale record, and optionally a sales line item, must meet to be included in the billing runs with that billing scenario. Billing rules are basically the conditions the company's billing is subject to, and are therefore the escence of the company's custom-made billing flows. They take the form of filters on sales and line items fields, and as such, they involve a field, an operator, and a value. For instance, a scenario for the daily invoicing of one-time sales closed on that date would have rules on the sale's stage and close date fields. In another example, a scenario used monthly to invoice all the subscriptions due on that month would include rules on the line items schedule dates. Rules are added to a scenario when the scenario is created during setup, and it is very similar to creating filters in a report.
Our new approach to invoicing combines scenarios and rules in a three-step process that is implemented in an invoicing wizard that companies use in every billing run. In the first step, users are presented with the list of available scenarios, which represent the company's custom-made billing flows, and were created upfront during setup. So users select one scenario and continue to the second step. In the second step users are presented with the billing rules for that scenario so they can enter the rule's values as necessary, and continue to the third and last step. As users land on the last step, the list of sales records that meet the criteria set by the scenario's billing rules is presented, ready to be invoiced. Users then select the entries they wish, or all of them up to 50 at a time, and process their invoices in 1-click.
In the last step, as the "Process Invoices" button is clicked, the platform automatically creates an invoice record and a counterpart PDF document for each sale entry selected, based on an invoice template pre-assigned to it. Invoice templates are also created upfront during setup, and are either manually or automatically assigned to the sales records before invoicing so, at the time of billing, the platform knows what invoice to generate for each sale.
The platform offers two variants of the invoicing wizard: one for batch invoicing and the other for individual invoicing. The batch invoicing variant is aimed at organizations that want to implement a centralized, company-wide, billing process, where the sales due for invoicing are processed all at once at regular periods. This is the most efficient of the two variants as invoices are processed simultaneously. The individual invoicing variant, on the other hand, is a good fit for companies that want to empower their sales and field reps by letting them invoice their own sales, fast and easy, with clicks, and without the need to rekey a thing.
A key differentiator of Invoices for Salesforce® from other soutions is that it allows you to design and run your own custom-made billing flows we call billing scenarios. So, before you can process your invoices, you need to design your own billing flows, and this means creating one or multiple billing scenarios. Later on during invoicing, when you run these billing scenarios, the invoice for each sale is automatically generated based on an invoice template assigned to that sale. So you also need to create one or multiple invoice templates before you start invoicing. Setting up Invoices for Salesforce® then boils down to creating billing scenarios and invoices templates, and these are the two main building blocks you use to tailor billing to your specific needs.
A billing scenario represents a custom-made billing flow in our new approach to invoicing. Scenarios are a simple yet flexible way to customize your billing process to your needs. Whether you offer products or sevices, whether they are one-time or recurring, or whether you want to break down your billing according to conditions specific to your business such as customer location, language, or currency, it always boils down to creating the appropiate biling scenario for that. Or perhaps you need to split your invoicing by branch, or by department, or by product, or you need to approve sales before invoicing. Whatever conditions your billing is subject to, scenarios are you made-to-order billing flow.
Your business is unique, so are your invoices. The invoice template editor gives you the freedom to setup the blueprints for your invoices content and layout the way you want, and to include the data in your sales and customer records you need to show in your invoices. In the course of a billing run the invoice for a sale is automatically generated according to the template which has been manually or automatically assigned to that sale before invoicing. This way, you control the invoice for each customer depending on whether tax or discounts apply, currency, languge, brands, and any unique requirement you have. Don't let your uniqueness stand in the way of your invoices. Turn it into an advantage.
Invoices for Salesforce® new approach to invoicing takes form in a simple three-step invoicing wizard you use to run your company's custom-made billing flows, and comes in two variants: one for batch and one for individual invoicing. As you run your company's billing flows with either variant, the invoices are automatically generated based upon invoice templates you create upfront and assign to the sales records. So once you have designed your own custom-made billing flows and invoice templates, invoicing boils down to executing these flows with clicks, your invoices have the content you want and look the way you want, and you are done in moments.
Batch invoicing is the perfect fit for a centralized, company-wide, invoicing process you run on a regular basis to process all your due invoices in one go efficiently. For example, you can design a billing flow you use daily to invoice all the one-time sales closed on that day, or, if you sell subscriptions, one you use monthly to invoice all the subscriptions with a schedule on that month. With rates of 50 invoices in 30 sec your entire company routine billing effort can be done in minutes, even if you have 100s of invoices at the time.
If you rather have sales reps invoice customers directly, individual invoicing lets them send invoices quickly and efficiently with clicks, without re-keying a thing, and automatically enforcing your company billing preferences each time. For instance, you can design upfront custom-made billing flows that generate invoices where the language and tax are automatically determined by the customer location, or, depending on the sales rep department, a different branding in the invoices is automatically used. Then, when the time comes, sales reps simply run these billing flows while your company billing strategy is automatically enforced.
Your mobile sales force is in the front line so, to a great extent, it is responsible for your customers experience. Boost their productivity by letting them process their sales invoice on-site, and delight your customers.
Invoices with the wrong data have a cost. Invoices for Salesforce® was designed so that the information in your invoices comes straight from your sales records so you don't have to rekey a thing, thus reducing the risk of errors. And if the data in your sales records is incomplete, the platform lets you know so you can make sure your invoices are accurate 100% of the time.
At times a customer may ask you to make changes to an invoice, or you just spotted a mistake before sending one. Either way, you simply need to make the necessary changes in the sales records associated with that invoice, and reprocess it to generate a revised new version. This is because your invoices always reflect the information in your sales records via your invoice templates, so any modifications are confined to one place. The Invoices for Salesforce® platform is built on the principle that your sales records are the one and only source of truth, and your invoices simply follow that source. And if revising an invoice is not an option for legal or bookkeeping reasons, you can always generate a credit note instead.
Invoices for Salesforce® lets you log payments against your invoices, and, as you enter payments, the platform automatically maintains the invoices payment status and your customers outstanding balance for you. This way you have accurate information in real-time on what is paid and what is outstanding to help you run your company. And, combining invoicing and payment data alongside your customers information in Salesforce®, gives everybody in your organization a wider view of your customers so you can serve them better.
Invoices for Salesforce® allows you to record payments you receive for your invoices, in full or partial. As each payment is entered, the platform automatically updates the invoices payment status, and the invoices and customers outstanding balances for you. You can enter payments for multiple invoices simultaneously in bulk, or you can enter them one at a time straight from the invoice record page. In both cases you can predefine default values for the new records so receiving and logging payments is simple and fast.
The more you know your customers, the easier is to serve them well so they keep coming back. And doing business with the wrong people may cost you. With Invoices for Salesforce® you have financial information alongside your customers data in Salesforce® to help you make better business decisions. And when a customer calls to inquiry about an invoice or payment, everybody in your organization has the information right at their fingertips, ready to delight your customers with the best possible experience.
Occasionally a customer decides to change their order after the invoice was already proceesed, or you spotted a mistake and it is not possible to modify the invoice for legal or bookkeeping reasons. In these cases you need to generate a credit note to cancel out the invoice so your receivables are in balance, and you also need to cancel out the corresponding sale record to balance your revenue in Salesforce. Invoices for Salesforce® combines both operations in one to make issuing credits simple and efficient.
Pretty much as with invoices, the Invoices for Salesforce® platform lets you design and run your own custom-made flow to process credit notes. In the case of credit notes however, there is an additional step before executing the custom-made flow at which you set the credits, full or partial. Also, unlike invoicing, two new records are created at the end of the run: a credit note that cancels out, in full or in part, the original invoice, and a credit record that balances out the original sale accordignly.
We have included a fair degree of automation in the credit notes generation process to make issuing credits feel natural and efficient. In particular, the platform uses the credits you set to automatically create a sale record that cancels out, fully or partially, what was initally sold and later credited in order to keep your revenue stream in Salesforce balanced. So, if you need to undo the credit note, Invoices for Salesforce® lets you reverse the process with all its automation in 1-click.
Collecting unpaid invoices is a vital function of any company, and takes time and effort that could otherwise be invested in growing the business. Invoices for Salesforce® combined with Salesforce's automation tools help you bring down the time spent following up unpaid invoices to a minimum, as well as keeping your whole organization in the loop.
Invoices for Salesforce® automatically scans all your open invoices on a daily basis and updates the payment status of those that remain unpaid after their due date, so you can keep track of any overdue debt. You can take this one step further and use one of Salesforce's automation tools, such as Process Builder, to configure sending reminders to your customers when invoices reach a specific number of overdue days. This way you can design and automate your own collections strategy to fit your own needs, and reduce the time and effort spent in your organization following up bad debt.
The automatic reminders to your customers to let them know an invoice is still outstanding are logged as activities, and can be shared along with comments, notes, and call logs with the whole organization. So everybody within your company, from sales to finance, are always in the loop, and can join efforts to get the invoices paid faster.
In the process of generating and sending your invoices, and when you log paymemts against these invoices, Invoices for Salesforce® creates invoices and payment records in Salesforce. So, as with any other Salesforce data, you can use reports to examine it in multiple combinations, and display it in useful and easy-to-understand formats. In addition these reports can be combined into dashboards that help everybody in your organization to visually identify trends, and make decisions based on real-time data.
Invoices for Salesforce® ships with an Accounts Receivable dashboard to get you up-to-speed with managing your receivables and your collections process in Salesforce. The dashboard includes: Customer Ledgers, Current and Aging Report, and Cash Registers you can start using from day one. But if you want to combine the invoices and payments data with your sales information in other ways more meaningful to your organzation, you can easily build your own dashboards and reports.
Invoices for Salesforce® was designed to be extendible and integrate with apps running in Salesforce, as well as with cloud system outside of Salesforce. As a true platform companies can extend it so that the invoices data generated during processing automatically flows into their Accounting or ERP apps inside or outside Salesforce, or they are automatically sent to e-invoice delivery networks.
Extending Invoices for Salesforce® to post invoices to apps and networks inside or outside Salesforce comes down to plug-in code in any of your custom-made billing flow definitions, or billing scenarios. The platform was architected so that this code runs when the scenario is executed, starting automatically as soon as the invoices processing is done. In other words plug-in of the code in the scenario extends the flow defined by that scenario, and by controlling the code's logic you can send the processed invoices information anywhere you need. Reach out to our implementation services if you'd like us to help you with your integration.
The invoicing screens of Invoices for Salesforce®, those for batch and individual invoicing, were designed to automatically detect if the billing flow or scenario being executed has been set to post invoices to other systems, and, when it has, it automatically presents an extended user interface that lets you control whether posting of the invoices to the target system is automatic or manual. In automatic mode, the default, the invoices are automatically posted as they are processed. In manual mode, on the other hand, you can separately control the invoices processing and posting. So you choose what best works for you.
These are questions that we hear a lot so we have gathered here below along with their answers, and organized them along the main functions of the Invoices for Salesforce® paltform. But if you still have other questions, or need any assistance, please don't hesitate contacting us. We are here to help you.