Dokos v4 intégration WooCommerce

Bonjour à tous,

Après quelques temps sur ERPNext je viens de découvrir Dokos et ça me plait bien !

Est-ce qu’il y a une intégration WooCommerce prévue pour la v4 ? Ou par magie serait ce possible d’installer Woocommerce_fusion ? (GitHub - dvdl16/woocommerce_fusion: WooCommerce connector for ERPNext v15)

Merci d’avance pour vos réponses :slight_smile:

Mylo

Bonjour @Mylo, bienvenue sur le forum :wave:

Il existe déjà une intégration WooCommerce faite par l’équipe Dokos qui couvre quelques fonctions essentielles :

Je n’ai jamais testé WooCommerce Fusion, mais a priori la compatibilité avec Dokos est une possibilité, à tester. C’est néanmoins difficile de garantir le fonctionnement des applications externes comme celles-ci.

1 Like

Merci @corentin :slight_smile:

Si cette intégration fonctionne toujours la v4 c’est formidable !

Sur la doc c’est mentionné v3 alors j’ai eu peur.

Bonjour Mylo,

C’est un erreur dans la documentation, merci de la signaler, nous allons la mettre à jour dans la journée.
Je vous confirme que nous maintenons cette application et qu’elle est pleinement compatible avec la v4 de Dokos.

Bonne journée

1 Like

Merci pour vos réponses :slight_smile:

Je test dokos depuis quelques jours maintenant et tout fonctionne bien mais il y a un détail qui me chagrine. Je n’arrive pas à mettre par défaut le calcul de la TVA sur le prix TTC.

J’ai modifié la valeur par défaut du champ dans « personnaliser formulaire » :

Si je fais passer le champ en lecture seule ça fonctionne mais pas si je change la valeur par défaut. Le prix continue de se calculer à partir du HT.

Edit: J’ai finalement vu qu’il fallait simplement cocher la case « Cette taxe est-elle incluse dans le total net ? » dans les modèles de taxe

Merci

1 Like

Salut l’équipe Dokos c’est encore moi.

J’ai encore une petite question par rapport à l’intégration WooCommerce:

La création de champs personnalisés dans commande ou facture semble empêcher l’intégration de fonctionner normalement (les commandes ne sont pas créées).

Est-ce qu’il existe un moyen de contourner le problème ?

Bonjour,

S’il s’agit de champs personnalisés obligatoires, alors il faut bien veiller à définir une valeur par défaut (ou alors trouver un autre moyen de les remplir), sinon le document ne pourra pas être créé par le système.

Bonjour Corentin,

Ce ne sont pas des champs personnalisés obligatoires.

Quand je rajoute un champ personnalisé et que j’active la synchronisation avec woocommerce j’ai cette erreur

