Jump to content
PayPal_Tin

PayPal Website Payments Pro Hosted Solution (Official)

Recommended Posts

Hello all,

 

PayPal UK are pleased to announce the release of the Official module for the PCI-Compliant solution Website Payments Pro Hosted Solution.

 

The module can be downloaded here, and instructions are provided in the bundled readme.

 

http://addons.oscommerce.com/info/8481

 

The module is primarily aimed for existing PayPal/Payflow Pro users who wish to switch to a PCI-Compliant card processing solution - but it's also for anyone wishing to switch from an existing card processing solution.

 

Please post any comments, feedback or challenges with this module in this thread, and we will aim to follow up as soon as we can.

 

Thanks,

 

Tin

Edited by PayPal_Tin

Share this post


Link to post
Share on other sites

Does this module replace the recurring profile modifications required from the previous pro mod? Also, the previous module had many changes to be made to several files to include the fmf and rp changes. I only see one file that requires comparing.


If the only tool you have is a hammer, all your problems look like nails

Share this post


Link to post
Share on other sites

Can this be adapted to CRELoaded? We have been looking for a module like this but for creloaded (aka loaded commerce).

 

Thanks,

Mike

Share this post


Link to post
Share on other sites

Tin i cant get this to work correctly

 

problems

 

incorrect values being reported to the store on amounts sold 1 orderd one database shows 5

some orders don't show at all in the shop back end

details of what the customer ordered don't show in paypal account

 

iv'e had to move back to the previous solution because this isn't working at all for me with just days to go

Share this post


Link to post
Share on other sites

The product works *OK* but the following need addressing before it can go onto production sites:

 

1: Stock doesn't update correctly.

2: Best sellers list doesn't appear to update at all.

3: Dumb "Continue" button with no link needs removing from the iFrame page.

4: MOST IMPORTANT: No email is generated for either the buyer or store owner.

 

Also the code needs tweaking to remove the vertical scroll bar from the iframe.

Share this post


Link to post
Share on other sites

Hi guys,

 

Sincere apologies - I was expecting email notifications for when new posts came in, and haven't been manually checking as much as I should have been.

 

@lysonperf - you have actually pointed out perhaps the main outstanding feature that currently doesn't existed in the Pro Hosted Solution - recurring payments (where PayPal automatically debits buyers based on a scheduled that you define) hasn't been built in yet - but it's in the pipeline. Please PM me your specific situation and use cases, and I will refer this to the appropriate people to see what we can get moving.

 

@@cheapo - I'm afraid that I'm not familiar with CRELoaded - but in terms of the actual PayPal product, I don't see why this cannot be harnessed. You can anaylse the code in the official module deliverable to see if it can be adapted easily.

 

@@rtuk - please PM me with more specific details about your setup and issues - including the version of osC you're using, what files you have customised, and more specific elaboration on each of your "problems".

 

@@Bordersbloke - as for rtuk, can you please provide details on your osC deployment, and also please confirm which browser(s) you have mainly tested with it (I'm thinking that it's Safari?).

 

Thanks,

 

Tin

Share this post


Link to post
Share on other sites

Hi,

 

An update module has been uploaded that addresses the iFrame scrollbar and missing confirmation emails.

 

We have not been able to replicate the missing orders or stock updates, so any additional information would be appreciated.

 

Thanks,

 

Tin

Share this post


Link to post
Share on other sites

Hi Tin,

 

I have managed to deal with scrollbar and button issues, but I just discovered bigger problem with the module, I don't know is it just me but here it goes-

 

When I add maximum stock quantity of any product to the basket it won't allow me to check out, it just drops me back to cart with a message "out of stock". It allows me to get to the Iframe only if there is at least one product left in stock.

 

Cheers,

Gints

Share this post


Link to post
Share on other sites

I found what the problem is.

 

Stock is subtracted in includes/modules/payment/paypal_hss.php and then after confirming order you should get to ext/modules/payment/paypal/checkout.php where you can make a payment, but that page has a code that checks stock levels, so if I had only one item in stock it got subtracted in previous step ( includes/modules/payment/paypal_hss.php) already so it throws you back to cart with out of stock message. To correct this remove the following code from ext/modules/payment/paypal/checkout.php

 

// Stock Check

$any_out_of_stock = false;

if (STOCK_CHECK == 'true') {

for ($i=0, $n=sizeof($order->products); $i<$n; $i++) {

if (tep_check_stock($order->products[$i]['id'], $order->products[$i]['qty'])) {

$any_out_of_stock = true;

}

}

 

// Out of Stock

if ( (STOCK_ALLOW_CHECKOUT != 'true') && ($any_out_of_stock == true) ) {

tep_redirect(tep_href_link(FILENAME_SHOPPING_CART));

}

}

 

 

Not very good job from PayPal, obviously not much testing have been done.

Share this post


Link to post
Share on other sites

@@blieznis - Thanks for the investigation and feedback.

 

We have posted an updated module that fixes the following:

 

- Email is now being sent when the IPN is received from PayPal

- Fixed stock issue

- Fixed cart not being cleared on osCommerce 2.2

- Fixed order status

 

We apologise for inconvenience caused, and totally appreciate the contribution from real-world users such as yourselves, which we hope will result in a better solution overall. No excuses for not trapping specific cases, but hopefully with your help, we can get any issues ironed out sooner rather than later.

 

Thanks,

 

Tin

Share this post


Link to post
Share on other sites

I have just downloaded this and installed to test the functionality. However I am getting a DNS error

 

