In My Account when attempting to delete a Payment method by clicking Delete then confirming Delete, you get the message "The payment method Visa ending in xxxx has been deleted." However the Payment method has not deleted: it still appears in My Account->Payment methods and it can still be used at checkout.
| Comment | File | Size | Author |
|---|---|---|---|
| #9 | cannot_delete_payment-2830998-9.patch | 988 bytes | mglaman |
| #8 | cannot_delete_payment-2830998-8.patch | 819 bytes | mglaman |
Comments
Comment #2
bojanz commentedWhich gateway are you using? The delete code is gateway specific.
Comment #3
jpdaut commentedOops. Of course. I was using Authorize.net gateway.
Comment #4
mglamanjpdaut, was it removed in Authorize.net?
The Authorize.net module has
bojanz, I had no idea we needed to delete the payment method in our gateway.
Wouldn't it be best to modify
after invoking the gateway plugin? I assumed the delete was just to process deletion of the remote profile. And if no exception is thrown the payment method deletes.
Comment #5
mglamanEh, I just read the docblock.
Both the entity and the remote record are deleted.And create method assumes it'll be saved. So I guess we can move this to Auth.net queue and fix there.
Comment #6
jpdaut commentedmglaman I just looked at my Authorize.net's Customer Profile CIM page and my profile created 11-27 is still there.
So it seems, when you click Delete your Payment method in the UI, neither the entity nor the remote record are deleted currently.
Comment #7
jpdaut commentedWhether the remote record is actually deleted or not is not important. It's not this module's responsibility.
But deleting the local entity is, so customer won't be presented with a payment method they don't want.
Comment #8
mglamanHere is patch to fix delete payment method
Comment #9
mglamanRevised patch to handle record not found error.
Comment #11
mglamanComment #12
jpdaut commentedI can confirm this works now.
As an aside, I checked and the CIM profile is still there in Authorize.net. But that's their property anyway, if they don't want to delete it it's their choice. The sync w/ Drupal is not mandatory I don't think and it has not impact on functionality.