Jump to content
Sign in to follow this  
devosc

PayPal_Shopping_Cart_IPN

Recommended Posts

What code are you using in the admin?


"Any fool can know. The point is to understand." -- Albert Einstein

Share this post


Link to post
Share on other sites

Code for what? The currency? I have to use CDA and USD. Also, all my currencies have a suffix - Can that be a probem?

 

 

I have to use CDA in the admin, otherwise all my Canadian Dollar price fall to 0

Share this post


Link to post
Share on other sites

The Canadian Currency code configured in the admin. Which might be a problem due to your exisitng products, and even moreso if you create a new currency rather than overwriting the original one.

 

Try configuring the 'CAD' in the admin, and creating a new product and test purchasing that product.

 

The last resort (reverting everything back to 'CDA'), is changing line 209 of modules/payment/paypal.php from

tep_draw_hidden_field('currency_code', $my_currency);

to

tep_draw_hidden_field('currency_code', ($my_currency == 'CDA' ) ? 'CAD' : $my_currency);

AND also in that file change line 88 from

if (!in_array($this->_currency, array('CAD', 'EUR', 'GBP', 'JPY', 'USD'))) {

to

if (!in_array($this->_currency, array('CDA', 'EUR', 'GBP', 'JPY', 'USD'))) {

 

But if I can recall you had a currency problem in the previous version, how did you resolve that one?


"Any fool can know. The point is to understand." -- Albert Einstein

Share this post


Link to post
Share on other sites

The problem was writing the currency to Paypal, which got resolved when I changed the language default to CDA. But that screwed up the shopping cart process, as I mentioned earlier - If I start shopping in US dollars, it always resorts to Can dollars when I check out.

 

The only way I had to get rid of that was to go in config and selct 'false' for defaultlanguage currency.

 

Let me try a new product, we'll see.

Share this post


Link to post
Share on other sites

No, that does not work. I set the currency to CAD in admin, then listed a new product.

 

The product is at 0 - no dollar sign,no decimals, no suffix.

 

Now, if I try to screw up the code on the US currency in admin (from USD to XYZ), it does not change anything! The prices are posted normally - How weird!

Share this post


Link to post
Share on other sites

OK, we have everything - forgot to check the CAD as the default currency - that fixed everything EXCEPT....

 

The Paypal screen shows the purchases, the shipping, but not the taxes!

 

Any idea?

Share this post


Link to post
Share on other sites

Which Shopping Cart method are you using, itemized or aggregate?


"Any fool can know. The point is to understand." -- Albert Einstein

Share this post


Link to post
Share on other sites

In the US if the customer is NOT in the same zone (or particular ones) as the store then they aren't charged tax - someone else had this problem with Canadian canucks (can't remember what they called it). Dunno right now....


"Any fool can know. The point is to understand." -- Albert Einstein

Share this post


Link to post
Share on other sites

Greg,

I took the plunge and installed v2.1. Everything seems better but...

I did a test order through paypal - I didnt get an osc email but in admin, I am now getting names and $ amounts but when I go to 'edit' or view the order I get this error message.

 

Is the error in my database? Can you point me in the right direction of what I might have done wrong please.

 

1054 - Unknown column 'products_options_id' in 'field list'

 

select products_options_id, products_options, products_options_values_id, products_options_values, options_values_price, price_prefix from orders_products_attributes where orders_id = '33' and orders_products_id = '32'

 

[TEP STOP]

 

Thanks, I think I am almost there now :-)

Share this post


Link to post
Share on other sites

Hi Deb,

 

Did you perform the ALTER statements in Step 1 of the docs?

 

Also you mentioned in the admin which is the wrong place for this error to be occuring, it should of occured in catalog/includes/classes/order.php and not catalog/admin/includes/order.php.


"Any fool can know. The point is to understand." -- Albert Einstein

Share this post


Link to post
Share on other sites

you were right greg - good call. I had uploaded it to the wrong directory. That is fixed now. It seems I made a few errors. I have fixed a couple of them but am stuck here

 

