Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

[Contribution]Paypal IPN - Devosc


devosc

Recommended Posts

Try starting a fresh with a new order and see what happens (you shouldn't get a duplicate since each? transaction signature is unique), also check your osC Admin PayPal Payment config settings, they should be something like:

 

The 'Set Order Status' is what is used once the IPN is processed (successfully, e.g Payment is 'Completed').

 

 

I am going to restore a db first before for my previous edits using phpmyadmin deleting some orders ( Mabe my fat thumbs had somthing to do with it ), just to see what happens. I had no idea after reading through all of the installation doc that you needed to put the transaction id in both coustom & transaction id together.

 

Paypal Config settings are as you described.

 

Thank you Very Very much Greg.

 

It has been a long day with this, if I don't finish testing it tonight i will post my results tomorrow.

 

Again Thank You

 

 

Jimmy

 

www.dvbhardware.com

Edited by RI Downlink

I'm not a coder just a splicer.

Link to comment
Share on other sites

  • Replies 2.1k
  • Created
  • Last Reply

Top Posters In This Topic

Greg, I do not know if I am chaseing a ghost here with my resent restore from the problems above, but I get to the 5 sec PP processing splash screen but then goes to entering a PP email & password to complete the transaction, when before I would get the second PP splash screen to use credit card w/o PP account or pay with PP account.

 

I do not think it is me since I did a clean fresh install localy, install your PP 2.9 and getting the same results.

 

 

Jimmy

I'm not a coder just a splicer.

Link to comment
Share on other sites

I need help with:

 

paypal.gif

 

I have been developing this store for my company and I love this module... Great Contribution. But I had a couple of complaints about where the credit card logos are they think that if they click on those images they should just automatically choosed the paypal payment method and continue.

 

Also when you click the link for more info about paypal there are two images in that document that look like they are links but I know they are just examples... but my company wants them to link to continue checkout and select the paypal module and continue...

 

Any help is appreciated.... I have been searching the documents to edit but can't fine exactly...

 

Thanks in Advanced!!!! B)

Link to comment
Share on other sites

I need help with:

 

 

Also when you click the link for more info about paypal there are two images in that document that look like they are links but I know they are just examples... but my company wants them to link to continue checkout and select the paypal module and continue...

 

 

 

 

I do not think it is possible to add links in the info popup, it would break the flow of the checkout, you do get a 2nd splash screen when you checkout with paypal that is very clear 1. pay with your credit card or 2. pay with your paypal account.

 

Jimmy

 

My Webpage

I'm not a coder just a splicer.

Link to comment
Share on other sites

hmmmmm, the module says 'Please Select' with an arrow pointing to the dots . . . seems to me your customers are having a hard time reading. . . .

 

 

Plus I do not think he has gotten to the selection page of paypal in big letters pay with credit card or use your paypal account. I don't think it can get much simpler.

 

I remember a while back the old checkout was more confusing, not now

Edited by RI Downlink

I'm not a coder just a splicer.

Link to comment
Share on other sites

One problem is that it isn't currently possible (that I'm aware of) to direct the customer to a particular type of PayPal payment flow, e.g. cc or paypal login.

For the info page, you may want to put a shadow around the images to try and more clearly display them as images rather than button links.

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

Link to comment
Share on other sites

Hi

 

I've been struggling with this for the past 3 days, and now is the time for me to recruit you all Pls pls help.

 

A site I installed is having these problems:

When an order goes through, the customer and seller both get Paypal notifications, there are orders in the database, but no email gets sent out from the store. The order also does not show up in the customer's order history. Paypal IPN came with the package, so I didn't do any major changes to it.

 

Going through the posts here:(this problem seems to happen an awful lot)

1) I first thought it was because the email specified in Modules -> PAyment -> Paypal was a non-Paypal verified id, but changing that didn't help.

2) I had the IPN URL set to none in Paypal, that didn't help either.

3) I read something about cUrl but also read that it was for recurring payments and I shouldn't bother.

