E-commerce Odoo en Suisse

E-commerce with Odoo in Switzerland

Odoo eCommerce propose nativement la vitrine, le panier, le checkout et la facturation. Pour fonctionner correctement dans le marché suisse, il doit être complété par les paiements locaux (Twint, PostFinance), la TVA suisse, l'intégration Swiss Post et un site multilingue. Cette page documente ces points.

Odoo eCommerce natively provides the storefront, cart, checkout and invoicing. To work properly in the Swiss market, it must be complemented with local payments (Twint, PostFinance), Swiss VAT, Swiss Post integration and a multilingual site. This page documents these points.

Les modules Odoo d'un e-commerce suisse

The Odoo modules of a Swiss e-shop

Un e-commerce Odoo s'appuie sur quatre modules natifs qui dialoguent en temps réel.

An Odoo e-commerce relies on four native modules that communicate in real time.

Website

Website + Builder

Website + Builder

Constructeur de pages glisser-déposer, thèmes responsives, gestion des langues, SEO on-page (meta, sitemap, schema). Les pages produits sont générées automatiquement depuis le catalogue.

Drag-and-drop page builder, responsive themes, language management, on-page SEO (meta, sitemap, schema). Product pages are auto-generated from the catalogue.

eCommerce

Shop + Checkout

Shop + Checkout

Panier, comparateur, wishlist, codes promo, abandons de panier. Le checkout en une page est compatible avec les méthodes de paiement configurées et applique automatiquement la TVA selon l'adresse de livraison.

Cart, comparator, wishlist, promo codes, cart abandonment. The one-page checkout supports configured payment methods and automatically applies VAT based on the delivery address.

Inventory

Stock + Livraison

Inventory + Delivery

Stocks multi-entrepôts, réservations automatiques au moment de la commande, étiquettes Swiss Post, suivi des colis, gestion des retours. Connexion possible avec des transitaires externes.

Multi-warehouse stocks, automatic reservations at order time, Swiss Post labels, parcel tracking, returns management. Possible connection with external freight forwarders.

Accounting

Comptabilité + TVA

Accounting + VAT

Création automatique de la facture après paiement, écriture comptable, déclaration TVA suisse incluant les ventes B2C, B2B et transfrontalières. QR-facture générée pour les paiements différés.

Automatic invoice creation after payment, accounting entry, Swiss VAT return covering B2C, B2B and cross-border sales. QR-bill generated for deferred payments.

CRM

CRM + Marketing

CRM + Marketing

Suivi des leads, segmentation clients, campagnes email, automatisation des relances panier abandonné, intégration aux réseaux sociaux. Les commandes alimentent l'historique client automatiquement.

Lead tracking, customer segmentation, email campaigns, abandoned cart automation, social media integration. Orders feed customer history automatically.

Customer portal

Portail client

Customer portal

Espace client avec historique de commandes, factures téléchargeables, suivi de livraison, gestion des retours et adresses multiples. Authentification par email ou compte social.

Customer area with order history, downloadable invoices, delivery tracking, returns management and multiple addresses. Authentication by email or social account.

Twint, PostFinance, Stripe : intégrer les moyens de paiement CH

Twint, PostFinance, Stripe: integrating Swiss payment methods

Aucun e-commerce suisse ne tient sans Twint et au moins une solution carte. Voici les options éprouvées.

No Swiss e-commerce works without Twint and at least one card solution. Here are the proven options.

Twint via agrégateur

Twint

Twint

5 millions d'utilisateurs en Suisse, indispensable B2C. Pas de connecteur Odoo natif : passage obligatoire par un agrégateur (Datatrans, Wallee, Saferpay, PostFinance Checkout, Stripe).

5 million users in Switzerland, essential for B2C. No native Odoo connector: a payment aggregator is required (Datatrans, Wallee, Saferpay, PostFinance Checkout, Stripe).

PostFinance Checkout

PostFinance Checkout

PostFinance Checkout

Solution suisse complète : cartes (Visa, Mastercard, Amex), Twint, PostFinance E-Finance, paiement sur facture, virement direct. Module Odoo officiel disponible.

Complete Swiss solution: cards (Visa, Mastercard, Amex), Twint, PostFinance E-Finance, invoice payment, direct transfer. Official Odoo module available.

Stripe

Stripe

Stripe

Le plus simple à intégrer (module officiel Odoo). Cartes internationales, Twint depuis 2023, Apple Pay, Google Pay. Tarifs transparents mais l'argent transite via les comptes Stripe avant virement bancaire.

