{"action":"created","issue":{"url":"https://api.github.com/repos/paypal/ipn-code-samples/issues/65","repository_url":"https://api.github.com/repos/paypal/ipn-code-samples","labels_url":"https://api.github.com/repos/paypal/ipn-code-samples/issues/65/labels{/name}","comments_url":"https://api.github.com/repos/paypal/ipn-code-samples/issues/65/comments","events_url":"https://api.github.com/repos/paypal/ipn-code-samples/issues/65/events","html_url":"https://github.com/paypal/ipn-code-samples/issues/65","id":181546633,"number":65,"title":"example_usage.php","user":{"login":"stf9","id":7408336,"avatar_url":"https://avatars.githubusercontent.com/u/7408336?v=3","gravatar_id":"","url":"https://api.github.com/users/stf9","html_url":"https://github.com/stf9","followers_url":"https://api.github.com/users/stf9/followers","following_url":"https://api.github.com/users/stf9/following{/other_user}","gists_url":"https://api.github.com/users/stf9/gists{/gist_id}","starred_url":"https://api.github.com/users/stf9/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stf9/subscriptions","organizations_url":"https://api.github.com/users/stf9/orgs","repos_url":"https://api.github.com/users/stf9/repos","events_url":"https://api.github.com/users/stf9/events{/privacy}","received_events_url":"https://api.github.com/users/stf9/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2016-10-06T23:02:22Z","updated_at":"2016-10-06T23:40:43Z","closed_at":null,"body":"Shouldn't the 200 response should be sent before the IPN attempts to verify, not at the end of the script: https://developer.paypal.com/docs/classic/ipn/integration-guide/IPNImplementation/\r\n\r\n1. Your listener listens for the HTTP POST IPN messages that PayPal sends with each event.\r\n2. After receiving the IPN message from PayPal, your listener returns an empty HTTP 200 response to PayPal. Otherwise, PayPal resends the IPN message.\r\n3. Your listener sends the complete message back to PayPal using HTTPS POST.\r\n4. PayPal sends one of the following words back to your listener"},"comment":{"url":"https://api.github.com/repos/paypal/ipn-code-samples/issues/comments/252118251","html_url":"https://github.com/paypal/ipn-code-samples/issues/65#issuecomment-252118251","issue_url":"https://api.github.com/repos/paypal/ipn-code-samples/issues/65","id":252118251,"user":{"login":"overint","id":16414140,"avatar_url":"https://avatars.githubusercontent.com/u/16414140?v=3","gravatar_id":"","url":"https://api.github.com/users/overint","html_url":"https://github.com/overint","followers_url":"https://api.github.com/users/overint/followers","following_url":"https://api.github.com/users/overint/following{/other_user}","gists_url":"https://api.github.com/users/overint/gists{/gist_id}","starred_url":"https://api.github.com/users/overint/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/overint/subscriptions","organizations_url":"https://api.github.com/users/overint/orgs","repos_url":"https://api.github.com/users/overint/repos","events_url":"https://api.github.com/users/overint/events{/privacy}","received_events_url":"https://api.github.com/users/overint/received_events","type":"User","site_admin":false},"created_at":"2016-10-06T23:40:43Z","updated_at":"2016-10-06T23:40:43Z","body":"Yep, it does explain that in the docs, however there is a lot of ambiguity. @pp-randy [suggests the following here](https://github.com/paypal/ipn-code-samples/issues/37#issuecomment-250193508):\r\n\r\n> Usually I advise:\r\n> \r\n> Validate the IPN\r\n> Store the IPN (If this fails return an error such as 500).\r\n> Return a 200 OK\r\n> Finish your business processing of the IPN.\r\n> "}}
{"actor":{"display_login":"overint"}}