4) I checked the database and found that for all the orders that order emails never got sent have the payment_method as blanks, but for the ones that the order emails get sent have payment method set to COD, or Web Makers card and so on. Could this be causing any problems, and how do I have the payment mode set to Paypal?

 

Thanks guys, pls help with anything you can, even if you think it might only be incidental.....

pram0310

Link to comment
Share on other sites

v3.0 has just been uploaded which now includes integration for the osC-Affiliate contribution, see the osC_Affilate directory for further info.

Due to file size the contrib needs to be manually authorized by the osC team.

 

There is also the added method call for use with the CCGV contrib, but this is currently commented out, see the bottom of paypal/catalog/checkout_process.inc.php

 

Later in the new year when PayPal enables querying whether a particular invoice has been paid for the CCGV integration can be completed properly (hopefully).

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

Link to comment
Share on other sites

Hey Greg,

 

Nice to see you're back with your contribution!

 

I've got my 2.9 version working great and there's no problems with the gift certificates being added to the queue or being deducted during the checkout process if the GV are being used and then using the PayPal module.

 

The question I have is this.

 

If only a gift certificate is being ordered by a client and paid thru paypal, because there is no shipping, in the admin I do not see any confirmed address of the client.

 

Is it possible to submit the address of the order to paypal and receive the confirmed address in the admin?

 

I'd like to know this because my store will be selling services and will be set up like Gift Certificates with no shipping.

 

Also, I'm wondering if I should make any changes to the 2.9 version I have if everything is working perfectly?

 

Thanks

 

Gary

 

v3.0 has just been uploaded which now includes integration for the osC-Affiliate contribution, see the osC_Affilate directory for further info.

Due to file size the contrib needs to be manually authorized by the osC team.

 

There is also the added method call for use with the CCGV contrib, but this is currently commented out, see the bottom of paypal/catalog/checkout_process.inc.php

 

Later in the new year when PayPal enables querying whether a particular invoice has been paid for the CCGV integration can be completed properly (hopefully).

Edited by jonathn
Link to comment
Share on other sites

Hi Gary,

 

At present the address details sent by osCommerce to PayPal is for the registration details of New PayPal Members, I think Patrick has mentioned that this may be looked into so as to achieve your desired results, however I would mention that I doubt that the address info passed to PayPal will become 'immediately' verified, especially for that particular transaction. According to PayPal there are three ways of confirming an address (below in regard to US paypal members):

 

An address can become confirmed for U.S. accounts in one of three ways:

 

  1. When you add a credit card to your PayPal account, the address on file with your credit card company becomes Confirmed.

  2. Once you apply for PayPal Buyer Credit and are approved, the address used on your application will be confirmed on your PayPal Account.

 

      OR

  3. You may confirm your address through Alternative Address Confirmation (AAC).

 

To qualify for AAC, you must meet the following requirements:

 

  1. Be a Verified U.S. PayPal member in good standing

  2. Have been a PayPal member for more than 90 days

  3. Have a Community Participation buyer number more than 10

 

If you qualify for AAC, you will need to fax several documents to PayPal, after which we will mail a secret code to the address you are trying to Confirm. After you enter the secret code correctly into the PayPal website, your address will become Confirmed. For more information, please see our User Agreement.

But currently, IMO, as long as you configure your paypal account to only accept payments from members with verified addresses, then since this address is returned, or suitable configure the contribution and your paypal account, so that PayPal returns an address in the IPN for that transaction, then this should suffice (as you can see this info in this contrib's osC Admin interface - Transaction Payment Details for that order), as paypal will inform you as to whether this address has been confirmed. How this works out with payments by non-paypal members, e.g. Credit Card payments, I'm not currently sure.

 

I think Seller Protection should be the primary focus here in regard to sending address details to PayPal (e.g. to get the shipping address to appear in the PayPal Transaction Details), but this seems like as it may cause a conflict between those who insist that the address must be verified in order to receive payment !?!

Seller Protection does not apply to intangible goods.

 

My concern about this contrib and CCGV, is that the customers credit can be currently deducted when they checkout, however if they click back and change the order and or re-checkout, then their credit will be deducted again (or rather will no longer be available), which if they do this, e.g. keep going back and forth, then they'll use up all their credit or have none left for their finalization of the order/payment.

 

v3.0 (whenever it appears !?!) is the same as v2.9 but with the osC-Affiliate integration stuff done, one would then just need to edit or copy over catalog/includes/affiliate_checkout_process.php. If you're upgrading then just copy over the core contrib files (contrib catalog dir) and the file just mentioned and perform the mysql alterations in the osC Affiliate readme notes included in the PPSCIPN_v3.0 contrib.

 

Cheers,

G.

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

Link to comment
Share on other sites

Right now I have PayPal_Shopping_Cart_IPN_v2.2 installed. Can I upgrade to v 2.9 directly or do I have to install any previous versions before I can do this?

"There is no doubt about precisely when folks began racing each other in automobiles. It was the day they built the second automobile." - Richard Petty

Link to comment
Share on other sites

Hey Greg,

 

Thanks for getting back to me.

 

I agree that GV's aren't covered by the buyer protection plan.

 

I also have paypal setup to reject those without a verified address as the buyer protection policy is something i'm definately adhering to.

 

I can understand a new paypal member not being verified. In that case, that will require personal followup on my part.

 

-- Quote --

 

" My concern about this contrib and CCGV, is that the customers credit can be currently deducted when they checkout, however if they click back and change the order and or re-checkout, then their credit will be deducted again (or rather will no longer be available), which if they do this, e.g. keep going back and forth, then they'll use up all their credit or have none left for their finalization of the order/payment."

 

It is a concern of mine too, although a confirmation page is supposed to be that... an order confirmation, so if someone were to click back, yes, they would deduct the credit..

 

The only way to avoid that would be an after paypal process whereby the GV would be deducted after returning. There would be another problem with that if they did not return.

 

I'd rather issue a credit, than have someone reuse a gift certificate.

 

When I was testing with sandbox and using a verified address, I still didn't see anything in the admin that would verify the address. The purpose of this would be to just reassure me that the person that purchased the GV had a verified address so in the case of fraud, I'd have a place to get this persons real address.

 

I was also thinking... if there's "shipping included" how could I possible get the customers verified address?

 

Thanks for getting back to me!

 

Gary

 

PS... I'll take a look at the changes in 3.0 and see how it effects what I have setup. Hopefully the documentation will show only the additions from 2.9 to 3.0

 

I'm not using the affilates except as a separate database for vendors.

 

 

Hi Gary,

 

At present the address details sent by osCommerce to PayPal is for the registration details of New PayPal Members, I think Patrick has mentioned that this may be looked into so as to achieve your desired results, however I would mention that I doubt that the address info passed to PayPal will become 'immediately' verified, especially for that particular transaction. According to PayPal there are three ways of confirming an address (below in regard to US paypal members):

 

But currently, IMO, as long as you configure your paypal account to only accept payments from members with verified addresses, then since this address is returned, or suitable configure the contribution and your paypal account, so that PayPal returns an address in the IPN for that transaction, then this should suffice (as you can see this info in this contrib's osC Admin interface - Transaction Payment Details for that order), as paypal will inform you as to whether this address has been confirmed. How this works out with payments by non-paypal members, e.g. Credit Card payments, I'm not currently sure.

 

I think Seller Protection should be the primary focus here in regard to sending address details to PayPal (e.g. to get the shipping address to appear in the PayPal Transaction Details), but this seems like as it may cause a conflict between those who insist that the address must be verified in order to receive payment !?!

Seller Protection does not apply to intangible goods.

 

My concern about this contrib and CCGV, is that the customers credit can be currently deducted when they checkout, however if they click back and change the order and or re-checkout, then their credit will be deducted again (or rather will no longer be available), which if they do this, e.g. keep going back and forth, then they'll use up all their credit or have none left for their finalization of the order/payment.

 

v3.0 (whenever it appears !?!) is the same as v2.9 but with the osC-Affiliate integration stuff done, one would then just need to edit or copy over catalog/includes/affiliate_checkout_process.php. If you're upgrading then just copy over the core contrib files (contrib catalog dir) and the file just mentioned and perform the mysql alterations in the osC Affiliate readme notes included in the PPSCIPN_v3.0 contrib.

 

Cheers,

G.

Edited by jonathn
Link to comment
Share on other sites

I am setting up a new e-commerce site with osC 2.2m2. I set up the IPN module version 3.0 and it seems to work so far. I made a fake order and it sent all the data to paypal, but I didn't complete the transaction. The problem I am having is that when I go to the IPN panel in the admin tool it gives me this error:

 

Fatal error: Cannot use object of type PayPal_Page as array in /home/covetgear/www-covetgear/includes/modules/payment/paypal/templates/osC_Admin.tpl.php on line 27

 

I checked all of the modifications that I made to the osC files and can't find any problems with them. I noticed that one other person in all of google has had the same error, which is how I found this thread. Unfortunately I didn't see an answer to the problem. =/

 

Any help would be greatly appreciated as I am hoping to go live with my site before the end of the year.

Link to comment
Share on other sites

Hi,

I have not been able to get PayPal_Shopping_Cart_IPN-Version-2.9 to work with the Downloads Controller contribution.

 

Does anyone know if the other contribution: osCommerce PayPal IPN Module v1.0 For 2.2MS2, is compatible with the Downloads Controller Contribution?

 

Before I try and get it working I would appreciate any input from anyone else who has tried to get the two contributions working together.

 

Thanks!

Barry

 

 

 

Downloads Controller info

-Written by Linda McGrath and

-Updated by Farrukh Saeed for MileStone MS 2.2).

Link to comment
Share on other sites

Hi,

I have not been able to get PayPal_Shopping_Cart_IPN-Version-2.9 to work with the Downloads Controller contribution.

 

Does anyone know if the other contribution: osCommerce PayPal IPN Module v1.0 For 2.2MS2, is compatible with the Downloads Controller Contribution?

 

Before I try and get it working I would appreciate any input from anyone else who has tried to get the two contributions working together.

 

Thanks!

Barry

Downloads Controller info

-Written by Linda McGrath and

-Updated by Farrukh Saeed for MileStone MS 2.2).

