Tutorial Nuevo PayPal Developer

paypal-transparent-300x225Recientemente, PayPal ha dado un lavado de cara a su sitio de pruebas, más conocido como PayPal Sandbox. Esto ha hecho que miles de usuarios se sientan perdidos. En nuestro blog hemos recibido muchísimos comentarios sobre este tema, y vamos a ponerle solución. Vamos a hacer un tutorial sobre el nuevo PayPal Developer, intentando de esta forma aclararos un poco el tema.

En primer lugar, sería muy aconsejable leer el artículo anterior sobre los cambios de PayPal, ya que nos ayudará a comprender un poco todos los cambios que PayPal está haciendo. Este tutorial esta orientado tanto a antiguos usuarios de PayPal Sandbox, como a nuevos usuarios del sistema de pruebas de PayPal.

Empezando

Ahora la dirección del sitio de pruebas ha cambiado. La nueva web es: https://developer.paypal.com/.

Cuando entramos, quizá nos aparezca una pantalla como esta:

Usuarios Existentes Sandbox

Es un mensaje dirigido a usuarios que ya tuvieran cuenta en PayPal Sandbox. Dice así:

«Usuarios de Sandbox ya existentes: Por favor, conectad con una cuenta de PayPal. Después de conectar, podréis importar vuestras cuentas de pruebas de Sandbox usando el correo electrónico y la contraseña que anteriormente usabais con Sandbox«.

Este es un cambio importante: ahora nuestra cuenta de PayPal y nuestra cuenta de Developer son la misma. Conectaremos con nuestra cuenta PayPal normal al sistema de pruebas, se ha unificado el inicio de sesión en una sola cuenta.

Por lo tanto, conectamos con nuestra cuenta de PayPal normal para acceder a nuevo PayPal Developer.

El entorno

La página de PayPal Developer ofrece cuatro pestañas en su menú:

  • Documentation: Documentación oficial del sistema.
  • Applications: Tus credenciales de API REST, cuentas de Sandbox y simulador de IPN.
  • Dashboard: Banco de pruebas. Podemos probar transacciones con la API REST (de momento, solo en EE.UU.), notificaciones de Sandbox, etc.
  • Support: Si necesitas más ayuda, aquí están los recursos necesarios.

Antiguos usuarios: Recuperar cuentas de PayPal Sandbox

Desde la pestaña Applications podemos recuperar las cuentas de PayPal Sandbox que teníamos antes. En el menú izquierdo, pulsamos Sandbox accounts, y vemos un mensaje como este:

Captura2

«Importe sus ya existentes cuentas de prueba de Sandbox usando la dirección de email y contraseña que anteriormente usaba en Sandbox. Asegurese de que las importa a la cuenta de PayPal que va a usar para desarrollo. Sólo puede hacer este paso una vez. Importar datos.»

Bueno, esto es interesante. Si queremos tener nuestra cuenta de desarrollo en PayPal separada de nuestra cuenta habitual para compras, lo ideal sería crear una nueva cuenta de PayPal, e importar los datos del Sandbox a la nueva cuenta. Es el momento de hacerlo, si es lo que queréis. En mi caso, he creado una cuenta nueva. Si no, pulsaremos en Import data.

Nos pedirá el email y la contraseña que usabamos para conectar con Sandbox. Una vez que los introduzcamos, nuestras antiguas cuentas de prueba de Sandbox quedarán asociadas a nuestra nueva cuenta de PayPal Developer.

Creando nuevas cuentas de pruebas

