alex.td Posted February 24, 2014 Share Posted February 24, 2014 (edited) Bonjour à tous,J'ai installé un module de paiement (fournis par ma banque) mais il ne gère pas correctement un cas particulier : si un paiement est raté, on peut retenter l'opération immédiatement, réussir le paiement la deuxième fois et pourtant le dossier reste en 'erreur de paiement'. Le module actuellement fait ça : paiement réussi => le module crée un dossier en "paiement accepté" avec $this->validateOrder(...) paiement raté => le module crée un dossier en "erreur de paiement" avec $this->validateOrder(...) paiement raté puis réussi => c'est là que le module coince. $this->validateOrder(...) ne marche plus vu que le dossier existe déjà : il a été créé au moment du paiement raté et je le retrouve bien avec : $id_order = Order::getOrderByCartId(intval($ref)); J'ai tenté : $history = new OrderHistory(); $history->id_order = $id_order; $history->changeIdOrderState(_PS_OS_PAYMENT_, $id_order); Mais ça ne marche que très partiellement : une ligne (new OrderPayment()) apparait dans la boite "paiement" du dossier (dans le bo presta) mais sans que le transaction_id ne soit conservé, le dossier n'a pas de nouvelle ligne d'état qui dirait "paiement accepté" et pas de mail de "confirmation de commande" ... J'ai tenté ensuite : $order=new Order($id_order); $order->setCurrentState(_PS_OS_PAYMENT_); Ça marche presque bien : une ligne apparait dans la boite "paiement" du dossier avec le lien vers la facture, mais toujours pas de transaction_id, le dossier change bien d'état et apparait en "paiement accepté", je reçois le mail "paiement accepté", mais toujours pas de mail de "confirmation de commande" ... J'ai mème tenté de rajouter : $order->addOrderPayment(Tools::ps_round((float)$custom['montant_sent'], 2), null, $custom['id_trans']); J'étais content, j'avais bien ma ligne avec le transaction_id, mais en plus de celle que prestashop a quand même ajoutée : ça m'a valu une grosse notice rouge disant "Attention 2x payé au lieu de x"...Si quelqu'un pouvait me donner un coup de pouce, d'avance merci. PS: j'ai oublié de préciser PS 1.5.4.1 Edited February 24, 2014 by alex.td (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now