I have some clues. On my checkout_confirmation in the store my payment screen now says Paypal Instant Payment Notifications.....(not good)

 

I thought perhaps my filenames.php was incorrect and so have re-done it, but it didnt solve it.

 

the main problem - on my admin_orders.php when I go to view the order I have fixed a couple of errors but I am stuck on

Warning: open_basedir restriction in effect. File is in wrong directory in /usr/local/psa/home/vhosts/dogshoppe.net/httpdocs/includes/modules/payment/paypal/admin_orders.php on line 19

When I check on admin_orders.php on line 19, it is referencing database_tables.php

I have double checked bother database_tables.php in includes and catalog/includes and have re-uploaded them, but this error still exists.

 

I am sorry that I am being so brain dead here - you are very kind to help out.

Share this post


Link to post
Share on other sites

Hi Deb,

 

This contrib now maintains it's own database_tables.php file in the modules/payment/paypal directory.

 

In catalog/includes/modules/payment/paypal/admin_orders.php line 19 change

require_once('database_tables.php');

to

require_once(DIR_FS_CATALOG_MODULES . 'payment/paypal/database_tables.php');

 

The "Paypal Instant Payment Notifications" Heading Title should not occur in the catalog side. Have you made any changes to the catalog/includes/languages/english/modules/payment/paypal.php file? You might need to provided a screen shot of where it is occuring, is it where it is supposed to say which payment method is being used?


"Any fool can know. The point is to understand." -- Albert Einstein

Share this post


Link to post
Share on other sites

hi,

 

an anyone help me with this error;

 

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

 

Fatal error: Call to a member function on a non-object in C:\Inetpub\wwwroot\testsite\catalog\includes\modules\payment\paypal.php on line 211

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

 

i have tried instruction in previuos posts but without success.

 

i am using the latest PayPal_Shopping_Cart_IPN contrib with the CVS snapshot of 4/21/2004.

 

thanks

Share this post


Link to post
Share on other sites

***MAJOR PROBLEM***

 

Hello -

 

I have upgraded to the 2.2 version of the PayPal IPN.

 

Everything seemed to go okay. I had to install this on a live site with the existing IPN in place. I restarted the PayPal IPN and it worked fine. Or so it seemed.

 

I placed an order and it took me to PayPal and that end worked, however it is not returning ANYTHING to the Admin screens. In fact, there were more orders after my test order and all any of them show is "No IPN history available" and none of the paypal info is listed in the paypal payment info (on OSCommerce).

 

Major, major problem since I won't know if someone has paid unless I take many extra steps. I upgraded to 2.2 hoping it would solve some of the errors I had with the previous version and now it's worse off.

 

Also, I had 248 orders that were previously placed (via the original PayPal IPN). I exported them, then reuploaded them. when I checked PHPMyAdmin it showed all of the orders but none of the recent orders. I also need to have these displayed in the OSCommerce admin section.

 

Any advice would be greatly appreciated since this is still a live site that cannot afford to be shut down.

 

Thank you -

 

Michael

Share this post


Link to post
Share on other sites

bookseller, this contrib will only work with MS2-2.2 (out of the box).

 

Michael, dude in the FAQ Comments About Upgrading there was a comment about if you 'really' wanted to keep your old ipn info - basically a 'proper' upgrade script would need to be written so as to import your old data in the new structure which takes time to write.

 

Out of interest did you set the paypal auto-increment to one above your previous highest value.

 

The difference between the old 2.0 to 2.1 is that the values are store directly in the table and no longer have an associative mapping, the only field that would of breaked significantly is the payment_date field since it is now translated into a MySQL time-stamp.


"Any fool can know. The point is to understand." -- Albert Einstein

Share this post


Link to post
Share on other sites

hi -

 

yeah, I saw the FAQ and understood about the needed script.

 

I'm okay with that since the orders still appear in the regualr "orders" section.

 

