Cómo utilizar PayPal para realizar compras en tu web

Vamos a explicar cómo llamar al API de PayPal para realizar pagos en tu página web. En primer lugar deberemos crear una cuenta como desarrollador de PayPal Sandbox (https://developer.paypal.com/) que usaremos para verificar que lo hacemos de manera correcta antes de hacerlo funcionar en la tienda virtual de nuestra página web.

Tras hacerla y meternos en nuestra cuenta de desarrollador, deberemos seleccionar la opción Create a preconfigured buyer or seller account donde rellenaremos con nuestros datos el formulario teniendo en cuenta que debe ser una cuenta de vendedor.

Una vez creada, entraremos a nuestro listado de cuentas de PayPal Sandbox. Estas cuentas no son cuentas reales de PayPal y sólo funcionarán dentro de su Sandbox. Para entrar en ella pulsaremos el botón de Enter Sandbox Test Site y podremos introducir el usuario y contraseña para esta cuenta de prueba. Una vez dentro podemos observar que es como si fuera una cuenta de PayPal pero los pagos que se hagan a ella no serán reales.

Ejemplo de pago con el API de PayPal

Para realizar el pago utilizaremos un documento HTML en el que le pasaremos los parámetros que PayPal necesita (importe, código de venta, etc.) y otros opcionales como los datos del usuario que compra para que le aparezcan rellenados en el formulario de pago. Un ejemplo sería el siguiente:

<html>

<head>

<title>Ejemplo de pago mediante la API de PayPal</title>

</head>

<body>

<form name='formTpv' method='post' action='https://www.sandbox.paypal.com/cgi-bin/webscr'>

	<input type='hidden' name='cmd' value='_xclick'>
	<input type='hidden' name='business' value='mi_cuenta_sandbox@mi_pagina.com'>
	<input type='hidden' name='item_name' value='Nueva compra en mi web'>
	<input type='hidden' name='item_number' value='VENTA-X2561'>
	<input type='hidden' name='amount' value='10.15'>
	<input type='hidden' name='page_style' value='primary'>
	<input type='hidden' name='no_shipping' value='1'>
	<input type='hidden' name='return' value='http://mi_pagina/exito.html'>
	<input type='hidden' name='rm' value='2'>
	<input type='hidden' name='cancel_return' value='http://mi_pagina/cancelada.html'>
	<input type='hidden' name='no_note' value='1'>
	<input type='hidden' name='currency_code' value='EUR'>
	<input type='hidden' name='cn' value='PP-BuyNowBF'>
	<input type='hidden' name='custom' value=''>
	<input type='hidden' name='first_name' value='NOMBRE'>
	<input type='hidden' name='last_name' value='APELLIDOS'>
	<input type='hidden' name='address1' value='DIRECCIÓN'>
	<input type='hidden' name='city' value='POBLACIÓN'>
	<input type='hidden' name='zip' value='CÓDIGO POSTAL'>
	<input type='hidden' name='night_phone_a' value=''>
	<input type='hidden' name='night_phone_b' value='TELÉFONO'>
	<input type='hidden' name='night_phone_c' value=''>
	<input type='hidden' name='lc' value='es'>
	<input type='hidden' name='country' value='ES'>
</form>
<script type='text/javascript'>
	document.formTpv.submit();
</script>

</body>

</html>

La dirección de llamada del formulario de pruebas es https://www.sandbox.paypal.com/cgi-bin/webscr pero al pasar a ventas reales deberemos indicar https://www.paypal.com/cgi-bin/webscr

Como podemos ver, existente multitud de parámetros en el formulario que son fáciles de ver cuales son su propósito (nombre, dirección, etc.). A continuación detallamos los más importantes o que podemos tener duda de qué son realmente:

  • business: indicaremos la cuenta de PayPal asociada al vendedor. Mientras estemos de pruebas indicaremos la cuenta de pruebas del Sandbox, pero para ventas reales deberemos indicar nuestra cuenta de vendedor.
  • item_name: título que aparecerá en la pantalla de pago.
  • item_number: código de la venta, actuará como identificador único de cada venta.
  • amount: importe a pagar, donde si hay decimales no podrán indicarse con una coma ni con más de dos números.
  • return: página de vuelta a nuestra web indicando éxito en el pago.
  • cancel_return: página de vuelta a nuestra web indicando que no se realizó el pago por que el usuario lo canceló.
  • currency_code: código de la moneda usada en el pago. Para el caso del euro es EUR.
  • lc: idioma de la pantalla de pago.
  • country: código ISO del país del cliente.

Artículos relacionados

Comentarios

Comentario de Carlos - 17 de Junio de 2010 - 18:29
Hola buenas yo estoy haciendo una pagina de proyecto y queria ponerle un paypal tal y como pones es increiblemente facil. Mi duda (quizás problema), es si en la página de éxito: <input type='hidden' name='return' value='http://mi_pagina/exito.html'> Hay alguna manera de recuperar los datos que le había enviado anteriormente a Paypal o no? Gracias
Comentario de Imaginanet - 18 de Junio de 2010 - 10:19
Hola Carlos, en tu configuración de cuenta de PayPal puedes configurar a qué página debe responder PayPal si ha tenido éxito una venta. Entre las variables que te envía PayPal a esa página que le indicas, está la variable item_number que tú le enviaste. Con esa variable te debería ser suficiente para conocer por ejemplo el código de compra y saber exactamente qué compra se ha finalizado con éxito para poder trabajar contra una base de datos.
Comentario de Carlos - 18 de Junio de 2010 - 11:45
Muchas gracias! Eres un crack! Me ha ayudado mucho, cuando consiga implementar esto, volveré por aquí a comentar la experiencia!! Un abrazo
Comentario de Carlos - 19 de Junio de 2010 - 16:55
Hola de nuevo tengo un grave problema, te explico, estoy haciendo una web de reservas, entonces lo que hago es hacer una "Pre-Reserva" y entonces voy a pagar con el paypal (el formulario de arriba), paga bien pero claro me voy cuenta que al pagar el usuario va a la página de éxito solo si pincha en un enlace, es decir no va siempre. Entonces no tengo ni idea de como hacer para poder modificar en la base de datos que se ha pagado esa reserva. No se como hacer. Podrías darme alguna idea y/o ayuda por favor, Muchísimas gracias de nuevo!
Comentario de Imaginanet - 21 de Junio de 2010 - 05:59
Hola de nuevo Carlos, en mi primer comentario te dije que PayPal te avisaba de una compra exitosa y no es mediante el sistema de pinchar en el enlace de éxito tras pagar.<br/><br/> El mejor método para hacerlo es que en la configuración de la cuenta de PayPal en la que se paga, configures el Instant Payment Notification (o Notificación inmediata de Pago) a una dirección que tu le digas y te devuelve unos valores entre ellos el item_number.<br/><br/> Por ejemplo, tu le dices que tu dirección de IPN es www.tudominiopruebas.es/ipn-paypal.php, PayPal sólo llamará a ese archivo si tuviera éxito la venta y manda varias variables POST, entre ellas la variable POST item_number.<br/><br/> Con esa variable item_number puedes consolidar en base de datos una reserva que era una propuesta a una reserva en firme.<br/><br/> Puedes encontrar más información sobre IPN en el siguiente enlace https://www.paypal.com/ipn
Comentario de Carlos - 21 de Junio de 2010 - 09:41
Hola de nuevo y gracias, creo que el problema es que mi pagina es en localhost!! ¿que puedo hacer?
Comentario de Carlos - 21 de Junio de 2010 - 09:44
Estoy probando con express checkout y me hace lo del token, me muestra esto en el navegador: TOKEN=EC%2d4HS07007JP073753M&TIMESTAMP=2010%2d06%2d21T09%3a45%3a00Z&CORRELATIONID=974f0ac98c912&ACK=Success&VERSION=52%2e0&BUILD=1364064 pero no vuelve al return
Comentario de Imaginanet - 21 de Junio de 2010 - 09:59
Deberás o contratar un servicio de hosting o abrir los puertos de tu pc para que PayPal pueda acceder al archivo de respuesta IPN.
Comentario de Harley - 07 de Septiembre de 2010 - 01:41
Hola que tal ojala me puedan echar una mano estoy implementando 2 tipos de pagos el spress chekout u el pago estandar en cuanto al 2do hay alguna forma de optener el codigo de transacipon id antenada muchas gracias y saludos
Comentario de Ricardo Rodriguez - 03 de Noviembre de 2010 - 03:15
Hola tengo una pagina web en asp.net c#, mi problema es el siguiente: el cliente seleccionará que tipo de anuncio quiere( 3 posibles) depende el que elija es un cargo diferente, cada anuncio tendrá un id de anuncio, cuando pague quiero mandar una variable(id_anuncio) y que me la regrese a mi pagina de pago exitoso para yo recibirla y activar el anuncio, todo mi codigo es en aspx c#. Como puedo hacer esto? Gracias y saludos
Comentario de Imaginanet - 03 de Noviembre de 2010 - 07:43
Hola Ricardo, el lenguaje de programación en este caso no importa para hacerlo. Puedes utilizar la variable del formulario que envías a PayPal item_number poniendo algo así como TIPOANUNCIO1-IDANUNCIO2222, cuando PayPal te devuelve la respuesta avisándote de que el pago se realizó correctamente, te devuelve esa variable tal y como la enviaste por lo que puedes procesar de esta manera que tipo de anuncio y qué ID ha pagado el usuario. <br/><br/>Lo más importante en este caso, es que en tu cuenta de PayPal tengas configurado el servicio IPN, Instant Payment Notification, donde le dices a PayPal que tras un pago correcto a tu cuenta, avise a una determinada dirección web (por ejemplo http://www.tudominiodepruebas.es/pago-paypal.aspx) y envía esas variables mediante POST.<br/><br/>En próximas entradas del blog tenemos planeado como explicar cómo son las confirmaciones de PayPal con su servicio IPN.
Comentario de jessica - 02 de Diciembre de 2010 - 03:30
yo estoy haciendo una pagina en html y voy a vender un producto pero necesito saber como hacer el html con paypal, porfa si alguien me puede ayudar se los agradeceria mucho.
Comentario de Jose - 21 de Diciembre de 2010 - 08:16
Hola, gracias por el código, pero donde pone mi_cuenta_sandbox ¿alguien sabe que debo poner? lo digo porque mi cuenta sandbox es un email, ¿seria por ejemplo? jose@gmail.com@mipagina.com Gracias
Comentario de Imaginanet - 21 de Diciembre de 2010 - 09:07
Hola Jos&eacute;, lo primero que debes hacer es crear una cuenta de PayPal Sandbox y el nombre de usuario de esa cuenta es un correo electr&oacute;nico (por ejemplo usuario@mipagina.com). Ese correo electr&oacute;nico es el valor de mi_cuenta_sandbox.
Comentario de Guillermo - 02 de Enero de 2011 - 19:45
Hola como estan, Pregunta, cuanto cobra paypal por el servicio en tu pagina, si es mensual o anual. muchas gracias
Comentario de Imaginanet - 07 de Enero de 2011 - 08:28
Hola Guillermo. PayPal cobra una comisión en torno al 3.5% por cada pago que hagan en tu cuenta.
Comentario de Ruben - 27 de Julio de 2011 - 02:34
He entrado a PayPal Sandbox y veo que me da la opcion para crear un boton con varios importes fijos. Sera posible que me de la posibilidad para que el usuario pueda poner un importe y que ralice el pago por paypal? Gracias
Comentario de Imaginanet - 27 de Julio de 2011 - 10:17
Hola Rubén, con este formulario tu llamas a PayPal indicándole el importe en el parámetro amount, por lo que si creas un HTML con un input text donde escribir el importe que deseas pagar desde tu web, lo tienes hecho.
Comentario de FLAVIO - 17 de Enero de 2012 - 17:59
hola Como estas? Te cuento, me estan armando una web y quiero poner un boton de paypal. Yo no soy programador. la persona que esta por hacerlo me pide la clave de paypal supongo para hacer lo que vos nos enseñas en este informe. Necesito saber si una vez que el programador termine, yo puedo cambiar la clave del paypal o debo dejar la misma siempre, me da un poco de miedo . Graci
Comentario de Imaginanet - Carlos - 18 de Enero de 2012 - 06:53
Hola Flavio, es totalmente normal que necesite la contraseña de tu cuenta para terminar de configurar las compras. Una vez que lo termine y compruebes que tú puedas hacer pagos reales pequeños, inmediatamente después vas al panel de control de PayPal y cambias la contraseña a una segura. Saludos.
Comentario de Iván Pallarés - 23 de Febrero de 2012 - 17:23
Gran ayuda compañero! También he revisado tus otros posts sobre IPN y pagos en serie y han sido una gran ayuda para introducirme en el tema de paypal y comercio electrónico que es algo con lo que no me había enfrentado hasta ahora. Igualmente te quería consultar una duda que tengo con el código que muestras y es que si no lo entiendo mal, esto permite un pago de un único concepto, no? no es un carrito de compra, ni permite incluir más conceptos/referencias a la lista, verdad? La duda es que al tener un id de compra (el item_number) que nos lo envía al finalizar la compra si así lo configuramos en IPN, si luego lo queremos utilizar para reducir stocks de los productos del pedido ¿Como podemos hacerlo? En la web de paypal se puede generar el código html para añadir al carrito, pero no veo que en ese html haya datos referentes a los códigos de productos que se pudieran parametrizar con php.... Seguiré mirando por ahí y estaré pendiente por si tienes algún consejo. Gracias de nuevo!!
Comentario de Imaginanet - Carlos - 24 de Febrero de 2012 - 07:11
Hola Iván, La notificación IPN es sólo orientativa, PayPal no te asegura que absolutamente todas las compras que hayan sido exitosas reciban su notifican, por ejemplo se caigan los servidores de PayPal o se caiga el servidor que lo debe recibir, o simplemente el paquete de confirmación no llegue, por lo que es más fiable el correo que sí que envía PayPal confirmándote la venta. Para reducir el stock es muy sencillo. Si guardas en base de datos un ID de compra con sus líneas de compra relacionadas, si recibes la notificación de que el pedido 12345 ha sido exitoso, ya tienes conocimiento de que ese pedido ha sido exitoso, pero ahí no bajaría stock. El stock lo bajaría siempre en cualquier caso cuando el comercio decida que ese pedido se puede mandar, ya que se puede dar el caso de que un producto, por cualquier motivo se venda online pero no existan existencias en almacen y el proveedor no vaya a proporcionarnos más, o por ejemplo que el comprador decida pedir la devolución de dinero por un error. En mi opinión lo correcto sería la bajada de stock desde una acción no relacionada con PayPal IPN y siempre sería desde el backoffice de venta en el momento de realizar el empaquetado del pedido. Saludos.
Comentario de Quique - 13 de Marzo de 2012 - 02:55
Hola Carlos. Te comento , yo estoy usando Paypal con el Boton de Compras normal, donde direccionas una vez finalizada la venta al link que le asignas. Ahora bien, mi pregunta es que ese producto va a ser vendido por vendedores usando mi web, como puedo hacer para saber que vendedor es en cada venta ? Se que puedo usar algun parametro quizas especial para que ellos le envien al cliente un mail quizas con el id, etc, pero vuelvo a preguntarte , que variable puedo usar y como usarla para saber en mi cuenta de paypal que vendedor lo hizo ? Gracias, espero tus respuestas.
Comentario de Imaginanet - Carlos - 13 de Marzo de 2012 - 07:27
Hola Quique, con lo que me comentas se puede utilizar el item_number para ello. Por ejemplo, si es una web con varias tiendas y quieres saber quién vendió y qué puedes mandar un item_number del estilo XX-YYYYYYYYY donde XX es el código de vendedor e YYYYYYYYYY es el código de compra para esa compra y vendedor. En la vuelta de IPN ya sabrás que el formato esperado es ese y si no es así, se trata de una llamada a IPN no válida. Saludos.
Comentario de Antonio - 20 de Marzo de 2012 - 12:30
Hola buenas, estoy implementando en mi web paypal por chekout express. Éste me devuelve un TRANSACTIONID, me gustaría me orientaras, si este tipo de información se guarda en la BD junto al pedido del cliente, para saber cual fue la transacción asociada a ese usuario, y si se puede guardar en la BD, ¿debería encriptarlo? Un saludo y muchas gracias de antemano
Comentario de Imaginanet - Carlos - 20 de Marzo de 2012 - 16:52
Hola Antonio, el parámetro TRANSACTION ID es el identificador único de transacción dentro de PayPal. Este pago siempre será accesible desde la cuenta de PayPal, pero es útil que esté disponible desde el backoffice de ventas, por lo que una vez que se recibe la respuesta, sería útil (no imprescindible) actualizar la entrada en base de datos con este nuevo dato. Saludos.
Comentario de Antonio - 21 de Marzo de 2012 - 11:11
Ok Carlos. Muchísimas gracias por la contestación.
Comentario de Gustavo Guerra - 06 de Mayo de 2012 - 01:21
Amigo ya subi mi web y aun no termino con los detalles de anexar paypal pero solo le quiero enviar el total ya que el carro lo administro yo y ese total se queda en una variable que es "totalconenvio" y lo necesito pasar al value= donde me pide el monto como puedo poner ahi el valor total para enviarlo a paypal ya que pongo la variable como experimento y me dice error de paypal formato incorrecto ojala y sepas el codigo que hay que teclear y me pudieras ayudar Gracias por adelantado
Comentario de Imaginanet - Carlos - 07 de Mayo de 2012 - 05:58
Hola Gustavo, la variable que debes rellenar es <input type='hidden' name='amount' value='10.15'> Si te fijas el formato es un número con los decimales separados por un punto. Saludos.
Comentario de Alejandro Jimenez - 14 de Mayo de 2012 - 04:48
Hola amigos, les cuento que soy principiante en esto y necesito me urge implementar pagos en una web con paypal, alguien que pueda ayudarme asesorandome: desarrollandosoft@hotmail.com porfavor!
Comentario de israel - 27 de Mayo de 2012 - 05:00
disculpen pero y donde asocian a cierta cuenta paypal para que sea la que reciba el pago !
Comentario de Imaginanet - Carlos - 28 de Mayo de 2012 - 05:50
Hola Israel, con el parámetro business que le pasamos al formulario <input type='hidden' name='business' value='mi_cuenta_sandbox@mi_pagina.com'> Saludos
Comentario de Leandro Halfon - 25 de Julio de 2012 - 16:52
Hola, el valor de <input type='hidden' name='amount' value='10.15'> se puede modificar a mano ?
Comentario de coudlain.com - 03 de Agosto de 2012 - 11:11
Brutal articulo, muy bueno y muy bien explicado. Muchas gracias!!
Comentario de Eduardo - 14 de Agosto de 2012 - 17:40
Hola, muy buen articulo, te agradezco por compartirlo. ¿Esta misma metodologia la puedo utilizar para, por ejemplo, cobrarle de una sola vez al usuario el importe total de todos los articulos que compró en mi web de ventas online? A proposito, el usuario comprador necesita una cuenta de PayPal para comprar o puede hacerlo anonimamente, utilizando su tarjeta de credito? Muchas gracias por compartir!
Comentario de Imaginanet - Carlos - 21 de Agosto de 2012 - 07:37
Hola Eduardo, el pago es el total de todo el pedido, por lo que si lo abstraemos, cobramos un pedido en PayPal que en tu aplicación dicho pedido contiene N productos. Básicamente es PAGO 1:1 PEDIDO 1:N PRODUCTOS. Respecto a tu segunda pregunta, el usuario puede pagar con su cuenta PayPal o con una tarjeta de crédito MasterCard, VISA, etc. Saludos.
Comentario de lara - 29 de Diciembre de 2012 - 13:50
hola, a mi lo que me gustaria saber es como poner un botón en mi pagina web para que este te redireccione a paypal y ahí salga el importe total de mi carro ?? gracias .
Comentario de Migueledo - 17 de Febrero de 2013 - 17:03
Gracias, me fue muy util el articulo. Solo que no le llegué a como se prueba con localhost.
Comentario de Jose - 15 de Marzo de 2013 - 11:49
Me he leido todo el articulo y los comentarios, pero sigo teniendo una duda... He implementado paypal en mi pagina con el siguiente formulario: <input type="hidden" name="cmd" value="_xclick"> <input type="hidden" name="business" value="ID_cliente"> <input name="shopping_url" value="url_cliente" type="hidden"> <input type="hidden" name="item_name" value="Nombre"> <input type="hidden" name="amount" value="0.01"> <input type="hidden" name="item_number" value="1"> <input type="hidden" name="first_name" value="Nombre"> <input type="hidden" name="address1" value="Direccion"> <input type="hidden" name="city" value="Ciudad"> <input type="hidden" name="state" value="provincia"> <input type="hidden" name="zip" value="CP"> <input type="hidden" name="country" value="ES"> <input type="hidden" name="currency_code" value="EUR"> <input type="hidden" name="custom" value="10000001"> <input type="hidden" name="invoice" value="100"> <input type="hidden" name="return" value="pago_correcto.php"> <input type="hidden" name="cancel_return" value="pago_fallo.php"> <input type="hidden" name="notify_url" value="resultado_paypal.php"> <input type="hidden" name="rm" value="2"> <input type="hidden" name="cpp_header_image" value="logo.png"> Todo me funciona perfectamente. Mi gran duda es: ¿Como actualizo en mi base de datos que la compra esta hecha? He hecho el archivo resultado_paypal.php que lo he metido en el campo notify_url, pensando que ese archivo trabaja por detras de la parte publica de paypal. Le enviaba el valor del campo custom, con el ID de la compra, y le he hecho un UPDATE en mi BBDD, pero no pasa nada. Finaliza el proceso de compra, pero no se actualiza la BBDD. ¿Alguna idea de porque falla? Ese campo, el notify_url, ¿es para eso? Si no... ¿como podria hacerlo? Gracias por la ayuda... estoy atascado.
Comentario de carlos - 18 de Marzo de 2013 - 23:37
Hola a todos si me permiten preguntarles, estoy tratando de poner un botón de pago de paypal, cuando accedo la primera ves parece qe funciona pero a los dias cuando hago lo mismo me envia a la pagina de inicio de paypal y no al formulario de pago, les agradecería que me digan que estoy haciendo mal, y muchas gracias por adelantado
Comentario de andres jaraba - 07 de Abril de 2013 - 02:07
hola me gustaria que me ayudaran a agregar la foma de pago com mastercar y visa
Comentario de roy - 24 de Mayo de 2013 - 05:20
hola yo quiero vender un produto en mi web pero no se como poner el formulario y cuando el usuario aga la compra se envie el produto a su correo eletronico
Comentario de AGOSTINA - 24 de Agosto de 2013 - 16:11
Hola, tengo un problema al intentar registrarme en paypal. Cuando me pide el zip code (código postal)introduzco correctamente el numero de mi ciudad y me aparece como error. El código esta chequeado, es el correcto. Gracias y espero alguna respuesta. Saludos
Comentario de Miguel Andrade - 13 de Noviembre de 2013 - 19:06
Como puedo cobrar cantidades variables desde mi pagina web? es decir dejar un campo en blanco y se pueda teclear la cantidad a pagar
Comentario de Araceli - 21 de Diciembre de 2013 - 18:59
Estoy integrando Paypal en un sitio web que contiene artículos en una base de datos, mi pregunta es como hago para que no tenga que crear un botón para cada artículo sino que los vaya recogiendo de la base de datos o que direccione a la página de pagos de paypal una vez este el pedido terminado. La pagina esta realizada en PHP. Gracias por su ayuda anticipadamente.
Comentario de Luis - 15 de Septiembre de 2014 - 12:40
Buenas amigo. Yo logré poner todos los botones en cada articulo que vendo en mi página, pero la pregunta es ¿Hay un codigo donde yo puedo poner en el carrito que tengo, donde el cliente vea los articulos que está por pagar? Le agradesco mucho por la gran ayuda
Comentario de Henry - 11 de Mayo de 2015 - 19:18
Hola he leído todo el articulo y me he fijado que nadie a preguntado por la seguridad, por que de la manera en que has puesto el ejemplo para realizar los pagos es muy fácil cambiar el valor de los campos antes de hacer el pago, por ejemplo si le das a tu navegador inspeccionar elemento y luego te sitúas en el campo oculto de precio lo puedes poner a 1 y luego darle a pagar. Mi pregunta es como evitas esto si lo que necesitas es generar el formulario de pago de forma dinámica. Podrías echarme una mano , llevo buscando ya hace como 5 hora por internet y no encuentro una buena respuesta y encima los manuales de pypal están todos en ingles...gracias de antemano.
Comentario de Miguel - 20 de Junio de 2015 - 02:11
Amigo excelente post, queria saber si es posible que el cliente una ves llenado los datos del formulario al momento de regresar a la pagina de confirmacion estos datos viajaran hasta la pagina para capturarlos con algun metodo, ya sea get post o request, y asi autocompletar un formulario con detalles de un servicio de asesoria adquirido, agradeceria mucho si es posible hacer eso y que me orientaras en el camino correcto para lograrlo, muchas gracias!
Comentario de Roberto - 27 de Junio de 2015 - 11:44
Carlos infinitas gracias por este post y tu ayuda. Me has ayudado a salir de un gran problema que no veía su fin. Excelente trabajo. Nuevamente muchas gracias.
Comentario de Sergi - 14 de Abril de 2016 - 01:44
El post muy bueno de verdad. Creoq eu voy a aportar algo que peude que ayude. Para conocer datos de respuesta lo mas rapido y facil es, en la direccion de respuesta pasar las variables que te interese recuperar, por ejemplo, el numero de pedido. por ejemplo ?PayPal=OK&Id=1234 En mi caso con esto tendrias suficiente para saber si el pago esta OK o CANCELADO y el numero de pedido para ponerlo pagado o no en la base de datos. Por defecto mi recomendacion es ponerlo siempre como pendiente de pago, ya que si no dispones de un servidor HTTPS no puedes utilizar PayPal IPN, y si el usuario cierra el navegador o la pagina, sencillamente tu venta queda pendiente de pago por defecto. Y si hace el pago o lo cancela desde la pagina de PayPal pues tendras el retorno correcto a la pagina que has puesto. El tema que no he conseguido aun hacer es, que pasa si tengo varias lineas de productos, he intentado ir poniendo lineas de item_name, o lineas con item_name0, item_name1... pero no me lo coge. Gracias por todo.
Comentario de Daryl Segovia - 27 de Mayo de 2016 - 03:03
Hola, bueno he visto el código y es muy bueno, pero después de crear mi cuenta en https://developer.paypal.com/ y al poner mi correo electronico en el <input type='hidden' name='business' value='mi_cuenta_sandbox@mi_pagina.com'> al correr la aplicación web en un localhost no me sale nada, ¿solo funciona en html? por que estoy manejando ASP.NET con C# Saludos!
Ha habido un error en el envío
Comentario enviado. Será revisado por la moderación antes de ser publicado.

Deja tu comentario

Tu nombre:
Tu email:
Tu comentario: