Estoy creando un sitio web donde vamos a organizar eventos y nos gustaría que un usuario "USUARIO A" pueda iniciar un evento: ingrese la información de su cuenta paypal y establezca un precio . Luego, otros usuarios pueden registrarse para su evento y pagar al USUARIO A directamente, sin que nosotros tengamos que procesar su tarjeta de crédito. Nos gustaría que los usuarios que no tienen cuentas de PayPal puedan pagar con una tarjeta de crédito.PayPal Adaptive Payment Api pre-populate user data
Parece que el pago adaptable de Paypal es la mejor API que podemos usar para lograr esto. Lo tengo trabajando en el entorno de sandbox. Mi problema es este: un usuario hace clic para registrarse para el evento del USUARIO A, luego ingresa toda su información (nombre, dirección, empresa, etc.). Necesitamos mantener esta información en nuestra Base de datos, así que esto debe hacerse primero. Luego, harán clic en un botón que dice "Pagar con Paypal". Esto crea una clave de pago y redirige al usuario a la página de inicio de sesión de Paypal donde el usuario tiene 2 opciones (a. Iniciar sesión en PayPal o ingresar información personal nuevamente e información de tarjeta de crédito)
Quiero saber cómo puedo lograr tener todo los campos ya están completados en la página de Paypal, por lo que el usuario no tiene que volver a ingresar toda su información. Podrán eliminar datos en los cuadros de texto si la dirección de facturación es diferente. Pero todos los sitios web que he visto nunca hacen que el usuario ingrese esta información dos veces si son idénticos. Ahora sé que esto es posible porque he visto que otros sitios lo hacen. He investigado la API de SetPaymentOptions, pero no está muy claro cómo funciona, y necesito que se apruebe la información del usuario, incluso si Paypal ya no los conoce.
He intentado añadir los valores como se sugiere en tutoriales Paypal como esto
<INPUT TYPE="hidden" NAME="first_name" VALUE="John">
<INPUT TYPE="hidden" NAME="last_name" VALUE="Doe">
<INPUT TYPE="hidden" NAME="address1" VALUE="9 Elm Street">
pero eso no funcionó, aquí es los datos en bruto del violinista de la solicitud:
POST https://svcs.sandbox.paypal.com/AdaptivePayments/Pay HTTP/1.1
Content-Type: text/xml;charset=utf-8
X-PAYPAL-SECURITY-USERID: scotts_XXXXXXXXX_biz_api1.live.com
X-PAYPAL-SECURITY-PASSWORD: 1344XXXXX
X-PAYPAL-SECURITY-SIGNATURE: AOLbPDojAEUdeQJ3wXagJXkxYeJDARg4IXXXXXXXXXXXXXXXXXXX
X-PAYPAL-SERVICE-VERSION: 1.1.0
X-PAYPAL-APPLICATION-ID: APP-80W2844XXXXXXXXX
X-PAYPAL-REQUEST-DATA-FORMAT: XML
X-PAYPAL-RESPONSE-DATA-FORMAT: XML
Host: svcs.sandbox.paypal.com
Content-Length: 810
Expect: 100-continue
Connection: Keep-Alive
He estado investigando esta pregunta y es posible que tenga una idea; sin embargo, me gustaría saber qué enfoque se tomó para poder construir correctamente una respuesta (posible). ¿Lo hiciste? ¿Cómo se menciona aquí http://stackoverflow.com/questions/2849314/paypal-adaptive-payment-api-call-with-c-sharp-net-preference-with-webservices o usaste una biblioteca como como este http://xadaptivepayments.codeplex.com/ o algo completamente diferente? ¿Alguna posibilidad de publicar el código donde realizas la solicitud a paypal y a cualquier metadato de apoyo? – bUKaneer
Tomé el enfoque en la pregunta a la que tiene un enlace, la biblioteca codeplex no iba a ser una opción ya que no hay una fuente para su archivo dll, y el uso de un archivo DLL que no fue escrito por nosotros, y que no contener la fuente no nos permitiría seguir siendo pci obedientes, publicaré una solicitud de muestra de fiddler –
pregunta actualizada –