[GNC-dev] [GNC] best accounting practice for refund

Christopher Lam christopher.lck at gmail.com
Fri Jun 28 18:48:06 EDT 2019

Adrien you're the current expert in business processes supported by
GnuCash. How would you feel about documenting the known feature and
describe database changes somewhere in wiki? It would be useful as a
reference. You may need some SQL spy. e.g.

# Creating a customer
- add new row to Customers table, must have currency, name and address

# Creating invoice
- add new row to Invoice table, must have customer, currency
- add new row to Lots table, ???

# Creating a credit note
- ???


On Fri., 28 Jun. 2019, 14:31 Adrien Monteleone, <
adrien.monteleone at lusfiber.net> wrote:

> Nope.
> 1. Create the credit note and assign the line items either back to the
> same original income account(s) used, or to a new one along the lines of
> “Returns & Allowances” or “Refunds” or something similar if you want to
> keep track of this separately. (this is considered a ‘contra account’
> because its normal balance is opposite of what is expected)
> 1a. Post the credit note. (should default to be assigned to AR)
> 2. Then ‘pay’ it with the liability account you created.
> This will affect your books at each step like so:
> 1a. Income is debited either directly or via the contra account
> 1a. AR is credited for the amount of the credit note
> 2. AR is debited for the amount of the credit note
> 2. The Liabilities:Credit Payments account is credited (your now tracking
> a pre-payment liability owed to the client)
> The only step that should be different in this process than what you were
> doing before is step 2. Instead of paying with the checking account and
> printing a check, you’re transferring the customer’s AR balance to a
> liability account.
> Step 1 - the credit note itself, should be the same as before.
> There will then be a new step 3 - which is where you ‘pay’ a future
> invoice with all or part of the balance in the new liability account.
> -----
> *NOTE*
> If you don’t need to keep track of the pre-payment as a liability (not
> necessary unless a CPA advised it) then just skip creating that special
> account and don’t use it.
> Simply leave the credit note (still created as always) outstanding till it
> is needed to offset a future invoice. You don’t even have to send it to the
> client if they don’t need it.
> When you need to offset a future invoice, process a payment, choose BOTH
> the credit note and the invoice being offset. Enter any additional payment
> being made and assign that to the appropriate asset account. Complete the
> payment.
> Mind you, this is probably the best route to take. It will allow you to
> still see the overpayment/pre-payment in their account report, and you can
> send them a statement that reflects this. The option with the liability
> account makes this very difficult.
> Sorry if I created any confusion. With the original limited info, I was
> just offering all the options I could think of. Which route you take is up
> to you as it best meets your needs and requirements.
> Regards,
> Adrien
> > On Jun 28, 2019, at 12:39 AM, Eric Rathhaus (general) <
> rathhaus_law at yahoo.com> wrote:
> >
> > Something didn’t;t work.  I created a credit note for the client and
> created a new account “Credit Prepayments) under Liabilities.  When
> creating the note, instead of selecting an income account, I selected the
> new liabilities account and then posted the note.  I then tried to process
> a payment for an outstanding invoice using the credit note but nothing
> happened.  Where did I go wrong?
> >
> >> On Jun 26, 2019, at 9:09 PM, Eric Rathhaus (general) <
> rathhaus_law at yahoo.com> wrote:
> >>
> >> Thanks!
> >>
> >>> On Jun 26, 2019, at 7:41 PM, Adrien Monteleone <
> adrien.monteleone at lusfiber.net> wrote:
> >>>
> >>> In that case, certainly, you need to use credit notes.
> >>>
> >>> I don’t see any reason why this ‘wouldn’t work from an accounting
> standpoint’ but if you find a problem, instead of cutting a check to the
> customer as payment for the credit note, combine this with option #2 I
> listed, and this time, use that Liabilities:Customer Deposits account to
> ‘pay’ the credit note. This will show you have a liability to them and then
> you can decrease it by using it to later pay for future work. The credit
> note is cleared out instantly and you still track the money, however, any
> Aging Report or Customer Report will no longer reflect this deposit
> liability as a credit to them. You’d have to handle that part manually in
> an outside spreadsheet. (you could export the Customer/Aging Report to one
> sheet tab, export an Account or Transaction Report to another in the same
> workbook, and then devise a 3rd tab with references to those two to create
> the proper consolidated report)
> >>>
> >>> Note that doing it this way really isn’t necessary as GnuCash will
> track your overall AR and the balance for each customer if you just leave
> the Credit Notes hanging around until applied as future payments.
> >>>
> >>> I’d say you should speak to a local CPA, and then if you still have
> options, which one you go with would be a matter of personal preference.
> >>>
> >>> Regards,
> >>> Adrien
> >>>
> >>>> On Jun 26, 2019, at 8:51 PM, Eric Rathhaus (general) via gnucash-user
> <gnucash-user at gnucash.org> wrote:
> >>>>
> >>>> Hi Geert -
> >>>>
> >>>> I already issued the invoices and processed my clients payments
> against the invoices.  These payments are for filing fees to the US
> government for which I subsequently cut checks. I created a job for this
> client that I use to invoice these fees alone. The size of the filing fees
> is too high for me to provide my client short-term loans to cover and then
> invoice later.  My client, in turn, won’t issue a payment without an
> invoice.  So I issue an invoice to my customer to get the prepayment. There
> are some complicated legal reasons why once per year some of the filing
> fees won’t be cashed by the government.  The rest of the year everything is
> fine as I just ensure the client paid all the invoices for the special job
> and then bill for my work and other expenses on invoices for each specific
> job.  This year I have over $12k of  funds I need to return to the client
> somehow.  In the past I created a credit note under the special job and
> sent my client a check.  This year they want me to use the credit to offset
> invoices for subsequent work.  I like the idea of creating a credit note
> under the special filing fee job I use for these payments and then applying
> the credit against other invoices I issue but I’m not sure if it will work
> from an accounting standpoint.
> >>>>
> >>>>> On Jun 26, 2019, at 1:29 PM, Geert Janssens <
> geert.gnucash at kobaltwit.be> wrote:
> >>>>>
> >>>>> The way I understand your scenario I believe you can model what the
> customer
> >>>>> does almost one to one into gnucash actions.
> >>>>>
> >>>>> 1. Customer prepays for expenses -> Create a payment for that
> customer using
> >>>>> Business->Customer->Process Payment
> >>>>> You can choose to map this payment to outstanding invoices or not.
> If you
> >>>>> don't, it will simply register a prepayment for the customer.
> >>>>>
> >>>>> 2. At some point you send an invoice to the user -> Create this
> invoice using
> >>>>> Business->Customer->New Invoice... and post it.
> >>>>>
> >>>>> 3. Now you can choose - does your invoice have (some of) the prepaid
> expenses
> >>>>> ? If so, apply (part of) that prepayment to your invoice using
> Business-
> >>>>>> Customer->Process Payment
> >>>>> After this there may be an outstanding balance the customer still
> has to pay.
> >>>>>
> >>>>> 4. If the customer pays that outstanding balance, create the payment
> via
> >>>>> Business->Customer->Process payment.
> >>>>>
> >>>>> Then repeat for the next cycle/invoice.
> >>>>>
> >>>>> If you are importing your payments instead of manually entering
> them, you can
> >>>>> also select the payment in the respective account, right-click and
> choose
> >>>>> "Assign as payment..." instead of the above mentioned "Process
> Payment"
> >>>>>
> >>>>> As Adrien also suggests at any time you could look at the
> Receivables Aging or
> >>>>> Customer report to see what's the customer's current balance.
> >>>>>
> >>>>> Regards,
> >>>>>
> >>>>> Geert
> >>>>>
> >>>>> Op woensdag 26 juni 2019 21:52:43 CEST schreef Adrien Monteleone:
> >>>>>> You have at least 2 options I can think of at the moment:
> >>>>>>
> >>>>>> #1 - continue to issue credit notes in your system, but don’t send
> them out
> >>>>>> or pay them with a check. When you have the next positive invoice,
> ‘pay’ a
> >>>>>> portion (or all) of that invoice with the credit note. Simply
> process a
> >>>>>> payment, select the credit note line and an invoice line you want
> to apply
> >>>>>> it to in the top part of the window. GnuCash will offset the
> invoice with
> >>>>>> the credit note for you. If the credit note is more than the
> invoice, it
> >>>>>> will retain the left over as remaining AR credit to be used on
> subsequent
> >>>>>> invoices. You can see the customer’s balance any time either by
> looking at
> >>>>>> an AR aging report, or a Customer Report. Outstanding credit notes
> appear
> >>>>>> in the Invoices Due Reminder window.
> >>>>>>
> >>>>>> #2 - If your client regularly pays in advance based on an estimate
> and you
> >>>>>> invoice later, instead of applying the payment to an invoice, apply
> it to a
> >>>>>> Liabilities:Customer Deposits account. Then when you create and
> post the
> >>>>>> final invoice, process a payment for it from this account. You
> could keep a
> >>>>>> separate deposit account for each customer but that might get
> tedious. You
> >>>>>> can run a report on the account sorted by payee to show that info
> and even
> >>>>>> keep that report open in a tab if desired, choosing to refresh it as
> >>>>>> needed. If this might only happen for pre-paid expenses, then you
> can still
> >>>>>> use this method, but only for the pre-paid expense part, which you
> could
> >>>>>> (or not) choose to invoice separately.
> >>>>>>
> >>>>>> Regards,
> >>>>>> Adrien
> >>>>>>
> >>>>>>> On Jun 26, 2019, at 1:46 PM, Eric Rathhaus office <eric at ewrlaw.com>
> wrote:
> >>>>>>>
> >>>>>>> Hi - I have a client for whom I have many jobs.  On some of these
> jobs,
> >>>>>>> the client prepaid expenses that I did not use.  In the past, I’ve
> always
> >>>>>>> created a credit note for a refund and sent the client a check.
> However,
> >>>>>>> my client prefers instead that I credit this amount towards future
> work.
> >>>>>>> I’m not sure how to accomplish this cleanly.  I could keep a
> running
> >>>>>>> total of the amount and discount from the total prepayment until
> it’s
> >>>>>>> used up.  But this seems clunky and maybe not the best practice.
> Any
> >>>>>>> other suggestions on how to account for the refund against future
> work?
> >>>>>>>
> >>>>>>> Kind regards,
> >>>>>>>
> >>>>>>> Eric W. Rathhaus
> _______________________________________________
> gnucash-user mailing list
> gnucash-user at gnucash.org
> To update your subscription preferences or to unsubscribe:
> https://lists.gnucash.org/mailman/listinfo/gnucash-user
> If you are using Nabble or Gmane, please see
> https://wiki.gnucash.org/wiki/Mailing_Lists for more information.
> -----
> Please remember to CC this list on all your replies.
> You can do this by using Reply-To-List or Reply-All.

More information about the gnucash-devel mailing list