Once again, how does Pay to Join Work?

I am trying to set up pay to join.  I have looked at the code and see that a redirect is set to redirect to the join form.  However, when a person comes back from PayPal after selecting the membership level and hitting submit and paying, they don't hit the join form, they hit the cart and see nothing or they see an error message (depending on what I select in the payment module, Direct, PDT, or IPN).  Now, we are using IPN to redirect members back to the site after they UPGRADE a membership.  That has to still be in place when one is purchasing through the cart.  And it works.  Now, when someone first joining pays, it is applied to the PayPal account, but they don't come back to the join form so then they get pissed off from paying and not getting to join.  Not good.

 

Now, I have asked this before, how does the Pay to Join work, details, code details, not general answer such as it goes to your site's join form.  How does the bleeding thing work so I can figure out why it is not working for me?

Geeks, making the world a better place
Quote · 8 Jan 2016

I guess it will be Monday or later since the Boonex offices are closed.

Geeks, making the world a better place
Quote · 10 Jan 2016

Anyone using Pay to Join on a site and have verify it works by actually creating a new signup?  If so, would you be so kind as to share your settings in Dolphin and your settings in PayPal so we can compare?

Geeks, making the world a better place
Quote · 10 Jan 2016

Hello
Looks like you've checked the code of BxMbpModule::actionJoinSubmit method in Membership module. Yes, it sets redirect URL to default join page URL. But it's done because integration requires it. In case of "pay before join" the default join form isn't used at all. 

Take a look at BxPmtModule::actionFinalizeCheckout method. When the payment was accepted it checks whether the payer is logged in or not.

//--- Check "Pay Before Join" situation
if((int)$aPending['client_id'] == 0)
$this->performJoin((int)$aPending['id'], $aResult);

And if there was no a logged in user during the payment the buyer will be redirected on Payment's internal join form.

So, in this case you need to use Direct mode with correctly configured PayPal return URL which is available in Admin panel -> modules -> Payment -> Payment Details block -> PayPal -> Data return URL.

Quote · 11 Jan 2016

 

Hello
Looks like you've checked the code of BxMbpModule::actionJoinSubmit method in Membership module. Yes, it sets redirect URL to default join page URL. But it's done because integration requires it. In case of "pay before join" the default join form isn't used at all. 

Take a look at BxPmtModule::actionFinalizeCheckout method. When the payment was accepted it checks whether the payer is logged in or not.

//--- Check "Pay Before Join" situation
if((int)$aPending['client_id'] == 0)
$this->performJoin((int)$aPending['id'], $aResult);

And if there was no a logged in user during the payment the buyer will be redirected on Payment's internal join form.

So, in this case you need to use Direct mode with correctly configured PayPal return URL which is available in Admin panel -> modules -> Payment -> Payment Details block -> PayPal -> Data return URL.

I tried setting direct mode with the data return URL set in PayPal.  I will attempt once again and then post the results back here.

Geeks, making the world a better place
Quote · 11 Jan 2016

 


So, in this case you need to use Direct mode with correctly configured PayPal return URL which is available in Admin panel -> modules -> Payment -> Payment Details block -> PayPal -> Data return URL.

 

It returns to:

 

/m/payment/act_finalize_checkout/paypal/0?tx=4D250161U9106224H&st=Completed&amt=0.01&cc=USD&cm=8638096e4ddb49a0dd6592c57d9f50ab&item_number=99

No Data Given

Geeks, making the world a better place
Quote · 13 Jan 2016

Hello 

 


So, in this case you need to use Direct mode with correctly configured PayPal return URL which is available in Admin panel -> modules -> Payment -> Payment Details block -> PayPal -> Data return URL.

 

It returns to:

 

/m/payment/act_finalize_checkout/paypal/0?tx=4D250161U9106224H&st=Completed&amt=0.01&cc=USD&cm=8638096e4ddb49a0dd6592c57d9f50ab&item_number=99

No Data Given

Looks like PDT mode is still enabled in your PayPal account while you are trying to get data using Direct mode in Dolphin.

Quote · 13 Jan 2016

I went to the client's PayPal and dug around in the settings and found the PDT switch, yes, it was on.  However, why did you not mention that little bit of important information the last time?

 

In fact, why isn't the whole set up listed in the knowledge base since it is a new feature?  I guess I need to add it.

 

Payment settings : Direct

PDT turned off at PayPal

IPN set to URL listed in PayPal settings.

 

It is enough to make you kick the dog and cuss the cat.

 

Geeks, making the world a better place
Quote · 13 Jan 2016
 
 
Below is the legacy version of the Boonex site, maintained for Dolphin.Pro 7.x support.
The new Dolphin solution is powered by UNA Community Management System.