Actualités comptables
Appellations « chocolat » : que dit la réglementation ?

Appellations « chocolat » : que dit la réglementation ?

Publiée le mercredi 16 novembre 2022 à 05h45 dans Actu Juridique

En France, l’utilisation du terme « chocolat » n’est pas libre. Petit rappel de la différence juridique entre le chocolat noir, le chocolat au lait, le chocolat blanc, les truffes au chocolat, etc.


Qu’est-ce qu’un chocolat ?

En France, la composition des produits pouvant être qualifiés de « chocolat » est juridiquement encadrée.

Un « chocolat » doit, en effet, avoir une teneur minimale en cacao, variable selon le type de chocolat dont il est question. Plus précisément, il doit avoir une teneur en matière sèche de cacao supérieure à 35 % dont au moins 18 % de beurre de cacao.

Au-delà de ce principe, retenez que le chocolat blanc, le chocolat au lait et le chocolat noir se définissent, juridiquement, au regard de leur composition. Ainsi :

  • pour être qualifié de « blanc », le chocolat doit être composé de beurre de cacao, de lait et de sucres et contenir au moins 20 % de beurre de cacao et 14 % de lait (produits lactiques, lait déshydraté, crème, etc.) ;
  • pour être qualifié de « au lait », le chocolat doit être composé de cacao, de sucres et de lait et doit contenir au moins 25 % de matière sèche de cacao supérieur et 14 % de lait (produits lactiques, lait déshydraté, crème, etc.) ;
  • pour être qualifié de « noir », le chocolat doit avoir une teneur en cacao plus élevée : au moins 43 % de matière sèche totale de cacao, dont 26 % au moins de beurre de cacao.

Les autres types de chocolat sont également encadrés. À titre d’exemple :

  • le chocolat fourré (produit dont la partie extérieure est constituée de chocolat) : la partie en chocolat doit représenter au moins 25 % du poids total du produit ;
  • le chocolat gianduja : il doit contenir au moins 32 % de matière sèche de cacao supérieur et entre 20 % et 40 % de noisettes ; s’il est au lait, le chocolat gianduja doit contenir 10 % de lait et entre 15 % et 40 % de noisettes ; etc.

Les truffes au chocolat, elles aussi, ont une définition juridique : l’appellation « truffes » ne s’applique qu’à une spécialité au chocolat, de la taille d’une bouchée, dans laquelle le chocolat représente au moins 25 % du poids total du produit et dont les matières grasses proviennent exclusivement de chocolat ou de cacao et de produits laitiers.


Quelles informations doivent figurer sur les étiquettes des « chocolats » ?

Les étiquettes des produits qui utilisent l’appellation « chocolat » doivent impérativement reprendre les informations suivantes :

  • la composition du produit ;
  • la teneur en cacao ;
  • la référence explicite au traitement de congélation-décongélation éventuellement subi par le produit ;
  • la mention « Ne pas recongeler » à proximité de leur dénomination de vente, si le produit a été congelé ;
  • une date de durabilité minimale sous la forme « À consommer de préférence avant fin… », suivie des conditions de conservation.

Enfin, notez que lorsque des chocolats ne comportent pas de matières grasses végétales additionnelles autres que le beurre de cacao (comme l’huile de palme), ils peuvent être vendus sous l’appellation « chocolat pur beurre de cacao » et « chocolat traditionnel » ou tout autre dénomination équivalente.

Source : Actualité de economie.gouv.fr du 27 octobre 2022 : « Chocolat au lait, gianduja, chocolat noir... comment s’y retrouver ? »

Chocolat : un rappel réglementaire… à consommer sans modération ! © Copyright WebLex - 2022

Plan d'accès

Plus d’informations ?

Sotorec

  • Sotorec
    267 bd. du Docteur Charles Barnier
    83000 Toulon
  • 04 94 09 17 02
  • +33494895133

Vous avez des questions ?

loader