Si hemos llegado nuevos a este sistema y no llegamos a conocer nunca PayPal Sandbox, necesitaremos cuentas de prueba para nuestro sistema. En concreto, dos: una de comprador y una de vendedor. Te lo resumo:

  • Si has llegado hasta aquí, es porque tienes una tienda que acepta pagos con PayPal, estas desarrollando todo el sistema de conexión con PayPal, y necesitas probar que funciona bien antes de abrir tu tienda al público, algo lógico, normal y necesario.
  • Para las pruebas, necesitamos crear una cuenta Business (empresa, también conocida antes como Seller), que recibirá los pagos, y otra cuenta Personal (comprador, también conocida antes como Buyer) para realizar pagos.
  • Configurarás tus programas para que los pagos lleguen a la cuenta Business de pruebas, y crearás un nuevo usuario de prueba en tu tienda, que pagará con la cuenta Personal.

Es bastante simple. Vamos a crear las cuentas.

Entramos en «Applications» > «Sandbox accounts», y a la derecha hay un botón azul que resalta a la vista: «Create Account». Es posible que se nos pida loguear de nuevo, no os preocupéis.

Captura de pantalla 2013-04-24 a la(s) 12.46.06Aquí tenemos un formulario para crear la nueva cuenta. Datos importantes:

  • Country: Vamos a seleccionar España. Por defecto viene seleccionado United States, pero recordad que las nuevas APIs REST solo pueden utilizarse con cuentas PayPal americanas. Nosotros seguimos usando las APIs clásicas, así que seleccionamos España.
  • Account Type: Aquí es donde seleccionamos si la cuenta es comprador o vendedor. Personal es comprador y Business es vendedor.
  • PayPal Balance: El saldo de la cuenta de PayPal. Es una cuenta de pruebas, tendremos dinero ficticio. Sabed que esta cuenta no nos va a permitir hacer pagos mediante PayPal a vendedores que no usen cuenta de pruebas (es decir, a sitios finales), este dinero tiene el mismo valor que los billetes del Monopoly. En la imagen lo he marcado en rojo y con el texto «Saldo de PayPal», ya que veo que hay bastantes dudas con respecto al saldo de PayPal.
  • Log In with PayPal (sólo para la cuenta Business): Esto es nuevo. Si estamos creando la cuenta Business, se nos permite establecer un botón en nuestra web para que nuestros usuarios inicien sesión con PayPal en nuestra web. De esta forma, no tienen que registrarse en nuestra web (los registros siempre echan para atrás a más de uno), y tenemos sus datos presentes cuando hagan la compra en nuestra tienda.

Una vez creadas las cuentas, aparecerán en nuestra lista de cuentas de prueba. Nosotros hemos creado dos: paypal.business.001 y paypal.personal.001, pero vosotros podéis crear las que queráis (siempre que el sistema os lo permita).

La cuenta Personal

Podemos hacer click en una de las cuentas para que nos aparezcan sus opciones. En concreto son tres enlaces: Profile, Notifications y Sandbox site:

Profile

Captura3

  • Profile: Información de la cuenta (email, contraseña, etc.)
  • Funding: Datos bancarios de la cuenta, como el número ficticio de tarjeta de crédito, la cuenta ficticia de banco y el balance de saldo.
  • Settings: La opción «Payment review» permite revisar los pagos antes de que se hayan completado (por defecto, Off).
Notifications

Aquí vemos las notificaciones que llegan a esta cuenta, por ejemplo, cuando efectua un pago, cuando le llega un pago… vienen a ser los emails que llegan a nuestra cuenta de email cuando usamos PayPal.

Sandbox site

Captura4¡Aquí está! Desde este enlace podemos acceder al banco de pruebas de PayPal, y dentro debemos conectar con los datos de conexión que acabamos de crear con nuestra cuenta. Aparecerá un panel de control de PayPal normal, pero arriba de la página veremos «Sitio de Prueba», lo que denota que estamos en Sandbox. Podemos ver que hemos conectado en una web cuya URL es www.sandbox.paypal.com.

La cuenta Business

Al pulsar en «Profile» en la cuenta Business, encontramos una pestaña más entre «Profile» y «Funding»:

  • API credentials: Esta pantalla contiene la información necesaria para programar nuestro botón de «Pagar ahora con PayPal», así como las credenciales para las APIs clásicas.

