I need someone to write a registration form that creates a user account upon a successful transaction.
The script would ask for the credit card number, the users name, address, zip, etc and send it to paypal without ever sending the user to paypal. None of the payment information would be stored locally but other information such as name, address, e-mail, password, etc will be requested on another part of the form.
Once the transaction has gone through successfully the user will automatically be made an account on the site.
I already have the user database setup and what not I just need someone who knows the Paypal API.
It needs to be done in PHP.
So, how much would something like this run me?
Do you have a Merchant account and an SSL certificate to secure you're web server? If so, I would estimate that it would take an experienced programmer 3 - 5 hours to implement. Depending on rate, I'd say that's a $150 - $600 job.
Okay, if I send them to paypal to to make the payment and then get a response from paypal upon a successful transaction I wouldn't need any security certificates would I? Is sending them to paypal and then back again possible without losing their registration information?
Yes, you'll need to use their IPN (Instant Payment Notification) service to accomplish this. If you're interested, I can provide you with a quote to do this. Just PM me.
How to put paypal on my site?
How to put paypal on my site?
Login to your paypal account and copy the code from there .
Hey,
I have a lot of experience working with the paypal API, especially IPN (which is what you will need).
As already mentioned, 3-5 hours is a rough time frame which I would also quote, except $150 - $600 is a bit much (especially since you can spend maybe a day to work through examples on the net to accomplish the same thing).
I can perform the requested task, i.e. write an IPN script and implement the paypal API into your site for $100USD. If you are interested, please send me a PM.
Regards,
Rebbu
This thread is almost 2 years old! :p
lol ryan..yeah
I have found the the best integration of paypal in php...i cant find any attachment tag here so i m pasting it here..i hope it will help you. I have commented out which will help you to learn the working.
<?php
/** PayPal IPN Script
*
* See https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/howto_html_instantpaymentnotif
* for a lot of good information about IPN
*
* This script requires a MySQL database with
* the appropriate tables created. See paypal_ipn.sql
*
* Brief overview of how IPN works:
*
* After a paypal sale is completed AND the seller has
* setup PayPal Instant Payment Notification, Paypal sends
* information about the transaction to this script.
*
* Once this script receives the information from PayPal, it
* sends the same information back to PayPal. PayPal verifies
* that the information this script sent back matches
* what was PayPal originally sent. If it matches, PayPal
* sends 'VERIFIED' back to this script. Once 'VERIFIED' is
* received, you can be sure that a legitimate transaction took
* place.
*
* If it does not match, or PayPal did not send any information
* to this script,
*
* This script must be placed in a web accessible directory
* and PayPal must know the location of this script. PayPal is
* informed of the location of this script when the seller
* sets up Instant Payment Notification.
*
* You can look at the long list of $_POST[''] variables below
* to see what potentially could be sent to this script. Or see
* https://www.paypal.com/IntegrationCenter/ic_ipn-pdt-variable-reference.html
*
* The base of this script is provided by PayPal at
* https://www.paypal.com/cgi-bin/webscr?cmd=p/xcl/rec/ipn-code-outside
* and
* https://www.paypaltech.com/SG2/
*
* These scripts were modified and commented by Jason DeBord www.jasondebord.net
*
*/
// First prepare to send all of the information back to Paypal
$req = 'cmd=_notify-validate';
// Build string by putting all of the $_POST variables together: $req = &item_name=someitem&item_number=somenumber etc...
// Assign posted variables to local variables to use in your database entries later on
// See https://www.paypal.com/IntegrationCenter/ic_ipn-pdt-variable-reference.html for details about each of these variables
// Many of them probably won't be used
/*
* Payment Status is important. You can use the value
* of this variable in your custom scripting below to
* handle the different values assigned to this variable.
* You obviously would not want to ship an item until the
* payment has been "completed"
*
* Possible payment_status values:
*
* Canceled-Reversal
* Completed
* Denied
* Expired
* Failed
* In-Progress
* Pending
* Processed
* Refunded
* Reversed
* Voided
*/
// Your email here. This script will send IPN notifications to this email.
// You can customize the emails below.
$notify_email = "[email protected]";
$your_account_email = "[email protected] account email";
// You can hard code your MYSQL information below, or preferably, you can reference
// it by using require_once('mysql_variables.php'); and putting these variables
// in a php file in your php include directory above your public web root.
//
// If you use a custom script for you MySQL variables AND connection mysql_connect()
// you'll need to delete, comment out, or otherwise modify below where the connection
// and database selection is made ~ line 174
$DB_Server = ""; //your MySQL Server
$DB_Username = ""; //your MySQL User Name
$DB_Password = ""; //your MySQL Password
$DB_DBName = ""; //your MySQL Database Name
if (!$fp) { // Could not make a socket connection with PayPal
// HTTP Error : Something is wrong with PayPal's system.
// You may want to send yourself an email notifying you of this and then
// manually check your PayPal account to see what transaction has taken place.
// Put php code here to handle this situation.
} else { // Socket connection with the PayPal was successful. Now determine if the transaction is VERIFIED or INVALID
fputs ($fp, $header . $req); // Send variables back to PayPal so that PayPal
// can confirm that this script received legitimate payment information.
while (!feof($fp)) {
$res = fgets ($fp, 1024); // VERIFIED or INVALID is assigned to the $res variable here
if (strcmp ($res, "VERIFIED") == 0) { // php "string compare" strcmp() function determines if $res matches the word VERIFIED
//create MySQL connection
$Connect = @mysql_connect($DB_Server, $DB_Username, $DB_Password) or die ("Couldn't connect to MySQL:<br>" . mysql_error() . "<br>" . mysql_errno());
//select database
$Db = @mysql_select_db($DB_DBName, $Connect) or die ("Couldn't select database:<br>" . mysql_error(). "<br>" . mysql_errno());
} else { // Here is where you write all the code you want to run when a VERIFIED Transaction has occurred
// and it is NOT a duplicate transaction AND it is not of transaction type "cart". Basically, someone has attempted
// to send you money for somthing.
// You can: Build and execute queries to your database, send emails to buyers and / or yourself, etc...
// For example:
// You may want to check the payment status and make sure that the receiver email
// ( your paypal account / account that is supposed to receive payment )
// is the email address that the payment was sent to.
// Execute database entries only if payment_status is completed and the receiver_email is YOUR PayPal Account Email
// The following query inserts standard information into the "paypal_payment_info" table of your database.
// This table can be created with paypal_ipn.sql
// The query was written and provided by PayPal