Gocardless only works with 1 whmcs install, configuring it on a second install will break it on the other install.
When I setup Gocardless and it does its call back it only works on one of the WHMCS installs
ie WHMCS 1 will work, once we setup gocardless on WHMCS 2 then transactions will fail on WHMCS1 with error:
Access token not active - Access token not active
I then go to payment gateways > gocardless and click configure, it'll connect to gocardless gateway and recreated the token.
This then breaks it on WHMCS2.
I'm guessing its because it creates an app called WHMCS with gocardless, it would be ideal if this could be
1) customised
2) changed to use WHMCS_DOMAIN_NAME so both apps are unique.
as of right now we are unable to charge DD's on WHMCS2
4 Comments
Login to post a comment.
The reason for our current implementation is that is allows for a seamless onboarding and setup process into GoCardless and is something we were both keen to implement.
Configuring API Keys, granting permissions, specifying webhook endpoint listeners etc. are all pain points when onboarding with WHMCS and a new payment gateway. It causes friction to users, increases time to first sale and generates support interactions. So if a payment gateway has a guided onboarding process which eliminates these issues, we will look to leverage that.
I an appreciate that convenience, ease of use and speed could reduce flexibility in this kind of use-case. Perhaps this idea could be used to track interest in some kind of "advanced mode" which allows power users to manage API keys and handle the setup process manually themselves?
There are few things that are wrong with the current GoCardless gateway module:
1. You can connect it to only in one WHMCS install even if you can create multiple ones on GoCardless side.
2. It creates the exact same Connected App on GoCardless side (Name=WHMCS / URL=https://www.whmcs.com/). This is not very clean. The connected App should have the info of the WHMCS we are trying to connect.
3. To setup the oauth connection from the backend, the process is not direct from our WHMCS install to GoCardless. For some reason, the current implementation is doing WHMCS > https://api1.whmcs.com/gocardless/auth/initiate > GoCardless.
I have seen the comment about creating one GoCardless account per WHMCS install. That's not a viable solution as it's just hiding a messy implementation.
There are different ways it can be solved:
1. Add a way to let us choose between Oauth and API Keys connection method
2. Make sure your https://api1.whmcs.com/gocardless/auth/initiate create app related to the WHMCS install itself, not WHMCS.com
3. And is this api really requires to be on your servers? Can't it be iniated on the install side directly and thus remove one intermediate.
2 and 3 will most likely requires one admin to reconnect to the gocardless api as token might mismatch the app url/name.
https://whmcs.community/topic/319632-access-token-not-active/