What is the problem ? Is paypal working but the downloads are not getting authorized. Is the order status match with the "Downloads Controller Update Status Value" ?

Edited by RI Downlink

I'm not a coder just a splicer.

Link to comment
Share on other sites

Find line 27 in paypal/templates/osC_Admin.tpl.php and change '$page['onLoad']' to '$page->onLoad' (thanks).

 

the DC contrib works based on the numeric values of the 'orders_status' of an order, and in order for an download to become available the value of this 'orders_status' must be equal to or greater than the value as specified in the admin download config panel which by default is '2', however the PPSCIPN contrib has orders_status's for orders 'On Hold' and 'Canceled' and the values for these orders_status's are greater than '2' which isn't desired, e.g. a download should not be available if payment has been canceled. So at present the best that I can come up with is to amend the sql query that determines whether the download is available so that these downloads do not become available if the orders_status of that order is either ('Pending','On Hold','Canceled') so:

 

in includes/modules/download.php find

$downloads_query = tep_db_query("select o.orders_status, date_format(o.last_modified, '%Y-%m-%d') as date_purchased_day, opd.download_maxdays, op.products_name, opd.orders_products_download_id, opd.orders_products_filename, opd.download_count, opd.download_maxdays from " . TABLE_ORDERS . " o, " . TABLE_ORDERS_PRODUCTS . " op, " . TABLE_ORDERS_PRODUCTS_DOWNLOAD . " opd where o.customers_id = '" . (int)$customer_id . "' and o.orders_status >= '" . DOWNLOADS_CONTROLLER_ORDERS_STATUS . "' and o.orders_status != '99999' and o.orders_id = '" . (int)$last_order . "' and o.orders_id = op.orders_id and op.orders_products_id = opd.orders_products_id and opd.orders_products_filename != ''");

and replace with