The thing that i'm concerned about is the fact that nothing is displayed in the PayPal IPN section along with the fact that under "orders" when you click "edit" it'll say PayPal Instant Payment Notification however all of the fields related to this are not displayed.

 

Which is what my original question was sort of about -- what might be causing the info not to display under both the Orders and PayPal IPN links?

 

I checked in triplicate to make sure all code was there, which it is. Reuploaded everything too...

 

Thanks!

 

Michael

Share this post


Link to post
Share on other sites

Hey again -

 

to adjust the auto-increment would I do that in just the "paypal" table or in another table (i.e. "paypal_ipn")

 

Also, The upgrade I did was from version 1.5 to 2.2. on OSC 2.2 (or 2+). are there major changes between the PayPal shopping cart 1.5 to 2.2?

 

thanks again,

 

Michael

Share this post


Link to post
Share on other sites

Hi Michael,

 

Look in the orders db table find the highest value of the paypal_ipn_id, now add one and set this value as the the next auto-increment value in the paypal db table.

 

Try the IPN Test Panel, and see what happens (if you've previously used it before reme,ber to change the txn_id field to be a unique id).

 

In modules/payment/paypal/ipn.php in the debug_email() function change

if(count($debug) > 0) {

to

if(count($this->_debug_error) > 0) {

This should get the debug email going.

I'm working on an update for 2.1, it will be a very easy upgrade, trying to refine the checkout process, no db changes etc, so will be a straight upgrade.


"Any fool can know. The point is to understand." -- Albert Einstein

Share this post


Link to post
Share on other sites

Greetings:

 

In the home stretch...

 

However, after completing a live PayPal transaction the order status is not changing. It stays as Pending PayPal Notification, but I have it set to change to Processing. Additionally nothing is being recorded in PayPal IPN. Everything works fine in test mode with the IPN tester thingy. Any advice would be much appreciated.

 

Many Thanks,

Mike

Share this post


Link to post
Share on other sites

Hi -

 

okay, ran the test.

 

screen.gif

 

here's what I got under "PayPal IPN"

 

when I click the "Orders" button I get an error message "Error! Order does not exist"

 

When I go to the actual "Orders" section and click "edit" here's what's displayed:

 

screen1.gif

 

Nothing there.

 

It's at least showing that there was a PayPal payment made, however the fields are not filled out in either section.

 

When I am in the "Orders" section and do a sort by 'status' (via the dropdown menu) I looked at the "Pending PayPal Notification". The orders that were made through PayPal didn't show. However, just by doing "Pending" they are.

 

Under "PayPal IPN" when I do a sort by the Payment Status dropdown the only thing that is displayed is the test record. When I select any other options nothing is displayed.

 

Is there something I might have missed?

 

Also, would some of the problems be related to any of the Session settings?

 

Thanks for your time -

 

Michael

Share this post


Link to post
Share on other sites

Yes exactly, I was just searching these forums for this exact issue,

I have set up downloads to accept through the ipn upon processing. However like the above post my IPN doesnt send back, in test ot live,.

I too get that error saying doesnt exist.

This also being unrelated. but if I from admin said to the ipn process as being processed , then why doesnt the download link become available?

 

thanks

Share this post


Link to post
Share on other sites

Ok, v2.2 has just been uploaded, please test it thoroughly to suit your needs.

 

There should now only be 3 paypal related tables, tables starting with 'paypal_ipn' are deprecated.

 

Try the IPN Test Panel first, there are some instructions.

 

The reason why the IPN was not mapping back to the order in the above picture is because there was no associated order. You can verify this by looking in the db 'orders' table and noting the paypal_ipn_id for that order, now match this id to the one in the db 'paypal' table.

 

I've tested v2.2 as much as I care to before uploading including testing a downloadable product and all seemed well. You will now at least get the IPN debug emails to help identify any problems.

 

The admin/store session settings will not have any effect in processing the IPN.


"Any fool can know. The point is to understand." -- Albert Einstein

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

×