The simplest to integrate (official Odoo module). International cards, Twint since 2023, Apple Pay, Google Pay. Transparent fees but money transits via Stripe accounts before bank transfer.

Datatrans / Wallee

Datatrans, Wallee

Datatrans, Wallee

Agrégateurs suisses orientés tech, pricing avantageux à volume, support multi-canaux (point de vente + e-commerce). Modules Odoo communautaires ou maintenus par les agrégateurs.

Swiss tech-oriented aggregators, attractive pricing at volume, multi-channel support (POS + e-commerce). Community or aggregator-maintained Odoo modules.

Saferpay

Saferpay (Worldline)

Saferpay (Worldline)

Leader B2B en Suisse, intégré chez beaucoup de grandes enseignes. Fonctionnalités avancées (3D Secure, paiements récurrents, abonnements). Module Odoo via partenaire intégrateur.

B2B leader in Switzerland, integrated at many large retailers. Advanced features (3D Secure, recurring payments, subscriptions). Odoo module via integrator partner.

Facture QR

Paiement sur facture

Pay by invoice

Très utilisé en Suisse (B2B et clients seniors). Odoo génère automatiquement la QR-facture après commande, suit le paiement via le rapprochement bancaire CAMT.054 et libère la livraison une fois encaissé.

Widely used in Switzerland (B2B and senior customers). Odoo automatically generates the QR-bill after order, tracks payment via CAMT.054 bank reconciliation and releases the delivery once received.

TVA e-commerce : les règles spécifiques au marché suisse

E-commerce VAT: rules specific to the Swiss market

01

Seuil de 100 000 CHF

CHF 100,000 threshold

Une PME suisse est exonérée de TVA tant que son chiffre d'affaires mondial annuel reste sous 100 000 CHF. Au-delà, inscription obligatoire au registre TVA dans les 30 jours. Odoo gère le passage en surveillant le compteur de CA et alerte avant le franchissement.

A Swiss SME is exempt from VAT as long as its annual worldwide turnover stays below CHF 100,000. Above this, mandatory VAT registration within 30 days. Odoo handles the transition by monitoring the turnover counter and alerting before the threshold is crossed.

02

Ventes B2C en Suisse

B2C sales in Switzerland

TVA 8,1% standard, 2,6% sur livres et certains produits alimentaires, 3,8% sur hôtellerie. Odoo applique automatiquement le taux selon la catégorie produit et l'adresse de livraison.

Standard 8.1% VAT, 2.6% on books and certain food products, 3.8% on accommodation. Odoo automatically applies the rate based on product category and delivery address.

03

Ventes B2B intra-CH

B2B sales within Switzerland

TVA applicable de la même manière qu'en B2C. La récupération de la TVA en amont (intrants) reste l'enjeu côté acheteur, ce qui rend le numéro TVA important sur la facture. Odoo valide le format CHE-XXX.XXX.XXX automatiquement.

VAT applied the same way as B2C. Input VAT recovery remains the buyer's concern, making the VAT number important on the invoice. Odoo validates the CHE-XXX.XXX.XXX format automatically.

04

Ventes transfrontalières UE

Cross-border EU sales

Vers l'UE : pas de TVA suisse facturée, le client paie la TVA dans son pays à l'import. Odoo génère la déclaration d'exportation et applique le régime IOSS si l'entreprise s'y est inscrite (envois B2C < 150 EUR).

To the EU: no Swiss VAT charged, the customer pays VAT in their country on import. Odoo generates the export declaration and applies the IOSS scheme if the company is registered (B2C shipments < EUR 150).

05

Ventes depuis l'étranger vers la CH

Sales from abroad to Switzerland

Si l'e-commerçant étranger dépasse 100 000 CHF de petits envois (< 5 CHF de TVA) vers la Suisse, il doit s'inscrire à la TVA suisse et collecter la TVA à la source. Règle dite "Lex Netflix" appliquée depuis 2019. Odoo gère ce cas via une seconde immatriculation et des positions fiscales dédiées.

If the foreign e-merchant exceeds CHF 100,000 of small shipments (< CHF 5 VAT) to Switzerland, they must register for Swiss VAT and collect VAT at source. The so-called "Lex Netflix" rule, applied since 2019. Odoo handles this case via a second registration and dedicated fiscal positions.

Swiss Post et multilingue FR/DE/IT

Swiss Post and FR/DE/IT multilingual

Swiss Post API

Intégration Swiss Post

Swiss Post integration

