Actualmente tenemos dos sitios web independientes de magento. Uno se comporta como escaparate y otro como back end. El usuario puede realizar el pedido en la parte frontal.
Así mismo orden que estoy tratando de crear mediante programación en el back-end. Cuando el usuario paga a través del checkmo
método de pago, funciona. Pero cuando el usuario paga a través de PayPal no funciona. Entonces, ¿alguien sabe cómo podemos crear pedidos mediante programación utilizando los métodos de pago de PayPal? ¿Es posible o no?
$quote->getPayment()->importData(array(3) {
[method] => paypal_express
[last_trans_id] => 65Y31421KL2753028
[additional_information] => Array
(
[paypal_express_checkout_shipping_method] =>
[paypal_payer_id] => 5LX84SUFY39L4
[paypal_payer_email] => abbas-buyer-2@bluewisesoft.com
[paypal_payer_status] => verified
[paypal_address_status] => Confirmed
[paypal_correlation_id] => b78b4e5e6e527
[paypal_express_checkout_payer_id] => 5LX84SUFY39L4
[paypal_express_checkout_token] => EC-7P402752023166448
[paypal_express_checkout_redirect_required] =>
[paypal_protection_eligibility] => Eligible
[paypal_payment_status] => pending
[paypal_pending_reason] => authorization
)
});
Error: la puerta de enlace de PayPal ha rechazado la solicitud. Ya se ha completado una transacción exitosa para este token (# 10415: Transacción rechazada debido a un argumento no válido. Consulte los mensajes de error adicionales para obtener más detalles).
Respuestas:
No es posible crear un pedido con el método de pago real de PayPal, ya que deberá realizar un pago real. Es por eso que PayPal rechaza la solicitud; También deberá enviar un token (para iniciar la solicitud) a PayPal para que puedan verificarlo.
Como en realidad no necesita un segundo pago, pero lo necesita para mantener registros (por lo que puedo leer), sería aconsejable crear un método de pago falso de PayPal para la otra instancia de Magento y establecerlo como método de pago al transferir el orden.
Como Inchoo ya explicó esto en detalle (no es tan difícil como parece, ya que solo necesitará implementar la parte de Magento) No lo copiaré / pegaré aquí, solo le daré el enlace; http://inchoo.net/magento/how-to-create-magento-payment-module/
¡Solo llámalo 'paypal_proxy_payment' o algo así y usa ese método y listo!
fuente
Estoy compartiendo un enlace en mi respuesta y revíselo y solo copie y pegue el código en su controlador personalizado, luego debe cambiar el método de pago
dentro
en lugar de
checkmo
usted puede escribir su método de pago.Por favor verifica esto.
fuente