How do you handle/mark refunded orders?

Discussion in 'Troubleshooting' started by tomfra, Jan 24, 2009.

  1. tomfra

    tomfra Member

    Joined:
    Dec 21, 2006
    Messages:
    199
    If a customer request a refund and it's issued, is there a way to mark the particular order as "refunded" in aMember?

    The problem is, when I delete the payment manually, the original invoice/payment record is deleted from the database which can be a nightmare from the accountancy point of view.

    Right now I simply set the user as "Blocked". Ideally, the user's record should be deleted but the payment record kept IMHO. Or something like that.

    You know, I am running a real business here... Once an order has been paid, there has to be a record. If it's refunded, there has to be yet another "refund invoice"/record for that order. I can't pretend there was no order at all.

    Tomas
  2. skippybosco

    skippybosco CGI-Central Partner Staff Member

    Joined:
    Aug 22, 2006
    Messages:
    2,526
    I mark the payment as not complete to remove access and append a refund: to the beginning of the receipt #.

    If you have any pending payment email rules, you may need to adjust the date of the payment to prevent getting a "you haven't paid" email sent to your user.
  3. davidm1

    davidm1 aMember User & Partner

    Joined:
    May 16, 2006
    Messages:
    4,437
    I'll change the date of the payment so it expired yesterday, and set the payment amount to 0.

    Someone once mentioned adding a "refund" product to their account so you can sort, and maybe add a dissallow rule to prevent them from signing up again at least with that account.

    David
  4. tomfra

    tomfra Member

    Joined:
    Dec 21, 2006
    Messages:
    199
    Thanks for the suggestions! aMember is somewhat lacking "mark order as refunded" feature IMHO. And PayPal is yet another problem. It seems once you refund the order via PP, the payment record/invoice is automatically deleted from aMember and pretends it was never there. Pretty stupid for anyone who has to care about sales records for their accountant.

    Tomas
  5. ronniead

    ronniead Member

    Joined:
    Dec 20, 2007
    Messages:
    118
    product "refund"

    I have a product called "refund". Whenever someone requests a refund I do the following:

    * refund them!
    * change their product to "refund"
    * keep it marked as "completed"
    * change the value to 0.00

    the reason for keeping it marked as "completed" is because when you do reports, you can see how many customers were refunded.

    Another side benefit of doing it this way is you could create a page called "refund", so if they log into it using their credentials, they will the page which says "your account has been refunded"

    I haven't done this, but may in the future...you could take it even further and create multiple products like:

    refund - paid more than once
    refund - weren't happy
    refund - chargeback

    etc..

    It may even be possible to create a negative charge in the amount field (for chargebacks) for reporting purposes, although I haven't tried this.
  6. tomfra

    tomfra Member

    Joined:
    Dec 21, 2006
    Messages:
    199
    ronniead: Those are some good ideas and I will very likely use at least one ;)

    What's a big problem though, is that once you refund the order through PayPal, the order record is automatically deleted from the aMember database.

    Another related problem is that when you delete a user, it also deletes from the database all of their payments which is a nightmare from the bookkeeping perspective...

    Is there a "non-hacking" way to change this behaviour? I guess I will have to modify the aMember code directly, again, to change it. But that's always tricky.

    Tomas
  7. ronniead

    ronniead Member

    Joined:
    Dec 20, 2007
    Messages:
    118
    I don't have that problem. When i refund a customer in paypal, the record is still there in amember?? strange. ask the support team....

    i never delete a user that has ever paid (even if i have refunded them). as i told you, i just assign a fake product called "refunds" which blocks the customer. this is a "non-hacking" method....

    you don't need to do any "hacking". just create a product call "refund"...and then change the user to that new product if they request a refund...
  8. tomfra

    tomfra Member

    Joined:
    Dec 21, 2006
    Messages:
    199
    To be completely honest, I am not 100% sure the payment is removed automatically when the paypal refund if issued. I had only one paypal refund so far and I thought the order was indeed removed automatically in amember but I may be wrong.

    The reason I wanted to remove the refunded customer's record was to make sure they do not receive any email from the system (either an automated mailing or mass mail if I select "all users") and to be fully compliant with my privacy policy.

    Also, some customers may ask me to cancel their account completely and in this case I am, again, required by my privacy policy (and I believe it's necessary by the EU privacy laws as well), to remove their data from the database completely. Then as I mentioned before, their payment records/invoices would be deleted too which is not desirable.

    I will think about this for a few days... Your suggestion for creating the refund product is a very good one, I just may need to slightly modify it.

    Tomas
  9. ronniead

    ronniead Member

    Joined:
    Dec 20, 2007
    Messages:
    118
    just do it.....trust me. you'll love it.

Share This Page