Chargement, veuillez patienter…
  • Mémoire utilisée par PHP : 2,94 Mo
  • Pic mémoire allouée par PHP : 4,10 Mo
  • Temps d'execution du script : 0.541 s
  • Lang :
  • Path : actualite-appellations-chocolat-que-dit-la-reglementation
  • Route : newsItem
  • $okt->page->module : news
  • $okt->page->action : item
ID Query Time
1
SET NAMES utf8mb4
0.00019
2
SELECT u.*, g.*, o.logged, o.csrf_token, o.prev_url FROM
oktopusV1_core_users AS u INNER JOIN
oktopusV1_core_users_groups AS g ON g.group_id=u.group_id
LEFT JOIN oktopusV1_core_users_online AS o ON
o.ident='3.236.83.14' WHERE u.id=1
0.00074
3
UPDATE oktopusV1_core_users_online SET logged=1718401929,
prev_url='https://www.sotorec-experts-comptables.com/actualite-appellations-chocolat-que-dit-la-reglementation'
WHERE ident='3.236.83.14'
0.00030
4
UPDATE oktopusV1_mod_news SET active = 1
                           WHERE active = 3 AND NOW() >
created_at 
0.00063
5
UPDATE oktopusV1_mod_news SET active = 0
                              WHERE active = 1 AND end_at !=
"0000-00-00 00:00:00" 
                              AND NOW() > end_at 
0.01800
6
SELECT r.*, rl.*, COUNT(p.id) AS num_posts FROM
oktopusV1_mod_news_categories AS r LEFT JOIN
oktopusV1_mod_news_categories_locales AS rl ON
r.id=rl.category_id LEFT JOIN oktopusV1_mod_news AS p ON
r.id=p.category_id WHERE 1 AND rl.language='fr'  GROUP BY
r.id ORDER BY nleft asc 
0.02750
7
SELECT p.id, p.user_id, p.category_id, p.active, p.selected,
p.created_at, p.updated_at, p.end_at, p.images, p.files,
p.tpl, p.visit, pl.language, pl.title, pl.subtitle,
pl.title_tag, pl.title_seo, pl.slug, pl.content,
pl.content_short, pl.meta_description, pl.meta_keywords,
pl.words, u.username, u.lastname, u.firstname, rl.title AS
category_title, rl.slug AS category_slug, r.items_tpl AS
category_items_tpl FROM oktopusV1_mod_news AS p  LEFT OUTER
JOIN oktopusV1_core_users AS u ON u.id=p.user_id  INNER JOIN
oktopusV1_mod_news_locales AS pl ON p.id=pl.post_id AND
pl.language='fr'  LEFT OUTER JOIN
oktopusV1_mod_news_categories AS r ON r.id=p.category_id 
LEFT OUTER JOIN oktopusV1_mod_news_categories_locales AS rl
ON r.id=rl.category_id AND rl.language='fr' WHERE 1  AND
pl.language='fr'  AND
pl.slug='appellations-chocolat-que-dit-la-reglementation'
ORDER BY p.selected DESC, p.created_at DESC 
0.00193
8
SELECT f.id, f.user_id, f.active, f.token, f.created_at,
f.updated_at, f.tpl, f.config_general, f.config_style,
f.config_date,
                              fl.language, fl.title,
fl.title_tag, fl.title_seo, fl.slug, fl.meta_description,
fl.meta_keywords, fl.beforedate, fl.afterdate FROM
oktopusV1_mod_facebook AS f  INNER JOIN
oktopusV1_mod_facebook_locales AS fl ON f.id=fl.id_facebook
AND fl.language='fr' WHERE 1  AND fl.language='fr' AND
f.active=1 ORDER BY f.created_at DESC 
0.00051
9
SELECT r.*, rl.*, COUNT(p.id) AS num_items FROM
oktopusV1_mod_galleries AS r LEFT JOIN
oktopusV1_mod_galleries_locales AS rl ON r.id=rl.gallery_id
LEFT JOIN oktopusV1_mod_galleries_items AS p ON
r.id=p.gallery_id WHERE 1 AND rl.language='fr' AND
r.active=1  GROUP BY r.id ORDER BY nleft asc 
0.00041
10
SELECT m.*, 
                              ml.language, ml.title,
