Accounting for revenue – got a warrant for that?

How IFRS 15 affects the accounting treatment for a common aspect of doing business

As we summarized here, the IASB has issued IFRS 15, Revenue from Contracts with Customers, effective for annual reporting periods beginning on or after January 1, 2017 (NB this was subsequently amended to January 1, 2018). The standard is built around a five-step framework, including the key step of identifying the performance obligations in a contract – that is, all the promises in a contract to transfer to a customer goods or services that are distinct. Under IFRS 15, this step is key to assessing the appropriate treatment of warranties provided to customers in connection with a sale.

As the standard observes, some warranties only provide a customer with assurance that the related product will function as the parties intended because it complies with agreed-upon specifications; other warranties provide the customer with other services as well. If the warranty only provides assurance that the product complies with agreed-upon specifications, then it doesn’t constitute a separate performance obligation (rather, as you might put it, it supports the performance obligations that have already been entered into). In this situation, the warranty falls under IAS 37 Provisions, Contingent Liabilities and Contingent Assets. The first of the illustrative examples attached to IAS 37 addresses a typical kind of warranty arrangement, concluding that the manufacturer (in that particular example) recognizes a provision for the best estimate of the costs of making good under the warranty products sold before the end of the reporting period. It follows under the IAS 37 model that an entity doesn’t make a provision if it’s not probable that an outflow of resources will be required to settle the obligation, or if a reliable estimate can’t be made of its amount (although that latter situation should be rare).

In some circumstances, a warranty might be an inherent part of the basic transaction, with no option either to purchase the warranty separately or to decline it; in other cases, the warranty may be offered separately from the basic transaction. In the latter case, where the warranty is priced or negotiated separately, then by its nature it does constitute a distinct promise, separate from what else is being purchased. In that situation, the entity accounts for the warranty as a separate performance obligation, including allocating a portion of the overall transaction price to that obligation.

In the former case, where the customer has no option either to purchase the warranty separately or to decline it, the warranty may also provide to the customer a distinct service (in addition to assuring that the product complies with agreed-upon specifications). The standard provides the following examples of factors relevant to assessing whether this is the case:

  • (a) Whether the warranty is required by law—if the entity is required by law to provide a warranty, the existence of that law indicates that the promised warranty is not a performance obligation because such requirements typically exist to protect customers from the risk of purchasing defective products.
  • (b) The length of the warranty coverage period—the longer the coverage period, the more likely it is that the promised warranty is a performance obligation because it is more likely to provide a service in addition to the assurance that the product complies with agreed-upon specifications.
  • (c) The nature of the tasks that the entity promises to perform—if it is necessary for an entity to perform specified tasks to provide the assurance that a product complies with agreed-upon specifications (for example, a return shipping service for a defective product), then those tasks likely do not give rise to a performance obligation.

For example, referring to the second criterion, a warranty coverage period may be so long, compared to the expected life of the products sold, that it’s virtually inevitable that the entity will be required during that period to provide a large number of replacement products to its customers. In such a situation, the warranty may constitute a performance obligation, requiring the entity to allocate a portion of the transaction price to that service. The standard specifies that if an entity promises both an assurance-type warranty and a service-type warranty but can’t reasonably account for them separately, then it accounts for both of the warranties together as a single performance obligation.

All of this should be distinguished from a situation where the operation of law (rather than a contract between the parties) requires an entity to pay compensation if its products cause harm or damage. This doesn’t in itself constitute a performance obligation; nor does an entity’s promise to indemnify the customer for liabilities and damages arising from claims of patent, copyright, trademark or other infringement by the entity’s products. The entity again assesses the requirement for any liability arising from such matters in accordance with IAS 37.

The above might give rise to differences from current practices for much the same reasons as IFRS 15 will generate differences in general: IAS 18 doesn’t currently direct that an entity should allocate any amount of transaction revenue to warranties, and even if an entity is currently doing so, its methodology might not conform to what the new standard sets out. As with anything else, analysis and investigation might confirm that the differences aren’t material, but it will often take some work to arrive at that conclusion.

The opinions expressed are solely those of the author

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s