Jump to content
Sign in to follow this  
dynamoeffects

PayPal WPP Direct Payments & Express Checkout Support

Recommended Posts

It has been a long time since I set up my test shop in the PayPal Sandbox, but it worked identically to the live version. I know that they have made some changes to make it easier to find credentials and such, but they may not support certificates in the new changes. Best to ask PayPal developer technical support about that.

 

--Glen

Share this post


Link to post
Share on other sites

I have just installed "PayPal WPP Modification" I did a line by line install. It is working well, but if over the credit card limit the customer is bounced back to the payment page, but no error is displayed. Can you help me with that page the error code is in?

Share this post


Link to post
Share on other sites

On occassions I get a Paypal Error and looking at the dump, I see the error is:

 

[shortMessage] => Invalid Data

[LongMessage] => This transaction has been completed, but the total of items in the cart did not match the total of all items.

[ErrorCode] => 15008

[severityCode] => Warning

 

 

When looking at it in more detail I see the issue is here:

 

[PaymentDetailsItem][Name]London To Edinburgh Day Tour[/Name][Amount currencyID=GBP]135.00[/Amount][Number]-[/Number][Quantity]0[/Quantity]

 

[/PaymentDetailsItem][PaymentDetailsItem][Name]Order Total Discrepancy[/Name][Amount currencyID=GBP]268.00[/Amount][Number]-[/Number][Quantity]1

 

[/Quantity][/PaymentDetailsItem]

[/PaymentDetails]

 

When it should look like this...

 

[PaymentDetailsItem][Name]London To Edinburgh Day Tour[/Name][Amount currencyID=GBP]135.00[/Amount][Number]-[/Number][Quantity]2[/Quantity]

 

[/PaymentDetailsItem]

 

This problem only happens on occassions and I cannot understand what the customer has done to make this happen. If you would like to see the basket we use

 

with this particular example then go to http://www.sightseeingtourslondon.com/edinburgh-trip-c-36.html and select 2 adults and Book Now and you will see my

 

basket setup. 95% of bookings go through without a problem, its just a small amount where this error crops up and I would love to understand how/why and to

 

resolve it.

 

Thanks,

 

Chris


Founder & Director at CSC Tours Ltd

Share this post


Link to post
Share on other sites

Hi. I've been using this module for several years w/o too many problems. Every now and then I get a PayPal Error Dump email which contains all of the relevant information (the error is usually relating to the customer not entering their information correctly). Recently however, I've gotten Error Dumps that simply show what I've pasted down below.

 

On my checkout page (I use the onepage dynamo checkout) customers can either choose PayPal (which I assume is 'Express Checkout') or Credit Card (which I assume is 'Direct Payment').

 

Any thoughts would be greatly appreciated as to why I'm getting the shorter error emails when people try Express Checkout. Also, I've had several people checkout successfully in recent days using express checkout and it worked fine. So it's not a universal error.

 

Also, the shorter emails only appear to be for Express Checkout, whereas the normal dump emails are all for 'Direct Payment' and start with this:

 

In function: before_process() - Direct Payment

Did first contact attempt return error? Yes

 

This is how the shorter emails look (I've xxxx'ed out many items for security reasons):

 

In function: before_process() - Express Checkout

Did first contact attempt return error? Nope

---------------------------------------------------------------------

-------------------------------EC_DUMP-------------------------------

------------This is the information that was sent to PayPal----------

---------------------------------------------------------------------

 

 

 

 

 

xxxxxxxxxxxxxxxxx [my paypal api login is shown in the email]

xxxxxxxxxxx [my paypal api password is shown in the email]

 

 

 

 

 

 

2.0

 

Sale

EC-xxxxxxxxxxxxxxxxxxx

xxxxxxxxxxxxx

 

279.00

Order placed on July 26, 2010, 1:19 am by xxxxxxxx (ID: xxxxxx)

279

0

 

 

Phone: -- Email: xxxxxxxxxxxxxx

 

 

xxxxxxxxxx [name]

xxxxxxxxxxxxxxxx [street address]

 

xxxxxxxxxxx [city]

NJ

07626