ml.title_tag, ml.title_seo, ml.slug, ml.meta_description,
ml.meta_keywords, ml.content FROM oktopusV1_mod_map AS m 
LEFT JOIN oktopusV1_mod_map_locales AS ml ON m.id=ml.id_map
AND ml.language='fr' WHERE 1  AND ml.language='fr' AND
m.active=1 ORDER BY m.created_at DESC 
0.00055
11
SELECT p.id, p.user_id, p.category_id, p.active,
p.created_at, p.updated_at, p.images, p.files, p.tpl,
p.position, pl.language, pl.title, pl.subtitle,
pl.title_tag, pl.title_seo, pl.slug, pl.content,
pl.meta_description, pl.meta_keywords, pl.words, rl.title AS
category_title, rl.slug AS category_slug, rl.title_tag AS
category_title_tag, r.items_tpl AS category_items_tpl,
p.recipients_to, p.recipients_cc, p.recipients_bcc,
p.from_to, p.captcha, p.conversion_google, p.from_copy,
pl.subject FROM oktopusV1_mod_pages AS p  INNER JOIN
oktopusV1_mod_pages_locales AS pl ON p.id=pl.page_id AND
pl.language='fr'  LEFT OUTER JOIN
oktopusV1_mod_pages_categories AS r ON r.id=p.category_id 
LEFT OUTER JOIN oktopusV1_mod_pages_categories_locales AS rl
ON r.id=rl.category_id AND rl.language='fr' WHERE 1  AND
pl.language='fr' AND p.active=1 ORDER BY p.created_at DESC 
0.00174
12
UPDATE oktopusV1_mod_news SET visit=visit+1 WHERE id=14422
0.00293
13
SELECT t.active, t.ord, t.id, t.parent_id, t.nleft,
t.nright, t.level, l.title, l.title_tag, l.title_seo,
l.slug, l.content, l.meta_description, l.meta_keywords FROM
oktopusV1_mod_news_categories AS t JOIN
oktopusV1_mod_news_categories_locales AS l ON t.id =
l.category_id AND l.language = "fr" WHERE t.id = 3
0.00358
14
SELECT t.active, t.ord, t.id, t.parent_id, t.nleft,
t.nright, t.level, l.title, l.title_tag, l.title_seo,
l.slug, l.content, l.meta_description, l.meta_keywords FROM
oktopusV1_mod_news_categories AS t JOIN
oktopusV1_mod_news_categories_locales AS l ON t.id =
l.category_id AND l.language = "fr" WHERE nleft <= 2 AND
nright >= 3 ORDER BY level
0.00050
15
 SELECT t.*,
                            DATE_FORMAT(t.date_creation,
'%d/%m/%Y %H:%i:%s') as date_creation_fr,
                            DATE_FORMAT(t.date_modification,
'%d/%m/%Y %H:%i:%s') as date_modification_fr
                       FROM oktopusV1_mod_slideshow_type t
                       WHERE 1 AND CASE 
                                       WHEN t.choix_rubrique
= 1 THEN
                                           t.rubrique LIKE
'%\'/actualite-appellations-chocolat-que-dit-la-reglementation\'%'
                                       WHEN t.choix_rubrique
= 2 THEN
                                          
                   (  SELECT COUNT(t.id_type) FROM
oktopusV1_mod_slideshow_type t
                      WHERE t.choix_rubrique = 1 AND
t.rubrique LIKE
'%\'/actualite-appellations-chocolat-que-dit-la-reglementation\'%'
AND t.actif = 1
                   ) = 0
                
                                           AND
                                           t.rubrique NOT
