Jump to content

Payment Modules and Refunds


Paul C
 Share

Recommended Posts

I've been working on a full IPN implementation for Paypal, and have come across an interesting situation that affects all payment types. The question is as much regarding business processes I guess as the coding that goes on behind it.

When a customer places an order that is subsequently refunded, then the order remains unchanged in the Back Office, apart from the status being changed to "Refund". This is true using the Back Office to manually change the status, as well as the status being updated automatically via the payment method (in my case PayPal IPN). However the customer invoice still only records the initial sale. I'm not an accountant, but shouldn't there be a second invoice issued that reflects the refund, or an updated version of the initial invoice?

Secondly, shouldn't the amount paid by the customer also be reduced by the full amount (or partial amount; paypal support partial refunds, which I've implemented via IPN too)? The back office doesn't actually show what has been paid against the order, except where it doesn't match the order value - so I suspect that when changing the state to refund, the amount stored in the database as having been paid remains unchanged currently?

I'm a little concerned that these issues may effect any future accounting export/statistics add-ons folks may produce....

Any input would be appreciated either from a developer or commercial perspective,

Paul

Share this post


Link to post
Share on other sites

Hmm no takers then :roll:

I did notice that if you cancel the order - instead of a refund, then the invoice is hidden. I think maybe that when a full order is refunded then this should probably be what should also happen (a full refund is the same as cancelling the order in most ways, as the customer ends up not paying). I'll post that as a bug and see what the developer folks think.

Still would like to hear what anyone else thinks about this..... :question:

Paul

Share this post


Link to post
Share on other sites

Hi Paul.

If this is the way it works (I have not tested it) then I understand your concerns.

The biggest problem I have are with items that are purchased but not available. Very often a customer will choose another item which may be a different price. With osc there was no way to change the original order or change the item purchased.

We should be able to issue credit notes and create new invoices in back office and we should be able to allocate payments to invoices

I hope you get this improved

Regards

Ken.

Share this post


Link to post
Share on other sites

I think all you need to do here is create a function within your payment module that triggers a function to send the 2nd invoice
ie. if payment status returned send a credit note to the customer & update the DB

But your right this should already be implemented, but I think this falls more in to the feature request category rather than a bug ;)

Share this post


Link to post
Share on other sites

Do you think it's a "new feature"? :bug:

Why have a status of refunded, and then show the (now outdated) invoice in the orders history? I would say either update the invoice to show the refund, or kill it (in the case of a complete refund).

Coding the payment module isn't the problem. Any code I (or anyone else) puts in the payment module will just be a kludge, which would have to be repeated in every payment module. The whole point of an object model is that you DON'T do daft things like that, surely?

Cancelling an order correctly removes the invoice...... now where's the difference? :roll:

Partial refunds (not currently supported in the core anyway) would be implemented no doubt as a new feature (which they are). Tey're probably a mundane but fairly essential new feature at that.


I think I'll take a look at the credit slip things, and see what effect they have. May be possible to use these for full/partial refunds.


Paul

Share this post


Link to post
Share on other sites

  • 1 year later...

I've noticed a similar problem in that I can't send customers credit slips (I would much prefer credit 'note' but this is a slightly different matter) for partial amounts as they only seem to apply when an order is completely refunded.

Also, when I do generate a credit slip for a full refund, it doesn't show in the customer's order history whereas the invoice does. On top of this, the credit slip (which can be viewed under the customer's 'My credit slips') doesn't even mention the word credit, it's just called a 'slip' and it doesn't make any reference to money being refunded!

Anybody else experienced this?

Share this post


Link to post
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More