Hola, es un errror debido al cambio de las api´s de paypal. De hecho llevan semanas sin arreglar el problema.
¿ Como arreglar el problema del estado de pago de paypal en virtuemart 3 ?
Ir al archivo /plugins/vmpayment/paypal/paypal.php y encima de la linea 719 aproximamdamente…
$cart = VirtueMartCart::getCart();
hay que añadir las siguientes lineas de código.
$modelOrder = VmModel::getModel ('orders');
$order = array();
$order['order_status'] = 'C';
$modelOrder->updateStatusForOneOrder ($virtuemart_order_id, $order, TRUE);
Quedando así:
//We delete the old stuff
// get the correct cart / session
$modelOrder = VmModel::getModel ('orders');
$order = array();
$order['order_status'] = 'C';
$modelOrder->updateStatusForOneOrder ($virtuemart_order_id, $order, TRUE);
$cart = VirtueMartCart::getCart();
$cart->emptyCart();
return TRUE;
}
A mi me funiona perfectamente. Hazlo y comenta.