LIKE
'%\'/actualite-appellations-chocolat-que-dit-la-reglementation\'%'
                                       ELSE     
                                          
                   (  SELECT COUNT(t.id_type) FROM
oktopusV1_mod_slideshow_type t
                      WHERE t.choix_rubrique = 1 AND
t.rubrique LIKE
'%\'/actualite-appellations-chocolat-que-dit-la-reglementation\'%'
AND t.actif = 1
                   ) = 0
                 
                                   END AND actif = '1' ORDER
BY nom 
0.00096
16
SELECT m.*, 
                              ml.language, ml.title,
ml.title_tag, ml.title_seo, ml.slug, ml.meta_description,
ml.meta_keywords, ml.content FROM oktopusV1_mod_map AS m 
LEFT JOIN oktopusV1_mod_map_locales AS ml ON m.id=ml.id_map
AND ml.language='fr' WHERE 1  AND m.id = 2  AND
ml.language='fr' AND m.active=1 ORDER BY m.created_at DESC 
0.00044
17
SELECT f.id, f.active, f.type, f.category, f.ord, f.html_id,
f.colonne, f.picto, f.options, f.info_personnelle, fl.title,
fl.legend, fl.description, fl.value FROM
oktopusV1_mod_contact_fields f LEFT JOIN
oktopusV1_mod_contact_fields_locales AS fl ON
fl.field_id=f.id AND fl.category=f.category WHERE 1  AND
f.active>0  AND f.category = "insert" AND fl.language='fr'
ORDER BY ord ASC 
0.00035
18
SELECT p.*, pl.*,
                         DATE_FORMAT(p.debut, '%d/%m/%Y') as
debut_fr,
                         DATE_FORMAT(p.fin, '%d/%m/%Y') as
fin_fr,
                         DATE_FORMAT(p.date_creation,
'%d/%m/%Y %H:%i:%s') as date_creation_fr,
                         DATE_FORMAT(p.date_modification,
'%d/%m/%Y %H:%i:%s') as date_modification_fr
                      FROM oktopusV1_mod_home_popup p
                      LEFT JOIN
oktopusV1_mod_home_popup_locales pl ON pl.id_popup =
p.id_popup AND pl.language = 'fr'
                      WHERE 1 AND (
                                        CURDATE() BETWEEN
p.debut AND p.fin
                                        OR (p.debut =
'0000-00-00 00:00:00' AND p.fin = '0000-00-00 00:00:00')
                                    )AND pl.content <> ''
AND (p.rubrique = '' OR p.rubrique LIKE
'%\'/actualite-appellations-chocolat-que-dit-la-reglementation\'%')
ORDER BY p.rubrique DESC
0.00081
19
SELECT p.*, pl.*,
                         DATE_FORMAT(p.debut, '%d/%m/%Y') as
debut_fr,
                         DATE_FORMAT(p.fin, '%d/%m/%Y') as
fin_fr,
                         DATE_FORMAT(p.date_creation,
'%d/%m/%Y %H:%i:%s') as date_creation_fr,
                         DATE_FORMAT(p.date_modification,
'%d/%m/%Y %H:%i:%s') as date_modification_fr
                      FROM oktopusV1_mod_home_popup p
                      LEFT JOIN
oktopusV1_mod_home_popup_locales pl ON pl.id_popup =
p.id_popup AND pl.language = 'fr'
                      WHERE 1 AND (
                                        CURDATE() BETWEEN
p.debut AND p.fin
                                        OR (p.debut =
'0000-00-00 00:00:00' AND p.fin = '0000-00-00 00:00:00')
                                    )AND pl.content <> ''
AND (p.rubrique = '' OR p.rubrique LIKE
'%\'/actualite-appellations-chocolat-que-dit-la-reglementation\'%')
ORDER BY p.rubrique DESC
0.00067
# type fichier ligne classe fonction message
# 1  Warning /www/al159/www/oktModules/map/inc/class.map.recordset.php 579 oktDebug errorHandler Trying to access array offset on value of type null