Module delivery_postlogistics : génération d'étiquettes Priority/Economy/Promo Post, suivi des colis, déclarations douanières pour l'international, synchronisation des tarifs. Contrat Swiss Post avec accès API requis.

delivery_postlogistics module: Priority/Economy/Promo Post label generation, parcel tracking, customs declarations for international, tariff sync. Requires a Swiss Post contract with API access.

Transporteurs tiers

DHL, DPD, Planzer, Quickpac

DHL, DPD, Planzer, Quickpac

Les transporteurs alternatifs disposent de modules Odoo communautaires. Pertinent pour les volumes importants, les envois B2B palettisés ou les besoins de livraison express.

Alternative carriers have community Odoo modules. Relevant for large volumes, palletised B2B shipments or express delivery needs.

Multilingue

Site multilingue FR/DE/IT

FR/DE/IT multilingual site

Odoo permet d'activer plusieurs langues sur un même site (URL avec préfixe /fr, /de, /it) ou de créer des sites distincts par langue/marque partageant catalogue, stock et comptabilité.

Odoo can enable multiple languages on a single site (URL prefix /fr, /de, /it) or create separate sites by language/brand sharing catalogue, stock and accounting.

Traduction

Traduction produits

Product translation

Manuelle ou via les modules connectés à DeepL ou Google Translate. La qualité de la traduction commerciale (descriptions, fiches techniques) reste critique pour la conversion en zones DE et IT.

Manual or via modules connected to DeepL or Google Translate. The quality of commercial translation (descriptions, technical sheets) remains critical for conversion in DE and IT zones.

SEO local

SEO multilingue

Multilingual SEO

Hreflang automatiques entre versions linguistiques, sitemap multilingue, URLs traduites, metas par langue. La structuration native Odoo permet à Google d'identifier la version pertinente par requête.

Automatic hreflang between language versions, multilingual sitemap, translated URLs, metas per language. Odoo's native structure helps Google identify the relevant version per query.

Tarification

Frais de port suisses

Swiss shipping rates

Tarification au poids, au volume, à la zone ou seuil (livraison gratuite dès X CHF). Odoo permet de combiner ces règles avec des bons de réduction et la TVA correctement appliquée au transport.

Rates by weight, volume, zone or threshold (free shipping above CHF X). Odoo lets you combine these rules with discount vouchers and VAT correctly applied to shipping.

À retenir

Key takeaway

Un e-commerce Odoo conforme au marché suisse repose sur quatre choix critiques : un agrégateur supportant Twint, une configuration TVA prenant en compte le seuil 100 000 CHF et les ventes transfrontalières, un connecteur Swiss Post, et une stratégie multilingue alignée sur les régions linguistiques visées.

A Swiss-compliant Odoo e-commerce relies on four critical choices: a payment aggregator supporting Twint, a VAT configuration covering the CHF 100,000 threshold and cross-border sales, a Swiss Post connector, and a multilingual strategy aligned with the targeted language regions.

E-commerce Odoo en Suisse — repères pratiques

Odoo e-commerce in Switzerland — practical pointers

Six questions qui reviennent fréquemment dans un projet e-commerce Odoo en Suisse.

Six questions that come up regularly in a Swiss Odoo e-commerce project.

Comment intégrer Twint dans Odoo eCommerce ?

How to integrate Twint into Odoo eCommerce?

Odoo n'a pas de connecteur Twint natif. L'intégration passe par un agrégateur certifié : Datatrans, Wallee, Saferpay ou PostFinance Checkout — qui exposent tous Twint dans leur offre et disposent d'un module Odoo communautaire ou Enterprise. Le commerçant signe un contrat avec l'agrégateur, configure ses identifiants dans Odoo et active Twint comme méthode de paiement parmi celles proposées au checkout.

Odoo has no native Twint connector. Integration goes through a certified aggregator: Datatrans, Wallee, Saferpay or PostFinance Checkout — all of which expose Twint in their offering and provide a community or Enterprise Odoo module. The merchant signs a contract with the aggregator, configures credentials in Odoo and enables Twint among the checkout payment methods.

Quels gateways de paiement suisses sont compatibles avec Odoo ?

Which Swiss payment gateways are compatible with Odoo?

Cinq gateways couvrent l'essentiel du marché CH : PostFinance Checkout (cartes, Twint, PostFinance E-Finance, factures), Datatrans (cartes, Twint, Twint QR), Wallee (cartes, Twint, factures, paiements récurrents), Saferpay (Worldline, leader B2B) et Stripe (cartes internationales + Twint depuis 2023). Odoo dispose de modules pour chacun, certains officiels (Stripe), d'autres maintenus par la communauté OCA ou les agrégateurs eux-mêmes.