Citation :
Traceback with variables (most recent call last):
File « apps/frappe/frappe/utils/background_jobs.py », line 235, in execute_job
retval = method(**kwargs)
site = ‹  ›
method = <function _process_order at 0x7e9bd670b600>
event = None
job_name = ‹ dokos_woocommerce.woocommerce.doctype.woocommerce_order.woocommerce_order._process_order ›
kwargs = {‹ order ›: ‹ new-woocommerce-order-tqgrhkzkzu ›}
user = ‹  ›
is_async = True
retry = 0
retval = None
method_name = ‹ dokos_woocommerce.woocommerce.doctype.woocommerce_order.woocommerce_order._process_order ›
actual_func_name = ‹ dokos_woocommerce.woocommerce.doctype.woocommerce_order.woocommerce_order._process_order ›
before_job_task = ‹ frappe.monitor.start ›
e = DoesNotExistError(‹ Commande WooCommerce new-woocommerce-order-tqgrhkzkzu introuvable ›)
File « apps/dokos_woocommerce/dokos_woocommerce/woocommerce/doctype/woocommerce_order/woocommerce_order.py », line 59, in _process_order
woocommerce_order_doc = frappe.get_doc(« Woocommerce Order », order)
order = ‹ new-woocommerce-order-tqgrhkzkzu ›
File « apps/frappe/frappe/init.py », line 1322, in get_doc
doc = frappe.model.document.get_doc(*args, **kwargs)
args = (‹ Woocommerce Order ›, ‹ new-woocommerce-order-tqgrhkzkzu ›)
kwargs = {}
frappe = <module ‹ frappe › from ‹ apps/frappe/frappe/init.py ›>
File « apps/frappe/frappe/model/document.py », line 83, in get_doc
return controller(*args, **kwargs)
args = (‹ Woocommerce Order ›, ‹ new-woocommerce-order-tqgrhkzkzu ›)
kwargs = {}
doctype = ‹ Woocommerce Order ›
controller = <class ‹ dokos_woocommerce.woocommerce.doctype.woocommerce_order.woocommerce_order.WoocommerceOrder ›>
File « apps/frappe/frappe/model/document.py », line 126, in init
self.load_from_db()
self = <WoocommerceOrder: new-woocommerce-order-tqgrhkzkzu>
args = (‹ Woocommerce Order ›, ‹ new-woocommerce-order-tqgrhkzkzu ›)
kwargs = {}
class = <class ‹ frappe.model.document.Document ›>
File « apps/frappe/frappe/model/document.py », line 172, in load_from_db
frappe.throw(
self = <WoocommerceOrder: new-woocommerce-order-tqgrhkzkzu>
get_value_kwargs = {‹ for_update ›: None, ‹ as_dict ›: True, ‹ order_by ›: None}
d = None
class = <class ‹ frappe.model.document.Document ›>
File « apps/frappe/frappe/init.py », line 637, in throw
msgprint(
msg = ‹ Commande WooCommerce new-woocommerce-order-tqgrhkzkzu introuvable ›
exc = <class ‹ frappe.exceptions.DoesNotExistError ›>
title = None
is_minimizable = False
wide = False
as_list = False
File « apps/frappe/frappe/init.py », line 609, in msgprint
_raise_exception()
msg = ‹ Commande WooCommerce new-woocommerce-order-tqgrhkzkzu introuvable ›
title = None
raise_exception = <class ‹ frappe.exceptions.DoesNotExistError ›>
as_table = False
as_list = False
indicator = ‹ red ›
alert = False
primary_action = None
is_minimizable = False
wide = False
realtime = False
sys = <module ‹ sys › (built-in)>
_raise_exception = <function msgprint.._raise_exception at 0x7e9bcf8bb060>
inspect = <module ‹ inspect › from ‹ /usr/lib/python3.12/inspect.py ›>
out = {‹ message ›: ‹ Commande WooCommerce new-woocommerce-order-tqgrhkzkzu introuvable ›, ‹ title ›: ‹ Message ›, ‹ indicator ›: ‹ red ›, ‹ raise_exception ›: 1, ‹ __frappe_exc_id ›: ‹ ee9c7eac74f7b35554586cfdea452806688ddd136a5e18ebe099994e ›}
File « apps/frappe/frappe/init.py », line 557, in _raise_exception
raise exc
exc = DoesNotExistError(‹ Commande WooCommerce new-woocommerce-order-tqgrhkzkzu introuvable ›)
inspect = <module ‹ inspect › from ‹ /usr/lib/python3.12/inspect.py ›>
msg = ‹ Commande WooCommerce new-woocommerce-order-tqgrhkzkzu introuvable ›
out = {‹ message ›: ‹ Commande WooCommerce new-woocommerce-order-tqgrhkzkzu introuvable ›, ‹ title ›: ‹ Message ›, ‹ indicator ›: ‹ red ›, ‹ raise_exception ›: 1, ‹ __frappe_exc_id ›: ‹ ee9c7eac74f7b35554586cfdea452806688ddd136a5e18ebe099994e ›}
raise_exception = <class ‹ frappe.exceptions.DoesNotExistError ›>
frappe.exceptions.DoesNotExistError: Commande WooCommerce new-woocommerce-order-tqgrhkzkzu introuvable

Merci pour votre aide

Je me permets une petite relance, c’est le dernier petit détail manquant pour une config’ parfaite :slight_smile:

Où apparaît l’erreur ? new-woocommerce-order-tqgrhkzkzu est le nom d’un document créé manuellement depuis le Bureau mais qui n’a pas été encore enregistré. Il faut enregistrer le document avant de cliquer sur le bouton « Réessayer ».