Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Sign in to follow this  
dynamoeffects

PayPal WPP Direct Payments & Express Checkout Support

Recommended Posts

Interestingly, there aren't any duplicates in admin/orders only in paypal, thought this might help in pinning it down!

 

Cheers

 

Jo

 

 

 

Hi,

 

I think I fixed the admin/orders (although I've not tested it properly yet), you were right about that function tep_hide_session_id thing, it was in fact missing from admin/includes/functions/html_output. I didn't know how to put it back in there myself but I found another copy of the file on an old backup that still had it there and swapped it over.

 

I'm going to carry on working through your advice on the paypal duplications now, my husbands got somehting called Araxis and I think i can compare codes with it if it does what I think it does!

 

Best wishes,

 

Jo

Share this post


Link to post
Share on other sites

Hi Brian,

 

I've installed your script and it was all running perfectly until a couple of days ago and now all of a sudden its decided that it cant find the api certificate

 

Your Website Payments Pro API certificate could not be found. Please check the location in your administration section.

 

I've tried changing the API certificate and all the details over and over...I don't understand how all of a sudden it decides its not going to work, any advice on this would be invaluable and is desperately needed.

 

Please Brian, anyone....help

 

Regards,

 

Mark

Share this post


Link to post
Share on other sites
@fruitbat: Typically the problem with getting charged twice is an error caused by one of the customizations that causes the checkout_process.php script to execute twice. The only way to figure out the cause is to slowly work your way through it by adding die(); statements down the script until you find where it's reloading the script.

@ both fruitbat and graysonhobby: The error you're receiving in the admin has to do with missing a function in the admin/includes/functions/html_output.php file. Make sure that the function tep_hide_session_id() exists there. It's strange that you both experienced it simultaneously, but this contribution doesn't change that function nor the file that it's contained in, so I really don't know what's going on there. Can you both post the top of your admin/orders.php file down to where the first PayPal Pro modification ends?

 

 

 

<?php
/*
 $Id: orders.php,v 1.112 2003/06/29 22:50:52 hpdl Exp $

 osCommerce, Open Source E-Commerce Solutions
 http://www.oscommerce.com

 Copyright (c) 2003 osCommerce

 Released under the GNU General Public License
*/

 require('includes/application_top.php');

//---PayPal WPP Modification START ---//
 //Since the admin's configure.php file is STILL missing defines
 include(DIR_FS_DOCUMENT_ROOT . DIR_WS_INCLUDES . 'configure.php');

 include(DIR_WS_CLASSES . 'order.php');

 require(DIR_WS_CLASSES . 'currencies.php');
 $currencies = new currencies();

 include(DIR_WS_INCLUDES . 'paypal_wpp/paypal_wpp_include.php');
 $paypal_wpp = new paypal_wpp_admin;
//---PayPal WPP Modification END ---//

 

Can you tell me how to get this working so I can refund money.

 

 

 

Also, sent you a donation. This is making me money, the least is offer you a bit of money for your time. I know I could never write this code

 

Thanks

Share this post


Link to post
Share on other sites

Hi, I'm about to try this out but my paypal sandbox said I should use the signature. Quote "Only download a certificate if really necessary. In most cases, you can use an API Signature". I don't even see a link to download the a signature. Can anyone help me with this? If this thing works for me I would be glad to contribute to the brains behind the work.

Share this post


Link to post
Share on other sites
Hi Brian,

 

I've installed your script and it was all running perfectly until a couple of days ago and now all of a sudden its decided that it cant find the api certificate

 

Your Website Payments Pro API certificate could not be found. Please check the location in your administration section.

 

I've tried changing the API certificate and all the details over and over...I don't understand how all of a sudden it decides its not going to work, any advice on this would be invaluable and is desperately needed.

 

Please Brian, anyone....help

 

Regards,

 

Mark

 

 

Not to worry...I've sorted out the problem and it's working perfect again, I think someone had decided to mess about in the admin section and add some text into the location, but I just couldn't see it.

 

Working great again. Thanks

Share this post


Link to post
Share on other sites
<?php
/*
  $Id: orders.php,v 1.112 2003/06/29 22:50:52 hpdl Exp $

  osCommerce, Open Source E-Commerce Solutions
  http://www.oscommerce.com

  Copyright (c) 2003 osCommerce

  Released under the GNU General Public License
*/

  require('includes/application_top.php');

//---PayPal WPP Modification START ---//
  //Since the admin's configure.php file is STILL missing defines
  include(DIR_FS_DOCUMENT_ROOT . DIR_WS_INCLUDES . 'configure.php');

  include(DIR_WS_CLASSES . 'order.php');

  require(DIR_WS_CLASSES . 'currencies.php');
  $currencies = new currencies();

  include(DIR_WS_INCLUDES . 'paypal_wpp/paypal_wpp_include.php');
  $paypal_wpp = new paypal_wpp_admin;
//---PayPal WPP Modification END ---//

 

Can you tell me how to get this working so I can refund money.

 

 

 

Also, sent you a donation. This is making me money, the least is offer you a bit of money for your time. I know I could never write this code

 

Thanks

 

I appreciate the donation, thanks! I think the problem is that you may have copied over too much because the hide_session_id() function comes in RC1 or RC2. You can either delete those lines in admin/orders.php or add this function to your /admin/includes/functions/html_output.php file:

 

  function tep_hide_session_id() {
$string = '';

if (defined('SID') && tep_not_null(SID)) {
  $string = tep_draw_hidden_field(tep_session_name(), tep_session_id());
}

return $string;
 }


Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail.

Share this post


Link to post
Share on other sites

@kebo: You need a certificate. Following the instructions in the Readme as it will point you to where to go within your PayPal account.


Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail.

Share this post


Link to post
Share on other sites
@kebo: You need a certificate. Following the instructions in the Readme as it will point you to where to go within your PayPal account.

 

Ok I got it.

I'm testing in my home environment using xampp and I can't get away from the cURL error message when click the paypal button. What do I put in for the cURL in the admin setup?

 

I did send you that contribution. Nice work!

 

Thanks

Share this post


Link to post
Share on other sites

Wow, thanks! I've received more donations this week than in the last year!

 

To use cURL with xampp, I think you need to install the windows version of cURL on your system. I'm not 100% on that, though, as I don't have much experience with xampp. This module is well tested and if it's installed correctly, it should work fine on the production server.


Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail.

Share this post


Link to post
Share on other sites

I got the cURL thing but it looks a bit complicated. My store is new and not in service anyway so I will give it a try live. My site is hosted at bluehost, don't know if they use proxy server. I will check and see if I get the error.

Share this post


Link to post
Share on other sites

Brian,

 

I've installed 1.01, and whenever I click the EC checkout button I receive the following error:

 

Fatal error: Call to undefined function: ec_step1() in /home/content/store/html/includes/paypal_wpp/paypal_wpp_include.php on line 239

 

The functions are defined in /includes/classes/payment.php

Share this post


Link to post
Share on other sites

I have the 0.9.2 version of this contribution. It works great, thanks.

 

We now need to add the ability to download a trial version of some software, then let the customer pay for a activation code that would be emailed to them.

 

I tried to install the Free Download FX contribution, but it is setup to work with PayPal IPN. Does anyone know how to get this to work with WPP?

 

Or is there an easier way to accomplish the activation code email?

 

Thanks.

Share this post


Link to post
Share on other sites
Guest

Hello, I installed this module after I put all of the credit card information and confirmed the purchase I am getting the following error:

 

"Your store has a bug in checkout_process.php that prevents this module from working. Please read the Troubleshooting section of the READ_ME.htm that came with the module for more information"

 

I have looked in the troubleshooting section of the readme document and it states that this is an error for OSC that was fixed in RC1, I have installed oscommerce-2.2rc2a and I am still getting the same error.

 

Also when I click on the paypal express button I get the following error :

 

 

Fatal error: Cannot redeclare class payment in /home/content/t/o/y/toyfreaks/html/catalog/includes/classes/payment.php on line 13

 

I have been trying to get some form of paypal with a few differant modules for the last two weeks and this is driving me up a wall!!!

 

Can you please help me get this resolved?

 

thank you

Share this post


Link to post
Share on other sites

@oschelp: If those methods have been added to the payment class, then the only thing I can think of is that the actual module isn't installed by enabling it through your admin, or you have someone else's paypal pro module installed.

 

@nmritten: I've never used that contribution, so I don't have any idea. Try in the support forum for that specific contribution.

 

@wileycoyote76: That's odd, make sure that the modification in checkout_process.php exists anyway. Your second error is caused by a second include(DIR_WS_CLASSES . 'payment.php'); statement somewhere. Find any instances of those within your application_top.php file and change them to require_once(DIR_WS_CLASSES . 'payment.php');


Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail.

Share this post


Link to post
Share on other sites

Brian,

 

I just installed your updated version and it works great. We decided to do our download purchases more directly. Thanks! Great contrib.!

 

Nikki

Share this post


Link to post
Share on other sites
Guest
@oschelp: If those methods have been added to the payment class, then the only thing I can think of is that the actual module isn't installed by enabling it through your admin, or you have someone else's paypal pro module installed.

 

@nmritten: I've never used that contribution, so I don't have any idea. Try in the support forum for that specific contribution.

 

@wileycoyote76: That's odd, make sure that the modification in checkout_process.php exists anyway. Your second error is caused by a second include(DIR_WS_CLASSES . 'payment.php'); statement somewhere. Find any instances of those within your application_top.php file and change them to require_once(DIR_WS_CLASSES . 'payment.php');

 

 

Well I am no longer getting the first error, now when I click on confirm order it starts processing and then after about 30 seconds it comes to a "page could not be displayed" page.

 

as for the second error "cannot redirect" are there more then one file tha tI need to look in to check for the duplicate or is it in one specific page?

Share this post


Link to post
Share on other sites

I just upgraded my site to the 2.2 RC2 and it already has the Paypal Express Checkout built in, but there paypal direct payment sucks. I want to used Dynamo's version cause it rocks and used it before.

 

Question is if I want to install this MOD without the express checkout do I still need to edit all the files? Or can I just upload the module, language, and includes directory?

Share this post


Link to post
Share on other sites

@wileycoyote76: If you're a GoDaddy customer, you need to set a proxy address in the module settings. That information can be found in the readme. If not, it sounds like your host doesn't allow outgoing connections with cURL and you should contact them.

 

@mrossi: With this module, Express Checkout is integrated with Direct Payment. You can, however, turn it off in the admin and not do the Express Checkout-related installation steps, which are just not placing the button on a few pages.


Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail.

Share this post


Link to post
Share on other sites

Hi,

 

I am testing in Paypal's Sandbox environment, when I test doing an order from the cart the site hangs when I hit "Confirm Order" on the 'checkout_confirmation.php' page. Sometimes the order will go thru successfully but most of the time I get a "Page not found". The file in question seems to be 'checkout_process.php' which takes a long time to process regardless if it is a successful outcome or not.

 

Also when I view the shopping cart when it is empty the page is all mangled?

 

All help is greatly appreciated, and Dynamo thank you for the contribution!

Share this post


Link to post
Share on other sites
Hi,

 

I am testing in Paypal's Sandbox environment, when I test doing an order from the cart the site hangs when I hit "Confirm Order" on the 'checkout_confirmation.php' page. Sometimes the order will go thru successfully but most of the time I get a "Page not found". The file in question seems to be 'checkout_process.php' which takes a long time to process regardless if it is a successful outcome or not.

 

Also when I view the shopping cart when it is empty the page is all mangled?

 

All help is greatly appreciated, and Dynamo thank you for the contribution!

 

and BTW, even though I am getting a "page not found" from osCommerce the Paypal Sandbox is getting all of the orders. I just need to make sure the Confirmation Page is diplayed if the order goes through?

Share this post


Link to post
Share on other sites

Are you using a shared SSL certificate? It could be that when it's redirecting back to your store, the URL is incorrect.

 

As for the Sandbox requiring a long time to process transactions, that's pretty typical behavior. The sandbox environment is severely underpowered and one of the delays in finishing this contribution was having to stop and wait for the Sandbox to start responding again.


Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail.

Share this post


Link to post
Share on other sites
Are you using a shared SSL certificate? It could be that when it's redirecting back to your store, the URL is incorrect.

 

As for the Sandbox requiring a long time to process transactions, that's pretty typical behavior. The sandbox environment is severely underpowered and one of the delays in finishing this contribution was having to stop and wait for the Sandbox to start responding again.

 

I bought a private SSL Cert. Is there any setting I can adjust to allow for paypal to take as much as needed before IE throws a "Page not found" ?

 

Also here is one of the Paypal Error Dunps

 

In function: before_process() - Direct Payment
Did first contact attempt return error? Yes
---------------------------------------------------------------------
-------------------------------DP_DUMP-------------------------------
------------This is the information that was sent to PayPal----------
---------------------------------------------------------------------
[?xml version="1.0" encoding="utf-8"?]
[soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"]
[soap:Header]
  [RequesterCredentials xmlns="urn:ebay:api:PayPalAPI"]
 [Credentials xmlns="urn:ebay:apis:eBLBaseComponents"]
   [Username]matt.c_1204210887_biz_api1.gmail.com[/Username]
   [Password]E3MYXXXXXXXXGMJD[/Password]
   [Subject][/Subject]
 [/Credentials]
  [/RequesterCredentials]
[/soap:Header]
[soap:Body]
  [DoDirectPaymentReq xmlns="urn:ebay:api:PayPalAPI"]
 [DoDirectPaymentRequest]
   [Version xmlns="urn:ebay:apis:eBLBaseComponents"]2.0[/Version]
   [DoDirectPaymentRequestDetails xmlns="urn:ebay:apis:eBLBaseComponents"]
	 [PaymentAction]Sale[/PaymentAction]
	 [PaymentDetails]
	   [OrderTotal currencyID="USD"]44.99[/OrderTotal]
	   [OrderDescription]Order placed on March 3, 2008, 2:07 pm by Test Account (ID: 3)[/OrderDescription]
	   [ItemTotal currencyID="USD"]39.99[/ItemTotal]
	   [ShippingTotal currencyID="USD"]5[/ShippingTotal]
	   [HandlingTotal currencyID="USD"][/HandlingTotal]
	   [TaxTotal currencyID="USD"]0[/TaxTotal]
	   [Custom]Phone: 5555555555 -- Email: matt.c_1203685251_per@gmail.com[/Custom]
	   [InvoiceID][/InvoiceID]
	   [NotifyURL][/NotifyURL]
	   [ButtonSource][/ButtonSource]
	   [ShipToAddress]
		 [Name]Test Account[/Name]
		 [Street1]555 Test Way[/Street1]
		 [Street2][/Street2]
		 [CityName]Marytwon[/CityName]
		 [StateOrProvince]NJ[/StateOrProvince]
		 [PostalCode]08054[/PostalCode]
		 [Country]US[/Country]
	   [/ShipToAddress]
	   [PaymentDetailsItem][Name]Microsoft IntelliMouse Pro[/Name][Amount currencyID="USD"]39.99[/Amount][Number]3 (MSIMPRO)[/Number][Quantity]1[/Quantity][/PaymentDetailsItem]
	 [/PaymentDetails]
	 [CreditCard]
	   [CardOwner]
		 [Payer]matt.c_1203685251_per@gmail.com[/Payer]
		 [PayerName]
		 [FirstName]Test[/FirstName]
		 [LastName]Account[/LastName]
		 [/PayerName]
		 [Address]
		   [Street1]555 Test Way[/Street1]
		   [Street2][/Street2]
		   [CityName]Marytwon[/CityName]
		   [StateOrProvince]NJ[/StateOrProvince]
		   [PostalCode]08054[/PostalCode]
		   [Country]US[/Country]
		 [/Address]
	   [/CardOwner]
	   [CreditCardType]Visa[/CreditCardType]
	   [CreditCardNumber]4111111111111111[/CreditCardNumber]
	   [StartMonth][/StartMonth]
	   [StartYear][/StartYear]
	   [IssueNumber][/IssueNumber]
	   [ExpMonth]08[/ExpMonth]
	   [ExpYear]2011[/ExpYear]
	   [CVV2][/CVV2]
	 [/CreditCard]
	 [IPAddress]198.XXX.18.XX[/IPAddress]
	 [MerchantSessionId]b0c84e29c05b0432d7e97f0055d427e0[/MerchantSessionId]
   [/DoDirectPaymentRequestDetails]
 [/DoDirectPaymentRequest]
  [/DoDirectPaymentReq]
[/soap:Body]
[/soap:Envelope]---------------------------------------------------------------------
-------------------------------FINAL_REQ-----------------------------
-------------------This is the response from PayPal------------------
---------------------------------------------------------------------
Array
(
  [Security] =>
  [RequesterCredentials] => Array
   (
	   [0] => Array
		   (
			   [Credentials] => Array
				   (
					   [0] => Array
						   (
							   [Username] =>
							   [Password] =>
							   [Subject] =>
						   )

				   )

		   )

   )

  [DoDirectPaymentResponse] => Array
   (
	   [0] => Array
		   (
			   [Timestamp] => 2008-03-03T20:08:04Z
			   [Ack] => Failure
			   [CorrelationID] => 3e2992f039124
			   [Errors] => Array
				   (
					   [0] => Array
						   (
							   [ShortMessage] => Invalid Data
							   [LongMessage] => This transaction cannot be processed without a Credit Card Verification number.
							   [ErrorCode] => 10748
							   [SeverityCode] => Error
						   )

				   )

			   [Version] => 2.000000
			   [Build] => 520013
			   [Amount] => 44.99
		   )

   )

)


---------------------------------------------------------------------
---------------------------------TS_REQ------------------------------
--------Results of the transaction search if it was executed---------
---------------------------------------------------------------------

Edited by qbawler311

Share this post


Link to post
Share on other sites

The error can be taken literally. Without a CVV2 number, the transaction will fail. Also, 4111111111111111 can't be used in the sandbox. Use the credit card number that's automatically entered when your module is set to Sandbox mode.


Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail.

Share this post


Link to post
Share on other sites
The error can be taken literally. Without a CVV2 number, the transaction will fail. Also, 4111111111111111 can't be used in the sandbox. Use the credit card number that's automatically entered when your module is set to Sandbox mode.

 

dynamoeffects, thanks for your help. The Sandbox Test credit card given to me has an expiration date later then the drop-down box on the checkout page provides ( '2018' ) how do I change the drop-down box dates on osCommerce? I am having trouble finding this code.

Share this post


Link to post
Share on other sites

If you're using this contribution, a test credit card number is automatically entered in the credit card text field on the checkout_payment.php page if you're in Sandbox mode. It will work for everyone. Just use that one.

 

What's the date they give you for an expiration date?


Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail.

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  

×