Configurar la IPN

Ya hemos llegado a la configuración habitual de una cuenta PayPal (desde el enlace «Sandbox Site»), así que ahora podemos seguir los pasos de este tutorial para configurar nuestra IPN. Lo hemos actualizado, ya que algunos ajustes han cambiado de lugar.

Actualización (2/abril/2013): Sois muchos los que comentáis que el sistema no os deja acceder al Sandbox, y que constantemente os redirige a una página de «Inicie sesión», pero nunca conseguís iniciar sesión. La solución a esto, como bien comentan algunos de nuestros lectores, consiste en limpiar las cookies del navegador. Si usábais el sistema antiguo, las cookies de ese sistema impiden que funcione correctamente el nuevo.

Simulador IPN

También podemos probar que nuestro sistema IPN funciona correctamente desde PayPal Developer: «Applications» > «IPN Simulator».

En el campo «IPN handler URL» establecemos la URL a la que llegarán los datos IPN después de efectuar una transacción de PayPal, y en «Transaction type» establecemos qué tipo de transacción va a realizarse (por ejemplo «Cart checkout»). Al instante, aparecerán el resto de campos de una compra normal, que rellenaremos de forma que luego podamos comprobar fácilmente en nuestro sistema el pago de prueba que acabamos de hacer (por ejemplo, poniendo en el nombre «PAGO DE PRUEBA», o algo similar).

Esperamos que nuestro tutorial sobre el nuevo PayPal Developer os haya sido útil. Si tenéis más dudas, preguntadlas en los comentarios, e iremos completando el tutorial con las preguntas más frecuentes.

«La razón por la que Dios pudo crear el universo en seis días es que
no tuvo que preocuparse de hacerlo compatible con la versión anterior.»
.- Anónimo

¿Te ha gustado el artículo?
1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (4 votos, promedio: 5,00 sobre 5)
Loading...

Suscríbete. Déjanos tu email y recibe contenido genial cada mes


Artículo escrito por

¡Exprésate! Dejanos tu comentario

Tu dirección de correo electrónico no será publicada.

30 Comentarios

Ariadna

Hola, ya tengo configurados mi cliente y businees, cuando simulo la compra, paypal me devuelve un ID, después le envío una petición para que me devuelva información de la transferencia y solo me aparece un mensaje de "authorization", ¿existe alguna parte del sandbox donde pueda agregar la key que le permita a paypal conectar a mi webhook ?

Angel

Hola a tod@s! Muy interesante el articulo pero no he encontrado la información que necesitaba. Comento: Estoy intentando incluir un simple botón de Donar dentro de una aplicación android. En la documentación oficial me parece abrumadora y no se por donde empezar. Algún ejemplo sencillo para poder incluirlo en mi aplicación? Muchas gracias.

Alfredo

Es realmente genial todo el material que nos presentas de como hacer pruebas con paypal. Me sirvio bastante ya que yo si hice pruebas hace algun tiempo cuando era totalmente diferente, y ahora que necesito implemetarlo nuevamente, yo tenia una profunda confucion, ya que nada concordaba con los viejos conocimientos que tenia en mente. Mil Gracias por tu aportacion a la comunidad de desarrolladores de habla hispana, Saludos desde Mexico.

Carlos Magaña

Tengo el mismo problema ¿encontraste la solución?

Karel

Lo primero de todo, gracias por el tutorial. Estoy creando un carrito de compra y para comprobar que la el cobro de la misma funcione, quiero utilizar paypal, sin embargo, no más empezar tengo el siguiente problema. En la web no aparece el menú Applications, de manear que ... ¿cómo crear la cuenta para vender y cobrar? Gracias por adelantado

Alan Soto

Hola gabriela, tengo el mismo error que tu, podrias apoyarme si es asi que lo resolviste?.. saludos!.

Ayrton

como elimino mi cuenta de paypal sanbox

Alberto

