===== Note de développement ===== ===== Contrôle de source de commande ===== Cette note technique est écrite pour les développeurs, pour les aider à résoudre la question de l'identification des différentes sources de factures/commandes pour l'application d'une remise partenaire. La remise devra vérifier que la transaction en cours est dans l'un des cas suivant, et l'activer si le paramétrage le permet : ==== Bons de commandes “apportés” par un partenaire par le pré-remplissage du panier : code E ==== Toute facture/transaction (objet local_shop\Bill) est assimilable à une facture "apportée" si : * Le compte "customerid" de la facture n'est pas le compte du partenaire associé dans l'objet local_shop\Partner * L'objet local_shop\Bill est taggué (bill->record->partnerkey) sur la clef partenaire. ==== Bons de commande créés sous le compte client partenaire : code I ==== Les factures/transactions crées sous le compte cient du partenaire ne doivent vérifier qu'une seule condition : celle d'être associes à un customerid correspondant au customerid associé au Partner. Il faut donc une cohérence entre : Partner->customerid et Bill->customerid, ==== Bons de commande auto-générés pour le partenaire (activation produits) : code A ==== Les bons de commandes auto générés sont des factures/bons de commande (local_shop/Bill) dont un des items de commande est un produit associé à un gestionnaire de type "registered_product". Comme la condition est assez indirecte, il conviendra de voir comment elle peut être plus explicitée. La facture/comande doit de plus être associe au client "customerid" associé à l'objet Partner. Il faut donc une cohérence entre : Partner->customerid, Bill->customerid, et vérifier qu'un des produits (BillItem) est du type "registered_product". Dans l'état actuel de la boutique, seules les transactions automatisées peuvent acheter des produit de type "registered_product" [[:local:shop:structure:discounts:partner|Retour]]