US

 

Peruvian 18kt Gold Filled Disc Earrings90.001Encased Light Topaz Swarovski Crystal Earrings62.001Blue Druzy Quartz Pendant127.001

Share this post


Link to post
Share on other sites

Hi guys,

 

This has been a great add-on and I've been using PayPal Pro successfully thanks to it. My one problem is that I've never been able to get discount coupons to work with paypal express properly.

 

I've just come across the github page for osCommerce 2 and from April 2009, there are several updates which relate to PayPal.

 

http://github.com/osCommerce/oscommerce2/commits/master?page=5

 

Would anyone happen to know if any of these are relevant to those of us using this add-on, or does this add-on make these older changes irrelevant?

 

Thanks,

 

Nick

Share this post


Link to post
Share on other sites

I have just installed "PayPal WPP Modification" I did a line by line install. It is working well, but if over the credit card limit the customer is bounced back to the payment page, but no error is displayed. Can you help me with that page the error code is in?

 

I still have not had luck locating the code.

Share this post


Link to post
Share on other sites

I am getting an error that is related to this module, it only showed up now that credit card info can be used directly with direct payments.

 

Any help is appreciated.

 

http://forums.oscommerce.com/topic/362522-fatal-error-using-this-when-not-in-object-context-in-storeaccount-history-infophp-on-line-243/page__p__1525554__fromsearch__1entry1525554

 

While the problem may be "related" to this module, it isn't caused by this module. It appears that the problem would occur when an order contains a credit card number, which would be the case for many modules that process credit cards. What I can tell you is that this module redacts all but the last four digits of credit card numbers when storing the card number in the database, in accordance with current rules regarding card security. The number is stored in the form: XXXXXXXXXXXX1234

 

--Glen

Share this post


Link to post
Share on other sites

hi

 

i had installed this payment module by dynamoeffects on my website, but then thought that i needed to install the official module instead, so i did but now have a few problems and no one has responded on the forum for the official paypal module since may? even though paypal have said that it is the only module that they provide tech support for?

 

my two problems are:

 

1. customers can checkout without entering any credit card details, meaning they can checkout for free, because the store owner then gets an email suggesting they have paid, so would proceed to send off what they ordered, so BIG problem

 

2. when paypal express checkout is selected, either by clicking the button or selecting it as the payment method, it says register_globals is disabled, but in my catalog/php.ini file, register_globals is on?

 

but have had no reply so far so wondered if any one had any suggestions as to who i could get help from? when card details are entered, there is no record in paypal, so paypal doesnt seem to know anything about the payment module?

 

 

 

i like the official paypal module because the customer doesnt have to enter any card details until the confirmation page, so they know what they are ordering, etc.

 

please help as im very stuck and confused :(

Share this post


Link to post
Share on other sites

Does anyone know how long the session stays open using dynamo checkout? I appear to have a lot of customers that get to the one page basket and then leave it a while then attempt payment and no order data is transferred due to session timeout. I cant work out how long the session lasts and where I can change this to see if this makes a difference.

 

Thanks!!


Founder & Director at CSC Tours Ltd

Share this post


Link to post
Share on other sites

Hi everyone. I hope you can help me, or give me some hints so I can solve the problem myself.

 

 

1.- it seems like the IPN is not working. When I change something on paypal (like refund from paypal.com) the order status doesn't change. it works if I do everything from my osc admin.

 

2.- When I place an order (the checkout process is completed successfully), the order is saved and is marked as "Completed" even when paypal shows the transaction as "under review"

I've been trying to solve this on \includes\modules\payment\paypal_wpp.php around line 1517, playing with the status, but haven't found a way to pass the right status.

 

//ORIGINAL CODE
if (strtoupper($this->transaction_log['payment_status']) == 'PENDING') {
           if (MODULE_PAYMENT_PAYPAL_DP_PENDING_ORDER_STATUS_ID > 0) {
             $order->info['order_status'] = MODULE_PAYMENT_PAYPAL_DP_PENDING_ORDER_STATUS_ID;
           }
         } elseif (strtoupper($this->transaction_log['payment_status']) == 'COMPLETED') {
           if (MODULE_PAYMENT_PAYPAL_DP_COMPLETED_ORDER_STATUS_ID > 0) {
             $order->info['order_status'] = MODULE_PAYMENT_PAYPAL_DP_COMPLETED_ORDER_STATUS_ID;
           }
         }

 

3.- When the user is using express checkout he can change his shipping address, so, is there a way to pull the billing AND shipping address from paypal instead of only the shipping address?

 

Thanks

Share this post


Link to post
Share on other sites

I still have not had luck locating the code.

 

I'm no expert, but I think you can check the

 

/checkout_payment.php

/checkout_shipping.php

/login.php

 

OR, if you have a setup like me, where I'm encapsulating all my checkout pages on the template, you will have to check the files:

 

/templates/content/checkout_payment.tpl.php

and so on... or something like

/templates/mytemplate/content/checkout_payment.tpl.php

and so on...

 

I hope this helps

Share this post


Link to post
Share on other sites

Hi everyone. I hope you can help me, or give me some hints so I can solve the problem myself.

 

 

1.- it seems like the IPN is not working. When I change something on paypal (like refund from paypal.com) the order status doesn't change. it works if I do everything from my osc admin.

This is true. I last mentioned it in post 4198 of 2 July. I still haven't had brain cycles to spend on it. It is still on my list of things to do, (It's also listed as an issue at Github.)

 

