"; $from_email_address = "My Name "; // Set this to true to save a log file: $save_log_file = true; $log_file_dir = __DIR__ . "/logs"; require('PaypalIPN.php'); use PaypalIPN; $ipn = new PaypalIPN(); date_default_timezone_set($timeZone); // Use the sandbox endpoint during testing. if ($enable_sandbox) $ipn->useSandbox(); //$verified = $ipn->verifyIPN(); $verified = TRUE; if ($verified) { /* * Process IPN * A list of variables is available here: * https://developer.paypal.com/webapps/developer/docs/classic/ipn/integration-guide/IPNandPDTVariables/ */ /* if (isset($_POST['protection_eligibility']) && isset($_POST['payer_id']) && isset($_POST['payment_date']) && isset($_POST['payment_status']) && isset($_POST['first_name']) && isset($_POST['last_name']) && isset($_POST['notify_version']) && isset($_POST['verify_sign']) && isset($_POST['payer_email']) && isset($_POST['txn_id']) && isset($_POST['payment_type']) && isset($_POST['receiver_email']) && isset($_POST['receiver_id']) && isset($_POST['txn_type'])) { if ($_POST['protection_eligibility'] === 'Eligible') $protection_eligibility = TRUE; else $protection_eligibility = FALSE; $payer_id = $_POST['payer_id']; $payment_date = $_POST['payment_date']; if ($_POST['payment_status'] === 'Completed') $payment_status = TRUE; else $payment_status = FALSE; $first_name = $_POST['first_name']; $last_name = $_POST['last_name']; $notify_version = $_POST['notify_version']; $verify_sign = $_POST['verify_sign']; $payer_email = $_POST['payer_email']; $txn_id = $_POST['txn_id']; $payment_type = $_POST['payment_type']; $receiver_email = $_POST['receiver_email']; $receiver_id = $_POST['receiver_id']; $txn_type = $_POST['txn_type']; if (isset($_POST['mc_gross'])) $mc_gross = (float) $_POST['mc_gross']; else $mc_gross = (float) 0.0; if (isset($_POST['address_status']) && $_POST['address_status'] === 'confirmed') $address_status = TRUE; else $address_status = FALSE; if (isset($_POST['tax'])) $tax = (float) $_POST['tax']; else $tax = (float) 0.00; if (isset($_POST['address_street'])) $address_street = $_POST['address_street']; else $address_street = NULL; if (isset($_POST['charset'])) $charset = $_POST['charset']; else $charset = 'utf-8'; if (isset($_POST['address_zip'])) $address_zip = $_POST['address_zip']; else $address_zip = NULL; if (isset($_POST['mc_fee'])) $mc_fee = (float) $_POST['mc_fee']; else $mc_fee = (float) 0.0; if (isset($_POST['address_country_code'])) $address_country_code = $_POST['address_country_code']; else $address_country_code = 'CA'; if (isset($_POST['address_name'])) $address_name = $_POST['address_name']; else $address_name = NULL; if (isset($_POST['cusom'])) $custom = $_POST['custom']; else $custom = NULL; if (isset($_POST['payer_satus']) && $_POST['payer_satus'] === 'verified') $payer_status = TRUE; else $payer_status = FALSE; if (isset($_POST['address_country'])) $address_country = $_POST['address_country']; else $address_country = NULL; if (isset($_POST['address_city'])) $address_city = $_POST['address_city']; else $address_city = NULL; if (isset($_POST['quantity'])) $quantity = (int) $_POST['quantity']; else $quantity = (int) -1; if (isset($_POST['address_state'])) $address_state = $_POST['address_state']; else $address_state = NULL; if (isset($_POST['payment_fee'])) $payment_fee = (float) $_POST['payment_fee']; else $payment_fee = (float) 0.00; if (isset($_POST['item_name'])) $item_name = $_POST['item_name']; else $item_name = NULL; if (isset($_POST['mc_currency'])) $mc_currency = $_POST['mc_currency']; else $mc_currency = 'CAD'; if (isset($_POST['item_number'])) $item_number = $_POST['item_number']; else $item_number = NULL; if (isset($_POST['residence_country'])) $residence_country = $_POST['residence_country']; else $residence_country = 'CA'; if (isset($_POST['test_ipn'])) $test_ipn = $_POST['test_ipn']; else $test_ipn = NULL; if (isset($_POST['handling_amount'])) $handling_amount = (float) $_POST['handling_amount']; else $handling_amount = (float) 0.00; if (isset($_POST['transaction_subject'])) $transaction_subject = $_POST['transaction_subject']; else $transaction_subject = NULL; if (isset($_POST['payment_gross'])) $payment_gross = (float) $_POST['payment_gross']; else $payment_gross = (float) 0.00; if (isset($_POST['shipping'])) $shipping = $_POST['shipping']; else $shippling = (float) 0.00; $ipnID = receiveInstantPaypalNotification($item_name, $item_number, (int) $quantity, $mc_currency, $mc_gross, $mc_fee, $payment_type, $payment_date, $payment_gross, $payment_fee, $shipping, $handling_amount, $tax, $payment_status, $protection_eligibility, $payer_id, $payer_email, $first_name, $last_name, $address_street, $address_city, $address_state, $address_country, $address_country_code, $address_zip, $address_status, $address_name, $payer_status, $residence_country, $receiver_id, $receiver_email, $transaction_subject, $custom, $charset, $txn_id, $txn_type, $notify_version, $verify_sign, $test_ipn); processInstantPaypalNotification($ipnID); } */ /* * Attempt number 2 */ $data = file_get_contents('php://input'); if (isset($_POST['txn_type']) && isset($_POST['verify_sign']) && ($data !== FALSE)) { $txn_type = $_POST['txn_type']; $verify_sign = $_POST['verify_sign']; if (isset($_POST['txn_id'])) $txn_id = $_POST['txn_id']; else $txn_id = NULL; $ipnID = receiveInstantPaypalNotification($txn_type, $txn_id, $verify_sign, $data); //print ("ipnID: $ipnID"); if (isset($_POST['payer_id'])) $payer_id = $_POST['payer_id']; else $payer_id = NULL; if (isset($_POST['payment_date'])) $payment_date = date_format(date_create($_POST['payment_date']), $dbDateTimeFormat); else $payment_date = NULL; if (isset($_POST['payment_status'])) $payment_status = $_POST['payment_status']; else $payment_status = NULL; if (isset($_POST['first_name'])) $first_name = $_POST['first_name']; else $first_name = NULL; if (isset($_POST['last_name'])) $last_name = $_POST['last_name']; else $last_name = NULL; if (isset($_POST['payer_email'])) $payer_email = $_POST['payer_email']; else $payer_email = NULL; if (isset($_POST['mc_currency'])) $mc_currency = $_POST['mc_currency']; else $mc_currency = NULL; if (isset($_POST['mc_gross'])) $mc_gross = $_POST['mc_gross']; else $mc_gross = NULL; if (isset($_POST['mc_fee'])) $mc_fee = $_POST['mc_fee']; else $mc_fee = NULL; if (isset($_POST['address_street'])) $address_street = $_POST['address_street']; else $address_street = NULL; if (isset($_POST['address_city'])) $address_city = $_POST['address_city']; else $address_city = NULL; if (isset($_POST['address_state'])) $address_state = $_POST['address_state']; else $address_state = NULL; if (isset($_POST['address_country'])) $address_country = $_POST['address_country']; else $address_country = NULL; if (isset($_POST['address_country_code'])) $address_country_code = $_POST['address_country_code']; else $address_country_code = NULL; if (isset($_POST['address_zip'])) $address_zip = $_POST['address_zip']; else $address_zip = NULL; if (isset($_POST['address_country'])) $address_country = $_POST['address_country']; else $address_country = NULL; if (isset($_POST['contact_phone'])) $contact_phone = $_POST['contact_phone']; else $contact_phone = NULL; if (isset($_POST['custom'])) $custom = $_POST['custom']; else $custom = NULL; if (isset($_POST['receipt_id'])) $receipt_id = $_POST['receipt_id']; else $receipt_id = NULL; if (isset($_POST['payer_status'])) $payer_status = $_POST['payer_status']; else $payer_status = NULL; if (isset($_POST['quantity'])) $quantity = $_POST['quantity']; else $quantity = NULL; if (isset($_POST['payment_type'])) $payment_type = $_POST['payment_type']; else $payment_type = NULL; if (isset($_POST['receiver_email'])) $receiver_email = $_POST['receiver_email']; else $receiver_email = NULL; if (isset($_POST['receiver_id'])) $receiver_id = $_POST['receiver_id']; else $receiver_id = NULL; if (isset($_POST['item_name'])) $item_name = $_POST['item_name']; else $item_name = NULL; if (isset($_POST['item_number'])) $item_number = $_POST['item_number']; else $item_number = NULL; if (isset($_POST['residence_country'])) $residence_country = $_POST['residence_country']; else $residence_country = NULL; if (isset($_POST['charset'])) $charset = $_POST['charset']; else $charset = NULL; if (isset($_POST['transaction_subject'])) $transaction_subject = $_POST['transaction_subject']; else $transaction_subject = NULL; if (isset($_POST['memo'])) $memo = $_POST['memo']; else $memo = NULL; if (isset($_POST['test_ipn'])) $test_ipn = $_POST['test_ipn']; else $test_ipn = NULL; if (isset($_POST['notify_version'])) $notify_version = $_POST['notify_version']; else $notify_version = NULL; if (isset($_POST['parent_txn_id'])) $parent_txn_id = $_POST['parent_txn_id']; else $parent_txn_id = NULL; if (isset($_POST['initial_payment_txn_id'])) $initial_payment_txn_id = $_POST['initial_payment_txn_id']; else $initial_payment_txn_id = NULL; if (isset($_POST['recurring_payment_id'])) $recurring_payment_id = $_POST['recurring_payment_id']; else $recurring_payment_id = NULL; /* if (isset($_POST['address_country'])) $address_country = $_POST['address_country']; else $address_country = NULL;*/ insertInstantPaypalNotificationData($ipnID, $payer_id, $payment_date, $payment_status, $first_name, $last_name, $payer_email, $mc_currency, $mc_gross, $mc_fee, $address_street, $address_city, $address_country, $address_state, $address_country_code, $address_zip, $contact_phone, $custom, $receipt_id, $payer_status, $quantity, $payment_type, $receiver_email, $receiver_id, $item_name, $item_number, $residence_country, $charset, $transaction_subject, $memo, $test_ipn, $notify_version, $parent_txn_id, $initial_payment_txn_id, $recurring_payment_id); } } // Reply with an empty 200 response to indicate to paypal the IPN was received correctly. header("HTTP/1.1 200 OK"); ?>