Title: Hook function not called
Last modified: August 31, 2016

---

# Hook function not called

 *  Resolved [alexisr76](https://wordpress.org/support/users/alexisr76/)
 * (@alexisr76)
 * [10 years, 6 months ago](https://wordpress.org/support/topic/hook-function-not-called/)
 * Hi all,
 * Thank for this plugin.
 * I use this, it’s work, i my wordpress admin, in paypal IPN menu, i receved transaction
   information correctly.
 * But i hadded in function.php the code for custom hook for test :
 *     ```
       add_action('paypal_ipn_for_wordpress_ipn_response_handler', 'process_completed_payment_ipn', 10, 1);
       function process_completed_payment_ipn($posted) {
   
       	session_start();
       	$_SESSION["test"] = "ok";
   
       }
       ```
   
 * And in my page, $_SESSION[“test”] value is empty.
 * I tried many things, change the hook name by “paypal_ipn_for_wordpress_payment_status_completed”,
   changed session variable by email test, but nothing work… 🙁
 * Thank for your help !
 * [https://wordpress.org/plugins/paypal-ipn/](https://wordpress.org/plugins/paypal-ipn/)

Viewing 13 replies - 1 through 13 (of 13 total)

 *  Plugin Contributor [angelleye](https://wordpress.org/support/users/angelleye/)
 * (@angelleye)
 * [10 years, 6 months ago](https://wordpress.org/support/topic/hook-function-not-called/#post-7040363)
 * The snippet you’re showing above would not do anything, so I’m a little confused.
   It looks like it should set the session variable, but you’re not going to see
   that value anywhere . You need to save a log file or email yourself or something.
 *  Thread Starter [alexisr76](https://wordpress.org/support/users/alexisr76/)
 * (@alexisr76)
 * [10 years, 6 months ago](https://wordpress.org/support/topic/hook-function-not-called/#post-7040369)
 * I use the variable $_SESSION[“test”] in another page, with a “echo”.
 * It is just a test to see if the function “process_completed_payment_ipn” is called.
 * But in my page test where i did the echo, the value is empty.
 * Thank 🙂
 *  Plugin Contributor [angelleye](https://wordpress.org/support/users/angelleye/)
 * (@angelleye)
 * [10 years, 6 months ago](https://wordpress.org/support/topic/hook-function-not-called/#post-7040370)
 * IPN is not something you will see on screen, so echoing a value will do no good.
   As I said, you need to save a log file or send yourself an email from within 
   the IPN handler.
 * Remember, IPN happens completely separate from the checkout flow, and again, 
   the user will never see anything IPN is doing on screen.
 *  Thread Starter [alexisr76](https://wordpress.org/support/users/alexisr76/)
 * (@alexisr76)
 * [10 years, 6 months ago](https://wordpress.org/support/topic/hook-function-not-called/#post-7040371)
 * Thank, i did this test because the action for record was not called, so i create
   this variable just for check if the hook is called.
 * If my variable “test” is ok, i will call my real function to record…
 * but she didnt called i think…
 * I tried to send me a email, but nothing appear… so i tried with the session variable…
 * How can i do to be sure than the function “process_completed_payment_ipn” is 
   called?
 * Thanks
 *  Plugin Contributor [angelleye](https://wordpress.org/support/users/angelleye/)
 * (@angelleye)
 * [10 years, 6 months ago](https://wordpress.org/support/topic/hook-function-not-called/#post-7040373)
 * How exactly are you testing it? Are you using the IPN Simulator, actual sandbox
   transactions, or what?
 *  Thread Starter [alexisr76](https://wordpress.org/support/users/alexisr76/)
 * (@alexisr76)
 * [10 years, 6 months ago](https://wordpress.org/support/topic/hook-function-not-called/#post-7040377)
 * I need to record some transaction information, so i need to had code after the:
 *     ```
       /**
       * At this point you can use the data to generate email notifications,
       * update your local database, hit 3rd party web services, or anything
       * else you might want to automate based on this type of IPN.
       */
       ```
   
 * in my “function.php” :
 *     ```
       add_action('process_completed_payment_ipn', 'function_name', 10, 1);
       function function_name($posted) {
   
                     // Parse data from IPN $posted array
   
                     $mc_gross = isset($posted['mc_gross']) ? $posted['mc_gross'] : '';
                     $protection_eligibility = isset($posted['protection_eligibility']) ? $posted['protection_eligibility'] : '';
                     $payer_id = isset($posted['payer_id']) ? $posted['payer_id'] : '';
                     $tax = isset($posted['tax']) ? $posted['tax'] : '';
                     $payment_date = isset($posted['payment_date']) ? $posted['payment_date'] : '';
                     $payment_status = isset($posted['payment_status']) ? $posted['payment_status'] : '';
                     $charset = isset($posted['charset']) ? $posted['charset'] : '';
                     $first_name = isset($posted['first_name']) ? $posted['first_name'] : '';
                     $mc_fee = isset($posted['mc_fee']) ? $posted['mc_fee'] : '';
                     $notify_version = isset($posted['notify_version']) ? $posted['notify_version'] : '';
                     $payer_status = isset($posted['payer_status']) ? $posted['payer_status'] : '';
                     $business = isset($posted['business']) ? $posted['business'] : '';
                     $quantity = isset($posted['quantity']) ? $posted['quantity'] : '';
                     $verify_sign = isset($posted['verify_sign']) ? $posted['verify_sign'] : '';
                     $payer_email = isset($posted['payer_email']) ? $posted['payer_email'] : '';
                     $txn_id = isset($posted['txn_id']) ? $posted['txn_id'] : '';
                     $payment_type = isset($posted['payment_type']) ? $posted['payment_type'] : '';
                     $btn_id = isset($posted['btn_id']) ? $posted['btn_id'] : '';
                     $last_name = isset($posted['last_name']) ? $posted['last_name'] : '';
                     $receiver_email = isset($posted['receiver_email']) ? $posted['receiver_email'] : '';
                     $shipping_discount = isset($posted['shipping_discount']) ? $posted['shipping_discount'] : '';
                     $insurance_amount = isset($posted['insurance_amount']) ? $posted['insurance_amount'] : '';
                     $receiver_id = isset($posted['receiver_id']) ? $posted['receiver_id'] : '';
                     $txn_type = isset($posted['txn_type']) ? $posted['txn_type'] : '';
                     $item_name = isset($posted['item_name']) ? $posted['item_name'] : '';
                     $discount = isset($posted['discount']) ? $posted['discount'] : '';
                     $mc_currency = isset($posted['mc_currency']) ? $posted['mc_currency'] : '';
                     $residence_country = isset($posted['residence_country']) ? $posted['residence_country'] : '';
                     $handling_amount = isset($posted['handling_amount']) ? $posted['handling_amount'] : '';
                     $shipping_method = isset($posted['shipping_method']) ? $posted['shipping_method'] : '';
                     $shipping = isset($posted['shipping']) ? $posted['shipping'] : '';
                     $ipn_track_id = isset($posted['ipn_track_id']) ? $posted['ipn_track_id'] : '';
                     $IPN_status = isset($posted['IPN_status']) ? $posted['IPN_status'] : '';
   
                   /**
                   * At this point you can use the data to generate email notifications,
                   * update your local database, hit 3rd party web services, or anything
                   * else you might want to automate based on this type of IPN.
                   */
   
       /*
       HERE MY CODE ;
       Tried auto-email
       write in a file
       and session variable at last just for a test
       */
   
               }
       ```
   
 * I tried to write in a file, to send me a email, a session variable, but nothing
   appear.
 * I dont know if my function is called…
 * Thank
 *  Plugin Contributor [angelleye](https://wordpress.org/support/users/angelleye/)
 * (@angelleye)
 * [10 years, 6 months ago](https://wordpress.org/support/topic/hook-function-not-called/#post-7040379)
 * Again, how are you testing it? Are you using PayPal IPN Simulator? Running actual
   sandbox orders? Running actual live orders?
 * Are you sure you have IPN configured in the PayPal account that you’re working
   with?
 *  Thread Starter [alexisr76](https://wordpress.org/support/users/alexisr76/)
 * (@alexisr76)
 * [10 years, 6 months ago](https://wordpress.org/support/topic/hook-function-not-called/#post-7040382)
 * Sorry for my bad explain 🙂
 * In wordpress, in the “paypal IPN” menu, all transaction appaers, with the transaction_ID,
   date, transaction_type (=web_accept), paiement_status(=Completed).
    I can see
   all my transaction test. So i think my paypal account is correctly configured.
 * I not using PayPal IPN Simulator but i running actual live orders.
 * Thank 🙂
 *  Plugin Contributor [angelleye](https://wordpress.org/support/users/angelleye/)
 * (@angelleye)
 * [10 years, 6 months ago](https://wordpress.org/support/topic/hook-function-not-called/#post-7040383)
 * ok, there’s no reason your function wouldn’t be firing then. Can you check the
   IPN History in your PayPal account and see if it shows any errors?
 *  Thread Starter [alexisr76](https://wordpress.org/support/users/alexisr76/)
 * (@alexisr76)
 * [10 years, 6 months ago](https://wordpress.org/support/topic/hook-function-not-called/#post-7040459)
 * Thank, i will check today.
    Have a nice day !
 *  Thread Starter [alexisr76](https://wordpress.org/support/users/alexisr76/)
 * (@alexisr76)
 * [10 years, 6 months ago](https://wordpress.org/support/topic/hook-function-not-called/#post-7040462)
 * Hello,
 * I see nothing wrong in the IPN History in my Paypal account.
    I see all my transactions…
 *  Thread Starter [alexisr76](https://wordpress.org/support/users/alexisr76/)
 * (@alexisr76)
 * [10 years, 6 months ago](https://wordpress.org/support/topic/hook-function-not-called/#post-7040470)
 * Hi angelleye !
 * My apologies !! I moved the function “process_completed_payment_ipn” and the “
   add_action” on the top of my “function.php” and i receved my mail test !
    Certainely
   something wrong in my “function.php”. I will chek this !
 * Thank for your help !
 * Alexis
 *  Plugin Contributor [angelleye](https://wordpress.org/support/users/angelleye/)
 * (@angelleye)
 * [10 years, 6 months ago](https://wordpress.org/support/topic/hook-function-not-called/#post-7040484)
 * Glad you’re on the right track! 🙂

Viewing 13 replies - 1 through 13 (of 13 total)

The topic ‘Hook function not called’ is closed to new replies.

 * ![](https://s.w.org/plugins/geopattern-icon/paypal-ipn_b2a7a0.svg)
 * [PayPal IPN for WordPress](https://wordpress.org/plugins/paypal-ipn/)
 * [Frequently Asked Questions](https://wordpress.org/plugins/paypal-ipn/#faq)
 * [Support Threads](https://wordpress.org/support/plugin/paypal-ipn/)
 * [Active Topics](https://wordpress.org/support/plugin/paypal-ipn/active/)
 * [Unresolved Topics](https://wordpress.org/support/plugin/paypal-ipn/unresolved/)
 * [Reviews](https://wordpress.org/support/plugin/paypal-ipn/reviews/)

 * 13 replies
 * 2 participants
 * Last reply from: [angelleye](https://wordpress.org/support/users/angelleye/)
 * Last activity: [10 years, 6 months ago](https://wordpress.org/support/topic/hook-function-not-called/#post-7040484)
 * Status: resolved