2.- When I place an order (the checkout process is completed successfully), the order is saved and is marked as "Completed" even when paypal shows the transaction as "under review"

I've been trying to solve this on \includes\modules\payment\paypal_wpp.php around line 1517, playing with the status, but haven't found a way to pass the right status.

 

//ORIGINAL CODE
if (strtoupper($this->transaction_log['payment_status']) == 'PENDING') {
           if (MODULE_PAYMENT_PAYPAL_DP_PENDING_ORDER_STATUS_ID > 0) {
             $order->info['order_status'] = MODULE_PAYMENT_PAYPAL_DP_PENDING_ORDER_STATUS_ID;
           }
         } elseif (strtoupper($this->transaction_log['payment_status']) == 'COMPLETED') {
           if (MODULE_PAYMENT_PAYPAL_DP_COMPLETED_ORDER_STATUS_ID > 0) {
             $order->info['order_status'] = MODULE_PAYMENT_PAYPAL_DP_COMPLETED_ORDER_STATUS_ID;
           }
         }

I don't know what an "under review" payment looks like, possibly because I use "Authorization and Capture" in my shop. However, I also use the osC PayPal IPN payment module and uncleared checks go into my osC "Pending" order status, which is where all unreviewed orders go. I manually move those to a new status that I created called "Uncleared", and ship them once the customer's echeck clears. This also works for payments from countries, such as Germany, where the customer must send funds to PayPal from their bank after making a purchase.

3.- When the user is using express checkout he can change his shipping address, so, is there a way to pull the billing AND shipping address from paypal instead of only the shipping address?

 

Thanks

PayPal made a number of changes to Express Checkout after this module was developed. Some of them will allow us to streamline the Express Checkout process further, but will require additional development. Again, some of this is on my "to do" list, but I believe that PayPal only returns one address in Express Checkout. However, I'll have to look at the API and the code to verify that.

 

--Glen

Share this post


Link to post
Share on other sites

Hi,

 

I bought a template from template monster and I am trying to install this module, but I just cant seem to find the code mentioned in:

 

Step #6 - Modify checkout_shipping.php of the installation

 

Im using version v2.2 RC2a

 

Why is my coding so different from that in the installation ?

 

Thanks

Share this post


Link to post
Share on other sites

Hi,

 

I bought a template from template monster and I am trying to install this module, but I just cant seem to find the code mentioned in:

 

Step #6 - Modify checkout_shipping.php of the installation

 

Im using version v2.2 RC2a

 

Why is my coding so different from that in the installation ?

 

Thanks

 

It shouldn't be different, unless the template modifies the checkout flow. Compare checkout_shipping.php from the RC2a distribution and compare it to the one supplied with your template.

 

--Glen

Share this post