Hola! Lo primero felicidades por tu blog, la verdad que está muy bien. Estoy siguiendo el tutorial pero me atasco aquí: La cuenta Business Al pulsar en “Profile” en la cuenta Business, encontramos una pestaña más entre “Profile” y “Funding”: API credentials: Esta pantalla contiene la información necesaria para programar nuestro botón de “Pagar ahora con PayPal”, así como las credenciales para las APIs clásica   No encuentro donde está esta opción. ¿Otra pregunta, como puedo hacer para que mi sitio sólamente venda con la modalidad de 'pago con aprobación previa'? Muchas gracias de antemano

The Poster

hola, tengo una tienda virtual y estube recibiendo un monton de ordenes pero me encontraba raro que el pago no llegaba y era que sin darme cuenta tenia el sandbox activado ahora lo desactive y ya estoy vendiendo otra ves… ahora mi pregunta es podria existir alguna posibilidad de cobrar ese dinero en paypal para no perder esos clientes que compraron en el modo sandbox o modo de prueba?? o que me recomiendan??

Ralf

gracias colega, estoy haciendo el entorno de pruebas desde 0 y me has ayudado muchisimo. La verdad es que desde que trabajo con paypal me he dado cuenta de que son un poco chapuceros en el sentido de diseño. Su aplicacion web no es nada intuitiva, incluso mantienen  links del viejo sandbox aumentando mas aun la ambiguedad y la confusion. Menos que estais vosotros los de codeigonexo para simplificar un poco este desproposito. Saludos

ernesto

Buenos dias. Necesito informacion de como escoger el boton para articulos varios, porque solamente me aparece el de un unico articulo. gracias .

Cuau

Hay algun tutorial sobre la nueva PAYPAL REST API apps, me interesa mucho, además del implementar el uso de Meses Sin Intereses, saludos!!!

Gabriela

Hola! estoy queriendo integrar paypal en mi web, por ahora en modo pruebas. Configure desde developer.paypal.com las direcciones de respuesta de ok, ko y notificaciones (IPN) y me funciona correctamente. Pero no logro crear un boton para comprar en el que pueda especificar el importe, el invoice y las url de rta...tengo esto: <form action="https://sandbox.paypal.com/cgi-bin/webscr" method="post" target="_top" name="paypalform" id="paypalform"> <input type='hidden' name='business' value='lic.gabrielamartinez@gmail.com'> <input type="hidden" name="cmd" value="_s-xclick"> <input type="hidden" name="item_name" value="Flores y Regalos"> <input type="hidden" name="amount" value="<?=$importe?>"> <input type="hidden" name="currency_code" value="USD"> <input name="rm" type="hidden" value="2"> <input name="return" type="hidden" value="<?=$payPalOk;?>"> <input name="cancel_return" type="hidden" value="<?=$payPalKo;?>"> <input name="notify_url" type="hidden" value="<?=$payPalNotificacion;?>"> <input type="hidden" name="invoice" value="<?=$pedido_id?>"> <input type="image" src="https://www.paypalobjects.com/es_XC/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal, la forma más segura y rápida de pagar en línea."> <img alt="" border="0" src="https://www.paypalobjects.com/es_XC/i/scr/pixel.gif" width="1" height="1"> </form>   y al direccionar a sandbox me dice este error: Parte de la información requerida es inexistente o está incompleta. Corrija sus entradas e intente de nuevo. No puedo darme cuenta que estoy haciendo mal. No se si estoy haciendo mezcla entre la version nueva y vieja o que es, ya que integre otra pasarela (mercado pago) y no tuve ningun problema. Si alguien puede darme una mano, se lo agradezco!!! saludos

Eva

Hola a todos. Soy nueva en esto así que tened un poco de paciencia comnigo por favor. Para hacer una prueba con Paypal sin haberme dado de alta ni haber entrado nunca ¿qué tengo que hacer?¿Hace falta crear una nueva cuenta normal con datos auténticos o inventados? Y si tengo que crearla es justo despues cuando tengo que pinchar en “Create Account” para hacer las cuentas Personal y la de Business ? Muchas gracias.