$downloads_query = tep_db_query("select o.orders_status, date_format(o.last_modified, '%Y-%m-%d') as date_purchased_day, opd.download_maxdays, op.products_name, opd.orders_products_download_id, opd.orders_products_filename, opd.download_count, opd.download_maxdays from " . TABLE_ORDERS . " o, " . TABLE_ORDERS_PRODUCTS . " op, " . TABLE_ORDERS_PRODUCTS_DOWNLOAD . " opd where o.customers_id = '" . (int)$customer_id . "' and o.orders_status >= '" . DOWNLOADS_CONTROLLER_ORDERS_STATUS . "' and o.orders_status NOT IN ('".MODULE_PAYMENT_PAYPAL_PROCESSING_STATUS_ID."' , '".MODULE_PAYMENT_PAYPAL_ORDER_ONHOLD_STATUS_ID."' , '".MODULE_PAYMENT_PAYPAL_ORDER_CANCELED_STATUS_ID."') and o.orders_id = '" . (int)$last_order . "' and o.orders_id = op.orders_id and op.orders_products_id = opd.orders_products_id and opd.orders_products_filename != ''");

 

In regard to the edit performed in the same location in admin/orders.php, the following is an example of what should work

      <tr>
       <td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
     </tr>
     <tr>
       <td><table border="0" cellspacing="0" cellpadding="2">
<?php
// BOF: WebMakers.com Added: Show Order Info
?>
<!-- add Order # // -->
<tr>
<td class="main"><b>Order # </b></td>
<td class="main"><?php echo tep_db_input($oID); ?></td>
</tr>
<!-- add date/time // -->
<tr>
<td class="main"><b>Order Date & Time</b></td>
<td class="main"><?php echo tep_datetime_short($order->info['date_purchased']); ?></td>
</tr>
<?php
// EOF: WebMakers.com Added: Show Order Info

//begin PayPal_Shopping_Cart_IPN V2.8 DMG
if (strtolower($order->info['payment_method']) == 'paypal') {
include(DIR_FS_CATALOG_MODULES . 'payment/paypal/admin/TransactionSummaryLogs.inc.php');
}

?>

         <tr>
           <td class="main"><b><?php echo ENTRY_PAYMENT_METHOD; ?></b></td>
           <td class="main"><?php echo $order->info['payment_method']; ?></td>
         </tr>
<?php
//}//else not paypal
//end PayPal_Shopping_Cart_IPN
   if (tep_not_null($order->info['cc_type']) || tep_not_null($order->info['cc_owner']) || tep_not_null($order->info['cc_number'])) {
?>

 

I'm hoping this will resolve the integration of both contribs, given the above reasoning and amendment to the above download_query, but may of overlooked something, e.g. other payment options, but I think you should be ok, but if in doubt create a specific orders_status for when the order is initially pre-stored and assigned the defualt suggested 'Pending' status which since this particular orders_status is shared by other payment modules you may want to create a new one specifcally, e.g. 'Pending PayPal Payment'.

 

HTH.

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

Link to comment
Share on other sites

dev, I did what you said and that fixed the error I was getting with the IPN panel in the admin tool. So I set up the IPN module to use the paypal sandbox for some testing. All of my transactions go through and the money shows up in my account, but none of the IPN information gets passed back to my site.

 

I tried using the IPN test panel and I get this error when I hit the 'Test IPN' button:

 

FATAL ERROR: register_globals is disabled in php.ini, please enable it!

 

I'm thinking that since it is the catalog/ipn.php file giving this error that it is probably related. I already used the register_gloabls patch on osC. Is there one for the IPN module? I tried talking my host into just enabling it but... I don't think that is going to happen.

 

Thanks for your help. =)

-Jim

Edited by laocourn
Link to comment
Share on other sites

This goes with my previous post.

I forgot to add that I've never received any debug emails while running transactions using the IPN module nor do I recieve the osC email confirming the order. All I get are the PayPal emails.

Edited by laocourn
Link to comment
Share on other sites

in includes/modules/payment/paypal/application_top.inc.php, just comment out the line the that determines whether register_globals is enabled, the contribution code doesn't require it, and I doubt if any of the core oscommerce code used by the contrib will either.

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

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...