Using ZenCart 1.3.8, I have stopped receiving notification of orders made using PayPal, nor are any orders recorded in my store's database; payment is, however, being taken by PayPal.
I began using 1.3.8 in Autumn 2008 after a successful upgrade, and have had a number of successful transactions after the upgrade. The last successful order at my store was placed on 2009-09-12. The first failed order (that I can find) was placed on 2009-10-14. I am completely unaware of any changes made to my store, either by modifying PHP code or through the admin account during that period. (A search for files with modification dates in that range reveals no such files, giving some conformation that no file changes were made.) I am also unaware of any changes that might have been made at my hosting company (Bluehost) during that time that might have affected a ZenCart store.
The symptoms are: As an order is being developed, rows are stored in the customers_basket table. When the customer clicks on the order confirmation button, he/she is taken to the PayPal login page. Upon successful login, PayPal requests payment of an amount that does not include the shipping amount (which is something that may or may not have started concurrent with the primary problem of this post). Upon completion of the PayPal transaction, the customer is taken back to my store's order completion page, which reports an order number that is the order number of the last successfully-completed transaction (the September 12 transaction).
I do not get email notification of a new order. The orders table does not have any record of the order, but the customers_basket table rows corresponding to the order have been removed. There are no rows in any of the paypal* tables that are related to the order.
I've searched through the forums and found lots of interesting information about similar problems, but none of the suggested fixes seem to have any effect. In particular, I've ensured that my PayPal payment module information is correct -- My Instant Payment Notification Preferences URL is set to:
http://{my-store-name}.com/ipn_main_handler.php, and my Automatic Return URL is set to:
http://{my-store-name}.com/index.php?main_page=checkout_process as instructed on the PayPal IPN - Website Payments Standard admin page.
I've turned debug mode On and gotten logs, but my inspection of the logs hasn't helped me figure out what's going on. There are a few anomalies that I've spotted, though:
1) In a log containing "Keys for submission: Array", an array entry with the key [no_shipping] has the value 1. Could this be causing PayPal not to include shipping charges?
2) Near the end of the third log file, I see "IPN NOTICE :: Could not find matched txn_id record in DB. Therefore is new to us."
3) The last entry of the third log file reads "IPN WARNING :: Currency/Amount Mismatch. Details: PayPal email address = {my-email-address} | mc_currency = USD | submitted_currency = USD | mc_gross = 4.15 | converted_amound = 9.10 | order_amount = 9.1". I presume that this is caused by the shipping-amount problem mentioned above.
I can easily make the log files available upon request.
Any and all help in finding this problem will be greatly appreciated, as this store belongs to a 501(c)(3) charity that is in urgent need of income
Thanks!