Link to post
Share on other sites

Hi

 

Is it possible (I imagine so - just not sure how to do it safely) to turn off the 3DS feature temporarily if using the Add Charge feature in admin?

 

Its a chore to go to modules > payment > paypal_wpp to disable 3DS for a few moments whilst taking a card payment over the phone to then go back and enable it again afterwards... would be much neater if we could do this with php when the button is clicked for instance.

 

Many thanks

Share this post


Link to post
Share on other sites

Hi All

 

I am trying to upgrade from version 1.0.7a to the latest version (so I can upgrade to Dynamo Effects one page checkout) on my test server, but am having problems getting it to work

 

I am using the Github version because of Cardinal and the comment in post 4202

 

When a transaction goes via paypal I get the following errors on returning from paypal

 

Warning: preg_match() [function.preg-match]: Unknown modifier '-' in /home/content/44/5660644/html/catalog23052010/includes/modules/payment/paypal_wpp.php on line 777

 

Warning: Cannot modify header information - headers already sent by (output started at /home/content/44/5660644/html/catalog23052010/includes/modules/payment/paypal_wpp.php:777) in /home/content/44/5660644/html/catalog23052010/includes/functions/general.php on line 33

 

Also

 

When a CC transaction goes through and Cardinal is not active it is processed Ok

 

but when Cardinal is active the user gets the errors

 

Error Processing Lookup Request Message (Error 1002)