Alexis

Antonio

Hola a todos y gracias por este tutorial! Tengo pero unos problemas en usar SandBox en Prestashop. 1. He creado la cuenta en sandbox y tengo las credenciales Nombre Usuario API: ddddd contraseña de api: dddddd firma: xxxxxx 2. Las añado en la configuración de Prestashop/Paypal, en modo prueba/Sandbox 3. He creado un usuario merchant y un buyer 4. Cuando doy a comprar (solo si está en modo prueba) me devuelve PayPal response: TIMESTAMP -> 2013-06-26T21:29:25Z L_ERRORCODE0 -> 10002 L_SHORTMESSAGE0 -> Security error L_LONGMESSAGE0 -> Security header is not valid L_SEVERITYCODE0 -> Error Sabeis porque pasa esto? Gracias

Agustin Obradors

Hola, antes de nada felicidades por el tutorial !!! Teneis algun ejemplo del formulario que envia los datos de la compra al PayPal? Tengo este ejemplo que no me funciona. Cuando hago la llamada, no muestra nada en pantalla, y el usuario lo tengo configurado tal como indicais. Gracias

<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post" class="formulario" name="fDatostpv" target="iTpvvirtual" id="fDatostpv">
	<input name="cmd" type="hidden" value="_cart">
	<input name="upload" type="hidden" value="1">
	<input name="business" type="hidden" value="usuario@gmail.com">
	<input name="shopping_url" type="hidden" value="<? echo $tpv_url_comerc;?>">
	<input name="currency_code" type="hidden" value="EUR">
	<input name="return" type="hidden" value="<? echo $tpv_url_ok;?>">
	<input name="cancel_return" type="hidden" value="<? echo $tpv_url_ko;?>">
	<input name="notify_url" type="hidden" value="<? echo $tpv_url_noti;?>">
	<input name="rm" type="hidden" value="2">
	<input name="item_number_1" type="hidden" value="<? echo $tpv_ref;?>">
	<input name="item_name_1" type="hidden" value="<? echo $tpv_descripcio;?>">
	<input name="amount_1" type="hidden" value="<? echo $tpv_import;?>">
	<input name="quantity_1" type="hidden" value="1">
</form>
-->
 

Miguel Rodriguez

Hola! muchas gracias por la información sobre trabajar con paypal, me fue de gran ayuda, tambièn quería hacer algunas consultas. creé mis usuarios en sandbox, los estuve probandoy si puedo utilizarlos, realizar transacciones, ademàs pude hacer notificaciones de IPN (cierto tiene que ser una ruta completa que esta en la web, localmente no funciona). ahora tengo un inconveniente. ¿Cómo podría enviar un parámetro desde el formulario que aparece en paypal y poder recuperarlo desde la respuesta de paypal IPN?. Estoy haciendo el formulario comprar ahora, cuando el usuario presione en ese formulario, quiero enviar un parametro ejem: id_mensaje y cuando paypal me responde por la ruta IPN, alli quiero recuperar esa variable y poder procesarla, para saber que estoy enviado desde el formulario. ¿Cómo lo podría hacer? muchas gracias por tu respuesta..

Juan Viñas

Sí, es necesario borrar las cookies! Si no, está comprobado que falla.

Chema

Me estaba volviendo loco con lo del acceso al sandbox. Finalmente pude acceder a través de una ventana de navegación anónima (Ctrl+shift+N en Chrome). Supongo que borrando cookies como sugieres tambien funcionaría. Muchas gracias por la ayuda!

Juan Viñas

Es algo que procuro mantener siempre: un estilo de escritura directo, claro y comprensible, sin demasiada complicación o demasiadas explicaciones teóricas que lo único que hacen es confundir al lector. Se aprende a andar andando :) Aunque algo de teoría siempre tiene que haber para que las cosas se comprendan, por supuesto, pero hay muchas formas de explicarla :) Me alegro de que te guste y de que te haya sido útil, muchas gracias por confiar en nosotros :D

