webapps pay para pal myapps integrar developers developer boton applications rest paypal paypal-sandbox

rest - pay - sandbox login



Pague con Paypal a través de la API REST de Paypal. No aparece la descripción del pago en Paypal Sandbox o sitios en vivo. (2)

Gracias. ¡Madhu recuerda usar la biblioteca de api-resto!

Details amountDetails = new Details(); amountDetails.setSubtotal(autoregistro.getPedido().getItems().get(0).getTotal().toPlainString()); amountDetails.setTax("0"); amountDetails.setShipping("0"); Amount amount = new Amount(); amount.setCurrency("USD"); amount.setTotal(autoregistro.getPedido().getItems().get(0).getTotal().toPlainString()); // amount.setTotal("7.47"); // Los decimales deben ser con punto amount.setDetails(amountDetails); Item item = new Item(); item.setCurrency("USD"); item.setQuantity("1"); item.setName(autoregistro.getPedido().getItems().get(0).getDescripcion()); item.setPrice(amountDetails.getSubtotal()); List<Item> items = new ArrayList<Item>(); items.add(item); ItemList itemList = new ItemList(); itemList.setItems(items); Transaction transaction = new Transaction(); transaction.setDescription(item.getName()); transaction.setAmount(amount); transaction.setItemList(itemList); List<Transaction> transactions = new ArrayList<Transaction>(); transactions.add(transaction); Payer payer = new Payer(); payer.setPaymentMethod("paypal"); // payer.setPaymentMethod("credit_card"); Payment payment = new Payment(); payment.setIntent("sale"); payment.setPayer(payer); payment.setTransactions(transactions); RedirectUrls redirectUrls = new RedirectUrls(); redirectUrls.setCancelUrl(this.configParameters.getAutoregistroURL() + "/pay_paypal?cancel=true"); redirectUrls.setReturnUrl(this.configParameters.getAutoregistroURL() + "/pay_paypal?success=true"); payment.setRedirectUrls(redirectUrls); Payment createdPayment = payment.create(apiContext);

Estoy implementando el nuevo método REST API Pay Pay con Paypal que se puede consultar aquí: https://developer.paypal.com/webapps/developer/docs/integration/web/accept-paypal-payment/

El pago se ejecuta correctamente, exactamente como debería ser. El usuario elige pagar con Paypal y luego es redirigido al sitio de Paypal, donde se espera que inicie sesión y apruebe el pago. Los datos JSON que estoy enviando a Paypal son más o menos lo que se especifica en el enlace anterior y el mío se ve así:

{ "intent":"sale", "redirect_urls":{ "return_url":"http://<return URL here>", "cancel_url":"http://<cancel URL here>" }, "payer":{ "payment_method":"paypal" }, "transactions":[ { "amount":{ "total":"7.47", "currency":"USD" }, "description":"This is the payment description." } ]

}

A medida que redirige al usuario al sitio web de PayPal, la columna de descripción y cantidad total se muestra en blanco

No estoy seguro de si esto es un error en la API REST de Paypal, pero creo que estoy brindando la descripción necesaria + el pago del monto que se reflejará en esta página. Si no se muestra esta información, por lo general es un impedimento para el usuario, ya que definitivamente les gustaría ver el monto que están pagando en el sitio de Paypal, a pesar de que esta cantidad figura en mi sitio web.

Esto es lo que parece:

Para aquellos que desean indicar que el usuario no ha iniciado sesión, bueno, incluso después de iniciar sesión, la descripción y la columna de compra actual permanecen en blanco.

¿Me falta algún parámetro que deba enviarse a Paypal para indicar los datos de esta descripción?

Nota: Este problema persiste tanto para los servidores en vivo como para los servidores de espacio aislado.


La bandeja de la izquierda en la página superior muestra: 1. Detalles del artículo de la orden. Puede incluir una lista de elementos como parte de los detalles de la transacción en el recurso de pago. Lo mismo se mostrará aquí. 2. Componentes del monto de la transacción, por ejemplo, monto de envío, impuestos, etc., si los incluye en la solicitud.

Pruebe esta solicitud para ver un ejemplo:

{ "intent": "sale", "payer": { "payment_method": "paypal" }, "redirect_urls": { "return_url": "http://<return url>", "cancel_url": "http://<cancle url>" }, "transactions": [ { "amount": { "total": "8.00", "currency": "USD", "details": { "subtotal": "6.00", "tax": "1.00", "shipping": "1.00" } }, "description": "This is payment description.", "item_list": { "items":[ { "quantity":"3", "name":"Hat", "price":"2.00", "sku":"product12345", "currency":"USD" } ] } } ] }