chateau.fr Posted November 11, 2009 Share Posted November 11, 2009 Bonjour à tous,Après maintes recherches sur les forums, je n'ai pas trouvé de réponse s'il était possible ou non de spécifier une TVA pour un groupe de clienst, le but évident étant la vente aux professionnels et aux particuliers :- Particuliers : TTC- Pros : HTMerci pour vos réponses.A l'attention de la team : le calcul des taux de TVA est un sujet complexe, Magento refond la totalité de ses calculs dans la version 1.4, tant les problèmes ont été présents.Samuel Link to comment Share on other sites More sharing options...
chateau.fr Posted November 13, 2009 Author Share Posted November 13, 2009 1) Ajouter le champ TVA à la table group ALTER TABLE `PREFIXE_group` ADD `tva` TINYINT( 1 ) NOT NULL DEFAULT '1' AFTER `reduction` 2) Rajouter champ tva sur les groupes/admin/tabs/AdminGroups.phpLigne 36 on affiche dans le listing des groupes le champ TVA 'tva' => array('title' => $this->l('Tva'), 'width' => 50, 'align' => 'right'), Ligne 76 on ajoute le champs TVA dans le formulaire de création de groupe : '.$this->l('Tva:').' Oui <input type="radio" name="tva" value="1" '.($this->getFieldValue($obj, 'tva') ? 'checked' : '').' /> Non <input type="radio" name="tva" value="0" '.(!$this->getFieldValue($obj, 'tva') ? 'checked' : '').' /> 3) On déclare le nouveau champ dans notre objet "Group"/classes/Group.phpLigne 25 : /** @var bool Tva */ public $tva; Ligne 53 : $fields['tva'] = intval($this->tva); Ligne 97 on ajoute la fonction pour savoir si le client est assujetti à la TVA ou non : static public function getTva($id_customer) { $result = Db::getInstance()->getRow(' SELECT g.`tva` FROM `'._DB_PREFIX_.'group` g LEFT JOIN `'._DB_PREFIX_.'customer_group` cg ON (cg.`id_group` = g.`id_group`) WHERE cg.`id_customer` = '.intval($id_customer).' ORDER BY g.`tva` ASC'); return $result['tva']; } 4) On déclare la TVA à zéro si le client fait partie du groupe sans tva /classes/Tax.phpLigne 170 : if(!Group::getTva($cart->id_customer)) return 0 ; Samuel Link to comment Share on other sites More sharing options...
Shadow aok Posted November 13, 2009 Share Posted November 13, 2009 Cela peut être utile sauf que si le client s'enregistre et passe commande immédiatement, on n'aura pas eu le temps de le mettre dans le bon groupe.Il faudrait pouvoir sélectionner Particulier ou Professionnel (avec numéro de TVA intra-communautaire) pour dispatcher automatiquement un utilisateur dans le bon groupe dès sa création. Link to comment Share on other sites More sharing options...
Fabrice Posted November 14, 2009 Share Posted November 14, 2009 tout à fait Shadow - et merci chateau pour l'info. il reste plus à la team qu'à intégrer cette fonctionnalité... (nan, je ne rêve pas...) Link to comment Share on other sites More sharing options...
jolvil Posted November 14, 2009 Share Posted November 14, 2009 Attention ! Pour la vente aux professionnels en France, ce n'est qu'un probleme d'affichage des prix HT au lieu de TTC puisqu'au final il payera la TVA lors de l'achat.Ce n'est qu'a l'export que la TVA n'est pas incluse dans le prix.On a donc 2 cas de figure.Est ce que cette modif affiche le HT ou exclut la TVA?Sujet interessant sur la tva et les ventes a l'export:http://www.prestashop.com/forums/viewthread/470A noter que le svn a corrigé le calcul de la TVA en le calculant selon l'adresse de livraison et non selon l'adresse de facturation comme c'est le cas pour jusqu'a PS1.2.PS1.3 verra donc le mode de calcul de la TVA changé ! Link to comment Share on other sites More sharing options...
chateau.fr Posted November 14, 2009 Author Share Posted November 14, 2009 Bonjour,En général quand une société s'inscrit sur un site elle doit être validée par la société qui gère le site, qui après validation le met dans le bon groupe, sinon moi en tant que particulier je m'inscris, puis j'achète HT. "Attention ! Pour la vente aux professionnels en France, ce n’est qu’un probleme d’affichage des prix HT au lieu de TTC puisqu’au final il payera la TVA lors de l’achat." Je ne vois pas de quoi vous voulez parler, de la façon dont je l'ai codé, il paye HT."Ce n’est qu’a l’export que la TVA n’est pas incluse dans le prix." Hors union européenne uniquement.Vivement la 1.3Samuel Link to comment Share on other sites More sharing options...
GouMs Posted November 16, 2009 Share Posted November 16, 2009 Bonjour,Merci chateau.fr pour la solution.J'essaye moi aussi de différencier un accès pro et un accès particulier sur ma boutique. Pour aller un peu plus loin dans la réflexion sur les deux groupes de clients pros et particuliers, savez-vous comment faire pour:- Définir des prix pros et des prix particuliers pour chaque produit. Pas simplement un pourcentage de remise sur toute la boutique.- Créer des comptes clients pour des personnes morales au lieu de personne physiques (pas de champs Nom et Prénom mais Raison sociale, Siret,...)Merci d'avance pour les éventuelles pistes Link to comment Share on other sites More sharing options...
chateau.fr Posted November 16, 2009 Author Share Posted November 16, 2009 Salut !Pour les comptes clients, il suffit de rajouter quelques champs au formulaire d'inscription, les ajouter aussi à la commande, c'est pas grand chose, je pense qu'il faut garder les noms prénoms de l'interlocuteur c pas si mal même pour une société En ce qui concerne les tarifs de produit par groupe (déjà il faudrait pouvoir dire si un produit fait partie de tel ou tel groupe) c'est déjà un peu plus de modifications parmis les classes, mais je suis actuellement dessus Je suis également sur le fait de pouvoir charger selon le nom de domaine les produits de tel ou tel groupe (en fait un groupe reviendrait à un nom de domaine) pour avoir 2 boutiques bien séparées, mais ça reste une pointe lourd comme modifications.Prestashop n'a visiblement pas du tout été prévu pour ce genre de choses.Dans tous les cas toi et moi avons le même problème Mais je vais coder tout ça, car je suis obligé de l'avoir.Mais dans la liste des fonctionnalités à venir il est spécifié :"Gestion de plusieurs boutiques" ce qui à priori réglera notre problème, mais quand, je ne sais pas du tout, petit appel à la team prestashop ?http://www.prestashop.com/fr/features#feature4Samuel Link to comment Share on other sites More sharing options...
GouMs Posted November 16, 2009 Share Posted November 16, 2009 Hello,On a effectivement le même problème, puisque mon idée de base est aussi d'avoir l'accès professionnel sur un sous domaine différent de l'accès particulier (pros.monsite.fr et www.monsite.fr). Et aussi d'avoir quelques produits différents pour les deux types de clients. Mais vu que la gestion multi boutique n'existe pas encore, les groupes clients sont déjà une idée à explorer...Je suis nouveau sur prestashop, je n'ai pas encore trop regardé le code de près, mais je vais pas tarder à m'y mettre. C'est cool de savoir que tu as la même problématique, on va peut-être pouvoir s'entraider pour faire fonctionner ça.Tiens moi au courant de tes avancées Link to comment Share on other sites More sharing options...
chateau.fr Posted November 16, 2009 Author Share Posted November 16, 2009 Tu verras c'est ultra simplement codé, maintenant je dirais que voici les next steps :- Proposer un tarif par groupe et par produit- Proposer d'afficher le produit uniquement pour tel ou tel groupe (+ ajouter des filtres en admin pour le retrouver)- Charger les produits suivant le groupe du client- Quand un client s'inscrit, déterminer le groupe par défaut suivant le domaine- Déterminer le groupe à afficher suivant le domaine + pas de tarif si le groupe est proça fait quand même du taf Samuel Link to comment Share on other sites More sharing options...
StoreCommander Posted November 16, 2009 Share Posted November 16, 2009 "Attention ! Pour la vente aux professionnels en France, ce n’est qu’un probleme d’affichage des prix HT au lieu de TTC puisqu’au final il payera la TVA lors de l’achat." Je ne vois pas de quoi vous voulez parler, de la façon dont je l'ai codé, il paye HT. Bonjour, Jolvil a raison, en France ce système ne convient pas : les entreprises paient en TTC et récupèrent ensuite la TVA.Dans quel pays êtes-vous ? Link to comment Share on other sites More sharing options...
chateau.fr Posted November 16, 2009 Author Share Posted November 16, 2009 je suis en France, effectivement :- Particuliers et pros achètent TTC en France- Pros en Union Européenne payent HT s'ils possèdent un numéro de TVA intracommunautaire- Particuliers achètent TTC en Union Européenne- Tout le reste HTSamuel Link to comment Share on other sites More sharing options...
chateau.fr Posted November 16, 2009 Author Share Posted November 16, 2009 Tout ça pour dire que Prestashop ne le gère pas.Dites moi si je me trompe :Il faudrait créer 2 zones de Pays : Hors UE et UEEnsuite pouvoir associer à ces zones une TVAEnsuite créer plusieurs groupes : particuliers/pros/pros_tva_intracomm et stipuler que le groupe pros_tva_intracomm, malgré qu'il soit en UE, ne paye pas la TVA.Samuel Link to comment Share on other sites More sharing options...
chateau.fr Posted November 16, 2009 Author Share Posted November 16, 2009 En fait j'avais fait une petit confusion car certains de mes clients peuvent ne pas payer la TVA sur un certain montant annuel, mais cela ne concerne pas forcément l'intégralité des commandes pour un client.Samuel Link to comment Share on other sites More sharing options...
sergeksl Posted March 3, 2010 Share Posted March 3, 2010 Bonjour,Je suis Belge et je gère un site E Business qui vend en France, au luxemboug, en Suisse, en Afrique et bien sur en Belgique.J’ai donc de l’expérience pour le vente en CEE et Hors CEE.Le principe de la TVA est relativement simple :En CEE : Si vous vendez vers un pays de la CEE (autre que le votre), la TVA ne doit pas être ajoutée SI – le client fournit son No de TVA Intracommunautaire et que l’adresse de facturation se situe dans un pays CEE autre que le votre. – L’adresse de livraison doit se situer dans un pays CEE autre que le votre. Autrement dit la marchandise doit sortir du pays.Les 2 conditions doivent être remplies. Dans tous les autres cas la TVA du pays qui facture est d’application.Cette règle est valables pour les 85 % des marchandises (pas les services et pas celles qui pour dépassent une somme importante).Hors CEELa TVA ne s’applique pas, que vous vendiez à un professionnel ou à un particulier. Vous devez obtenir un formulaire EX1 de la douane pour prouvez l’exportation (sauf cas particulier).A première vue PRESTASHOP ne permet pas l’application automatique de ses règles. C’est dommage car c’est la seule raison qui m’empêche de développer un nouveau site sur base de PRESTASHOP.Ces règles sont-elles incluent dans la dernière version ou à défaut seront-elles présentent dans la prochaine version ?Il faudrait donc que PrestShop 1. Permettent au client d'encoder son No de TVA (s'il n'en a pas il n'encode rien)2. Si le Pays de livraison et de facturation est Hors CEE alors PAS de TVA appliquée2. Si non (Pays CEE) contrôle si le No de TVA est présent, SI NON La TVA est appliquée3 Si oui, contrôle si le pays de livraison est différent de celui de la boutique SI NON la TVA est appliquée4. SI OUI, Contrôle si le Pays de Facturation est différent de celui de la boutique, SI NON la TVA est appliquée5. Si oui PAS de TVA appliquéeNB : Taux de TVA appliqué = Celui du pays de la boutique.Un tel module résoudrait plus de 90% des transactions B2B en et hors communauté Européenne.Si un super codeur peut si mettre, cela ne devrait pas lui prendre des années.Avis aux amateurs,CordialementCordialement, Link to comment Share on other sites More sharing options...
alexone Posted April 30, 2010 Share Posted April 30, 2010 Salut à tous,j'ai également cet énorme problème de TVA intracommunautaire.Je ne comprends pas en quel sens notre problème commun est-il résolu + solution ...Merci,Alex... Link to comment Share on other sites More sharing options...
krixto Posted June 17, 2010 Share Posted June 17, 2010 Bonjour,ces petits bouts de code m'ont été très utiles pour les clients pro CEE, mais est-il possible de mettre la TVA sur les frais de port à 0 également ? les particuliers CEE payent la TVA, donc je ne peux pas mettre la TVA à 0 sur le transporteur.ou le top, serait d'appliquer un transporteur avec une TVA à 0 sur un groupe de client précis (celui qui n'a pas de TVA sur le total de ses achats).Merci d'avance. Link to comment Share on other sites More sharing options...
SamXIV Posted September 17, 2010 Share Posted September 17, 2010 Le sujet aurait-il évolué ?Même problème pour moi. Link to comment Share on other sites More sharing options...
krixto Posted September 17, 2010 Share Posted September 17, 2010 Je n'ai pas eu d'autre choix que de créer un transporteur supplémentaire pour les clients qui ne sont pas en France et d'ajouter [ professionnal only ] au nom de celui-ci et mettre la TVA à 0.un client étranger à donc le choix entre 2 transporteurs : 1 classique avec TVA et 1 réservé au pro sans TVA (avec dans les conditions de vente et de livraison un message indiquant que si un particulier étranger choisi le transporter réservé aux pros, il ne sera pas livréc'est du bricolage..mais je ne n'ai que ça pour le moment. Link to comment Share on other sites More sharing options...
prosilver Posted December 12, 2010 Share Posted December 12, 2010 4) On déclare la TVA à zéro si le client fait partie du groupe sans tva/classes/Tax.phpLigne 170 :if(!Group::getTva($cart->id_customer)) return 0 ; Bonjour,Cette ligne ne fonctionne plus pour une v1.3x, le prix reste HT.Une Idée ? Link to comment Share on other sites More sharing options...
djoo Posted November 23, 2011 Share Posted November 23, 2011 Bonjour à tous ! Quelqu'un saurait-il dans quelle méthode faut-il placer le code de l'étape 4 ? if(!Group::getTva($cart->id_customer)) return 0 ; J'ai la version 1.4.3 et les lignes ne sont visiblement pas correspondantes. Et merci pour cette documentation. joseph 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