Changeset 3732190
- Timestamp:
- 10/07/2026 09:01:45 AM (3 weeks ago)
- Location:
- ukto-invoice-sync-for-pennylane
- Files:
-
- 10 edited
- 1 copied
-
tags/1.7.6 (copied) (copied from ukto-invoice-sync-for-pennylane/trunk )
-
tags/1.7.6/languages/ukto-invoice-sync-for-pennylane-fr_FR.mo (modified) ( previous)
-
tags/1.7.6/languages/ukto-invoice-sync-for-pennylane-fr_FR.po (modified) (14 diffs)
-
tags/1.7.6/languages/ukto-invoice-sync-for-pennylane.pot (modified) (11 diffs)
-
tags/1.7.6/readme.txt (modified) (3 diffs)
-
tags/1.7.6/ukto-invoice-sync-for-pennylane.php (modified) (2 diffs)
-
trunk/languages/ukto-invoice-sync-for-pennylane-fr_FR.mo (modified) ( previous)
-
trunk/languages/ukto-invoice-sync-for-pennylane-fr_FR.po (modified) (14 diffs)
-
trunk/languages/ukto-invoice-sync-for-pennylane.pot (modified) (11 diffs)
-
trunk/readme.txt (modified) (3 diffs)
-
trunk/ukto-invoice-sync-for-pennylane.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
ukto-invoice-sync-for-pennylane/tags/1.7.6/languages/ukto-invoice-sync-for-pennylane-fr_FR.po
r3713298 r3732190 1 # Copyright (C) 2026 Sébastien DUBOIS2 # This file is distributed under the GPL-2.0-or-later license.3 1 msgid "" 4 2 msgstr "" 5 3 "Project-Id-Version: ukto-invoice-sync-for-pennylane\n" 4 "Language: fr_FR\n" 6 5 "MIME-Version: 1.0\n" 7 6 "Content-Type: text/plain; charset=UTF-8\n" 8 7 "Content-Transfer-Encoding: 8bit\n" 9 "Plural-Forms: nplurals=2; plural=(n !=1);\n"8 "Plural-Forms: nplurals=2; plural=(n > 1);\n" 10 9 "X-Domain: ukto-invoice-sync-for-pennylane\n" 11 10 … … 19 18 20 19 #: includes/class-isfp-checkout-fields.php:147 includes/class-isfp-checkout-fields.php:216 21 msgid " Company ID / SIRET (businesses)"22 msgstr "SIRET (entreprises )"20 msgid "SIRET (French businesses)" 21 msgstr "SIRET (entreprises françaises)" 23 22 24 23 #: includes/class-isfp-checkout-fields.php:154 includes/class-isfp-checkout-fields.php:222 … … 216 215 #: includes/class-isfp-settings.php:298 217 216 msgid "No invoice, customer or credit note is created. Full payloads are written to the logs so you can review them. Use this to validate your configuration before going live." 218 msgstr "Aucune facture, aucun client, aucun avoir n’est créé. Les payloads complets sont écrits dans les journaux pour vérification. À utiliser pour valider la configuration avant la mise en production."217 msgstr "Aucune facture, aucune fiche client, aucun avoir n’est créé. Les payloads complets sont écrits dans les journaux pour vérification. À utiliser pour valider la configuration avant la mise en production." 219 218 220 219 #: includes/class-isfp-settings.php:302 … … 235 234 236 235 #: includes/class-isfp-settings.php:314 237 msgid "B2B checkout — company ID"236 msgid "B2B checkout — SIRET (French company ID)" 238 237 msgstr "Commande B2B — SIRET" 239 238 … … 244 243 #: includes/class-isfp-settings.php:318 245 244 msgid "Uses the free public French company lookup API (data.gouv.fr). Fields already filled in by the customer are never overwritten." 246 msgstr "Via l’API publique Recherche d’entreprises (data.gouv.fr, gratuite). Les champs déjà remplis par le client ne sont pas écrasés."245 msgstr "Via l’API publique Recherche d’entreprises (data.gouv.fr, gratuite). Les champs déjà remplis par le client ou la cliente ne sont pas écrasés." 247 246 248 247 #: includes/class-isfp-settings.php:322 … … 256 255 #: includes/class-isfp-settings.php:326 257 256 msgid "Intra-Community supply: the customer pays without VAT and the invoice carries the legal exemption mention. Requires filing the EC Sales List (état récapitulatif TVA) for these sales — check with your accountant before enabling. With VIES validation on, the exemption is only granted when VIES confirms the number; if VIES is unreachable, VAT is charged and the invoice follows the money." 258 msgstr "Livraison intracommunautaire : le client paie hors taxe et la facture porte la mention légale d’exonération. Ces ventes imposent le dépôt de l’état récapitulatif TVA — vérifiez avec votre comptable avant d’activer. Avec la validation VIES active, l’exonération n’est accordée que si le VIES confirme le numéro ; si le VIES est injoignable, la TVA est facturée et la facture suit l’encaissé."257 msgstr "Livraison intracommunautaire : le client ou la cliente paie hors taxe et la facture porte la mention légale d’exonération. Ces ventes imposent le dépôt de l’état récapitulatif TVA — vérifiez avec votre comptable avant d’activer. Avec la validation VIES active, l’exonération n’est accordée que si le VIES confirme le numéro ; si le VIES est injoignable, la TVA est facturée et la facture suit l’encaissé." 259 258 260 259 #: includes/class-isfp-settings.php:330 … … 268 267 #: includes/class-isfp-settings.php:334 269 268 msgid "Leave unchecked if your EU consumer sales stay under €10,000 per year: French VAT is then charged to all EU customers and invoices carry French VAT codes. Tick it only if you are OSS-registered and WooCommerce charges each customer their own country rate." 270 msgstr "Laissez décoché si vos ventes aux particuliers de l’UE restent sous 10 000 € par an : la TVA française est alors facturée à tou s les clients UE et les factures portent des codes de TVA français. Ne cochez quesi vous êtes immatriculé OSS et que WooCommerce applique à chaque client le taux de son pays."269 msgstr "Laissez décoché si vos ventes aux particuliers de l’UE restent sous 10 000 € par an : la TVA française est alors facturée à toute la clientèle UE et les factures portent des codes de TVA français. Cochez uniquement si vous êtes immatriculé OSS et que WooCommerce applique à chaque client le taux de son pays." 271 270 272 271 #: includes/class-isfp-settings.php:350 … … 276 275 #: includes/class-isfp-settings.php:353 277 276 msgid "The Pro extension adds automatic invoicing on status change, credit notes on refunds, payment reconciliation, invoice e-mailing to the customer, product mapping, bulk actions, backfill of past orders, integrity checks, weekly summary and failure alerts." 278 msgstr "L’extension Pro ajoute la facturation automatique au changement d e statut, les avoirs sur remboursement, le rapprochement des paiements, l’envoi des factures au clientpar e-mail, la correspondance des produits, les actions groupées, le rattrapage des commandes passées, les contrôles d’intégrité, le récapitulatif hebdomadaire et les alertes d’échec."277 msgstr "L’extension Pro ajoute la facturation automatique au changement d’état, les avoirs sur remboursement, le rapprochement des paiements, l’envoi des factures à la clientèle par e-mail, la correspondance des produits, les actions groupées, le rattrapage des commandes passées, les contrôles d’intégrité, le récapitulatif hebdomadaire et les alertes d’échec." 279 278 280 279 #: includes/class-isfp-settings.php:354 … … 308 307 #: includes/class-isfp-settings.php:370 309 308 msgid "Automatic (based on the customer country)" 310 msgstr "Auto (selon le pays d u client)"309 msgstr "Auto (selon le pays de la clientèle)" 311 310 312 311 #: includes/class-isfp-settings.php:383 … … 364 363 #: includes/class-isfp-settings.php:461 365 364 msgid "No token saved yet — save the settings first." 366 msgstr "Aucun jeton enregistré — enregistre r d’abord."365 msgstr "Aucun jeton enregistré — enregistrez d’abord les réglages." 367 366 368 367 #: includes/class-isfp-settings.php:465 … … 399 398 400 399 #: includes/class-isfp-siret-autocomplete.php:52 401 msgid "Invalid company ID."400 msgid "Invalid SIRET." 402 401 msgstr "SIRET invalide." 403 402 … … 412 411 #: includes/class-isfp-vat-mapper.php:86 413 412 msgid "Pennylane: VAT was collected on this order although the customer has a valid EU VAT number — the invoice is issued WITH the collected VAT (no reverse-charge mention). To sell VAT-free to EU businesses, enable the B2B exemption option in the Invoicing settings, then refund and re-order if needed." 414 msgstr "Pennylane : de la TVA a été encaissée alors que le client a un n° de TVA intracommunautaire valide — la facture est émise AVEC la TVA perçue (pas de mention intracommunautaire). Pour vendre HT aux pros UE, activez l’option d’exonération B2B dans les réglages Facturation, puis remboursez et refaites la commande si nécessaire."413 msgstr "Pennylane : de la TVA a été encaissée alors que le client ou la cliente a un n° de TVA intracommunautaire valide — la facture est émise AVEC la TVA perçue (pas de mention intracommunautaire). Pour vendre HT aux pros UE, activez l’option d’exonération B2B dans les réglages Facturation, puis remboursez et refaites la commande si nécessaire." 415 414 416 415 #: includes/class-isfp-vat-mapper.php:163 … … 428 427 #: includes/class-isfp-vies.php:161 429 428 msgid "Pennylane: VIES unreachable, VAT number %s could not be checked — reverse charge applied on format only. Please verify." 430 msgstr "Pennylane : VIES injoignable, n° TVA %s non vérifié — autoliquidation appliquée sur la base du format. À contrôler."429 msgstr "Pennylane : VIES injoignable, n° TVA %s non vérifié — autoliquidation appliquée uniquement sur la base du format. Veuillez vérifier." 431 430 432 431 #: includes/class-isfp-vies.php:166 … … 434 433 msgstr "Pennylane : n° TVA validé par le VIES (%s)." 435 434 436 #: ukto-invoice-sync-for-pennylane.php:1 15435 #: ukto-invoice-sync-for-pennylane.php:144 437 436 msgid "Invoice Sync for Pennylane requires WooCommerce to be installed and active." 438 437 msgstr "Invoice Sync for Pennylane nécessite WooCommerce installé et actif." 439 440 #. En-tete de l'extension (page Extensions de l'administration).441 msgid "UKTO Invoice Sync for Pennylane"442 msgstr "UKTO Invoice Sync for Pennylane"443 444 msgid "Sébastien DUBOIS"445 msgstr "Sébastien DUBOIS"446 447 msgid "https://ukto.fr"448 msgstr "https://ukto.fr"449 450 msgid "https://ukto.fr/pennylane.php"451 msgstr "https://ukto.fr/pennylane.php"452 453 msgid "Send your WooCommerce orders to Pennylane as compliant invoices: one-click invoicing from the order screen, full VAT/OSS mapping, EU VAT number validation (VIES) and company ID at checkout, invoice PDF in My Account."454 msgstr "Envoyez vos commandes WooCommerce vers Pennylane sous forme de factures conformes : facturation en un clic depuis la commande, gestion complète de la TVA et de l’OSS, validation du numéro de TVA intracommunautaire (VIES) et SIRET lors de la commande, PDF de facture dans « Mon compte »."455 456 msgid "Send your WooCommerce orders to Pennylane as compliant invoices: one-click invoicing from the order screen, full VAT/OSS mapping, EU VAT number validation (VIES) and SIRET at checkout, invoice PDF in My Account."457 msgstr "Envoyez vos commandes WooCommerce vers Pennylane sous forme de factures conformes : facturation en un clic depuis la commande, gestion complète de la TVA et de l’OSS, validation du numéro de TVA intracommunautaire (VIES) et SIRET lors de la commande, PDF de facture dans « Mon compte »."458 459 msgid "SIRET (French businesses)"460 msgstr "SIRET (entreprises françaises)"461 462 msgid "B2B checkout — SIRET (French company ID)"463 msgstr "Commande B2B — SIRET"464 465 msgid "Invalid SIRET."466 msgstr "SIRET invalide." -
ukto-invoice-sync-for-pennylane/tags/1.7.6/languages/ukto-invoice-sync-for-pennylane.pot
r3713298 r3732190 1 1 # Copyright (C) 2026 Sébastien DUBOIS 2 # This file is distributed under the GPL-2.0-or-later .2 # This file is distributed under the GPL-2.0-or-later license. 3 3 msgid "" 4 4 msgstr "" 5 "Project-Id-Version: UKTO Invoice Sync for Pennylane 1.7.4\n" 6 "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/ukto-invoice-sync-for-pennylane\n" 7 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" 8 "Language-Team: LANGUAGE <LL@li.org>\n" 5 "Project-Id-Version: ukto-invoice-sync-for-pennylane\n" 9 6 "MIME-Version: 1.0\n" 10 7 "Content-Type: text/plain; charset=UTF-8\n" 11 8 "Content-Transfer-Encoding: 8bit\n" 12 "POT-Creation-Date: 2026-09-25T16:00:50+00:00\n" 13 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 14 "X-Generator: WP-CLI 2.12.0\n" 9 "Plural-Forms: nplurals=2; plural=(n != 1);\n" 15 10 "X-Domain: ukto-invoice-sync-for-pennylane\n" 16 11 17 #. Plugin Name of the plugin 18 #: ukto-invoice-sync-for-pennylane.php 19 msgid "UKTO Invoice Sync for Pennylane" 20 msgstr "" 21 22 #. Plugin URI of the plugin 23 #: ukto-invoice-sync-for-pennylane.php 24 msgid "https://ukto.fr/pennylane.php" 25 msgstr "" 26 27 #. Description of the plugin 28 #: ukto-invoice-sync-for-pennylane.php 29 msgid "Send your WooCommerce orders to Pennylane as compliant invoices: one-click invoicing from the order screen, full VAT/OSS mapping, EU VAT number validation (VIES) and SIRET at checkout, invoice PDF in My Account." 30 msgstr "" 31 32 #. Author of the plugin 33 #: ukto-invoice-sync-for-pennylane.php 34 msgid "Sébastien DUBOIS" 35 msgstr "" 36 37 #. Author URI of the plugin 38 #: ukto-invoice-sync-for-pennylane.php 39 msgid "https://ukto.fr" 40 msgstr "" 41 42 #: includes/class-isfp-api-client.php:114 43 #: includes/class-isfp-invoice-service.php:81 12 #: includes/class-isfp-api-client.php:114 includes/class-isfp-invoice-service.php:81 44 13 msgid "No Pennylane API token configured." 45 14 msgstr "" … … 49 18 msgstr "" 50 19 51 #: includes/class-isfp-checkout-fields.php:147 52 #: includes/class-isfp-checkout-fields.php:216 20 #: includes/class-isfp-checkout-fields.php:147 includes/class-isfp-checkout-fields.php:216 53 21 msgid "SIRET (French businesses)" 54 22 msgstr "" 55 23 56 #: includes/class-isfp-checkout-fields.php:154 57 #: includes/class-isfp-checkout-fields.php:222 24 #: includes/class-isfp-checkout-fields.php:154 includes/class-isfp-checkout-fields.php:222 58 25 msgid "EU VAT number" 59 26 msgstr "" 60 27 61 #: includes/class-isfp-checkout-fields.php:163 62 #: includes/class-isfp-checkout-fields.php:235 28 #: includes/class-isfp-checkout-fields.php:163 includes/class-isfp-checkout-fields.php:235 63 29 msgid "The SIRET number must be 14 digits." 64 30 msgstr "" 65 31 66 #: includes/class-isfp-checkout-fields.php:167 67 #: includes/class-isfp-checkout-fields.php:240 32 #: includes/class-isfp-checkout-fields.php:167 includes/class-isfp-checkout-fields.php:240 68 33 msgid "The EU VAT number looks invalid (e.g. FR12345678901)." 69 34 msgstr "" … … 73 38 msgstr "" 74 39 75 #. translators: %s: raw JSON response returned by Pennylane.76 40 #: includes/class-isfp-customer-sync.php:66 77 #, php-format78 41 msgid "Pennylane response contained no customer ID: %s" 79 42 msgstr "" 80 43 81 #. translators: %d: WooCommerce order number.82 44 #: includes/class-isfp-invoice-service.php:42 83 #, php-format84 45 msgid "Invoicing is already running for order #%d." 85 46 msgstr "" 86 47 87 #. translators: %s: error message returned by the Pennylane API.88 48 #: includes/class-isfp-invoice-service.php:55 89 #, php-format90 49 msgid "Pennylane: invoicing failed — %s" 91 50 msgstr "" … … 95 54 msgstr "" 96 55 97 #. translators: %s: raw JSON response returned by Pennylane.98 56 #: includes/class-isfp-invoice-service.php:110 99 #, php-format100 57 msgid "Pennylane response contained no invoice ID: %s" 101 58 msgstr "" 102 59 103 #. translators: %s: Pennylane invoice number.104 60 #: includes/class-isfp-invoice-service.php:143 105 #, php-format106 61 msgid "Pennylane: invoice %s created and finalized." 107 62 msgstr "" … … 111 66 msgstr "" 112 67 113 #: includes/class-isfp-my-account.php:34 114 #: includes/class-isfp-my-account.php:39 68 #: includes/class-isfp-my-account.php:34 includes/class-isfp-my-account.php:39 115 69 msgid "Access denied." 116 70 msgstr "" … … 124 78 msgstr "" 125 79 126 #. translators: file name prefix for the downloaded invoice PDF.127 80 #: includes/class-isfp-my-account.php:54 128 81 msgid "invoice" … … 145 98 msgstr "" 146 99 147 #. translators: %s: link to the Pennylane app.148 100 #: includes/class-isfp-order-metabox.php:61 149 #, php-format150 101 msgid "Connected to %s" 151 102 msgstr "" 152 103 153 #. translators: %s: Pennylane invoice number.154 104 #: includes/class-isfp-order-metabox.php:69 155 #, php-format156 105 msgid "no. %s" 157 106 msgstr "" … … 213 162 msgstr "" 214 163 215 #: includes/class-isfp-plugin.php:81 216 #: includes/class-isfp-settings.php:245 164 #: includes/class-isfp-plugin.php:81 includes/class-isfp-settings.php:245 217 165 msgid "Documentation" 218 166 msgstr "" … … 254 202 msgstr "" 255 203 256 #: includes/class-isfp-settings.php:288 257 #: includes/class-isfp-settings.php:387 204 #: includes/class-isfp-settings.php:288 includes/class-isfp-settings.php:387 258 205 msgid "Test mode (dry run)" 259 206 msgstr "" 260 207 261 #. translators: %s: bold "without sending anything to Pennylane".262 208 #: includes/class-isfp-settings.php:294 263 #, php-format264 209 msgid "Build and log payloads %s" 265 210 msgstr "" … … 457 402 msgstr "" 458 403 459 #: includes/class-isfp-siret-autocomplete.php:58 460 #: includes/class-isfp-siret-autocomplete.php:77 404 #: includes/class-isfp-siret-autocomplete.php:58 includes/class-isfp-siret-autocomplete.php:77 461 405 msgid "Company not found." 462 406 msgstr "" … … 482 426 msgstr "" 483 427 484 #. translators: %s: EU VAT number.485 428 #: includes/class-isfp-vies.php:161 486 #, php-format487 429 msgid "Pennylane: VIES unreachable, VAT number %s could not be checked — reverse charge applied on format only. Please verify." 488 430 msgstr "" 489 431 490 #. translators: %s: company name returned by VIES.491 432 #: includes/class-isfp-vies.php:166 492 #, php-format493 433 msgid "Pennylane: VAT number validated by VIES (%s)." 494 434 msgstr "" -
ukto-invoice-sync-for-pennylane/tags/1.7.6/readme.txt
r3713298 r3732190 6 6 Requires PHP: 7.4 7 7 Requires Plugins: woocommerce 8 Stable tag: 1.7. 58 Stable tag: 1.7.6 9 9 License: GPLv2 or later 10 10 License URI: https://www.gnu.org/licenses/gpl-2.0.html … … 165 165 == Changelog == 166 166 167 = 1.7.6 = 168 * The bundled French translation was out of sync with the one reviewed on translate.wordpress.org: 169 the shipped file still carried glossary terms that had already been corrected there. Both are now 170 identical, including the non-breaking spaces. 171 * French translation switched to inclusive forms for "customer", following the fr_FR glossary and a 172 review request from the WordPress French translation team. 173 167 174 = 1.7.5 = 168 175 * The checkout field is now called SIRET everywhere, which is what it actually is: a French … … 217 224 == Upgrade Notice == 218 225 226 = 1.7.6 = 227 French translation realigned with the reviewed version on translate.wordpress.org. 228 219 229 = 1.7.5 = 220 230 Clearer wording: the checkout field is a French SIRET, and says so. -
ukto-invoice-sync-for-pennylane/tags/1.7.6/ukto-invoice-sync-for-pennylane.php
r3713298 r3732190 4 4 * Plugin URI: https://ukto.fr/pennylane.php 5 5 * Description: Send your WooCommerce orders to Pennylane as compliant invoices: one-click invoicing from the order screen, full VAT/OSS mapping, EU VAT number validation (VIES) and SIRET at checkout, invoice PDF in My Account. 6 * Version: 1.7. 56 * Version: 1.7.6 7 7 * Requires at least: 5.8 8 8 * Requires PHP: 7.4 … … 20 20 defined( 'ABSPATH' ) || exit; 21 21 22 define( 'ISFP_VERSION', '1.7. 5' ); // Doit égaler l'en-tête Version — vérifié par build.ps1.22 define( 'ISFP_VERSION', '1.7.6' ); // Doit égaler l'en-tête Version — vérifié par build.ps1. 23 23 24 24 /** -
ukto-invoice-sync-for-pennylane/trunk/languages/ukto-invoice-sync-for-pennylane-fr_FR.po
r3713298 r3732190 1 # Copyright (C) 2026 Sébastien DUBOIS2 # This file is distributed under the GPL-2.0-or-later license.3 1 msgid "" 4 2 msgstr "" 5 3 "Project-Id-Version: ukto-invoice-sync-for-pennylane\n" 4 "Language: fr_FR\n" 6 5 "MIME-Version: 1.0\n" 7 6 "Content-Type: text/plain; charset=UTF-8\n" 8 7 "Content-Transfer-Encoding: 8bit\n" 9 "Plural-Forms: nplurals=2; plural=(n !=1);\n"8 "Plural-Forms: nplurals=2; plural=(n > 1);\n" 10 9 "X-Domain: ukto-invoice-sync-for-pennylane\n" 11 10 … … 19 18 20 19 #: includes/class-isfp-checkout-fields.php:147 includes/class-isfp-checkout-fields.php:216 21 msgid " Company ID / SIRET (businesses)"22 msgstr "SIRET (entreprises )"20 msgid "SIRET (French businesses)" 21 msgstr "SIRET (entreprises françaises)" 23 22 24 23 #: includes/class-isfp-checkout-fields.php:154 includes/class-isfp-checkout-fields.php:222 … … 216 215 #: includes/class-isfp-settings.php:298 217 216 msgid "No invoice, customer or credit note is created. Full payloads are written to the logs so you can review them. Use this to validate your configuration before going live." 218 msgstr "Aucune facture, aucun client, aucun avoir n’est créé. Les payloads complets sont écrits dans les journaux pour vérification. À utiliser pour valider la configuration avant la mise en production."217 msgstr "Aucune facture, aucune fiche client, aucun avoir n’est créé. Les payloads complets sont écrits dans les journaux pour vérification. À utiliser pour valider la configuration avant la mise en production." 219 218 220 219 #: includes/class-isfp-settings.php:302 … … 235 234 236 235 #: includes/class-isfp-settings.php:314 237 msgid "B2B checkout — company ID"236 msgid "B2B checkout — SIRET (French company ID)" 238 237 msgstr "Commande B2B — SIRET" 239 238 … … 244 243 #: includes/class-isfp-settings.php:318 245 244 msgid "Uses the free public French company lookup API (data.gouv.fr). Fields already filled in by the customer are never overwritten." 246 msgstr "Via l’API publique Recherche d’entreprises (data.gouv.fr, gratuite). Les champs déjà remplis par le client ne sont pas écrasés."245 msgstr "Via l’API publique Recherche d’entreprises (data.gouv.fr, gratuite). Les champs déjà remplis par le client ou la cliente ne sont pas écrasés." 247 246 248 247 #: includes/class-isfp-settings.php:322 … … 256 255 #: includes/class-isfp-settings.php:326 257 256 msgid "Intra-Community supply: the customer pays without VAT and the invoice carries the legal exemption mention. Requires filing the EC Sales List (état récapitulatif TVA) for these sales — check with your accountant before enabling. With VIES validation on, the exemption is only granted when VIES confirms the number; if VIES is unreachable, VAT is charged and the invoice follows the money." 258 msgstr "Livraison intracommunautaire : le client paie hors taxe et la facture porte la mention légale d’exonération. Ces ventes imposent le dépôt de l’état récapitulatif TVA — vérifiez avec votre comptable avant d’activer. Avec la validation VIES active, l’exonération n’est accordée que si le VIES confirme le numéro ; si le VIES est injoignable, la TVA est facturée et la facture suit l’encaissé."257 msgstr "Livraison intracommunautaire : le client ou la cliente paie hors taxe et la facture porte la mention légale d’exonération. Ces ventes imposent le dépôt de l’état récapitulatif TVA — vérifiez avec votre comptable avant d’activer. Avec la validation VIES active, l’exonération n’est accordée que si le VIES confirme le numéro ; si le VIES est injoignable, la TVA est facturée et la facture suit l’encaissé." 259 258 260 259 #: includes/class-isfp-settings.php:330 … … 268 267 #: includes/class-isfp-settings.php:334 269 268 msgid "Leave unchecked if your EU consumer sales stay under €10,000 per year: French VAT is then charged to all EU customers and invoices carry French VAT codes. Tick it only if you are OSS-registered and WooCommerce charges each customer their own country rate." 270 msgstr "Laissez décoché si vos ventes aux particuliers de l’UE restent sous 10 000 € par an : la TVA française est alors facturée à tou s les clients UE et les factures portent des codes de TVA français. Ne cochez quesi vous êtes immatriculé OSS et que WooCommerce applique à chaque client le taux de son pays."269 msgstr "Laissez décoché si vos ventes aux particuliers de l’UE restent sous 10 000 € par an : la TVA française est alors facturée à toute la clientèle UE et les factures portent des codes de TVA français. Cochez uniquement si vous êtes immatriculé OSS et que WooCommerce applique à chaque client le taux de son pays." 271 270 272 271 #: includes/class-isfp-settings.php:350 … … 276 275 #: includes/class-isfp-settings.php:353 277 276 msgid "The Pro extension adds automatic invoicing on status change, credit notes on refunds, payment reconciliation, invoice e-mailing to the customer, product mapping, bulk actions, backfill of past orders, integrity checks, weekly summary and failure alerts." 278 msgstr "L’extension Pro ajoute la facturation automatique au changement d e statut, les avoirs sur remboursement, le rapprochement des paiements, l’envoi des factures au clientpar e-mail, la correspondance des produits, les actions groupées, le rattrapage des commandes passées, les contrôles d’intégrité, le récapitulatif hebdomadaire et les alertes d’échec."277 msgstr "L’extension Pro ajoute la facturation automatique au changement d’état, les avoirs sur remboursement, le rapprochement des paiements, l’envoi des factures à la clientèle par e-mail, la correspondance des produits, les actions groupées, le rattrapage des commandes passées, les contrôles d’intégrité, le récapitulatif hebdomadaire et les alertes d’échec." 279 278 280 279 #: includes/class-isfp-settings.php:354 … … 308 307 #: includes/class-isfp-settings.php:370 309 308 msgid "Automatic (based on the customer country)" 310 msgstr "Auto (selon le pays d u client)"309 msgstr "Auto (selon le pays de la clientèle)" 311 310 312 311 #: includes/class-isfp-settings.php:383 … … 364 363 #: includes/class-isfp-settings.php:461 365 364 msgid "No token saved yet — save the settings first." 366 msgstr "Aucun jeton enregistré — enregistre r d’abord."365 msgstr "Aucun jeton enregistré — enregistrez d’abord les réglages." 367 366 368 367 #: includes/class-isfp-settings.php:465 … … 399 398 400 399 #: includes/class-isfp-siret-autocomplete.php:52 401 msgid "Invalid company ID."400 msgid "Invalid SIRET." 402 401 msgstr "SIRET invalide." 403 402 … … 412 411 #: includes/class-isfp-vat-mapper.php:86 413 412 msgid "Pennylane: VAT was collected on this order although the customer has a valid EU VAT number — the invoice is issued WITH the collected VAT (no reverse-charge mention). To sell VAT-free to EU businesses, enable the B2B exemption option in the Invoicing settings, then refund and re-order if needed." 414 msgstr "Pennylane : de la TVA a été encaissée alors que le client a un n° de TVA intracommunautaire valide — la facture est émise AVEC la TVA perçue (pas de mention intracommunautaire). Pour vendre HT aux pros UE, activez l’option d’exonération B2B dans les réglages Facturation, puis remboursez et refaites la commande si nécessaire."413 msgstr "Pennylane : de la TVA a été encaissée alors que le client ou la cliente a un n° de TVA intracommunautaire valide — la facture est émise AVEC la TVA perçue (pas de mention intracommunautaire). Pour vendre HT aux pros UE, activez l’option d’exonération B2B dans les réglages Facturation, puis remboursez et refaites la commande si nécessaire." 415 414 416 415 #: includes/class-isfp-vat-mapper.php:163 … … 428 427 #: includes/class-isfp-vies.php:161 429 428 msgid "Pennylane: VIES unreachable, VAT number %s could not be checked — reverse charge applied on format only. Please verify." 430 msgstr "Pennylane : VIES injoignable, n° TVA %s non vérifié — autoliquidation appliquée sur la base du format. À contrôler."429 msgstr "Pennylane : VIES injoignable, n° TVA %s non vérifié — autoliquidation appliquée uniquement sur la base du format. Veuillez vérifier." 431 430 432 431 #: includes/class-isfp-vies.php:166 … … 434 433 msgstr "Pennylane : n° TVA validé par le VIES (%s)." 435 434 436 #: ukto-invoice-sync-for-pennylane.php:1 15435 #: ukto-invoice-sync-for-pennylane.php:144 437 436 msgid "Invoice Sync for Pennylane requires WooCommerce to be installed and active." 438 437 msgstr "Invoice Sync for Pennylane nécessite WooCommerce installé et actif." 439 440 #. En-tete de l'extension (page Extensions de l'administration).441 msgid "UKTO Invoice Sync for Pennylane"442 msgstr "UKTO Invoice Sync for Pennylane"443 444 msgid "Sébastien DUBOIS"445 msgstr "Sébastien DUBOIS"446 447 msgid "https://ukto.fr"448 msgstr "https://ukto.fr"449 450 msgid "https://ukto.fr/pennylane.php"451 msgstr "https://ukto.fr/pennylane.php"452 453 msgid "Send your WooCommerce orders to Pennylane as compliant invoices: one-click invoicing from the order screen, full VAT/OSS mapping, EU VAT number validation (VIES) and company ID at checkout, invoice PDF in My Account."454 msgstr "Envoyez vos commandes WooCommerce vers Pennylane sous forme de factures conformes : facturation en un clic depuis la commande, gestion complète de la TVA et de l’OSS, validation du numéro de TVA intracommunautaire (VIES) et SIRET lors de la commande, PDF de facture dans « Mon compte »."455 456 msgid "Send your WooCommerce orders to Pennylane as compliant invoices: one-click invoicing from the order screen, full VAT/OSS mapping, EU VAT number validation (VIES) and SIRET at checkout, invoice PDF in My Account."457 msgstr "Envoyez vos commandes WooCommerce vers Pennylane sous forme de factures conformes : facturation en un clic depuis la commande, gestion complète de la TVA et de l’OSS, validation du numéro de TVA intracommunautaire (VIES) et SIRET lors de la commande, PDF de facture dans « Mon compte »."458 459 msgid "SIRET (French businesses)"460 msgstr "SIRET (entreprises françaises)"461 462 msgid "B2B checkout — SIRET (French company ID)"463 msgstr "Commande B2B — SIRET"464 465 msgid "Invalid SIRET."466 msgstr "SIRET invalide." -
ukto-invoice-sync-for-pennylane/trunk/languages/ukto-invoice-sync-for-pennylane.pot
r3713298 r3732190 1 1 # Copyright (C) 2026 Sébastien DUBOIS 2 # This file is distributed under the GPL-2.0-or-later .2 # This file is distributed under the GPL-2.0-or-later license. 3 3 msgid "" 4 4 msgstr "" 5 "Project-Id-Version: UKTO Invoice Sync for Pennylane 1.7.4\n" 6 "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/ukto-invoice-sync-for-pennylane\n" 7 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" 8 "Language-Team: LANGUAGE <LL@li.org>\n" 5 "Project-Id-Version: ukto-invoice-sync-for-pennylane\n" 9 6 "MIME-Version: 1.0\n" 10 7 "Content-Type: text/plain; charset=UTF-8\n" 11 8 "Content-Transfer-Encoding: 8bit\n" 12 "POT-Creation-Date: 2026-09-25T16:00:50+00:00\n" 13 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 14 "X-Generator: WP-CLI 2.12.0\n" 9 "Plural-Forms: nplurals=2; plural=(n != 1);\n" 15 10 "X-Domain: ukto-invoice-sync-for-pennylane\n" 16 11 17 #. Plugin Name of the plugin 18 #: ukto-invoice-sync-for-pennylane.php 19 msgid "UKTO Invoice Sync for Pennylane" 20 msgstr "" 21 22 #. Plugin URI of the plugin 23 #: ukto-invoice-sync-for-pennylane.php 24 msgid "https://ukto.fr/pennylane.php" 25 msgstr "" 26 27 #. Description of the plugin 28 #: ukto-invoice-sync-for-pennylane.php 29 msgid "Send your WooCommerce orders to Pennylane as compliant invoices: one-click invoicing from the order screen, full VAT/OSS mapping, EU VAT number validation (VIES) and SIRET at checkout, invoice PDF in My Account." 30 msgstr "" 31 32 #. Author of the plugin 33 #: ukto-invoice-sync-for-pennylane.php 34 msgid "Sébastien DUBOIS" 35 msgstr "" 36 37 #. Author URI of the plugin 38 #: ukto-invoice-sync-for-pennylane.php 39 msgid "https://ukto.fr" 40 msgstr "" 41 42 #: includes/class-isfp-api-client.php:114 43 #: includes/class-isfp-invoice-service.php:81 12 #: includes/class-isfp-api-client.php:114 includes/class-isfp-invoice-service.php:81 44 13 msgid "No Pennylane API token configured." 45 14 msgstr "" … … 49 18 msgstr "" 50 19 51 #: includes/class-isfp-checkout-fields.php:147 52 #: includes/class-isfp-checkout-fields.php:216 20 #: includes/class-isfp-checkout-fields.php:147 includes/class-isfp-checkout-fields.php:216 53 21 msgid "SIRET (French businesses)" 54 22 msgstr "" 55 23 56 #: includes/class-isfp-checkout-fields.php:154 57 #: includes/class-isfp-checkout-fields.php:222 24 #: includes/class-isfp-checkout-fields.php:154 includes/class-isfp-checkout-fields.php:222 58 25 msgid "EU VAT number" 59 26 msgstr "" 60 27 61 #: includes/class-isfp-checkout-fields.php:163 62 #: includes/class-isfp-checkout-fields.php:235 28 #: includes/class-isfp-checkout-fields.php:163 includes/class-isfp-checkout-fields.php:235 63 29 msgid "The SIRET number must be 14 digits." 64 30 msgstr "" 65 31 66 #: includes/class-isfp-checkout-fields.php:167 67 #: includes/class-isfp-checkout-fields.php:240 32 #: includes/class-isfp-checkout-fields.php:167 includes/class-isfp-checkout-fields.php:240 68 33 msgid "The EU VAT number looks invalid (e.g. FR12345678901)." 69 34 msgstr "" … … 73 38 msgstr "" 74 39 75 #. translators: %s: raw JSON response returned by Pennylane.76 40 #: includes/class-isfp-customer-sync.php:66 77 #, php-format78 41 msgid "Pennylane response contained no customer ID: %s" 79 42 msgstr "" 80 43 81 #. translators: %d: WooCommerce order number.82 44 #: includes/class-isfp-invoice-service.php:42 83 #, php-format84 45 msgid "Invoicing is already running for order #%d." 85 46 msgstr "" 86 47 87 #. translators: %s: error message returned by the Pennylane API.88 48 #: includes/class-isfp-invoice-service.php:55 89 #, php-format90 49 msgid "Pennylane: invoicing failed — %s" 91 50 msgstr "" … … 95 54 msgstr "" 96 55 97 #. translators: %s: raw JSON response returned by Pennylane.98 56 #: includes/class-isfp-invoice-service.php:110 99 #, php-format100 57 msgid "Pennylane response contained no invoice ID: %s" 101 58 msgstr "" 102 59 103 #. translators: %s: Pennylane invoice number.104 60 #: includes/class-isfp-invoice-service.php:143 105 #, php-format106 61 msgid "Pennylane: invoice %s created and finalized." 107 62 msgstr "" … … 111 66 msgstr "" 112 67 113 #: includes/class-isfp-my-account.php:34 114 #: includes/class-isfp-my-account.php:39 68 #: includes/class-isfp-my-account.php:34 includes/class-isfp-my-account.php:39 115 69 msgid "Access denied." 116 70 msgstr "" … … 124 78 msgstr "" 125 79 126 #. translators: file name prefix for the downloaded invoice PDF.127 80 #: includes/class-isfp-my-account.php:54 128 81 msgid "invoice" … … 145 98 msgstr "" 146 99 147 #. translators: %s: link to the Pennylane app.148 100 #: includes/class-isfp-order-metabox.php:61 149 #, php-format150 101 msgid "Connected to %s" 151 102 msgstr "" 152 103 153 #. translators: %s: Pennylane invoice number.154 104 #: includes/class-isfp-order-metabox.php:69 155 #, php-format156 105 msgid "no. %s" 157 106 msgstr "" … … 213 162 msgstr "" 214 163 215 #: includes/class-isfp-plugin.php:81 216 #: includes/class-isfp-settings.php:245 164 #: includes/class-isfp-plugin.php:81 includes/class-isfp-settings.php:245 217 165 msgid "Documentation" 218 166 msgstr "" … … 254 202 msgstr "" 255 203 256 #: includes/class-isfp-settings.php:288 257 #: includes/class-isfp-settings.php:387 204 #: includes/class-isfp-settings.php:288 includes/class-isfp-settings.php:387 258 205 msgid "Test mode (dry run)" 259 206 msgstr "" 260 207 261 #. translators: %s: bold "without sending anything to Pennylane".262 208 #: includes/class-isfp-settings.php:294 263 #, php-format264 209 msgid "Build and log payloads %s" 265 210 msgstr "" … … 457 402 msgstr "" 458 403 459 #: includes/class-isfp-siret-autocomplete.php:58 460 #: includes/class-isfp-siret-autocomplete.php:77 404 #: includes/class-isfp-siret-autocomplete.php:58 includes/class-isfp-siret-autocomplete.php:77 461 405 msgid "Company not found." 462 406 msgstr "" … … 482 426 msgstr "" 483 427 484 #. translators: %s: EU VAT number.485 428 #: includes/class-isfp-vies.php:161 486 #, php-format487 429 msgid "Pennylane: VIES unreachable, VAT number %s could not be checked — reverse charge applied on format only. Please verify." 488 430 msgstr "" 489 431 490 #. translators: %s: company name returned by VIES.491 432 #: includes/class-isfp-vies.php:166 492 #, php-format493 433 msgid "Pennylane: VAT number validated by VIES (%s)." 494 434 msgstr "" -
ukto-invoice-sync-for-pennylane/trunk/readme.txt
r3713298 r3732190 6 6 Requires PHP: 7.4 7 7 Requires Plugins: woocommerce 8 Stable tag: 1.7. 58 Stable tag: 1.7.6 9 9 License: GPLv2 or later 10 10 License URI: https://www.gnu.org/licenses/gpl-2.0.html … … 165 165 == Changelog == 166 166 167 = 1.7.6 = 168 * The bundled French translation was out of sync with the one reviewed on translate.wordpress.org: 169 the shipped file still carried glossary terms that had already been corrected there. Both are now 170 identical, including the non-breaking spaces. 171 * French translation switched to inclusive forms for "customer", following the fr_FR glossary and a 172 review request from the WordPress French translation team. 173 167 174 = 1.7.5 = 168 175 * The checkout field is now called SIRET everywhere, which is what it actually is: a French … … 217 224 == Upgrade Notice == 218 225 226 = 1.7.6 = 227 French translation realigned with the reviewed version on translate.wordpress.org. 228 219 229 = 1.7.5 = 220 230 Clearer wording: the checkout field is a French SIRET, and says so. -
ukto-invoice-sync-for-pennylane/trunk/ukto-invoice-sync-for-pennylane.php
r3713298 r3732190 4 4 * Plugin URI: https://ukto.fr/pennylane.php 5 5 * Description: Send your WooCommerce orders to Pennylane as compliant invoices: one-click invoicing from the order screen, full VAT/OSS mapping, EU VAT number validation (VIES) and SIRET at checkout, invoice PDF in My Account. 6 * Version: 1.7. 56 * Version: 1.7.6 7 7 * Requires at least: 5.8 8 8 * Requires PHP: 7.4 … … 20 20 defined( 'ABSPATH' ) || exit; 21 21 22 define( 'ISFP_VERSION', '1.7. 5' ); // Doit égaler l'en-tête Version — vérifié par build.ps1.22 define( 'ISFP_VERSION', '1.7.6' ); // Doit égaler l'en-tête Version — vérifié par build.ps1. 23 23 24 24 /**
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)