#0 mapRecordset->getEmbedAddress( called at [/oktModules/map/inc/class.map.recordset.php:96]


#1 mapRecordset->getScriptSimple( called at [/oktModules/map/inc/class.map.recordset.php:79]


#2 mapRecordset->getScript( called at [/oktThemes/default/templates/map/insert/r-horizontal/template.php:31]


#3 require( called at [/oktInc/vendor/sfTemplating/sfTemplateRendererPhp.php:36]


#4 sfTemplateRendererPhp->evaluate( called at [/oktInc/vendor/sfTemplating/sfTemplateEngine.php:106]


#5 sfTemplateEngine->render( called at [/oktInc/classes/core/class.oktTemplating.php:60]


#6 oktTemplating->render( called at [/oktInc/vendor/sfTemplating/sfTemplateRenderer.php:45]


#7 sfTemplateRenderer->__call( called at [/oktThemes/ra157-s/templates/layout.php:132]


#8 require( called at [/oktInc/vendor/sfTemplating/sfTemplateRendererPhp.php:36]


#9 sfTemplateRendererPhp->evaluate( called at [/oktInc/vendor/sfTemplating/sfTemplateEngine.php:106]


#10 sfTemplateEngine->render( called at [/oktInc/classes/core/class.oktTemplating.php:60]


#11 oktTemplating->render( called at [/oktInc/vendor/sfTemplating/sfTemplateEngine.php:117]


#12 sfTemplateEngine->render( called at [/oktInc/classes/core/class.oktTemplating.php:60]


#13 oktTemplating->render( called at [/oktModules/news/inc/class.news.controller.php:459]


#14 newsController->newsItem( called at [/oktInc/classes/router/class.oktRouter.php:317]


#15 oktRouter->callRouteHanlder( called at [/oktopus.php:58]

# 2  Warning /www/al159/www/oktModules/map/inc/class.map.recordset.php 579 oktDebug errorHandler Trying to access array offset on value of type null

#0 mapRecordset->getEmbedAddress( called at [/oktModules/map/inc/class.map.recordset.php:96]


#1 mapRecordset->getScriptSimple( called at [/oktModules/map/inc/class.map.recordset.php:79]


#2 mapRecordset->getScript( called at [/oktThemes/default/templates/map/insert/r-horizontal/template.php:31]


#3 require( called at [/oktInc/vendor/sfTemplating/sfTemplateRendererPhp.php:36]


#4 sfTemplateRendererPhp->evaluate( called at [/oktInc/vendor/sfTemplating/sfTemplateEngine.php:106]


#5 sfTemplateEngine->render( called at [/oktInc/classes/core/class.oktTemplating.php:60]


#6 oktTemplating->render( called at [/oktInc/vendor/sfTemplating/sfTemplateRenderer.php:45]


#7 sfTemplateRenderer->__call( called at [/oktThemes/ra157-s/templates/layout.php:132]


#8 require( called at [/oktInc/vendor/sfTemplating/sfTemplateRendererPhp.php:36]


#9 sfTemplateRendererPhp->evaluate( called at [/oktInc/vendor/sfTemplating/sfTemplateEngine.php:106]


#10 sfTemplateEngine->render( called at [/oktInc/classes/core/class.oktTemplating.php:60]


#11 oktTemplating->render( called at [/oktInc/vendor/sfTemplating/sfTemplateEngine.php:117]


#12 sfTemplateEngine->render( called at [/oktInc/classes/core/class.oktTemplating.php:60]


#13 oktTemplating->render( called at [/oktModules/news/inc/class.news.controller.php:459]


#14 newsController->newsItem( called at [/oktInc/classes/router/class.oktRouter.php:317]


#15 oktRouter->callRouteHanlder( called at [/oktopus.php:58]