On Wed, Dec 23, 2009 at 1:29 AM, Abdullah Shaikh <[email protected]> wrote: > I haven't worked with authorize.net or pccharge, the explanation inline is > general. > No worries; I really want to understand the general behaviour. Also, just to make sure I understand the terminology, sale = authorize (allocate/reserve the money in the customer's account but do not charge yet) + capture (converts the allocation into a charge/payment/whatever you want to call it), right?
> - Abdullah > > On Wed, Dec 23, 2009 at 9:48 AM, Mauricio Tavares <[email protected]>wrote: > >> This is an easy question but I am completely confused: how do I >> cancel/void and order? What I have noticed is that when you select an order >> in the order manager that might have already be validated (or not), and you >> have *not* captured it yet, it will show a [Cancel] button just before an >> [Authorize] and a [Capture]. That [Cancel] button seems to call >> document.CancelOrderPaymentPreference_10011.submit(). >> > > To cancel/void an order, you can use the [Cancel] button which gets > displayed just before an [Authorize] and a [Capture] button. > > >> >> Once the capture is done, the [Cancel] and the [Authorize] buttons are >> gone. Now, there is also a [Cancel Order] button on the top of the screen >> (close enough) at all times, which then calls document.OrderCancel.submit(). >> Pressing either cancel buttons does not send a void (or any transaction for >> that matters) to the payment gateway; it is only removing the selected order >> from the list shown by the order manager. That does not make sense to me. >> > > Yes, once the captute is done, the [Cancel] and the [Authorize] buttons > won't be displayed as the payment is already Captured and you can't > Cancel/Void or Authorize an already Captured payment. > I understand that you should not be able to authorize a captured transaction since authorize precedes capture, but I cannot see why you not be able to void transaction as long as it has not been settled yet (ok, maybe I am looking at this differently than I should). > The [Cancel Order] button, the one at the top, should actually Cancel the > order and also send a Refund request to the payment gateway, I guess [Cancel > Order] button is displayed only once the payment is captured. > Actually I noticed it is there all the time in my ofbiz copy. In fact, I have an order here I still need to authorize and the [Cancel Order] button is there staring back at me. That said, if the [Cancel Order] button send a Refund request to the payment gateway, it should have sent the transaction to the gateway. I am not seeing it. You see, I can see the xml transaction when the authorize and capture steps take place, but I am not seeing anything when I hit cancel. By that I mean no communication whatsoever from ofbiz and the gateway. So, right now I really do not care what pccharge or authorize.net expects to get when you tell it to refund, but I want to see something being sent to the gateway. Anything. Right now, even though I *thought* I had, say, configured every cc transaction to use authorize.net (http://picasaweb.google.com/raubvogel/Komputer#5418482066036283778), the [Cancel Order] behaves as if it is being down internally or just ignoring the part that it is supposed to talk to the payment gateway. > It doesn't remove the order from the list, actually the list is filtered, > you can select the filter option to display Cancel order or All orders. > Understood. > >> So how will the customer get his/hers/its money back? I tested that with >> authorized.net and pccharge (using the patch created by Marco Risaliti) >> and they both behave the same way. >> > > The customer should get back the money in 2 ways one is Cance/Void or if > already Captured, then through Refund, as explained above. > I guess if the transaction is canceled/void, the customer should get the money back *eventually* as the authorize should revert back after a few days. But, I would like to have seen ofbiz trying to talk to payment gateway when it should be refunding/voiding/whatever. > Hope this help. > > - Abdullah >
