Page 1 sur 1

Integration d'API EMC et passage de commande

MessagePublié: 16 Juin 2015, 11:24
par Sid
Bonjour à tous,

je suis actuellement auditeur au CNAM en développement web et, dans le cadre de mon projet de fin d'année, j'ai choisi pour sujet de réaliser l'intégration de l'API Envoi Moins Cher dans OpenCart.

Pour ceux qui connaissent pas (et comme son nom l'indique) cette API permet de recevoir la liste des transporteurs les moins chers pour un envoi donné et passe commande auprès de celui-ci.

Mon problème est que je ne sais où intégrer dans OpenCart la fonction qui permet de passer commande makeOrder()
( http://ecommerce.envoimoinscher.com/api/PhpDoc/classes/Env_Quotation.html#method_makeOrder )

Je suppose que cette fonction semble devoir être appelée après un payement (réussi)... Mais je ne vois pas où le contrôle du payement s'effectue.

J'espère que vous pourrez m'aider et je vous remercie par avance :)

Re: Integration d'API EMC et passage de commande

MessagePublié: 17 Juin 2015, 10:03
par lucho69
super nouvelle car cette API manque :-) ca ouvre des livraisons en colis relais par exemple

les paiements ont chacun un script de retour automatique : Paypal, Atos, SystemPay etc...
ca serait complexe de lier le transporteur au paiement

je pense plutot que ca se passe au moment de la confirmation de la commande , ici doit se faire je pense le choix de EMC
intégrer une API de transporteur touche à beaucoup de chose
dans Opencart, je pense que le mieux pour bien comprendre le processus est de télécharger un module de livraison et regarder ce qu'il touche :
- catalog/controller/checkout/checkout.php
- catalog/controller/checkout/shipping.php
- catalog/model/shipping/ source php de chaque transporteur
- les fichiers TPL etc...

Re: Integration d'API EMC et passage de commande

MessagePublié: 17 Juin 2015, 12:46
par Sid
Merci pour votre réponse.

En effet ça me semblait complexe et pas très "propre" de faire l'intégration au niveau des paiements.

Je suis en train de fouiller et la conclusion que j'en tire actuellement est que l'intégration de la fonction makeOrder() devrait se faire dans le fichier /catalog/controller/checkout/sucess.php

Pour le reste j'ai déjà intégré la partie admin et l'affichage des devis.
Le problème est que je ne peux pas m'inspirer d'autres transporteurs car Envoi Moins Cher passe lui même commande auprès du transporteur choisi par le client... D'où mon idée d'intégrer l'appel à la fonction makeOrder() au dernier moment, après confirmation de la commande.

Qu'en pensez-vous ?

Re: Integration d'API EMC et passage de commande

MessagePublié: 26 Juin 2015, 18:33
par lucho69
pas sur, car success n'est pas toujours utilisé : oui pour paiement Off line : cheque, virement, success affiche la page "merci" et envoie le mail
mais pour des paiements "on line" : paypal et CB , le script success n'est lancé que si l'acheteur a cliqué sur "retour boutique" dans le systeme banque, très peu le font ... la modif commande et le mail sont généré par les script "retourautro" de chaque mode de paiement

à mon avis, fais la demande tarif lorsque l'acheteur chosit EMC

Re: Integration d'API EMC et passage de commande

MessagePublié: 25 Août 2015, 20:25
par lucho69
attention aussi, si tu as FX comme code Pays = France Metro, ca ne marchera pas, il faut FR