Merchant Profile is not configured with a Transaction Password (Error 2021

 

(I have configured the Transaction password in Cardinal)

 

Help

 

Thanks in Advance

 

Philip

Share this post


Link to post
Share on other sites

I have installed the original direct paypment implementation by paypal.

 

What are the steps to overwrite this installation?

 

Anything different?

 

Also does this fix the paypal_express problem of losing the customer information and tax when it returns from paypal.

 

thanks

Share this post


Link to post
Share on other sites

Hi All

 

I am trying to upgrade from version 1.0.7a to the latest version (so I can upgrade to Dynamo Effects one page checkout) on my test server, but am having problems getting it to work

 

I am using the Github version because of Cardinal and the comment in post 4202

 

When a transaction goes via paypal I get the following errors on returning from paypal

 

Warning: preg_match() [function.preg-match]: Unknown modifier '-' in /home/content/44/5660644/html/catalog23052010/includes/modules/payment/paypal_wpp.php on line 777

 

Warning: Cannot modify header information - headers already sent by (output started at /home/content/44/5660644/html/catalog23052010/includes/modules/payment/paypal_wpp.php:777) in /home/content/44/5660644/html/catalog23052010/includes/functions/general.php on line 33

 

Also

 

When a CC transaction goes through and Cardinal is not active it is processed Ok

 

but when Cardinal is active the user gets the errors

 

Error Processing Lookup Request Message (Error 1002)

Merchant Profile is not configured with a Transaction Password (Error 2021

 

(I have configured the Transaction password in Cardinal)

 

Help

 

Thanks in Advance

 

Philip

 

 

I have now got the credit Card side working OK but am still having the problems with the paypal errors does anyone have any suggestions?

 

Regards

 

Philip

Share this post


Link to post
Share on other sites

Just installed this and I get an error when I click any of the Express checkout buttons as follows:-

 

It appears that you are missing modifications within /includes/classes/payment.php. Please reference the installation guide for assistance.

 

I have verified the required mods are in place, I can see the check that is causing the error in includes/paypal_wpp/paypal_wpp_include.php as follows:-

 

    case 'express_checkout':
     require_once(DIR_WS_CLASSES . 'payment.php');

     if (tep_session_is_registered('paypal_error')) tep_session_unregister('paypal_error');

     if (isset($_GET['clearSess'])) {
       tep_session_unregister('paypal_ec_temp');
   		tep_session_unregister('paypal_ec_token');
   		tep_session_unregister('paypal_ec_payer_id');
   		tep_session_unregister('paypal_ec_payer_info');
     }

     if ($ec_enabled) {

       $payment_modules = new payment('paypal_wpp');

       if (!method_exists($payment_modules, 'ec_step1') || !method_exists($payment_modules, 'ec_step2')) {
         die(TEXT_PAYPALWPP_ERROR_PAYMENT_CLASS);
       }

       if(!tep_session_is_registered('paypal_ec_token')) {
         $payment_modules->ec_step1($_GET['return_to']);
       } else {
         $payment_modules->ec_step2();
       }
     }
     break;

 

and the code of

    //---PayPal WPP Modification START ---//
   function ec_step1() {
     if (is_array($this->modules)) {
       if (is_object($GLOBALS[$this->selected_module]) && ($GLOBALS[$this->selected_module]->enabled) ) {
         return $GLOBALS[$this->selected_module]->ec_step1();
       }
     }
   }

   function ec_step2() {
     if (is_array($this->modules)) {
       if (is_object($GLOBALS[$this->selected_module]) && ($GLOBALS[$this->selected_module]->enabled) ) {
         return $GLOBALS[$this->selected_module]->ec_step2();
       }
     }
   }
   //---PayPal WPP Modification END---//  

 

is in place so what gives ?

Share this post


Link to post
Share on other sites

For anybody that wants to disable the 3DS (Cardinal) pages when doing an add charge from the admin side as I did all you need to do is the following:-

 

Open Catalog > includes > modules > payment > paypal_wpp.php

 

search for:-

   function cardinal_centinel_enabled($cc_type = '') {
     if (MODULE_PAYMENT_PAYPAL_DP_CC_ENABLE != 'Yes') return false;

and replace with:-

   function cardinal_centinel_enabled($cc_type = '') {
     if ($this->is_admin) return false;
     if (MODULE_PAYMENT_PAYPAL_DP_CC_ENABLE != 'Yes') return false;

Then open catalog > admin > includes > paypal_wpp > paypal_wpp_include.php

 

Search for:-

         if (MODULE_PAYMENT_PAYPAL_DP_CC_ENABLE == 'Yes') {
            echo 'alert("This feature is unavailable with the Cardinal Commerce 3D Secure feature enabled.");';
            echo 'return false;';
         }

and replace with:-

         if (MODULE_PAYMENT_PAYPAL_DP_CC_ENABLE == 'Yes') {
            // echo 'alert("This feature is unavailable with the Cardinal Commerce 3D Secure feature enabled.");';
            // echo 'return false;';
         }

Hope this helps someone else.

Edited by Dangermouse

Share this post


Link to post
Share on other sites

my error of "missing modifications etc" was caused by something to do with the certificate I believe, I removed and recreated certificate and all ok now

 

Now I have other issues though :(

 

I get to the checkout page and it shows the fields for Direct Payment via Paypal, I enter in card details and click Continue and the page just refreshes on same page ? I have one page checkout facility on our site would it be anything to do with this ?

 

Also if i click Express checkout and go to paypal site, select option to say "dont have a paypal account" and enter in card details manually on paypal site, and then checkout and comes back to my site to the same checkout page with nothing changed

Share this post


Link to post
Share on other sites

I'm encountering a problem that was previously discussed: the "Unfortunately the country of the address you selected is not currently one that we offer service to. If you have any questions, please feel free to contact us." error when using Paypal Express.

 

I've installed the latest commit of the Paypal WPP module from github, which appears to be v1.1.2 according to paypal_wpp.php. Everything seems to be configured properly. The site has a valid SSL certificate & the IPN URL is set to https://www.mysite.com/buy/checkout_process.php.

 

I've examined the response array returned from wpp_execute_transaction around line 799 and it is only returning the customer name, no shipping address information is being returned at all, which is subsequently causing the error.

 

Any thoughts what may be causing this problem?

Edited by gotkube

Share this post


Link to post
Share on other sites

http://github.com/DynamoEffects/paypal-pro-for-oscommerce/commit/55b0100d73ee5fa19c84fc8b1040e4c61aa8d057

 

Hi,

 

Sorry if this has been answered before, but is the code in this github update OK to install? I'm hoping to get my site ready

for PHP 5.3 in case my host requires it, but I'm not of the status of this update since the comment says that it's not

complete.

 

Thanks

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×