Migueledo Nuñez

Hola Juan Viñas, Gracias por refrescar el articulo, me ha sido muy util. Desde que Sandbox cambio habia estado desarrollando mi sitio Web y probando con dolares reales en Paypal real. Lo que pasa es que usaba montos de 0.02 y 0.03 USD, entonces no se ven los montos de impuestos ni importes de envio porque quedan en cifras demasiado bajas. Pero ahora, con estas indicaciones y lo de borrar las cookies anteriores, he logrado rehacer las cuentas en Sandbox y ya estoy en la parte del IPN. Me agradan articulos como los tuyos por claros y concisos. Saludos desde Costa Rica, Centroamerica.  

Juan Viñas

Por lo que he visto, existen una serie de numeros falsos de tarjetas de crédito que se pueden usar en PayPal Sandbox. Las encontrarás en este enlace: PayPal Sandbox Credit Cards. No las hemos probado, así que no te puedo decir de primera mano que funcionarán. Sí te puedo decir que las he encontrado en varias webs/foros, uno de ellos propio de PayPal. Te agradeceríamos que nos contases si te han servido :)

Ernesto

Hola, muchas gracias por el manual. Siguiéndolo paso a paso he conseguido crear los usuarios (vendedor y comprador) y simular una venta de un usuario que ya está registrado en PayPal. Lo que no he conseguido, y no acabo de encontrar por Internet, es cómo hacer para simular una venta de alguien que no está registrado en Paypal pero que quiere pagar con tarjeta usando PyP. Agradecería mucho cualquier indicación de cómo hacerlo. Un saludo y muchas gracias de antemano.

Juan Viñas

Lo cierto es que es la primera vez que oigo ese error... Es raro que no te deje crear cuentas en Sandbox. He estado indagando un poco y quizá estés poniendo algún dato mal. Según este enlace, al escritor de esta entrada le pasaba lo mismo, y su error era que escribía una cifra muy alta en el balance, que solo puede estar entre 1 y 5000.

Eduardo Castro

Buenos dias. Cuando trato de crear una cuenta en sandbox me da el siguiente mensaje. "We're sorry but something went wrong.Please delete this account and try again." pero lo raro que solo una vez pude hacerlo. y eso que solo tengo dos cuentas una de negocios y otra personal. que estaré haciendo mal. Saludos

Juan Viñas

Sí, es lo que están comentando muchos, que al limpiar las cookies se soluciona ese tema. ¡Gracias por compartirlo con nosotros! :D

David J

Buenas, por fin he conseguido entrar en el sitio de pruebas con la cuenta personal ficticia, he tenido que arrancar con el firefox y funciona, imagino que tiene que ver con el tema de cookies ya que el firefox casi no lo uso y nunca entro a paypal por aquí, eso quiere decir que estaría limpio de cookies y no hay historial. Ahora a probar por fin! gracias por la ayuda! Saludos

Juan Viñas

Si quieres configurar la información IPN, tienes que loguear con los datos de la cuenta ficticia Business que has creado. Lo que comentas es raro, yo sí he conseguido hacer todos los pasos (el tutorial lo fui escribiendo según lo iba haciendo). En esta otra entrada recomiendan que borres las cookies de PayPal, quizá eso solucione tu problema.

David J

gracias por el tutorial, ojalá fuera así de fácil, pero cuando dentro de la cuenta personal creada le doy a sandbox site para las pruebas me pide loguear otra vez, se supone que hay que poner los datos de la cuenta personal o la de business? , con la de personal introduzco mis datos de login y siempre me sale lo mismo: Inicie sesión para utilizar las funciones del entorno de pruebas de PayPal. (es como un bucle, siempre voy al mismo sitio) Creo que había a más de uno que le pasaba lo mismo.