simular simulador pago ipn developer configurar paypal-ipn paypal-sandbox

paypal-ipn - pago - simulador paypal



Paypal Sandbox Test Tool IPN Simulator en Localhost (6)

El simulador de IPN de Paypal no funcionará con localhost. Sin embargo, puedes simular el simulador :-). Para ello, debe instalar un complemento / extensión de navegador, como un poster para Firefox o Advanced Rest Client para google chrome.

Abra la aplicación y coloque en su url que está escuchando para respuestas de IPN:

http://localhost/ipn

Coloque lo siguiente como su información POST y envíe la solicitud:

residence_country=US&invoice=abc1234&address_city=San+Jose&first_name=John&payer_id=TESTBUYERID01&mc_fee=0.44&txn_id=421462822&receiver_email=seller%40paypalsandbox.com&custom=xyz123+CUSTOMHASH&payment_date=12%3A40%3A25+27+Aug+2013+PDT&address_country_code=US&address_zip=95131&item_name1=something&mc_handling=2.06&mc_handling1=1.67&tax=2.02&address_name=John+Smith&last_name=Smith&receiver_id=seller%40paypalsandbox.com&verify_sign=AFcWxV21C7fd0v3bYYYRCpSSRl31AgAAjEU7A5rthY2aP4j1jOIrjuGx&address_country=United+States&payment_status=Completed&address_status=confirmed&business=seller%40paypalsandbox.com&payer_email=buyer%40paypalsandbox.com&notify_version=2.4&txn_type=cart&test_ipn=1&payer_status=unverified&mc_currency=USD&mc_gross=12.34&mc_shipping=3.02&mc_shipping1=1.02&item_number1=AK-1234&address_state=CA&mc_gross1=9.34&payment_type=instant&address_street=123%2C+any+street

ACTUALIZACIÓN : Acabo de empezar a usar otra opción que es más fácil, https://localtunnel.me . Para instalar y ejecutar el módulo, haga lo siguiente. Mostrará su URL pública. Todas las solicitudes a esa URL pública se reenviarán a su servidor local.

npm install -g localtunnel lt --port 80

¿Cómo usar el simulador de notificación de pago instantáneo en la máquina local? ¿Qué se proporcionará en la URL del controlador de IPN? No tengo acceso a nuestro enrutador

Gracias


No puede probar IPN en su servidor local, ya que IPN se trata de que el servidor de PayPal inicie una POST del lado del servidor a una URL que usted defina.
Como resultado, su script IPN debe ser accesible desde el exterior (o puede usar un túnel como ngrok.me/localtunnel.me).


Puede simular la publicación de IPN de PayPal ejecutando la secuencia de comandos debajo de la que hice en su servidor local (necesitará curl instalado). Siempre que su oyente apunte a la caja de arena debe validar. Cambie su oyente a PayPal en vivo y no debe validar.

<?php // SIMULATE PAYPAL IPN LOCALLY // // Sometimes you need to test on your local host and this can be difficult due // to IP routing issues. Use this code on your local machine to simulate the // same process that the sandbox IPN simulator does when posting to your URL. // // Run this code in command line or via the browser. It will post IPN data just // like Paypal would. If the code you''ve written to process your IPN data // posts back to the sandbox, it should come back as valid. // Put the full url to test in $paypal_url, include file extensions if necessary $paypal_url = ''http://localhost/paypal_ipn/process''; // IPN listener to test //example posted data from paypal IPN $test = ''residence_country=US&invoice=abc1234&address_city=San+Jose&first_name=John&payer_id=TESTBUYERID01&mc_fee=0.44&txn_id=421462822&receiver_email=seller%40paypalsandbox.com&custom=xyz123+CUSTOMHASH&payment_date=12%3A40%3A25+27+Aug+2013+PDT&address_country_code=US&address_zip=95131&item_name1=something&mc_handling=2.06&mc_handling1=1.67&tax=2.02&address_name=John+Smith&last_name=Smith&receiver_id=seller%40paypalsandbox.com&verify_sign=AFcWxV21C7fd0v3bYYYRCpSSRl31AgAAjEU7A5rthY2aP4j1jOIrjuGx&address_country=United+States&payment_status=Completed&address_status=confirmed&business=seller%40paypalsandbox.com&payer_email=buyer%40paypalsandbox.com&notify_version=2.4&txn_type=cart&test_ipn=1&payer_status=unverified&mc_currency=USD&mc_gross=12.34&mc_shipping=3.02&mc_shipping1=1.02&item_number1=AK-1234&address_state=CA&mc_gross1=9.34&payment_type=instant&address_street=123%2C+any+street''; /* * More detailed breakout of the raw data _POST EXAMPLE ARRAY FROM PAYPAL: Array ( [residence_country] => US [invoice] => abc1234 [address_city] => San Jose [first_name] => John [payer_id] => TESTBUYERID01 [mc_fee] => 0.44 [txn_id] => 421462822 [receiver_email] => [email protected] [custom] => xyz123 CUSTOMHASH [payment_date] => 12:40:25 27 Aug 2013 PDT [address_country_code] => US [address_zip] => 95131 [item_name1] => something [mc_handling] => 2.06 [mc_handling1] => 1.67 [tax] => 2.02 [address_name] => John Smith [last_name] => Smith [receiver_id] => [email protected] [verify_sign] => AFcWxV21C7fd0v3bYYYRCpSSRl31AgAAjEU7A5rthY2aP4j1jOIrjuGx [address_country] => United States [payment_status] => Completed [address_status] => confirmed [business] => [email protected] [payer_email] => [email protected] [notify_version] => 2.4 [txn_type] => cart [test_ipn] => 1 [payer_status] => unverified [mc_currency] => USD [mc_gross] => 12.34 [mc_shipping] => 3.02 [mc_shipping1] => 1.02 [item_number1] => AK-1234 [address_state] => CA [mc_gross1] => 9.34 [payment_type] => instant [address_street] => 123, any street ) */ //# // PayPal IPN processor in PHP // fake paypal post to test scripts //# //---------------------------------------------------------- // Create FAKE post from PayPal. //---------------------------------------------------------- $req = $test; // use test data //open connection $ch = curl_init(); //set the url, number of POST vars, POST data curl_setopt($ch,CURLOPT_URL, $paypal_url); curl_setopt($ch,CURLOPT_POST, substr_count($req,''&'')+1); curl_setopt($ch,CURLOPT_POSTFIELDS, $req); //execute post $result = curl_exec($ch); //close connection curl_close($ch); ?>


Puedes probar en localhost usando ngrok .

Simplemente ejecute ngrok localmente y pegue la URL de prueba que ngrok le brinda (algo como http://1bc7d09d.ngrok.com/ )

Proporciona un túnel a su servidor local.


Yo pruebo en localhost. Puede usar un servicio como dyn.com o noip.com o señalar un subdominio a su dirección local si es estático.


/ngrok http -host-header=yourwebsite.com 80

realizará un túnel hacia localhost con el encabezado de host correcto