The server at securepayments.paypal.com can't be found, because the DNS lookup failed

 

I am testing the site using a non https domain so suspect this is the issue. But surely the code should work?

Share this post


Link to post
Share on other sites

Dears,

We install your module.

when paypal HSS is not successful , our stock have issue from admin , we install QTpro module.

we can see Sick products alert on admin.

would you please give your suggestion asap?

 

 

Best Regards,

Share this post


Link to post
Share on other sites

having trouble getting this to work, i get to the checkout_payment page and select the credit card option, click continue and it takes me straight to the confirmation page without even taking card details never mind processing them. Any ideas or information i can give you to help figure out the problem?


Scott

Share this post


Link to post
Share on other sites

Sorry I also PM you before finding this thread.

 

 

In version 2.2:

 

The only issue that I see is that the cart resets, once a customers visits the new checkout page and then either refreshes the page or uses the back button. The cart reset needs to be made via the IPN or at the checkout success page in my view. Any chance of an update for this?

Share this post


Link to post
Share on other sites

We have also had:

 

PayPal IPN Verified [Completed (Unverified; £6.99); PayPal transaction value (6.99) does not match order value (6.98);

 

Any ideas why paypal would not use the order total value?

Share this post


Link to post
Share on other sites

There are a few issues here....

 

in 2.2.

 

The cart reset happens in after_process() in includes/modules/payment/paypay_hss.php line 360:

 

$cart->reset(true);

 

Remove this and the cart will never empty. So not recommended at the moment :)

 

Stock is updated in before_process() so the qty field will be adjusted if they pay or not.

 

This to me seems all wrong. Wouldn't it be better to update stock and empty the customers basket when the IPN comes back from paypal?

Share this post


Link to post
Share on other sites

Just trying to get this to work on our (modified in various ways) 2.2 RC2a.

 

(1) First problem: the replacement orders.php simply does not work as supplied in our 2.2. The error is calls to tep_hide_session_id which in our set-up at least is not in the html_output functions for admin, only for catalog. Fixed by adding that function to admin.

 

(2) Now struggling to discover all the bits of info needed to set up the module. Is there a guide somewhere?

 

(3) Another oddity: trying the checkout with module not configured I get forwarded to checkout.php with params that look like

 

.......checkout.php?error=true?osCsid=95ahrhqa91qphbddgsgk98jcg5

 

which is a syntax error. Presumably ythis should not happen?

 

(4) I wonder slightly about the structure of orders.php. Currently there is a possible error message "The order cannot be completed: please contact the merchant" - but this is triggered ony be PROJECT_VERSION not being 2.2 or 2.3 and NOT by the "error=true" param. Possibly this is what is intended, but it seems odd.

Share this post


Link to post
Share on other sites

Further testing: I totally agree with goring_gap with our 2.2 RC2a. Currently the cart resets at checkout conformation (as usual) - but that is before the added paypal payment page. If (for instance) the customer finds that their billing address does not match the credit card then they are directed to return to the delivery page - but their cart is empty so they would have to start shopping all over again. (Or more likely go instead to a site that works sensibly.)

 

This seriously needs updating so that at the least the cart is not emptied until a complete purchase has definitely occurred.

 

Is this rteally how Paypal imagine this should work?

Share this post


Link to post
Share on other sites

This seriously needs updating so that at the least the cart is not emptied until a complete purchase has definitely occurred.

Actually on further thought perhpas recording provisional purposes and emptying the cart is sensible: if the customer fails to pay via paypal then at least we can follow up the purtchase. But the issue of being directed back if the address does not match *is* a problem.

Share this post


Link to post
Share on other sites

So I have this apparently working at least for a few basic tests.

 

I do need to adjust it however: Paypal requires a "state" field associated with a CC, although it does not verify this(!) and the advice is just to duplicate the city if necessary.

 

We don't collect "state" from customers. I can't find exactly where in this system the info for Paypal is assembled - I'd like to interrupt it at the cruicial point and copy the city in to the state field if the latter is empty. Can anyone (the author?) point me at the correct piece of code?

 

I'd be grateful for advice.

Share this post


Link to post
Share on other sites

Dears,

Thanks for your module.

I install two site , but I both get this error:

 

www.mydomain.com/ext/modules/payment/paypal/checkout.php?error=true

 

 

would you please help to give your suggestion?

 

thanks & Best Regards,

Sunrise99

Share this post


Link to post
Share on other sites

Further update on this solution:

 

As installed, the "refund" button does not work when viewing an order in admin if "admin" is not installed inside "catalog". The culprit is line 16 of admin/ext/modules/payment/paypal/paypal_hss.php:

 

require('../includes/modules/payment/paypal_hss.php');

 

It should presumably be coded as:

 

require(DIR_FS_CATALOG . '/includes/modules/payment/paypal_hss.php');

Share this post


Link to post
Share on other sites

Agghh! Just noted the error above: of course, there should not be a slash before "uncludes".

 

require(DIR_FS_CATALOG . 'includes/modules/payment/paypal_hss.php');

Share this post


Link to post
Share on other sites

Pretty much have this OK now. Two points:

 

* I currently have no entries in the config where it asks for "Payflow User" and "Payflow Password". It seems tto be OK without them?

 

* I'm unsure how this interacts with 3D-secure. Does this happen automatically once one has signed up for ardinal? The Cardinal people keep supplying config info that does not match up with the options available in this contribution. My suspicion is that none of it is needed. (Unless, that is, some of that info is meant to go in the payflow user and pw entries mentioned above.)

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

×