Credits and Refunds and Voids! Oh My!

Wizard-of-Oz.jpg

  1. Overview
  2. What's the Difference?
    1. Definition of a Credit
    2. Definition of a Refund
    3. Definition of a Void
  3. Issuing a Credit
    1. Via the GUI
    2. Via the API
  4. Issuing a Refund or Void
    1. Via the GUI
    2. Via the API
      1. Let CheddarGetter Decide Between Refund and Void
      2. Void
      3. Refund

1. Overview

CheddarGetter provides several flexible tools for not only charging your customers but also refunding or crediting funds back to those same customers. All credits, refunds and voids are based on existing customer relationships. Funds may only be moved from you, the merchant, to a customer if the customer had already been charged or will be charged in the future.

2. What's the Difference?

You can consider credits, refunds and voids to be grouped into two distinct categories. Credits are quite different than Refunds and Voids. A credit is used to "offset" a future charge or charges. Refunds and voids affect an actual transaction that occurred in the past.

2.1 Definition of a Credit

A credit is a line item on a customer's invoice. There are two types of line items: charges and credits. In accounting-speak, debits and credits. A charge (debit) is a positive amount and a credit is a negative amount. The total of all charges (debits) minus the total of all credits equals the net amount billed to the customer's payment method.

Credits are Carried Forward

If the total value of credits are greater than the total value of charges on a recurring invoice, the remaining credit value is carried forward to the next scheduled recurring invoice.

2.2 Definition of a Refund

A refund, also known as a "reversal", is a reversal of a previous transaction. Depending on your billing solution (aka, gateway), you may be charged for a refund. Your merchant service provider might also have a different fee for refunds, sometimes as much as several dollars.

2.3 Definition of a Void

A void, also known as a "deletion", is a cancelation or deletion of a previously executed transaction prior to settlement of the transaction. A void is usually only possible for a few hours after the original transaction.

Voids are "better" than refunds because the money never moves. So, it costs you less. You'll likely still pay authorization fees for the original transaction, but there's typically no cost for the void.

3. Issuing a Credit

A credit can be issued to a subscriber's initial invoice, current (future) invoice or on a one-time invoice.

3.1 Via the GUI

To issue a credit on the initial invoice, simply enter the credit details on the new customer form.

To issue a credit on the current (future) invoice, first navigate to the individual customer page. From there you will see their current invoice just underneath their customer information. There you will see the button for issuing a credit or charge:

KB_Screenshot_Credits_refunds_Voids_1.png

Clicking the Add Credit or Charge button will pop up a small form that allows you to enter a credit or charge on the current invoice:

KB_Screenshot_Credits_refunds_Voids_2.png

Remember to use a negative number for a credit, or a positive number for a charge. Once you save this form, you will see it reflected in the current invoice:

KB_Screenshot_Credits_refunds_Voids_3.png

3.2 Via the API

Issue a Single Custom Credit

API Documentation

A single credit is added to an already existing customer's current (future) invoice. The referenced API call above is used for both adding custom charges and credits. A charge has a positive eachAmount parameter and a credit has a negative eachAmount parameter. We recommend you specify a chargeCode equal to the type of charge that is being "offset" by the credit. For example, if you're crediting a customer with a month of that customer's flat monthly fee, use the same charge code as the plan's flat monthly fee charge.

Issue Custom Credit(s) When Creating a New Customer

API Documentation

When creating a customer, zero, one or more credits (charges, too!) may be included in the new customer API request. The parameters specific to the credit(s) are the same as issuing a single charge (above) however they must be specified in a 'charges' array (see API Documentation).

When issuing multiple (or one) credit along with the new customer request, the credit(s) is added to the initial recurring invoice.

Delete a Custom Credit

API Documentation

A custom credit may be deleted from an invoice if the invoice is not yet billable. CheddarGetter's unique identifier for the credit record, chargeId, must be specified. The chargeId can be found in the invoice API response.

Custom Credits on a One-time Invoice

API Documentation

One-time invoices are simply made up of charges and credits. Both are specified in a charges array. Use a positive eachAmount for a charge and a negative eachAmount for a credit. The total amount of the one-time invoice must be greater than or equal to zero. In other words, if you specify credits, there must be enough charges on the invoice to offset the credits.

4. Issuing a Refund or Void

Some billing solutions only support refunds. Some support refunds and voids. Some support refunds prior to settlement. Fortunately CheddarGetter has figured this out for you.

4.1 Via the GUI

Just click on the "Issue Refund" link at the bottom of the invoice you'd like to refund:

KB_Screenshot_Credits_refunds_Voids_4.png

The CheddarGetter admin GUI handles the particulars of voids vs. refunds for you. On the surface, it's fairly simple:

  1. You're issuing a full refund
    • CheddarGetter determines if the transaction is voidable. Is it voidable?
  2. You've requested a partial refund
    • CheddarGetter determines if the transaction is partially refundable. Is it?
      • Yes: Issue partial refund
      • No: error messaging.
        • Depending on your billing solution, a partial refund may not be possible until after the void period.

4.2 Via the API

This can get a little hairy but we've made it as simple as possible for you.

4.2.1 Let CheddarGetter Decide Between Refund and Void

API Documentation

Using this method, CheddarGetter decides based on your billing solution whether or not it's best to execute a void or a refund. Partial refunds are not possible via this method. If you'd like to understand better what is possible with your billing solution, just let us know.

4.2.2 Void

API Documentation

4.2.3 Refund

API Documentation

View Plans and Pricing   or   Get Started with CheddarGetter now →