Ladies and gentlemen,
We've worked on recurring support and this patch will fix all the issues presented in #459052: eWay recurring payment support and has some other benefits.
For a start we no longer use VAST_END_DATE for indefinite rebill events. If a recurring fee is set to continue indefinitely, we create a new rebill event when a successful payment goes through. This prevents eWay creating hundreds or thousands of rebill events. This way one is created every time a successful rebill payment is made.
We've also fixed some issues with testing variables.
Also anonymous checkouts will work correctly, in that the rebill customer ID will be set to the user's data array once the order is set to pending. Previously you'd need to have an account before you create a rebill event.
Please test this and let me know if you have any issues. The patch is made from 2.x-dev
Cheers
| Comment | File | Size | Author |
|---|---|---|---|
| #3 | uc_eway_recurring.patch | 12.2 KB | univate |
| uc_eway_recurring.patch | 10.76 KB | benkant |
Comments
Comment #1
Schoonzie commentedHi,
I'll be testing this and I'll report back if I have any feedback.
I have one question first. Why do you ask for the eWay username and password when setting up the module?
I can't find anything in the eWay docs asking for this information but I may be missing something. I've been looking here:
http://www.eway.com.au/Developer/eway-api/recurring-payments.aspx
I'm concerned because
1. Some companies may not want to give these people access to their eWay business center to contractors who set up their shopping cart (eg web developers).
2. If the eWay password changes, what happens to the payments? Do they fail?
Thanks,
Nick
Comment #2
Schoonzie commentedAha - I found it under the Token Payments API documentation so that answers my question above
http://www.eway.com.au/Developer/eway-api/token-payments.aspx
I'll test out the patch and let you know if I run into any problems.
Comment #3
univate commentedFirstly, attached is a patch to fix some issues I noticed with this patch not saving the customer rebill id in an account.
But I am confused how this can code can actually work? The eway documentation doesn't show how you can change the rebill event without the credit card details, so how you can add a new rebill event on each renew does not seem possible with the credit card details being stored in drupal?
It looks like what you really want to implement in the eway module is support for token or stored payments so your site can have full control over payments:
http://www.eway.com.au/Developer/eway-api/token-payments.aspx
http://www.eway.com.au/Developer/eway-api/stored-payments-merchant.aspx
Comment #4
agileware commentedThanks for the patch.
Seems to be working from my testing too.
I have committed the patch in #3 with a couple of change:
* Some changes to the way the _uc_eway_get_data() and default values work. Test values are now all their own constants and default values are true defaults, not testing data.
* Some minor coding standards fixes.
Please can anyone using recurring payments in the dev version see #1141916: Remove eway recurring fucntionality and make eway token payments the only recurring payment option.
http://drupalcode.org/project/uc_eway.git/commit/7f9c0ca
Comment #5
agileware commented@Schoonzie:
The password is required for some types of activities, like token payments.
I have opened a new issue to address this problem here - #1142102: Secure the eWAY account password