Five gateways cover most of the Swiss market: PostFinance Checkout (cards, Twint, PostFinance E-Finance, invoices), Datatrans (cards, Twint, Twint QR), Wallee (cards, Twint, invoices, recurring), Saferpay (Worldline, B2B leader) and Stripe (international cards + Twint since 2023). Odoo provides modules for each, some official (Stripe), others maintained by the OCA community or the aggregators themselves.

À partir de quel chiffre d'affaires faut-il facturer la TVA suisse en e-commerce ?

At what turnover must Swiss VAT be charged in e-commerce?

Seuil légal : 100 000 CHF de chiffre d'affaires mondial annuel. En dessous, une PME suisse peut être exonérée. Au-delà, l'inscription au registre TVA et la facturation deviennent obligatoires. Pour les ventes depuis l'étranger vers la Suisse, le seuil de 100 000 CHF de petits envois (< 5 CHF de TVA) déclenche l'assujettissement en Suisse depuis 2019. Odoo gère ces règles via la configuration des positions fiscales.

Legal threshold: CHF 100,000 of annual worldwide turnover. Below this, a Swiss SME can be exempt. Above, VAT registration and invoicing become mandatory. For sales from abroad into Switzerland, the CHF 100,000 threshold for small shipments (< CHF 5 VAT) triggers Swiss VAT liability since 2019. Odoo handles these rules via fiscal position configuration.

Comment gérer les expéditions Swiss Post depuis Odoo ?

How to handle Swiss Post shipments from Odoo?

Odoo intègre l'API Swiss Post via le module delivery_postlogistics (Enterprise et OCA). Les fonctions couvertes : génération d'étiquettes d'envoi (Priority, Economy, Promo Post), suivi automatique du numéro de colis, déclaration douane pour l'international et synchronisation des tarifs. La configuration requiert un contrat Swiss Post avec accès API et un identifiant client.

Odoo integrates the Swiss Post API via the delivery_postlogistics module (Enterprise and OCA). Functions covered: shipping label generation (Priority, Economy, Promo Post), automatic parcel number tracking, customs declaration for international and tariff sync. Setup requires a Swiss Post contract with API access and a customer ID.

Faut-il un site Odoo trilingue FR/DE/IT pour vendre en Suisse ?

Does a Swiss-targeted Odoo site need to be trilingual FR/DE/IT?

Selon le marché visé. Pour un public romand uniquement, le français suffit. Pour viser la Suisse alémanique (65% du marché) et le Tessin (5%), Odoo permet d'activer plusieurs langues sur un seul site (URL avec préfixe de langue) ou de créer plusieurs sites distincts (un par langue/marque) partageant le même catalogue et la même comptabilité. Les fiches produits doivent alors être traduites manuellement ou via les modules de traduction automatique connectés à DeepL ou Google Translate.

Depends on the target market. For French-speaking Switzerland only, French is enough. To target German-speaking Switzerland (65% of the market) and Ticino (5%), Odoo can enable multiple languages on a single site (URL with language prefix) or create separate sites (one per language/brand) sharing the same catalogue and accounting. Product sheets must then be translated manually or via auto-translation modules connected to DeepL or Google Translate.

Comment Odoo gère-t-il les ventes transfrontalières (UE, douane) ?

How does Odoo handle cross-border sales (EU, customs)?

Trois cas de figure. Ventes B2C vers l'UE : Odoo applique automatiquement le régime IOSS (Import One-Stop Shop) pour les envois < 150 EUR si l'entreprise s'est inscrite. Ventes B2B vers l'UE : pas de TVA suisse facturée, mention exonération et déclaration EC Sales List si l'entreprise est immatriculée TVA dans l'UE. Ventes depuis l'UE vers la Suisse : si le seuil 100 000 CHF de petits envois est dépassé, le vendeur étranger doit s'inscrire à la TVA suisse et collecter la TVA à la source — Odoo le gère via une seconde immatriculation et des positions fiscales dédiées.

Three cases. B2C sales to the EU: Odoo automatically applies the IOSS scheme (Import One-Stop Shop) for shipments < EUR 150 if the company is registered. B2B sales to the EU: no Swiss VAT charged, exemption mention and EC Sales List declaration if the company is VAT-registered in the EU. Sales from the EU to Switzerland: if the CHF 100,000 threshold for small shipments is crossed, the foreign seller must register for Swiss VAT and collect VAT at source — Odoo handles this via a second registration and dedicated fiscal positions.