  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0434520804'
    AND c_existing.slug <> 'serrurier-liege-serrurerie-liege-a-la-forge'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'serrurier-liege-secutek-liege', 'BE-WAL', 'Secutek Liège', 'Serrurier', ARRAY['urgence serrurier', 'porte bloquée', 'cambriolage', '24h/24', 'garantie 2 ans', 'remboursement assurance', 'dépannage urgence', 'ouverture de porte', 'remplacement serrure', 'porte de garage', 'volet']::text[], ARRAY['Dépannage urgence', 'Ouverture de porte', 'Remplacement serrure', 'Porte de garage', 'Volet']::text[], 'forfait', NULL, NULL, TRUE, 'Uccle', '1180', 'BE', 'Avenue Winston Churchill 18-22', 'https://secutek.be/', NULL, NULL, NULL, NULL, 'liege@secutek.be', NULL, '+3228970435', '+3228970435', NULL, NULL, NULL, 'Uccle', ARRAY['français']::text[], '24h/24 - 7j/7', NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de dépannage urgence?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Quelles communes sont couvertes en priorité?","answer":"Les interventions se déroulent à Uccle et dans les communes avoisinantes, selon la nature de la demande."}]'::jsonb, 'Secutek Liège est un serrurier expérimenté intervenant en urgence à Uccle, spécialisé dans l''ouverture de portes, le remplacement de serrures et la sécurisation après cambriolage. Avec plus de 35 ans d''expérience, l''entreprise garantit des interventions rapides et efficaces, disponibles 24h/24 et 7j/7.', 'Serrurier à Uccle | Secutek Liège', 'Intervention en moins de 20 minutes pour ouverture de porte ou remplacement de serrure. Expert reconnu par les assurances belges, basé à Uccle.', 'Serrurier professionnel à Uccle', 'Dépannage urgent 24h/24 pour portes bloquées, cambriolages et réparations de serrures. Facture détaillée fournie pour assurance.', '{"@context":"https://schema.org","@type":"Locksmith","name":"Secutek Liège","description":"Serrurier professionnel à Uccle proposant dépannage urgent et remplacement de serrures.","url":"https://revelys.be/entreprises/serrurier-liege-secutek-liege","sameAs":["https://secutek.be/"],"address":{"@type":"PostalAddress","streetAddress":"Avenue Winston Churchill 18-22","postalCode":"1180","addressLocality":"Uccle","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Uccle"},"keywords":["urgence serrurier","porte bloquée","cambriolage","24h/24","garantie 2 ans","remboursement assurance","dépannage urgence","ouverture de porte","remplacement serrure","porte de garage","volet"],"image":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-secutek-liege/logo.webp"}'::jsonb, '2026-02-19T16:51:56.252Z', TRUE, 5, '2cdc35c2d3ea978f967ac4fbaf1b4f8bf1b8e0abff6a9b305590c774f38b4dfb', 'Secutek Liège se distingue par sa rapidité d''intervention (moins de 20 minutes) et son expertise reconnue par les assurances belges, offrant une prise en charge immédiate sans dégâts.', NULL, 'Soulagement', '[{"name":"Diagnostic rapide sur place","description":"Le serrurier évalue immédiatement la situation pour proposer la solution la plus adaptée, avec un matériel adapté en stock.","frequency":"toujours","impact":"évite les erreurs de diagnostic et accélère l''intervention","proof":null},{"name":"Facture détaillée pour assurance","description":"Une facture complète est remise au client après chaque intervention, facilitant le remboursement par son assurance habitation.","frequency":"toujours","impact":"simplifie les démarches administratives","proof":null},{"name":"Test de serrure après réparation","description":"Le professionnel vérifie systématiquement le bon fonctionnement de la nouvelle serrure ou du cylindre installé.","frequency":"toujours","impact":"garantit la sécurité du client","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-secutek-liege/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-secutek-liege/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-secutek-liege/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-secutek-liege/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-secutek-liege/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-secutek-liege/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T16:52:39.261Z","proof":"https://secutek.be/serrurier/liege/"},{"label":"Seed: city hint","date":"2026-02-19T16:52:39.261Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T16:52:39.261Z","proof":"Serrurier"},{"label":"Seed: search keyword","date":"2026-02-19T16:52:39.261Z","proof":"Serrurier"},{"label":"Extracted: city","date":"2026-02-19T16:52:39.261Z","proof":"Liège"},{"label":"BCE: mod97 valid","date":"2026-02-19T16:52:39.261Z","proof":"0803679444"},{"label":"Email extracted","date":"2026-02-19T16:52:39.261Z","proof":"liege@secutek.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T16:52:39.261Z","proof":"confidence=92/100"},{"label":"Phone extracted","date":"2026-02-19T16:52:39.261Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T16:52:39.261Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-secutek-liege/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0803679444', 'Actif', 'BCE_CSV', '2026-02-19T16:49:12.106Z', '2026-02-19T16:49:12.106Z', 'SECUTEK GROUP', '2023-07-06', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T16:52:39.261Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0803679444'
    AND c_existing.slug <> 'serrurier-liege-secutek-liege'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'serrurier-liege-serrurier-vincent', 'BE-WAL', 'Serrurier Vincent', 'Serrurier', ARRAY['urgence serrurier liège', 'ouverture porte bloquée', 'coffre fort ignifuge', 'porte blindée', 'contrôle accès magnétique', 'intervention rapide', 'devis gratuit', 'sécurisation', 'vente et installation de coffres forts', 'pose de portes de sécurité', 'contrôles d’accès']::text[], ARRAY['Sécurisation', 'Vente et installation de coffres forts', 'Pose de portes de sécurité', 'Contrôles d’accès']::text[], 'sur_devis', NULL, NULL, TRUE, 'Liège', '4000', 'BE', 'Place du Général-Leman 41', 'https://serrurerievincent-liege.be/', NULL, NULL, NULL, NULL, 'info@serrurier-liege.be', NULL, '+32475980815', '+32475980815', NULL, NULL, NULL, 'Liège', ARRAY['français']::text[], '24h/24 - 7j/7', NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de sécurisation?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Sur quelle zone géographique intervenez-vous?","answer":"Les interventions se déroulent à Liège et dans les communes avoisinantes, selon la nature de la demande."},{"question":"Comment la qualité des interventions est-elle assurée?","answer":"La qualité repose sur une méthode structurée, des vérifications en cours d''intervention et un contrôle final avant la remise au client."},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"Serrurier Vincent se distingue par son expertise familiale et sa réactivité, avec des interventions garanties sous une heure dans le Grand Liège. L''entreprise mise sur un conseil personnalisé pour adapter les solutions de sécurité à chaque besoin."}]'::jsonb, 'Serrurier Vincent est une entreprise familiale spécialisée en serrurerie et sécurisation à Liège, avec plus de trente ans d''expérience. Elle propose des interventions rapides 24h/24 pour les dépannages urgents ainsi que la vente et l''installation de coffres-forts, portes blindées et systèmes de contrôle d''accès.', 'Serrurier à Liège | Serrurier Vincent', 'Intervention sous 1h pour ouverture de porte bloquée. Expertise familiale avec tests de résistance systématiques. Spécialiste en sécurité à Liège.', 'Serrurier Vincent - Services de serrurerie à Liège', 'Serrurier Vincent propose des solutions de sécurité sur mesure : portes blindées, coffres forts et contrôles d''accès. Interventions rapides dans le Grand Liège.', '{"@context":"https://schema.org","@type":"Locksmith","name":"Serrurier Vincent","description":"Services de serrurerie à Liège : ouverture portes, sécurisation et installation de coffres forts.","url":"https://revelys.be/entreprises/serrurier-liege-serrurier-vincent","sameAs":["https://serrurerievincent-liege.be/"],"address":{"@type":"PostalAddress","streetAddress":"Place du Général-Leman 41","postalCode":"4000","addressLocality":"Liège","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Liège"},"keywords":["urgence serrurier liège","ouverture porte bloquée","coffre fort ignifuge","porte blindée","contrôle accès magnétique","intervention rapide","devis gratuit","sécurisation","vente et installation de coffres forts","pose de portes de sécurité","contrôles d’accès"],"image":[{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-vincent/logo.webp"}],"logo":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-vincent/logo.webp"}}'::jsonb, '2026-02-19T16:56:01.563Z', TRUE, 5, '05e354cc9af7dc7d11b580b9f584805632f194754dd468a96d1d25d914bdb51f', 'Serrurier Vincent se distingue par son expertise familiale et sa réactivité, avec des interventions garanties sous une heure dans le Grand Liège. L''entreprise mise sur un conseil personnalisé pour adapter les solutions de sécurité à chaque besoin.', NULL, 'Sécurité', '[{"name":"Test de résistance serrure","description":"Après toute installation ou réparation, l''équipe vérifie manuellement la solidité et le bon fonctionnement de la serrure en simulant des tentatives d''effraction.","frequency":"toujours","impact":"garantit la sécurité immédiate du client","proof":null},{"name":"Nettoyage des outils après intervention","description":"Tous les outils sont systématiquement nettoyés et désinfectés entre chaque utilisation pour respecter les normes d''hygiène, surtout lors des interventions en milieu médical ou alimentaire.","frequency":"toujours","impact":"évite la contamination croisée","proof":null},{"name":"Explication détaillée du système installé","description":"Le technicien prend systématiquement 5 minutes pour montrer au client comment utiliser et entretenir son nouveau dispositif de sécurité (coffre, porte blindée, etc.).","frequency":"toujours","impact":"empêche les mauvaises manipulations","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-vincent/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-vincent/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-vincent/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-vincent/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-vincent/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-vincent/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T16:56:54.274Z","proof":"https://serrurerievincent-liege.be/"},{"label":"Seed: city hint","date":"2026-02-19T16:56:54.274Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T16:56:54.274Z","proof":"Serrurier"},{"label":"Seed: search keyword","date":"2026-02-19T16:56:54.274Z","proof":"Serrurier"},{"label":"Extracted: city","date":"2026-02-19T16:56:54.274Z","proof":"Liège"},{"label":"BCE: mod97 valid","date":"2026-02-19T16:56:54.274Z","proof":"0845546921"},{"label":"Email extracted","date":"2026-02-19T16:56:54.274Z","proof":"info@serrurier-liege.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T16:56:54.274Z","proof":"confidence=92/100"},{"label":"Phone extracted","date":"2026-02-19T16:56:54.274Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T16:56:54.274Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-vincent/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0845546921', 'Actif', 'BCE_CSV', '2026-02-19T16:52:43.964Z', '2026-02-19T16:52:43.964Z', 'SERRURERIE VINCENT', '2012-04-26', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T16:56:54.274Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0845546921'
    AND c_existing.slug <> 'serrurier-liege-serrurier-vincent'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'serrurier-liege-serrurier-bertrand-a-lieges-et-namur', 'BE-WAL', 'Serrurier Bertrand à Lièges et Namur', 'Serrurier', ARRAY['urgence serrurerie', 'porte bloquée', 'cylindre haute sécurité', 'certification skg ***', 'intervention rapide', 'sécurité domicile', 'ouverture de porte', 'sécurisation du domicile', 'réparation de serrure', 'installation de cylindres haute sécurité', 'contrôle d''accès', 'conseil coffre-fort']::text[], ARRAY['Ouverture de porte', 'Sécurisation du domicile', 'Réparation de serrure', 'Installation de cylindres haute sécurité', 'Contrôle d''accès', 'Conseil coffre-fort']::text[], 'sur_devis', NULL, NULL, TRUE, 'Liège', '4000', 'BE', 'Rue de Namur 39 boite 1', 'https://serrurier-bertrand.be/', NULL, 'https://www.instagram.com/serrurier_bertrand/', NULL, NULL, 'info@serrurier-bertrand.be', NULL, '+32485405455', '+32485405455', NULL, NULL, NULL, 'Liège', ARRAY['français']::text[], '24h/24 - 7j/7', NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de sécurisation du domicile?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Intervenez-vous au-delà de la zone principale?","answer":"La zone principale est Liège. Les interventions peuvent s''étendre aux communes limitrophes selon le besoin."},{"question":"Comment contrôlez-vous la qualité de votre travail?","answer":"Des vérifications sont effectuées à chaque étape de l''intervention, avec un contrôle final avant la clôture du chantier."},{"question":"Gérez-vous les interventions urgentes?","answer":"Oui, l''organisation permet de répondre aux demandes urgentes (24h/24 - 7j/7)."},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"Serrurier Bertrand se distingue par son intervention garantie en moins d''une heure, 7 jours sur 7, et l''utilisation exclusive de produits certifiés SKG *** pour une protection maximale."}]'::jsonb, 'Serrurier Bertrand à Liège et Namur propose des interventions rapides en urgence 24h/24 pour l''ouverture de portes, la réparation de serrures ou la sécurisation des habitations. Avec plus de 15 ans d''expérience, cette entreprise utilise des produits certifiés SKG *** pour garantir une protection optimale contre les effractions.', 'Serrurier à Liège | Serrurier Bertrand', 'Intervention en moins d''une heure pour ouverture de porte ou sécurisation. Produits certifiés SKG *** pour une protection maximale à Liège et Namur.', 'Serrurier professionnel à Liège et Namur', 'Ouverture de porte, réparation de serrure et installation de cylindres haute sécurité. Diagnostic complet avant toute intervention.', '{"@context":"https://schema.org","@type":"Locksmith","name":"Serrurier Bertrand à Lièges et Namur","description":"Intervention rapide pour ouverture de porte, sécurisation du domicile et installation de cylindres haute sécurité.","url":"https://revelys.be/entreprises/serrurier-liege-serrurier-bertrand-a-lieges-et-namur","sameAs":["https://serrurier-bertrand.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue de Namur 39 boite 1","postalCode":"4000","addressLocality":"Liège","addressCountry":"BE"},"areaServed":["Liège","Namur"],"keywords":["urgence serrurerie","porte bloquée","cylindre haute sécurité","certification skg ***","intervention rapide","sécurité domicile","ouverture de porte","sécurisation du domicile","réparation de serrure","installation de cylindres haute sécurité","contrôle d''accès","conseil coffre-fort"],"image":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-bertrand-a-lieges-et-namur/logo.webp","logo":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-bertrand-a-lieges-et-namur/logo.webp"}'::jsonb, '2026-02-19T17:04:42.124Z', TRUE, 5, 'a3c47611df760cbd4a5a19459a77e635b9ba243b74f5bcc6400b7a2d876c6354', 'Serrurier Bertrand se distingue par son intervention garantie en moins d''une heure, 7 jours sur 7, et l''utilisation exclusive de produits certifiés SKG *** pour une protection maximale.', NULL, 'Clarté', '[{"name":"Test de résistance des cylindres","description":"Chaque cylindre haute sécurité installé est soumis à un test de résistance aux effractions avant mise en place, garantissant sa conformité aux normes SKG ***.","frequency":"toujours","impact":"sécurité renforcée","proof":null},{"name":"Diagnostic complet des serrures","description":"Avant toute réparation, un diagnostic précis est réalisé pour identifier l''origine du problème et proposer une solution durable.","frequency":"toujours","impact":"réparation efficace","proof":null},{"name":"Nettoyage des mécanismes","description":"Après chaque intervention, les mécanismes de serrure sont nettoyés pour éviter l''usure prématurée et assurer un fonctionnement optimal.","frequency":"toujours","impact":"longévité des équipements","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-bertrand-a-lieges-et-namur/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-bertrand-a-lieges-et-namur/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-bertrand-a-lieges-et-namur/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-bertrand-a-lieges-et-namur/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-bertrand-a-lieges-et-namur/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-bertrand-a-lieges-et-namur/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T17:05:33.062Z","proof":"https://serrurier-bertrand.be/"},{"label":"Seed: city hint","date":"2026-02-19T17:05:33.062Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T17:05:33.062Z","proof":"Serrurier"},{"label":"Seed: search keyword","date":"2026-02-19T17:05:33.062Z","proof":"Serrurier"},{"label":"Extracted: city","date":"2026-02-19T17:05:33.062Z","proof":"Liège"},{"label":"BCE: mod97 valid","date":"2026-02-19T17:05:33.062Z","proof":"1012947541"},{"label":"Email extracted","date":"2026-02-19T17:05:33.062Z","proof":"info@serrurier-bertrand.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T17:05:33.062Z","proof":"confidence=92/100"},{"label":"Phone extracted","date":"2026-02-19T17:05:33.062Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T17:05:33.062Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurier-bertrand-a-lieges-et-namur/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE1012947541', 'Actif', 'BCE_CSV', '2026-02-19T16:57:02.928Z', '2026-02-19T16:57:02.928Z', 'SERRURERIE BERTRAND', '2024-08-29', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T17:05:33.062Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE1012947541'
    AND c_existing.slug <> 'serrurier-liege-serrurier-bertrand-a-lieges-et-namur'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'serrurier-liege-fabry-serrurerie', 'BE-WAL', 'Fabry Serrurerie', 'Serrurier', ARRAY['urgence serrurerie', 'porte bloquée', 'clé cassée', 'sécurité anti-effraction', 'cylindre électromécanique', 'dépannage 24/7', 'vottem liège', 'membre fédération', 'dépannage serrures urgentes', 'remplacement de clés', 'pose de cylindres électromécaniques', 'sécurisation d''habitations']::text[], ARRAY['Dépannage serrures urgentes', 'Remplacement de clés', 'Pose de cylindres électromécaniques', 'Sécurisation d''habitations', 'Réparation de serrures endommagées']::text[], 'sur_devis', NULL, NULL, TRUE, 'Vottem', '4041', 'BE', 'Rue Lombard, Herstal, BE', 'https://www.fabry-serrurerie.be/', 'https://www.facebook.com/people/Serrurerie-Fabry/100064352370807/', NULL, NULL, NULL, 'pagefabry_serrurerie@yahoo.fr', NULL, '+32495949927', '+32495949927', NULL, NULL, NULL, 'Vottem', ARRAY['français']::text[], '24h/24 - 7j/7', NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de dépannage serrures urgentes?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Quelles communes sont couvertes en priorité?","answer":"Les interventions se déroulent à Vottem et dans les communes avoisinantes, selon la nature de la demande."}]'::jsonb, 'Fabry Serrurerie à Vottem intervient 24/7 pour les urgences de serrurerie : ouverture de porte, remplacement de clés ou sécurisation d''habitation. Spécialisé dans la pose de cylindres électromécaniques et la reproduction de clés, l''artisan propose des solutions sur mesure pour protéger votre domicile contre les effractions. Plus de 10 ans d''expérience garantissent un travail propre et efficace.', 'Serrurier à Vottem | Fabry Serrurerie', 'Intervention rapide sans dégât avec tarifs forfaitaires. Membre de la fédération, testé en conditions réelles pour une sécurité optimale à Vottem.', 'Fabry Serrurerie - Serrurier professionnel à Vottem', 'Dépannage urgent, pose de cylindres électromécaniques et sécurisation d''habitations. Diagnostic téléphonique précis pour une intervention efficace.', '{"@context":"https://schema.org","@type":"Locksmith","name":"Fabry Serrurerie","description":"Serrurier professionnel à Vottem proposant dépannage urgent, pose de cylindres électromécaniques et sécurisation d''habitations.","url":"https://revelys.be/entreprises/serrurier-liege-fabry-serrurerie","sameAs":["https://www.fabry-serrurerie.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue Lombard","postalCode":"4041","addressLocality":"Herstal","addressCountry":"BE"},"areaServed":"Vottem, Liège","keywords":["urgence serrurerie","porte bloquée","clé cassée","sécurité anti-effraction","cylindre électromécanique","dépannage 24/7","vottem liège","membre fédération","dépannage serrures urgentes","remplacement de clés","pose de cylindres électromécaniques","sécurisation d''habitations"],"image":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-fabry-serrurerie/logo.webp"}'::jsonb, '2026-02-19T17:08:23.135Z', TRUE, 5, 'eb65a559142f5bbf1038e523b6e2c7e80859eaa400449f6891b95ae963ad96c2', 'Fabry Serrurerie se distingue par son intervention rapide et sans dégât, avec des tarifs forfaitaires transparents. L''artisan utilise du matériel de qualité testé dans sa propre maison.', NULL, 'Soulagement', '[{"name":"Diagnostic téléphonique précis","description":"Avant toute intervention, le serrurier pose des questions ciblées pour identifier la cause du problème et fournir une estimation claire au client.","frequency":"toujours","impact":"réduit les surprises tarifaires et accélère l''intervention sur place","proof":null},{"name":"Pose de clés identiques","description":"Fabry Serrurerie propose un système de clés pass pour harmoniser tous les accès d''un bâtiment, évitant ainsi la multiplication des clés différentes.","frequency":"sur demande","impact":"simplifie la gestion des accès et renforce la sécurité","proof":null},{"name":"Test de résistance post-installation","description":"Après chaque pose ou réparation, le serrurier vérifie manuellement la solidité du système installé pour garantir son efficacité contre les effractions.","frequency":"toujours","impact":"assure une protection optimale du domicile","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-fabry-serrurerie/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-fabry-serrurerie/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-fabry-serrurerie/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-fabry-serrurerie/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-fabry-serrurerie/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-fabry-serrurerie/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T17:09:10.304Z","proof":"https://www.fabry-serrurerie.be/"},{"label":"Seed: city hint","date":"2026-02-19T17:09:10.304Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T17:09:10.304Z","proof":"Serrurier"},{"label":"Seed: search keyword","date":"2026-02-19T17:09:10.304Z","proof":"Serrurier"},{"label":"Extracted: city","date":"2026-02-19T17:09:10.304Z","proof":"Vottem"},{"label":"BCE: mod97 valid","date":"2026-02-19T17:09:10.304Z","proof":"0839839856"},{"label":"Email extracted","date":"2026-02-19T17:09:10.304Z","proof":"pagefabry_serrurerie@yahoo.fr"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T17:09:10.304Z","proof":"confidence=92/100"},{"label":"Phone extracted","date":"2026-02-19T17:09:10.304Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T17:09:10.304Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-fabry-serrurerie/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0839839856', 'Actif', 'BCE_CSV', '2026-02-19T17:05:45.933Z', '2026-02-19T17:05:45.933Z', 'Fabry, Julien', '2011-10-03', 'Personne physique', NULL, 'Situation normale', '2026-02-11', '2026-02-19T17:09:10.304Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0839839856'
    AND c_existing.slug <> 'serrurier-liege-fabry-serrurerie'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'serrurier-liege-serrurerie-liegeoise', 'BE-WAL', 'Serrurerie Liégeoise', 'Serrurier', ARRAY['serrure bloquee', 'effraction porte', 'verrou anti intrusion', 'devis gratuit', 'marques cisa iseo', 'urgence serrurier', 'clés perdues', 'porte blindée', 'ouverture de portes', 'dépannage de serrures', 'sécurisation de portes', 'installation de verrous']::text[], ARRAY['Ouverture de portes', 'Dépannage de serrures', 'Sécurisation de portes', 'Installation de verrous', 'Pose de ferme-porte hydraulique', 'Contrôle d''accès électronique']::text[], 'sur_devis', NULL, NULL, TRUE, 'Liège', '4020', 'BE', 'Rue des Houlpays, , BE', 'https://www.serrurerieliegeoise.be/', NULL, NULL, NULL, NULL, 'serrurerieliegeoise@skynet.be', NULL, '+3243620584', '+3243620584', NULL, NULL, NULL, 'Liège', ARRAY['français']::text[], NULL, '[{"day":"lundi","open":"09:00","close":"19:00","isClosed":false},{"day":"mardi","open":"09:00","close":"19:00","isClosed":false},{"day":"mercredi","open":"09:00","close":"19:00","isClosed":false},{"day":"jeudi","open":"09:00","close":"19:00","isClosed":false},{"day":"vendredi","open":"09:00","close":"19:00","isClosed":false},{"day":"samedi","open":"09:00","close":"12:00","isClosed":false}]'::jsonb, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de dépannage de serrures?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Sur quelle zone géographique intervenez-vous?","answer":"Les interventions se déroulent à Liège et dans les communes avoisinantes, selon la nature de la demande."},{"question":"Comment la qualité des interventions est-elle assurée?","answer":"La qualité repose sur une méthode structurée, des vérifications en cours d''intervention et un contrôle final avant la remise au client."},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"La Serrurerie Liégeoise se distingue par son expertise en sécurisation des accès et son intervention rapide sur toute la province de Liège. Chaque solution est adaptée aux besoins spécifiques du client, avec des marques reconnues comme CISA ou ISEO."}]'::jsonb, 'La Serrurerie Liégeoise, spécialisée dans l''ouverture et le dépannage de portes à Liège, propose des solutions sur mesure pour sécuriser votre habitation. Intervenant sur toute la province, elle installe des serrures multipoints, des verrous anti-effraction et des systèmes de contrôle d''accès sans clé. Chaque intervention est réalisée par un expert en sécurité, garantissant une protection optimale.', 'Serrurier à Liège | Serrurerie Liégeoise', 'Intervention rapide pour ouverture de portes et sécurisation avec marques CISA/ISEO. Expertise locale en dépannage d''urgence sur toute la province de Liège.', 'Serrurerie Liégeoise - Serrurier à Liège', 'Dépannage urgent, pose de serrures haut de gamme et sécurisation des accès. Interventions rapides dans toute la région liégeoise.', '{"@context":"https://schema.org","@type":"Locksmith","name":"Serrurerie Liégeoise","description":"Serrurier spécialisé en dépannage urgent et sécurisation des accès à Liège.","url":"https://revelys.be/entreprises/serrurier-liege-serrurerie-liegeoise","sameAs":["https://www.serrurerieliegeoise.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue des Houlpays","postalCode":"4020","addressLocality":"Liège","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Liège"},"keywords":["serrure bloquee","effraction porte","verrou anti intrusion","devis gratuit","marques cisa iseo","urgence serrurier","clés perdues","porte blindée","ouverture de portes","dépannage de serrures","sécurisation de portes","installation de verrous"],"image":[{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurerie-liegeoise/logo.webp"}],"logo":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurerie-liegeoise/logo.webp"}}'::jsonb, '2026-02-19T17:11:38.697Z', TRUE, 5, 'f3752529e18a4292bf8f21479fc2ca8c4e0457b01a19cdf6928a8ebf4e8cd0b9', 'La Serrurerie Liégeoise se distingue par son expertise en sécurisation des accès et son intervention rapide sur toute la province de Liège. Chaque solution est adaptée aux besoins spécifiques du client, avec des marques reconnues comme CISA ou ISEO.', NULL, 'Soulagement', '[{"name":"Test de résistance serrure multipoints","description":"Après installation, le serrurier vérifie la solidité des points d''ancrage en appliquant une pression manuelle sur chaque point pour s''assurer du bon fonctionnement et de la résistance à l''effraction.","frequency":"toujours","impact":"garantie sécurité","proof":null},{"name":"Vérification des cylindres anti-effraction","description":"Le professionnel contrôle systématiquement la compatibilité et l''efficacité des nouveaux cylindres de sécurité avec les normes S3 retard, en testant leur résistance au forage et à l''arrachage.","frequency":"toujours","impact":"protection renforcée","proof":null},{"name":"Démonstration du contrôle d''accès électronique","description":"Lors de la pose d''un système sans clé, le serrurier montre au client comment programmer et utiliser les codes WIFI sur le clavier tactile extérieur.","frequency":"toujours","impact":"autonomie client","proof":null}]'::jsonb, 97, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurerie-liegeoise/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurerie-liegeoise/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurerie-liegeoise/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurerie-liegeoise/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurerie-liegeoise/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurerie-liegeoise/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T17:12:32.434Z","proof":"https://www.serrurerieliegeoise.be/"},{"label":"Seed: city hint","date":"2026-02-19T17:12:32.434Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T17:12:32.434Z","proof":"Serrurier"},{"label":"Seed: search keyword","date":"2026-02-19T17:12:32.434Z","proof":"Serrurier"},{"label":"Extracted: city","date":"2026-02-19T17:12:32.434Z","proof":"Liège"},{"label":"BCE: mod97 valid","date":"2026-02-19T17:12:32.435Z","proof":"0753354458"},{"label":"Email extracted","date":"2026-02-19T17:12:32.435Z","proof":"serrurerieliegeoise@skynet.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T17:12:32.435Z","proof":"confidence=90/100"},{"label":"Phone extracted","date":"2026-02-19T17:12:32.435Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T17:12:32.435Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-serrurerie-liegeoise/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0753354458', 'Actif', 'BCE_CSV', '2026-02-19T17:09:18.887Z', '2026-02-19T17:09:18.887Z', 'Samedi, Claude', '2002-01-14', 'Personne physique', NULL, 'Situation normale', '2026-02-11', '2026-02-19T17:12:32.435Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0753354458'
    AND c_existing.slug <> 'serrurier-liege-serrurerie-liegeoise'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'serrurier-liege-belgium-advance', 'BE-WAL', 'Belgium Advance', 'Serrurier', ARRAY['urgence serrurerie', 'perte de clés', 'porte claquée', 'sécurité domicile', 'intervention rapide', '24/7 disponible', 'ouverture de porte', 'remplacement de serrure', 'changement de cylindre', 'sécurisation après cambriolage', 'pose de verrou de sécurité']::text[], ARRAY['Ouverture de porte', 'Remplacement de serrure', 'Changement de cylindre', 'Sécurisation après cambriolage', 'Pose de verrou de sécurité']::text[], 'sur_devis', NULL, NULL, TRUE, 'Wemmel', '1780', 'BE', 'Place Lt. Graff 15', 'https://www.belgium-advance.be/', 'https://www.facebook.com/belgiumadvance', 'https://www.instagram.com/belgiumadvance', NULL, NULL, 'info@belgium-advance.be', NULL, '+32485818687', '+32485818687', NULL, NULL, NULL, 'Wemmel', ARRAY['français']::text[], '24h/24 - 7j/7', '[{"day":"lundi","open":"00:00","close":"23:59","isClosed":false},{"day":"mardi","open":"00:00","close":"23:59","isClosed":false},{"day":"mercredi","open":"00:00","close":"23:59","isClosed":false},{"day":"jeudi","open":"00:00","close":"23:59","isClosed":false},{"day":"vendredi","open":"00:00","close":"23:59","isClosed":false},{"day":"samedi","open":"00:00","close":"23:59","isClosed":false},{"day":"dimanche","open":"00:00","close":"23:59","isClosed":false}]'::jsonb, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de remplacement de serrure?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Sur quelle zone géographique intervenez-vous?","answer":"Les interventions se déroulent à Wemmel et dans les communes avoisinantes, selon la nature de la demande."},{"question":"Comment la qualité des interventions est-elle assurée?","answer":"La qualité repose sur une méthode structurée, des vérifications en cours d''intervention et un contrôle final avant la remise au client."},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"Belgium Advance se distingue par sa réactivité et son expertise en serrurerie. L''entreprise utilise des équipements de haute qualité et propose des solutions adaptées à chaque situation, que ce soit pour une urgence ou un projet de sécurisation."}]'::jsonb, 'Belgium Advance est un serrurier spécialisé dans les interventions d''urgence à Wemmel et ses alentours. L''entreprise propose des solutions rapides pour l''ouverture de portes, le remplacement de serrures ou la sécurisation après cambriolage. Disponible 24h/24 et 7j/7, elle garantit une réponse sous 30 minutes.', 'Serrurier à Wemmel | Belgium Advance', 'Intervention rapide pour ouverture de porte ou sécurisation après cambriolage. Test de résistance systématique après chaque installation. Serrurerie disponible 24/7.', 'Belgium Advance - Serrurier à Wemmel', 'Serrurerie professionnelle proposant des services d''urgence et de sécurisation pour particuliers et commerces. Conseils personnalisés inclus.', '{"@context":"https://schema.org","@type":"Locksmith","name":"Belgium Advance","description":"Serrurerie à Wemmel proposant des interventions d''urgence et de sécurisation.","url":"https://revelys.be/entreprises/serrurier-liege-belgium-advance","sameAs":["https://www.belgium-advance.be/"],"address":{"@type":"PostalAddress","streetAddress":"Place Lt. Graff 15","postalCode":"1780","addressLocality":"Wemmel","addressCountry":"BE"},"areaServed":"Wemmel","keywords":["urgence serrurerie","perte de clés","porte claquée","sécurité domicile","intervention rapide","24/7 disponible","ouverture de porte","remplacement de serrure","changement de cylindre","sécurisation après cambriolage","pose de verrou de sécurité"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-belgium-advance/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-belgium-advance/cover.webp"]}'::jsonb, '2026-02-19T17:15:42.235Z', TRUE, 5, 'dd86c029e8e47440be0c3f269a20e1122ec174cc4cfc79de83e5e9c18f1d60d1', 'Belgium Advance se distingue par sa réactivité et son expertise en serrurerie. L''entreprise utilise des équipements de haute qualité et propose des solutions adaptées à chaque situation, que ce soit pour une urgence ou un projet de sécurisation.', NULL, 'Sécurité', '[{"name":"Test de résistance après installation","description":"Après chaque pose de serrure, l''équipe vérifie la solidité et le bon fonctionnement du mécanisme en simulant des tentatives d''effraction. Cela garantit une sécurité optimale pour le client.","frequency":"toujours","impact":"sécurité renforcée","proof":null},{"name":"Nettoyage des outils après intervention","description":"Les serruriers de Belgium Advance nettoient systématiquement leurs outils entre chaque intervention pour éviter toute contamination ou usure prématurée. Ce geste assure une longévité des équipements et un travail propre.","frequency":"toujours","impact":"qualité du matériel","proof":null},{"name":"Conseil personnalisé en sécurité","description":"Lors de chaque intervention, l''équipe propose des recommandations adaptées pour améliorer la sécurité du domicile ou du commerce. Ces conseils incluent des solutions comme les serrures multipoints ou les portes blindées.","frequency":"toujours","impact":"prévention des risques","proof":null}]'::jsonb, 94, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-belgium-advance/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-belgium-advance/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-belgium-advance/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-belgium-advance/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-belgium-advance/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-belgium-advance/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T17:16:31.559Z","proof":"https://www.belgium-advance.be/serrurier-liege/"},{"label":"Seed: city hint","date":"2026-02-19T17:16:31.559Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T17:16:31.559Z","proof":"Serrurier"},{"label":"Seed: search keyword","date":"2026-02-19T17:16:31.559Z","proof":"Serrurier"},{"label":"Extracted: city","date":"2026-02-19T17:16:31.559Z","proof":"Liège"},{"label":"BCE: mod97 valid","date":"2026-02-19T17:16:31.559Z","proof":"1005868719"},{"label":"Email extracted","date":"2026-02-19T17:16:31.559Z","proof":"info@belgium-advance.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T17:16:31.559Z","proof":"confidence=80/100"},{"label":"Phone extracted","date":"2026-02-19T17:16:31.559Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T17:16:31.559Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-liege-belgium-advance/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE1005868719', 'Actif', 'BCE_CSV', '2026-02-19T17:12:53.604Z', '2026-02-19T17:12:53.604Z', 'BELGIUM ADVANCE', '2024-02-09', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T17:16:31.559Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE1005868719'
    AND c_existing.slug <> 'serrurier-liege-belgium-advance'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'toiture-liege-toiture-delhez-liege', 'BE-WAL', 'Toiture Delhez Liège', 'Toiture', ARRAY['fuite toit', 'rénovation complète', 'charpente traditionnelle', 'ardoise naturelle', 'urgence toiture', 'devis gratuit', 'province liège', 'rénovation de toitures', 'pose d''ardoises', 'installation de bardages', 'réparation de charpentes', 'pose de velux']::text[], ARRAY['Rénovation de toitures', 'Pose d''ardoises', 'Installation de bardages', 'Réparation de charpentes', 'Pose de velux', 'Travaux de zinguerie']::text[], 'sur_devis', NULL, NULL, TRUE, 'Trooz', '4870', 'BE', 'Rue de La Métal. 8', 'https://delheztoitures.be/', NULL, NULL, NULL, NULL, 'info@delheztoitures.be', NULL, '+3242343800', '+3242343800', NULL, NULL, NULL, 'Trooz', ARRAY['français']::text[], 'Sur rendez-vous', NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de rénovation de toitures?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Sur quelle zone géographique intervenez-vous?","answer":"Les interventions se déroulent à Trooz et dans les communes avoisinantes, selon la nature de la demande."},{"question":"Comment la qualité des interventions est-elle assurée?","answer":"La qualité repose sur une méthode structurée, des vérifications en cours d''intervention et un contrôle final avant la remise au client."},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"Toitures Delhez se distingue par son approche sur mesure, combinant expertise technique et conseil personnalisé pour des solutions durables adaptées à chaque projet."}]'::jsonb, 'Toitures Delhez Liège est un expert en couverture, bardage et charpente pour particuliers et professionnels. Basée à Trooz, cette entreprise générale de toiture intervient sur toute la province de Liège pour des travaux neufs ou de rénovation. Spécialisée dans les matériaux traditionnels comme l''ardoise et le roofing, elle allie savoir-faire artisanal et solutions modernes.', 'Toiture à Trooz | Toiture Delhez Liège', 'Rénovation complète de toitures avec ardoise naturelle et charpente traditionnelle. Diagnostic complet avant devis pour une solution durable en province de Liège.', 'Toiture Delhez Liège - Rénovation et réparation à Trooz', 'Entreprise spécialisée dans la rénovation de toitures, pose d''ardoises et réparation de charpentes. Interventions sur mesure pour particuliers et professionnels en province de Liège.', '{"@context":"https://schema.org","@type":"RoofingContractor","name":"Toiture Delhez Liège","description":"Rénovation complète de toitures avec ardoise naturelle et charpente traditionnelle en province de Liège.","url":"https://revelys.be/entreprises/toiture-liege-toiture-delhez-liege","sameAs":["https://delheztoitures.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue de La Métal. 8","postalCode":"4870","addressLocality":"Trooz","addressCountry":"BE"},"areaServed":{"@type":"Place","name":"Province de Liège"},"keywords":["fuite toit","rénovation complète","charpente traditionnelle","ardoise naturelle","urgence toiture","devis gratuit","province liège","rénovation de toitures","pose d''ardoises","installation de bardages","réparation de charpentes","pose de velux"],"image":[{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-delhez-liege/logo.webp","width":500,"height":300}],"logo":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-delhez-liege/logo.webp"}}'::jsonb, '2026-02-19T17:31:48.310Z', TRUE, 5, '3aa7ddf69658c76142583e3d7d287c887d154c1d950f2ef740480249762c8226', 'Toitures Delhez se distingue par son approche sur mesure, combinant expertise technique et conseil personnalisé pour des solutions durables adaptées à chaque projet.', NULL, 'Joie', '[{"name":"Diagnostic complet avant devis","description":"Inspection minutieuse de la toiture avec prise de photos détaillées pour évaluer l''état structurel et identifier les points faibles, garantissant un devis précis.","frequency":"toujours","impact":"qualite","proof":null},{"name":"Nettoyage des chantiers","description":"Élimination systématique des débris et résidus de matériaux après chaque intervention pour laisser les lieux impeccables.","frequency":"toujours","impact":"qualite","proof":null},{"name":"Test d''étanchéité","description":"Vérification systématique de l''absence de fuites après pose ou réparation, avec utilisation de techniques professionnelles comme le test à la mousse.","frequency":"toujours","impact":"qualite","proof":null}]'::jsonb, 93, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-delhez-liege/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-delhez-liege/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-delhez-liege/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-delhez-liege/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-delhez-liege/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-delhez-liege/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T17:32:42.836Z","proof":"https://delheztoitures.be/"},{"label":"Seed: city hint","date":"2026-02-19T17:32:42.836Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T17:32:42.836Z","proof":"Toiture"},{"label":"Seed: search keyword","date":"2026-02-19T17:32:42.836Z","proof":"Toiture"},{"label":"Extracted: city","date":"2026-02-19T17:32:42.836Z","proof":"Trooz"},{"label":"BCE: mod97 valid","date":"2026-02-19T17:32:42.836Z","proof":"0536793941"},{"label":"Email extracted","date":"2026-02-19T17:32:42.836Z","proof":"info@delheztoitures.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T17:32:42.836Z","proof":"confidence=80/100"},{"label":"Phone extracted","date":"2026-02-19T17:32:42.836Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T17:32:42.836Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-delhez-liege/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0536793941', 'Actif', 'BCE_CSV', '2026-02-19T17:29:16.984Z', '2026-02-19T17:29:16.984Z', 'TOITURES DELHEZ CÉDRIC', '2013-07-18', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T17:32:42.836Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0536793941'
    AND c_existing.slug <> 'toiture-liege-toiture-delhez-liege'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'toiture-liege-hakim-toitures', 'BE-WAL', 'Hakim Toitures', 'Toiture', ARRAY['fuite d''eau', 'toit plat', 'charpente traditionnelle', 'tuiles ardoise', 'isolation thermique', 'urgence toiture', 'matériaux professionnels', 'prime énergie wallonie', 'diagnostic professionnel', 'rénovation de toiture plates et en pentes', 'installation de charpente', 'couverture et construction de nouvelles toitures']::text[], ARRAY['Rénovation de toiture plates et en pentes', 'Installation de charpente', 'Couverture et construction de nouvelles toitures', 'Placement de zingueries gouttières corniches', 'Isolation de toiture', 'Entretien de et réparation']::text[], 'sur_devis', NULL, NULL, TRUE, 'Liège', '4000', 'BE', 'Sentier du Pairoux 2', 'https://www.toitureliege.com/', 'https://www.facebook.com/Hakim-Toitures-SA-1678060055836829/', NULL, NULL, NULL, 'hakim.toiture.pro@gmail.com', NULL, '+3243611502', '+3243611502', NULL, NULL, NULL, 'Liège', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de rénovation de toiture plates et en pentes?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Intervenez-vous au-delà de la zone principale?","answer":"La zone principale est Liège. Les interventions peuvent s''étendre aux communes limitrophes selon le besoin."},{"question":"Comment contrôlez-vous la qualité de votre travail?","answer":"La qualité est suivie via hakim Toitures effectue systématiquement un diagnostic approfondi de la toiture pour identifier les problèmes structurels, les infiltrations ou l''usure des matériaux. Ce processus inclut une inspection visuelle"},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"Hakim Toitures se distingue par son expertise reconnue et son approche sur mesure, combinant savoir-faire artisanal et matériaux haut de gamme pour des toitures durables. L''entreprise mise sur un suivi rigoureux et une relation de confiance avec ses clients."}]'::jsonb, 'Hakim Toitures est une référence en couverture à Liège avec plus de 20 ans d''expérience et 1000 chantiers réalisés. Spécialisée dans les toitures durables, l''entreprise propose des solutions sur mesure pour tous types de projets, qu''il s''agisse de rénovation, d''installation ou d''entretien. Chaque intervention est réalisée avec des matériaux haut de gamme pour garantir une protection optimale contre les intempéries.', 'Toiture à Liège | Hakim Toitures', 'Rénovation et isolation de toitures plates/pentes avec diagnostic complet. Matériaux adaptés au climat liégeois pour une durabilité optimale.', 'Hakim Toitures - Expert en couverture à Liège', 'Entreprise spécialisée dans la rénovation, l''isolation et la construction de toitures à Liège. Diagnostic gratuit avant intervention.', '{"@context":"https://schema.org","@type":"RoofingContractor","name":"Hakim Toitures","description":"Rénovation, isolation et construction de toitures à Liège avec matériaux adaptés au climat local.","url":"https://revelys.be/entreprises/toiture-liege-hakim-toitures","sameAs":["https://www.toitureliege.com/"],"address":{"@type":"PostalAddress","streetAddress":"Sentier du Pairoux 2","postalCode":"4000","addressLocality":"Liège","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Liège"},"keywords":["fuite d''eau","toit plat","charpente traditionnelle","tuiles ardoise","isolation thermique","urgence toiture","matériaux professionnels","prime énergie wallonie","diagnostic professionnel","rénovation de toiture plates et en pentes","installation de charpente","couverture et construction de nouvelles toitures"],"image":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-hakim-toitures/logo.webp","logo":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-hakim-toitures/logo.webp"}'::jsonb, '2026-02-19T17:39:24.752Z', TRUE, 5, '7b8d9c8c20b1b010bcc0aa2ef020bee3542e0f822cdb47b9e38300ba0ca4261a', 'Hakim Toitures se distingue par son expertise reconnue et son approche sur mesure, combinant savoir-faire artisanal et matériaux haut de gamme pour des toitures durables. L''entreprise mise sur un suivi rigoureux et une relation de confiance avec ses clients.', NULL, 'Durabilité', '[{"name":"Diagnostic complet avant intervention","description":"Hakim Toitures effectue systématiquement un diagnostic approfondi de la toiture pour identifier les problèmes structurels, les infiltrations ou l''usure des matériaux. Ce processus inclut une inspection visuelle","frequency":"toujours","impact":"garantit une réparation précise et évite les interventions inutiles.","proof":null},{"name":"Choix de matériaux adaptés au climat","description":"L''entreprise sélectionne des matériaux spécifiques en fonction du type de toiture (tuile, ardoise, zinc) et des conditions climatiques locales. Par exemple, des tuiles en terre cuite sont recommandées pour les zones","frequency":"toujours","impact":"assure une meilleure résistance aux intempéries et prolonge la durée de vie de la toiture.","proof":null},{"name":"Double isolation intérieure et extérieure","description":"Hakim Toitures applique systématiquement une double isolation lors des rénovations, combinant des techniques d''isolation par l''intérieur (laine minérale) et par l''extérieur (panneaux rigides).","frequency":"toujours","impact":"réduit significativement les pertes de chaleur et améliore le confort thermique.","proof":null},{"name":"Suivi post-intervention avec photos avant/après","description":"Après chaque chantier, l''entreprise fournit un rapport détaillé incluant des photographies comparatives avant et après les travaux. Ce suivi permet d''évaluer la qualité des réparations.","frequency":"toujours","impact":"renforce la transparence et la satisfaction client.","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-hakim-toitures/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-hakim-toitures/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-hakim-toitures/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-hakim-toitures/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-hakim-toitures/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-hakim-toitures/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T17:40:12.491Z","proof":"https://www.toitureliege.com/"},{"label":"Seed: city hint","date":"2026-02-19T17:40:12.491Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T17:40:12.491Z","proof":"Toiture"},{"label":"Seed: search keyword","date":"2026-02-19T17:40:12.491Z","proof":"Toiture"},{"label":"Extracted: city","date":"2026-02-19T17:40:12.491Z","proof":""},{"label":"BCE: mod97 valid","date":"2026-02-19T17:40:12.491Z","proof":"0822136366"},{"label":"Email extracted","date":"2026-02-19T17:40:12.491Z","proof":"hakim.toiture.pro@gmail.com"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T17:40:12.491Z","proof":"confidence=92/100"},{"label":"BCE recovered from local identity","date":"2026-02-19T17:40:12.491Z","proof":"score=60"},{"label":"Phone extracted","date":"2026-02-19T17:40:12.491Z","proof":"source=text"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T17:40:12.491Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-hakim-toitures/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0822136366', 'Actif', 'BCE_CSV', '2026-02-19T17:36:45.028Z', '2026-02-19T17:36:45.028Z', 'HAKIM TOITURES', '2010-01-11', 'Personne morale', 'Société anonyme', 'Situation normale', '2026-02-11', '2026-02-19T17:40:12.491Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0822136366'
    AND c_existing.slug <> 'toiture-liege-hakim-toitures'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'toiture-liege-toitures-pascal-robert', 'BE-WAL', 'Toitures Pascal Robert', 'Toiture', ARRAY['toiture fuite', 'isolation par l''extérieur', 'epdm étanchéité', 'ardoise naturelle', 'chantier public flémalle', 'devis sous 72h', 'sans sous-traitance', 'pose de toiture inclinée', 'rénovation de toiture plate', 'isolation thermique', 'bardage de façade']::text[], ARRAY['Pose de toiture inclinée', 'Rénovation de toiture plate', 'Isolation thermique', 'Bardage de façade']::text[], 'sur_devis', NULL, NULL, TRUE, 'Flémalle', '4400', 'BE', 'Route(Flh) 219 boite B', 'https://toitures-robert-liege.be/', 'https://www.facebook.com/ToituresRobert/?locale=fr_FR', NULL, NULL, NULL, 'info@toitures-robert-liege.be', NULL, '+3242337933', '+3242337933', NULL, NULL, NULL, 'Flémalle', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de pose de toiture inclinée?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Intervenez-vous au-delà de la zone principale?","answer":"La zone principale est Flémalle. Les interventions peuvent s''étendre aux communes limitrophes selon le besoin."},{"question":"Comment contrôlez-vous la qualité de votre travail?","answer":"Des vérifications sont effectuées à chaque étape de l''intervention, avec un contrôle final avant la clôture du chantier."},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"Chez Toitures Pascal Robert, le gérant supervise chaque chantier pour garantir un travail irréprochable. L''entreprise privilégie les matériaux durables et une approche humaine, sans intermédiaire."}]'::jsonb, 'Toitures Pascal Robert est un couvreur spécialisé à Flémalle, intervenant sur les toitures inclinées et plates avec des matériaux durables comme l''EPDM ou l''ardoise. L''entreprise familiale assure un suivi personnalisé par le gérant lui-même, garantissant qualité et transparence pour chaque projet de rénovation ou construction neuve.', 'Toiture à Flémalle | Toitures Pascal Robert', 'Rénovation de toiture plate et isolation thermique sans sous-traitance. Gérant présent sur chaque chantier pour un travail durable, comme en témoigne la pose d''EPDM avec soudure à chaud.', 'Toitures Pascal Robert - Toiture à Flémalle', 'Entreprise spécialisée dans la rénovation de toitures plates et inclinées. Pose d''ardoise naturelle et isolation par l''extérieur, sans sous-traitance.', '{"@context":"https://schema.org","@type":"RoofingContractor","name":"Toitures Pascal Robert","description":"Rénovation de toiture plate et inclinée à Flémalle. Isolation thermique et bardage de façade.","url":"https://revelys.be/entreprises/toiture-liege-toitures-pascal-robert","sameAs":["https://toitures-robert-liege.be/"],"address":{"@type":"PostalAddress","streetAddress":"Route(Flh) 219 boite B","postalCode":"4400","addressLocality":"Flémalle","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Flémalle"},"keywords":["toiture fuite","isolation par l''extérieur","epdm étanchéité","ardoise naturelle","chantier public flémalle","devis sous 72h","sans sous-traitance","pose de toiture inclinée","rénovation de toiture plate","isolation thermique","bardage de façade"],"image":[{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-pascal-robert/logo.webp"}]}'::jsonb, '2026-02-19T17:43:49.505Z', TRUE, 5, '7a4870fb23c9f70757db2dbdbfdf8e3954bc96782ee72cff7d290cb38b25f394', 'Chez Toitures Pascal Robert, le gérant supervise chaque chantier pour garantir un travail irréprochable. L''entreprise privilégie les matériaux durables et une approche humaine, sans intermédiaire.', NULL, 'Durabilité', '[{"name":"Pose d''EPDM avec soudure à chaud","description":"Nous utilisons la technique de soudure à chaud pour l''installation des membranes EPDM, assurant une étanchéité parfaite et durable. Cette méthode évite les fuites et prolonge la longévité du revêtement.","frequency":"toujours","impact":"garantie d''étanchéité","proof":null},{"name":"Vérification de charpente avant pose","description":"Avant toute intervention, nous inspectons minutieusement la structure de la charpente pour détecter les points faibles ou les dégradations. Cette étape est cruciale pour éviter des problèmes futurs et assurer une","frequency":"toujours","impact":"sécurité renforcée","proof":null},{"name":"Nettoyage de chantier quotidien","description":"Nous maintenons le chantier propre chaque jour en évacuant les débris et en rangeant les outils. Cette rigueur permet de minimiser les risques d''accidents et de laisser un espace de travail sécurisé.","frequency":"toujours","impact":"sécurité chantier","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-pascal-robert/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-pascal-robert/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-pascal-robert/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-pascal-robert/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-pascal-robert/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-pascal-robert/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T17:44:37.869Z","proof":"https://toitures-robert-liege.be/"},{"label":"Seed: city hint","date":"2026-02-19T17:44:37.869Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T17:44:37.869Z","proof":"Toiture"},{"label":"Seed: search keyword","date":"2026-02-19T17:44:37.869Z","proof":"Toiture"},{"label":"Extracted: city","date":"2026-02-19T17:44:37.869Z","proof":""},{"label":"BCE: mod97 valid","date":"2026-02-19T17:44:37.869Z","proof":"0838631910"},{"label":"Email extracted","date":"2026-02-19T17:44:37.869Z","proof":"info@toitures-robert-liege.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T17:44:37.869Z","proof":"confidence=90/100"},{"label":"Phone extracted","date":"2026-02-19T17:44:37.869Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T17:44:37.869Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-pascal-robert/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0838631910', 'Actif', 'BCE_CSV', '2026-02-19T17:40:20.383Z', '2026-02-19T17:40:20.383Z', 'TOITURES PASCAL ROBERT', '2011-08-19', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T17:44:37.869Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0838631910'
    AND c_existing.slug <> 'toiture-liege-toitures-pascal-robert'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'toiture-liege-toitures-nolf-sebastien', 'BE-WAL', 'Toitures Nolf Sébastien', 'Toiture', ARRAY['ardoise naturelle', 'bardage zinc', 'charpente rénovation', 'isolation durable', 'fuite toiture', 'urgence étanchéité', 'vm zinc®', 'mopac®', 'couverture en ardoise', 'pose de bardage bois ou zinc', 'réparation de charpente', 'isolation de toiture']::text[], ARRAY['Couverture en ardoise', 'Pose de bardage bois ou zinc', 'Réparation de charpente', 'Isolation de toiture', 'Nettoyage de corniche', 'Ramonage de cheminée']::text[], 'sur_devis', NULL, NULL, NULL, 'Ferrières', '4190', 'BE', 'Rue Jehoge, , BE', 'https://www.toituressebastiennolf.be/', NULL, NULL, NULL, NULL, 'sebastien.nolf@gmail.com', NULL, '+32472093920', '+32472093920', NULL, NULL, NULL, 'Ferrières', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de pose de bardage bois ou zinc?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Quelles communes sont couvertes en priorité?","answer":"Les interventions se déroulent à Ferrières et dans les communes avoisinantes, selon la nature de la demande."}]'::jsonb, 'Toitures Nolf Sébastien, expert en couverture et rénovation à Ferrières, maîtrise l’ardoise, le zinc et les bardages pour des solutions durables. Passionné par la toiture depuis plus de 11 ans, Sébastien Nolf allie savoir-faire artisanal et matériaux haut de gamme comme VM Zinc® ou Mopac® pour garantir étanchéité et esthétique.', 'Couverture toiture à Ferrières | Toitures Nolf Sébastien', 'Expert en ardoise naturelle et bardage zinc avec test d''étanchéité systématique. Interventions locales pour une isolation durable des toits en Wallonie.', 'Toitures Nolf Sébastien - Couverture à Ferrières', 'Entreprise spécialisée en couverture, bardage et charpente à Ferrières. Pose d''ardoise naturelle et zinc avec garantie d''étanchéité.', '{"@context":"https://schema.org","@type":"RoofingContractor","name":"Toitures Nolf Sébastien","description":"Couverture, bardage et charpente à Ferrières avec matériaux durables comme l''ardoise naturelle.","url":"https://revelys.be/entreprises/toiture-liege-toitures-nolf-sebastien","sameAs":["https://www.toituressebastiennolf.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue Jehoge","postalCode":"4190","addressLocality":"Ferrières","addressCountry":"BE"},"areaServed":"Ferrières, Wallonie","keywords":["ardoise naturelle","bardage zinc","charpente rénovation","isolation durable","fuite toiture","urgence étanchéité","vm zinc®","mopac®","couverture en ardoise","pose de bardage bois ou zinc","réparation de charpente","isolation de toiture"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-nolf-sebastien/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-nolf-sebastien/cover.webp"]}'::jsonb, '2026-02-19T17:47:40.086Z', TRUE, 5, '829a927dfec609bc73a15047613fd3f351382877910174513ea860b17757f08a', 'Chez Toitures Nolf Sébastien, chaque chantier est un défi relevé avec précision. L’entreprise se distingue par son expertise en ardoise et zinc, des matériaux choisis pour leur longévité, ainsi que par une approche sur mesure adaptée aux contraintes techniques de chaque projet.', NULL, 'Durabilité', '[{"name":"Test d''étanchéité post-réparation","description":"Après toute intervention, un test d’étanchéité est systématiquement réalisé pour vérifier l’absence de fuites, même sous forte pluie simulée. Ce protocole garantit une protection optimale contre les infiltrations.","frequency":"toujours","impact":"qualite","proof":null},{"name":"Pose avec calage de pente","description":"Pour les charpentes, un calage précis de la pente est effectué avant pose afin d’assurer une répartition uniforme des charges et éviter tout affaissement futur. Cette étape est cruciale pour la durabilité.","frequency":"toujours","impact":"qualite","proof":null},{"name":"Nettoyage des corniches avec aspirateur industriel","description":"Les feuilles et débris sont éliminés à l’aide d’un aspirateur professionnel pour éviter toute obstruction des gouttières, combiné à un traitement anti-mousse pour préserver les matériaux.","frequency":"toujours","impact":"qualite","proof":null}]'::jsonb, 97, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-nolf-sebastien/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-nolf-sebastien/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-nolf-sebastien/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-nolf-sebastien/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-nolf-sebastien/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-nolf-sebastien/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T17:48:30.165Z","proof":"https://www.toituressebastiennolf.be/"},{"label":"Seed: city hint","date":"2026-02-19T17:48:30.165Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T17:48:30.165Z","proof":"Toiture"},{"label":"Seed: search keyword","date":"2026-02-19T17:48:30.165Z","proof":"Toiture"},{"label":"Extracted: city","date":"2026-02-19T17:48:30.165Z","proof":"Ferrières"},{"label":"BCE: mod97 valid","date":"2026-02-19T17:48:30.165Z","proof":"0696735162"},{"label":"Email extracted","date":"2026-02-19T17:48:30.165Z","proof":"sebastien.nolf@gmail.com"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T17:48:30.165Z","proof":"confidence=90/100"},{"label":"Phone extracted","date":"2026-02-19T17:48:30.165Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T17:48:30.165Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-nolf-sebastien/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0696735162', 'Actif', 'BCE_CSV', '2026-02-19T17:44:52.329Z', '2026-02-19T17:44:52.329Z', 'Nolf, Sébastien', '2018-05-01', 'Personne physique', NULL, 'Situation normale', '2026-02-11', '2026-02-19T17:48:30.165Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0696735162'
    AND c_existing.slug <> 'toiture-liege-toitures-nolf-sebastien'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'toiture-couvreur-liege-toitures-julien-dogne', 'BE-WAL', 'Toitures Julien Dogne', 'Toiture', ARRAY['toiture durable', 'projet sur mesure', 'stoumont liège', 'bardage extérieur', 'ossature bois', 'parachèvement intérieur', 'rénovation de toiture', 'pose de bardage', 'travaux d''ossature bois', 'installation de carrelage']::text[], ARRAY['Rénovation de toiture', 'Pose de bardage', 'Travaux d''ossature bois', 'Parachèvement intérieur', 'Installation de carrelage']::text[], NULL, NULL, NULL, TRUE, 'Stoumont', '4987', 'BE', 'Bierleux-Bas 1', 'https://toituresjd.be/', 'https://www.facebook.com/JDToiture/', NULL, NULL, NULL, 'juliendognetoiture@gmail.com', NULL, '+3280559055', '+3280559055', NULL, NULL, NULL, 'Stoumont', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de rénovation de toiture?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Sur quelle zone géographique intervenez-vous?","answer":"Les interventions se déroulent à Stoumont et dans les communes avoisinantes, selon la nature de la demande."},{"question":"Comment la qualité des interventions est-elle assurée?","answer":"La qualité repose sur une méthode structurée, des vérifications en cours d''intervention et un contrôle final avant la remise au client."},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"Chez Toitures Julien Dogne, nous redéfinissons les standards de la toiture en Wallonie avec une approche axée sur l''excellence et la fiabilité. Notre engagement va au-delà du simple service : nous créons des espaces de vie sûrs et esthétiques pour nos clients."}]'::jsonb, 'Toitures Julien Dogne, entreprise spécialisée en rénovation et construction de toitures à Stoumont, allie expertise technique et solutions sur mesure pour des projets durables et esthétiques. Leur approche intègre bardage, parachèvement et ossature bois pour répondre aux besoins spécifiques de chaque client.', 'Toiture couvreur à Stoumont | Toitures Julien Dogne', 'Rénovation de toiture durable avec inspection préalable détaillée. Spécialiste en bardage extérieur et ossature bois pour les projets sur mesure en Wallonie.', 'Toiture couvreur à Stoumont - Toitures Julien Dogne', 'Entreprise spécialisée dans la rénovation de toiture, pose de bardage et travaux d''ossature bois. Inspection préalable gratuite pour chaque projet.', '{"@context":"https://schema.org","@type":"RoofingContractor","name":"Toitures Julien Dogne","description":"Spécialiste en rénovation de toiture et pose de bardage à Stoumont.","url":"https://revelys.be/entreprises/toiture-couvreur-liege-toitures-julien-dogne","sameAs":["https://toituresjd.be/"],"address":{"@type":"PostalAddress","streetAddress":"Bierleux-Bas 1","postalCode":"4987","addressLocality":"Stoumont","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Stoumont"},"keywords":["toiture durable","projet sur mesure","stoumont liège","bardage extérieur","ossature bois","parachèvement intérieur","rénovation de toiture","pose de bardage","travaux d''ossature bois","installation de carrelage"],"image":[{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-couvreur-liege-toitures-julien-dogne/logo.webp","width":500,"height":300}],"logo":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-couvreur-liege-toitures-julien-dogne/logo.webp"}}'::jsonb, '2026-02-19T17:53:39.009Z', TRUE, 5, '1889ea41426e7d1675b2c44b98e3314a0ab476d000c9859303d09ad24172ef89', 'Chez Toitures Julien Dogne, nous redéfinissons les standards de la toiture en Wallonie avec une approche axée sur l''excellence et la fiabilité. Notre engagement va au-delà du simple service : nous créons des espaces de vie sûrs et esthétiques pour nos clients.', NULL, 'Durabilité', '[{"name":"Inspection préalable","description":"Chaque projet commence par une inspection détaillée de la structure existante pour identifier les points faibles et proposer des solutions adaptées.","frequency":"100","impact":"100","proof":null},{"name":"Choix des matériaux","description":"Sélection rigoureuse de matériaux durables et adaptés aux conditions climatiques locales pour garantir la longévité des installations.","frequency":"100","impact":"100","proof":null},{"name":"Suivi post-intervention","description":"Vérification systématique après les travaux pour s''assurer de la satisfaction du client et de la qualité des finitions.","frequency":"100","impact":"100","proof":null}]'::jsonb, 88, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-couvreur-liege-toitures-julien-dogne/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-couvreur-liege-toitures-julien-dogne/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-couvreur-liege-toitures-julien-dogne/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-couvreur-liege-toitures-julien-dogne/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-couvreur-liege-toitures-julien-dogne/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-couvreur-liege-toitures-julien-dogne/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T17:54:34.835Z","proof":"https://toituresjd.be/couvreur/liege"},{"label":"Seed: city hint","date":"2026-02-19T17:54:34.835Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T17:54:34.835Z","proof":"Toiture"},{"label":"Seed: search keyword","date":"2026-02-19T17:54:34.835Z","proof":"Toiture couvreur"},{"label":"Extracted: city","date":"2026-02-19T17:54:34.835Z","proof":"Stoumont"},{"label":"BCE: mod97 valid","date":"2026-02-19T17:54:34.835Z","proof":"0782308859"},{"label":"Email extracted","date":"2026-02-19T17:54:34.835Z","proof":"juliendognetoiture@gmail.com"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T17:54:34.835Z","proof":"confidence=80/100"},{"label":"Phone extracted","date":"2026-02-19T17:54:34.835Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T17:54:34.835Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-couvreur-liege-toitures-julien-dogne/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0782308859', 'Actif', 'BCE_CSV', '2026-02-19T17:48:37.528Z', '2026-02-19T17:48:37.528Z', 'TOITURES JULIEN DOGNE', '2022-02-17', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T17:54:34.835Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0782308859'
    AND c_existing.slug <> 'toiture-couvreur-liege-toitures-julien-dogne'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'toiture-liege-fg-toitures', 'BE-WAL', 'FG Toitures', 'Toiture', ARRAY['ardoise naturelle espagne', 'toiture plate membrane caoutchouteuse', 'charpente traditionnelle sapin chêne', 'isolation prime région wallonne', 'bardage bois zinc ardoise', 'urgence fuite toiture', 'couverture en ardoise naturelle', 'réparation de toitures', 'construction de charpentes', 'pose d''isolants', 'bardage extérieur', 'menuiserie intérieure']::text[], ARRAY['Couverture en ardoise naturelle', 'Réparation de toitures', 'Construction de charpentes', 'Pose d''isolants', 'Bardage extérieur', 'Menuiserie intérieure']::text[], 'sur_devis', NULL, NULL, TRUE, 'Lierneux', '4990', 'BE', 'Arbrefontaine, Ch. de St-Jacques 16', 'https://fgtoitures.be/', 'https://www.facebook.com/Fgtoitures', NULL, NULL, NULL, 'info@fgtoitures.be', NULL, '+32499601060', '+32499601060', NULL, NULL, NULL, 'Lierneux', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de réparation de toitures?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Sur quelle zone géographique intervenez-vous?","answer":"Les interventions se déroulent à Lierneux et dans les communes avoisinantes, selon la nature de la demande."},{"question":"Comment la qualité des interventions est-elle assurée?","answer":"La qualité repose sur une méthode structurée, des vérifications en cours d''intervention et un contrôle final avant la remise au client."},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"FG Toitures se distingue par son expertise historique dans l''ardoise naturelle et sa polyvalence sur tous les corps de métier liés à la toiture. L''entreprise allie savoir-faire artisanal et techniques modernes pour des réalisations durables."}]'::jsonb, 'FG Toitures, spécialiste de l''ardoise naturelle à Lierneux, intervient sur les toitures, charpentes et bardages. Avec plus de 20 ans d''expérience, cette entreprise familiale maîtrise tous types de couvertures, des matériaux nobles aux solutions modernes. Son expertise s''étend également à l''isolation et la menuiserie pour une rénovation complète.', 'Couverture toiture à Lierneux | FG Toitures', 'Expert en ardoise naturelle et isolation éligible aux primes wallonnes. Pose rigoureuse avec test d''étanchéité systématique pour une durabilité optimale.', 'FG Toitures - Couverture toiture à Lierneux', 'Entreprise spécialisée dans la couverture en ardoise naturelle, réparation de toitures et isolation éligible aux primes régionales wallonnes. Pose soignée avec test d''étanchéité.', '{"@context":"https://schema.org","@type":"RoofingContractor","name":"FG Toitures","description":"Couverture toiture, charpente et isolation à Lierneux","url":"https://revelys.be/entreprises/toiture-liege-fg-toitures","sameAs":["https://fgtoitures.be/"],"address":{"@type":"PostalAddress","streetAddress":"Ch. de St-Jacques 16, Arbrefontaine","postalCode":"4990","addressLocality":"Lierneux","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Lierneux"},"keywords":["ardoise naturelle espagne","toiture plate membrane caoutchouteuse","charpente traditionnelle sapin chêne","isolation prime région wallonne","bardage bois zinc ardoise","urgence fuite toiture","couverture en ardoise naturelle","réparation de toitures","construction de charpentes","pose d''isolants","bardage extérieur","menuiserie intérieure"],"image":[{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-fg-toitures/logo.webp","width":500,"height":300}],"logo":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-fg-toitures/logo.webp"},"hasOfferCatalog":{"@type":"OfferCatalog","name":"Services FG Toitures","itemListElement":[{"@type":"Offer","name":"Couverture en ardoise naturelle","url":"https://fgtoitures.be/"},{"@type":"Offer","name":"Réparation de toitures","url":"https://fgtoitures.be/"},{"@type":"Offer","name":"Construction de charpentes","url":"https://fgtoitures.be/"},{"@type":"Offer","name":"Pose d''isolants","url":"https://fgtoitures.be/"}]}}'::jsonb, '2026-02-19T17:58:54.183Z', TRUE, 5, 'e52c3122fbaaa7fe045d87e2a438270df9ac053de92abe102f62c55391710ea2', 'FG Toitures se distingue par son expertise historique dans l''ardoise naturelle et sa polyvalence sur tous les corps de métier liés à la toiture. L''entreprise allie savoir-faire artisanal et techniques modernes pour des réalisations durables.', NULL, 'Durabilité', '[{"name":"Pose ardoise schuppen rectangulaire","description":"FG Toitures utilise une technique spécifique de pose en Schuppen ou rectangulaire pour l''ardoise naturelle, garantissant une étanchéité optimale et un rendu esthétique soigné. Chaque ardoise est fixée avec précision","frequency":"toujours","impact":"qualite","proof":null},{"name":"Test d''étanchéité membrane caoutchouteuse","description":"Après la pose de membranes type Rhépanol sur les toitures plates, l''entreprise effectue systématiquement un test de pression pour vérifier l''absence de fuites avant la finition.","frequency":"toujours","impact":"securite","proof":null},{"name":"Choix des bois pour charpente","description":"L''entreprise sélectionne rigoureusement les essences de sapin ou chêne pour les charpentes, vérifiant l''absence de défauts et la bonne saison du bois avant toute coupe.","frequency":"toujours","impact":"qualite","proof":null},{"name":"Conseil isolation éligible prime","description":"FG Toitures guide ses clients vers les isolants (laine de roche, liège) et techniques éligibles aux primes régionales wallonnes pour maximiser leur retour sur investissement.","frequency":"toujours","impact":"economie","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-fg-toitures/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-fg-toitures/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-fg-toitures/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-fg-toitures/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-fg-toitures/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-fg-toitures/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T18:00:10.036Z","proof":"https://fgtoitures.be/"},{"label":"Seed: city hint","date":"2026-02-19T18:00:10.036Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T18:00:10.036Z","proof":"Toiture"},{"label":"Seed: search keyword","date":"2026-02-19T18:00:10.036Z","proof":"Toiture"},{"label":"Extracted: city","date":"2026-02-19T18:00:10.036Z","proof":"Lierneux"},{"label":"BCE: mod97 valid","date":"2026-02-19T18:00:10.036Z","proof":"0841510434"},{"label":"Email extracted","date":"2026-02-19T18:00:10.036Z","proof":"info@fgtoitures.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T18:00:10.036Z","proof":"confidence=85/100"},{"label":"Phone extracted","date":"2026-02-19T18:00:10.036Z","proof":"source=text"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T18:00:10.036Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-fg-toitures/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0841510434', 'Actif', 'BCE_CSV', '2026-02-19T17:54:41.800Z', '2026-02-19T17:54:41.800Z', 'FG TOITURES', '2011-12-02', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T18:00:10.036Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0841510434'
    AND c_existing.slug <> 'toiture-liege-fg-toitures'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'toiture-liege-jdr-toiture', 'BE-WAL', 'JDR Toiture', 'Toiture', ARRAY['fuite d''eau toiture', 'isolation sarking', 'toit plat étanche', 'urgence couvreur', 'bardage bois', 'zinguerie toiture', 'démoussage toiture', 'certification sécurité', 'rénovation de toiture', 'isolation de toit plat', 'pose de membrane edpm', 'réparation de fuites']::text[], ARRAY['Rénovation de toiture', 'Isolation de toit plat', 'Pose de membrane edpm', 'Réparation de fuites', 'Entretien de charpente', 'Installation de bardage']::text[], 'sur_devis', NULL, NULL, TRUE, 'Liège', '4000', 'BE', 'Rue Ernest-Solvay 63', 'https://www.jdrtoitures.be/', 'https://www.facebook.com/JDRToitures/', NULL, NULL, NULL, 'info@jdrtoitures.be', NULL, '+32472940898', '+32472940898', NULL, NULL, NULL, 'Liège', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de rénovation de toiture?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Quelles communes sont couvertes en priorité?","answer":"Les interventions se déroulent à Liège et dans les communes avoisinantes, selon la nature de la demande."}]'::jsonb, 'JDR Toitures, entreprise spécialisée dans les travaux de couverture à Liège et ses alentours, intervient sur tous types de toitures : rénovation, isolation, bardage ou réparation urgente. Leur expertise couvre aussi bien les particuliers que les professionnels, avec une attention particulière portée aux normes de sécurité et à la durabilité des matériaux utilisés.', 'Toiture à Liège | JDR Toitures', 'Interventions durables avec test d''étanchéité systématique. Couvreurs certifiés pour toits plats et bardages bois en région liégeoise.', 'JDR Toitures - Expert en rénovation de toiture à Liège', 'Spécialiste des toitures plates, isolation sarking et réparation de fuites. Photos avant/après pour traçabilité des travaux.', '{"@context":"https://schema.org","@type":"RoofingContractor","name":"JDR Toitures","description":"Couvreur spécialisé en toiture plate, isolation et réparation à Liège.","url":"https://revelys.be/entreprises/toiture-liege-jdr-toiture","sameAs":["https://www.jdrtoitures.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue Ernest-Solvay 63","postalCode":"4000","addressLocality":"Liège","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Liège"},"keywords":["fuite d''eau toiture","isolation sarking","toit plat étanche","urgence couvreur","bardage bois","zinguerie toiture","démoussage toiture","certification sécurité","rénovation de toiture","isolation de toit plat","pose de membrane edpm","réparation de fuites"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-jdr-toiture/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-jdr-toiture/cover.webp"],"logo":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-jdr-toiture/logo.webp","hasOfferCatalog":{"@type":"OfferCatalog","name":"Services de toiture","itemListElement":[{"@type":"Offer","name":"Rénovation de toiture"},{"@type":"Offer","name":"Isolation de toit plat"},{"@type":"Offer","name":"Pose de membrane edpm"},{"@type":"Offer","name":"Réparation de fuites"},{"@type":"Offer","name":"Entretien de charpente"},{"@type":"Offer","name":"Installation de bardage"}]}}'::jsonb, '2026-02-19T18:04:36.850Z', TRUE, 5, 'fd6d5869800affd1a273590968410f991ceaab1584f2f71c46543201661c1b1c', 'JDR Toitures se distingue par son approche sur mesure, combinant savoir-faire technique et écoute client. Leur engagement envers la sécurité des chantiers et le choix de matériaux haut de gamme garantissent des interventions durables.', NULL, 'Durabilité', '[{"name":"Vérification des dispositifs de sécurité","description":"Avant chaque intervention, l''équipe inspecte les équipements de protection individuelle et les systèmes d''ancrage pour garantir la sécurité sur le chantier.","frequency":"tous chantiers","impact":"réduction des risques d''accidents","proof":null},{"name":"Test d''étanchéité membrane EDPM","description":"Après pose, les couvreurs réalisent un test de pression pour vérifier l''absence de fuites sur la membrane d''étanchéité.","frequency":"toutes poses EPDM","impact":"garantie d''étanchéité immédiate","proof":null},{"name":"Nettoyage des résidus après chantier","description":"L''équipe procède systématiquement au ramassage des déchets et au balayage de la zone d''intervention pour laisser les lieux impeccables.","frequency":"tous chantiers","impact":"satisfaction client immédiate","proof":null},{"name":"Prise de photos avant/après","description":"Pour chaque projet, des photographies sont prises avant et après intervention afin de documenter l''état initial et le résultat final.","frequency":"tous chantiers","impact":"traçabilité des travaux","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-jdr-toiture/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-jdr-toiture/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-jdr-toiture/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-jdr-toiture/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-jdr-toiture/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-jdr-toiture/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T18:05:49.668Z","proof":"https://www.jdrtoitures.be/"},{"label":"Seed: city hint","date":"2026-02-19T18:05:49.668Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T18:05:49.668Z","proof":"Toiture"},{"label":"Seed: search keyword","date":"2026-02-19T18:05:49.668Z","proof":"Toiture"},{"label":"Extracted: city","date":"2026-02-19T18:05:49.668Z","proof":"Liège"},{"label":"BCE: mod97 valid","date":"2026-02-19T18:05:49.668Z","proof":"0652883640"},{"label":"Email extracted","date":"2026-02-19T18:05:49.668Z","proof":"info@jdrtoitures.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T18:05:49.668Z","proof":"confidence=85/100"},{"label":"Phone extracted","date":"2026-02-19T18:05:49.668Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T18:05:49.668Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-jdr-toiture/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0652883640', 'Actif', 'BCE_CSV', '2026-02-19T18:00:13.900Z', '2026-02-19T18:00:13.900Z', 'J.D.R & Co', '2016-04-27', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T18:05:49.668Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0652883640'
    AND c_existing.slug <> 'toiture-liege-jdr-toiture'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'toiture-liege-toitures-lahaye', 'BE-WAL', 'Toitures Lahaye', 'Toiture', ARRAY['fuite d''eau toiture', 'urgence couvreur', 'charpente en bois', 'bardage zinc ardoise', 'isolation toiture', 'fenêtre de toit velux', '24h/7j intervention', 'construction de toiture', 'rénovation de toiture', 'réparation de fuites', 'pose de bardage', 'isolation thermique']::text[], ARRAY['Construction de toiture', 'Rénovation de toiture', 'Réparation de fuites', 'Pose de bardage', 'Isolation thermique', 'Aménagement de grenier']::text[], 'sur_devis', NULL, NULL, TRUE, 'Soumagne', '4630', 'BE', 'Thier Hamal(EVE) 14', 'https://www.toitureslahaye.be/', NULL, NULL, NULL, NULL, 'info@toitureslahaye.be', NULL, '+32494903438', '+32494903438', NULL, NULL, NULL, 'Soumagne', ARRAY['français']::text[], '24h/24 - 7j/7', NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de construction de toiture?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Sur quelle zone géographique intervenez-vous?","answer":"Les interventions se déroulent à Soumagne et dans les communes avoisinantes, selon la nature de la demande."},{"question":"Comment la qualité des interventions est-elle assurée?","answer":"La qualité repose sur une méthode structurée, des vérifications en cours d''intervention et un contrôle final avant la remise au client."},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"Toitures Lahaye se distingue par la présence constante du patron sur les chantiers, garantissant un suivi personnalisé et une communication transparente. L''entreprise mise sur des matériaux haut de gamme et une expertise de plus de 20 ans pour des réalisations durables."}]'::jsonb, 'Toitures Lahaye, entreprise spécialisée en couverture et charpente basée à Soumagne, intervient dans toute la province de Liège pour des projets de toiture, isolation, bardage et aménagement de grenier. Avec plus de 20 ans d''expérience, l''entreprise met un point d''honneur sur la qualité des matériaux et le suivi personnalisé par son patron présent sur chaque chantier.', 'Couvreur à Soumagne | Toitures Lahaye', 'Intervention 24h/7j pour réparer les fuites de toiture. Test d''étanchéité systématique après chaque réparation dans la région liégeoise.', 'Toitures Lahaye - Couvreur à Soumagne', 'Entreprise spécialisée en construction, rénovation et isolation de toitures. Interventions urgentes disponibles pour les fuites d''eau.', '{"@context":"https://schema.org","@type":"RoofingContractor","name":"Toitures Lahaye","description":"Couvreur spécialisé en construction, rénovation et isolation de toitures à Soumagne.","url":"https://revelys.be/entreprises/toiture-liege-toitures-lahaye","sameAs":["https://www.toitureslahaye.be/"],"address":{"@type":"PostalAddress","streetAddress":"Thier Hamal(EVE) 14","postalCode":"4630","addressLocality":"Soumagne","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Soumagne"},"keywords":["fuite d''eau toiture","urgence couvreur","charpente en bois","bardage zinc ardoise","isolation toiture","fenêtre de toit velux","24h/7j intervention","construction de toiture","rénovation de toiture","réparation de fuites","pose de bardage","isolation thermique"],"image":[{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-lahaye/logo.webp","width":500,"height":300}],"logo":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-lahaye/logo.webp"},"hasOfferCatalog":{"@type":"OfferCatalog","name":"Services de toiture","itemListElement":[{"@type":"Offer","name":"Construction de toiture","url":"https://www.toitureslahaye.be/"},{"@type":"Offer","name":"Rénovation de toiture","url":"https://www.toitureslahaye.be/"},{"@type":"Offer","name":"Réparation de fuites","url":"https://www.toitureslahaye.be/"},{"@type":"Offer","name":"Pose de bardage","url":"https://www.toitureslahaye.be/"},{"@type":"Offer","name":"Isolation thermique","url":"https://www.toitureslahaye.be/"},{"@type":"Offer","name":"Aménagement de grenier","url":"https://www.toitureslahaye.be/"}]}}'::jsonb, '2026-02-19T18:09:08.653Z', TRUE, 5, 'c38f485470ed08f6bf24e120e72c1bbdbce9d99fb7edcbd964d619eb93762b08', 'Toitures Lahaye se distingue par la présence constante du patron sur les chantiers, garantissant un suivi personnalisé et une communication transparente. L''entreprise mise sur des matériaux haut de gamme et une expertise de plus de 20 ans pour des réalisations durables.', NULL, 'Durabilité', '[{"name":"Test d''étanchéité après réparation","description":"Après chaque intervention de réparation, l''équipe procède à un test d''étanchéité complet pour vérifier l''absence de fuites, même sous forte pluie simulée.","frequency":"toujours","impact":"qualite","proof":null},{"name":"Nettoyage des ardoises avant pose","description":"Les ardoises sont systématiquement nettoyées et inspectées une par une avant leur installation pour garantir un rendu impeccable.","frequency":"toujours","impact":"qualite","proof":null},{"name":"Prise de mesures sur site","description":"Toutes les mesures sont prises directement sur le chantier avec des outils professionnels pour éviter toute erreur de découpe.","frequency":"toujours","impact":"precision","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-lahaye/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-lahaye/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-lahaye/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-lahaye/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-lahaye/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-lahaye/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T18:10:31.341Z","proof":"https://www.toitureslahaye.be/"},{"label":"Seed: city hint","date":"2026-02-19T18:10:31.341Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T18:10:31.341Z","proof":"Toiture"},{"label":"Seed: search keyword","date":"2026-02-19T18:10:31.341Z","proof":"Toiture"},{"label":"Extracted: city","date":"2026-02-19T18:10:31.341Z","proof":"Soumagne"},{"label":"BCE: mod97 valid","date":"2026-02-19T18:10:31.341Z","proof":"0777997507"},{"label":"Email extracted","date":"2026-02-19T18:10:31.341Z","proof":"info@toitureslahaye.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T18:10:31.341Z","proof":"confidence=80/100"},{"label":"BCE recovered from local identity","date":"2026-02-19T18:10:31.341Z","proof":"score=110"},{"label":"Phone extracted","date":"2026-02-19T18:10:31.341Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T18:10:31.341Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toitures-lahaye/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0777997507', 'Actif', 'BCE_CSV', '2026-02-19T18:05:59.076Z', '2026-02-19T18:05:59.076Z', 'TOITURES LAHAYE', '2021-12-03', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T18:10:31.341Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0777997507'
    AND c_existing.slug <> 'toiture-liege-toitures-lahaye'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'toiture-liege-toiture-schu-freddy', 'BE-WAL', 'Toiture Schu Freddy', 'Toiture', ARRAY['toit en terre cuite', 'fuite d''eau toiture', 'urgence couvreur', 'démoussage toiture', 'intervention week-end', 'certification rge', 'isolation synthétique', 'travaux de zinguerie', 'rénovation de toiture plate', 'rénovation de toiture inclinée', 'réparation de charpente', 'pose d''ardoise naturelle']::text[], ARRAY['Rénovation de toiture plate', 'Rénovation de toiture inclinée', 'Réparation de charpente', 'Pose d''ardoise naturelle', 'Installation de velux']::text[], 'sur_devis', NULL, NULL, TRUE, 'Clavier', '4560', 'BE', 'Rue du Dessous 15', 'https://www.toitures-schu.be/', NULL, NULL, NULL, NULL, 'info@toitures-schu.be', NULL, '+3286669035', '+3286669035', NULL, NULL, NULL, 'Clavier', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de rénovation de toiture plate?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Sur quelle zone géographique intervenez-vous?","answer":"Les interventions se déroulent à Clavier et dans les communes avoisinantes, selon la nature de la demande."},{"question":"Comment la qualité des interventions est-elle assurée?","answer":"La qualité repose sur une méthode structurée, des vérifications en cours d''intervention et un contrôle final avant la remise au client."},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"Toiture Schu Freddy se distingue par son expertise familiale transmise depuis plus de 20 ans et sa sélection rigoureuse de matériaux premium comme l''ardoise naturelle, garantissant des toitures à la fois esthétiques et durables."}]'::jsonb, 'Toiture Schu Freddy est un couvreur spécialisé dans la rénovation et l''entretien des toitures plates et inclinées à Clavier. Avec plus de 20 ans d''expérience, cette entreprise familiale utilise des matériaux haut de gamme comme l''ardoise naturelle ou les tuiles en terre cuite pour garantir durabilité et étanchéité. Elle intervient également sur les cheminées et les fenêtres de toit.', 'Couvreur à Clavier | Toiture Schu Freddy', 'Rénovation de toitures avec test d''étanchéité systématique. Expertise familiale depuis 20 ans en ardoise naturelle et isolation synthétique pour les maisons de la région.', 'Toiture Schu Freddy - Couvreur à Clavier', 'Entreprise spécialisée dans la rénovation et réparation de toitures plates et inclinées. Utilisation systématique de membranes d''étanchéité pour une protection optimale.', '{"@context":"https://schema.org","@type":"RoofingContractor","name":"Toiture Schu Freddy","description":"Couvreur spécialisé en rénovation de toitures et travaux de zinguerie à Clavier.","url":"https://revelys.be/entreprises/toiture-liege-toiture-schu-freddy","sameAs":["https://www.toitures-schu.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue du Dessous 15","postalCode":"4560","addressLocality":"Clavier","addressCountry":"BE"},"areaServed":"Clavier, Liège","keywords":["toit en terre cuite","fuite d''eau toiture","urgence couvreur","démoussage toiture","intervention week-end","certification rge","isolation synthétique","travaux de zinguerie","rénovation de toiture plate","rénovation de toiture inclinée","réparation de charpente","pose d''ardoise naturelle"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-schu-freddy/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-schu-freddy/cover.webp"]}'::jsonb, '2026-02-19T18:13:05.734Z', TRUE, 5, '16de0fff71a9c0fccd034c0616df78e1d52c0043d43c1effd5350c2e0f25f66b', 'Toiture Schu Freddy se distingue par son expertise familiale transmise depuis plus de 20 ans et sa sélection rigoureuse de matériaux premium comme l''ardoise naturelle, garantissant des toitures à la fois esthétiques et durables.', NULL, 'Durabilité', '[{"name":"Test d''étanchéité post-rénovation","description":"Après chaque intervention, les couvreurs effectuent un test de pression sur toute la surface rénovée pour détecter d''éventuelles fuites avant le départ du chantier.","frequency":"100%","impact":"Garantit une étanchéité parfaite et évite les retours en cas de pluie.","proof":null},{"name":"Nettoyage des chéneaux avec aspirateur industriel","description":"Les professionnels utilisent un aspirateur industriel pour éliminer complètement les débris végétaux et les saletés accumulées dans les gouttières, même après démoussage.","frequency":"100%","impact":"Prévient l''obstruction des chéneaux et prolonge la durée de vie du système d''évacuation.","proof":null},{"name":"Pose systématique de membranes d''étanchéité","description":"Pour toute rénovation, Toiture Schu Freddy applique une membrane bitumineuse sous les revêtements comme l''ardoise ou le zinc pour renforcer la protection contre les infiltrations.","frequency":"100%","impact":"Double barrière contre l''humidité et améliore l''isolation thermique.","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-schu-freddy/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-schu-freddy/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-schu-freddy/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-schu-freddy/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-schu-freddy/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-schu-freddy/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T18:13:59.928Z","proof":"https://www.toitures-schu.be/"},{"label":"Seed: city hint","date":"2026-02-19T18:13:59.928Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T18:13:59.928Z","proof":"Toiture"},{"label":"Seed: search keyword","date":"2026-02-19T18:13:59.928Z","proof":"Toiture"},{"label":"Extracted: city","date":"2026-02-19T18:13:59.928Z","proof":"Clavier"},{"label":"BCE: mod97 valid","date":"2026-02-19T18:13:59.928Z","proof":"0733804604"},{"label":"Email extracted","date":"2026-02-19T18:13:59.928Z","proof":"info@toitures-schu.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T18:13:59.928Z","proof":"confidence=85/100"},{"label":"Phone extracted","date":"2026-02-19T18:13:59.928Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T18:13:59.928Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-liege-toiture-schu-freddy/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0733804604', 'Actif', 'BCE_CSV', '2026-02-19T18:10:35.069Z', '2026-02-19T18:10:35.069Z', 'TOITURES SCHU & FILS', '2019-09-07', 'Personne morale', 'Société en commandite', 'Situation normale', '2026-02-11', '2026-02-19T18:13:59.928Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0733804604'
    AND c_existing.slug <> 'toiture-liege-toiture-schu-freddy'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'toiture-couvreur-liege-toitures-laviolette', 'BE-WAL', 'Toitures Laviolette', 'Toiture', ARRAY['toit plat', 'rénovation durable', 'panneaux solaires', 'zinguerie', 'isolation thermique', 'entreprise familiale', '70 ans d''expérience', 'liège et alentours', 'installation de toiture plate', 'rénovation de toitures', 'pose de zinguerie', 'installation de panneaux photovoltaïques']::text[], ARRAY['Installation de toiture plate', 'Rénovation de toitures', 'Isolation thermique', 'Pose de zinguerie', 'Installation de panneaux photovoltaïques']::text[], 'sur_devis', NULL, NULL, TRUE, 'Juprelle', '4451', 'BE', 'Rue de la Renaissance 4', 'https://toitures-laviolette.be/', NULL, NULL, NULL, NULL, 'toitureslaviolette@gmail.com', NULL, '+32478452253', '+32478452253', NULL, NULL, NULL, 'Juprelle', ARRAY['français']::text[], NULL, '[{"day":"lundi","open":"08:00","close":"17:00","isClosed":false},{"day":"mardi","open":"08:00","close":"17:00","isClosed":false},{"day":"mercredi","open":"08:00","close":"17:00","isClosed":false},{"day":"jeudi","open":"08:00","close":"17:00","isClosed":false},{"day":"vendredi","open":"08:00","close":"17:00","isClosed":false}]'::jsonb, NULL, NULL, NULL, '[{"question":"Proposez-vous des services d''installation de toiture plate?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Quelles communes sont couvertes en priorité?","answer":"Les interventions se déroulent à Juprelle et dans les communes avoisinantes, selon la nature de la demande."}]'::jsonb, 'Toitures Laviolette, entreprise familiale spécialisée dans les toits plats et en pente depuis 70 ans à Juprelle, allie expertise traditionnelle et solutions modernes comme l''installation de panneaux solaires pour des habitations durables.', 'Couvreur à Juprelle | Toitures Laviolette', 'Rénovation de toitures avec matériaux certifiés et isolation thermique performante. Entreprise familiale depuis 70 ans, spécialisée en Liège et alentours.', 'Toitures Laviolette - Couvreur à Juprelle', 'Spécialiste des toitures plates, rénovations durables et panneaux solaires. Diagnostic gratuit avant devis pour une solution adaptée à votre bâtiment.', '{"@context":"https://schema.org","@type":"RoofingContractor","name":"Toitures Laviolette","description":"Couvreur spécialisé en toiture plate, rénovation et isolation thermique à Juprelle.","url":"https://revelys.be/entreprises/toiture-couvreur-liege-toitures-laviolette","sameAs":["https://toitures-laviolette.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue de la Renaissance 4","postalCode":"4451","addressLocality":"Juprelle","addressCountry":"BE"},"areaServed":["Liège","Alentours"],"keywords":["toit plat","rénovation durable","panneaux solaires","zinguerie","isolation thermique","entreprise familiale","70 ans d''expérience","installation de toiture plate","rénovation de toitures","pose de zinguerie","installation de panneaux photovoltaïques"],"image":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-couvreur-liege-toitures-laviolette/logo.webp"}'::jsonb, '2026-02-19T18:17:26.894Z', TRUE, 5, '278f997d1a98d8c68f8b76b2bbdd795b7eec400127441749b13228e59cc1e5e2', 'Chez Toitures Laviolette, nous combinons savoir-faire artisanal et innovations écologiques pour des toitures à la fois esthétiques et performantes, avec un engagement sur le long terme.', NULL, 'Durabilité', '[{"name":"Diagnostic complet avant devis","description":"Inspection minutieuse de l''état actuel de la toiture pour proposer une solution adaptée aux spécificités du bâtiment.","frequency":"Selon le besoin","impact":"Améliore la fiabilité et la qualité d''exécution.","proof":null},{"name":"Pose avec matériaux certifiés","description":"Utilisation exclusive de produits professionnels garantissant durabilité et résistance aux intempéries, conformément aux normes belges.","frequency":"Selon le besoin","impact":"Améliore la fiabilité et la qualité d''exécution.","proof":null},{"name":"Nettoyage post-intervention","description":"Élimination systématique des débris et vérification du chantier pour laisser les lieux impeccables après chaque intervention.","frequency":"Selon le besoin","impact":"Améliore la fiabilité et la qualité d''exécution.","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-couvreur-liege-toitures-laviolette/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-couvreur-liege-toitures-laviolette/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-couvreur-liege-toitures-laviolette/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-couvreur-liege-toitures-laviolette/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-couvreur-liege-toitures-laviolette/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-couvreur-liege-toitures-laviolette/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T18:18:11.530Z","proof":"https://toitures-laviolette.be/"},{"label":"Seed: city hint","date":"2026-02-19T18:18:11.530Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T18:18:11.530Z","proof":"Toiture"},{"label":"Seed: search keyword","date":"2026-02-19T18:18:11.530Z","proof":"Toiture couvreur"},{"label":"Extracted: city","date":"2026-02-19T18:18:11.530Z","proof":"Juprelle"},{"label":"BCE: mod97 valid","date":"2026-02-19T18:18:11.530Z","proof":"0643954195"},{"label":"Email extracted","date":"2026-02-19T18:18:11.530Z","proof":"toitureslaviolette@gmail.com"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T18:18:11.530Z","proof":"confidence=80/100"},{"label":"Phone extracted","date":"2026-02-19T18:18:11.530Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T18:18:11.530Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/toiture-couvreur-liege-toitures-laviolette/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0643954195', 'Actif', 'BCE_CSV', '2026-02-19T18:14:15.186Z', '2026-02-19T18:14:15.186Z', 'TOITURES LAVIOLETTE', '2015-12-08', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T18:18:11.530Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0643954195'
    AND c_existing.slug <> 'toiture-couvreur-liege-toitures-laviolette'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'facadier-liege-bronkart-sa', 'BE-WAL', 'Bronkart Sa', 'Façadier', ARRAY['fissures façade', 'infiltration eau', 'peinture résistante intempéries', 'ravalement liège', 'protection maçonnerie', 'diagnostic façade', 'enduits chaux', 'durabilité bâtiment', 'coordination décoration extérieure', 'rénovation de façade', 'nettoyage de façade', 'réparation d''infiltrations']::text[], ARRAY['Rénovation de façade', 'Nettoyage de façade', 'Réparation d''infiltrations', 'Application de peinture minérale', 'Traitement anti-mousse']::text[], 'sur_devis', NULL, NULL, TRUE, 'Liège', '4020', 'BE', 'Quai des Ardennes 78', 'https://www.bronkart-sa.be/', NULL, NULL, NULL, NULL, 'info@bronkart-sa.be', NULL, '+32479954925', '+32479954925', NULL, NULL, NULL, 'Liège', ARRAY['français']::text[], '24h/24 - 7j/7', NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de rénovation de façade?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Quelles communes sont couvertes en priorité?","answer":"Les interventions se déroulent à Liège et dans les communes avoisinantes, selon la nature de la demande."}]'::jsonb, 'Bronkart Sa, spécialiste en rénovation de façades à Liège, redonne éclat et durabilité aux murs extérieurs grâce à des techniques adaptées aux intempéries belges. L''entreprise allie savoir-faire artisanal et produits résistants pour des résultats harmonieux avec l''architecture existante.', 'Façadier à Liège | Bronkart Sa', 'Diagnostic précis et techniques adaptées pour des rénovations de façade durables. Spécialiste en protection maçonnerie et peinture résistante aux intempéries belges.', 'Bronkart Sa - Façadier à Liège', 'Rénovation, nettoyage et réparation de façades avec diagnostic pré-intervention pour une durabilité optimale. Techniques adaptées aux conditions climatiques locales.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Bronkart Sa","description":"Façadier spécialisé en rénovation et protection de façades à Liège.","url":"https://revelys.be/entreprises/facadier-liege-bronkart-sa","sameAs":["https://www.bronkart-sa.be/"],"address":{"@type":"PostalAddress","streetAddress":"Quai des Ardennes 78","postalCode":"4020","addressLocality":"Liège","addressCountry":"BE"},"areaServed":"Liège","keywords":["fissures façade","infiltration eau","peinture résistante intempéries","ravalement liège","protection maçonnerie","diagnostic façade","enduits chaux","durabilité bâtiment","coordination décoration extérieure","rénovation de façade","nettoyage de façade","réparation d''infiltrations","Rénovation de façade","Nettoyage de façade","Réparation d''infiltrations","Application de peinture minérale","Traitement anti-mousse"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-bronkart-sa/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-bronkart-sa/cover.webp"],"logo":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-bronkart-sa/logo.webp"}'::jsonb, '2026-02-19T18:21:40.437Z', TRUE, 5, '2b1c3e327430f7240cb0e070c4ea97d128b3ea5aea662770a5589c4c87d515fb', 'Chez Bronkart Sa, chaque façade est traitée comme un projet unique. L''entreprise combine diagnostic précis et techniques adaptées pour des rénovations qui préservent l''authenticité du bâtiment tout en assurant une protection durable.', NULL, 'Durabilité', '[{"name":"Diagnostic pré-intervention","description":"Inspection minutieuse de la façade pour identifier fissures, infiltrations et zones fragilisées avant toute intervention. Ce diagnostic guide les choix techniques pour un traitement adapté.","frequency":"toujours","impact":"garantit une rénovation ciblée et durable","proof":null},{"name":"Nettoyage par sablage doux","description":"Utilisation de techniques de nettoyage adaptées (sablage, démoussage) pour préserver la structure tout en éliminant salissures et mousses. Le choix du procédé dépend de l''état initial du support.","frequency":"selon état façade","impact":"évite les dégradations supplémentaires","proof":null},{"name":"Application peinture minérale","description":"Pose de peintures spécifiques résistantes aux intempéries belges (humidité, gel) avec préparation soignée du support pour une adhérence optimale et un rendu uniforme.","frequency":"toujours","impact":"assure protection longue durée","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-bronkart-sa/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-bronkart-sa/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-bronkart-sa/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-bronkart-sa/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-bronkart-sa/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-bronkart-sa/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T18:22:40.018Z","proof":"https://www.bronkart-sa.be/facade/"},{"label":"Seed: city hint","date":"2026-02-19T18:22:40.018Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T18:22:40.018Z","proof":"Façadier"},{"label":"Seed: search keyword","date":"2026-02-19T18:22:40.018Z","proof":"Façadier"},{"label":"Extracted: city","date":"2026-02-19T18:22:40.018Z","proof":"Liège"},{"label":"BCE: mod97 valid","date":"2026-02-19T18:22:40.018Z","proof":"0457686283"},{"label":"Email extracted","date":"2026-02-19T18:22:40.018Z","proof":"info@bronkart-sa.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T18:22:40.018Z","proof":"confidence=92/100"},{"label":"Phone extracted","date":"2026-02-19T18:22:40.018Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T18:22:40.018Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-bronkart-sa/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0457686283', 'Actif', 'BCE_CSV', '2026-02-19T18:18:24.726Z', '2026-02-19T18:18:24.726Z', 'BRONKART', '1996-04-02', 'Personne morale', 'Société anonyme', 'Situation normale', '2026-02-11', '2026-02-19T18:22:40.018Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0457686283'
    AND c_existing.slug <> 'facadier-liege-bronkart-sa'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'crepi-liege-deco-liege', 'BE-WAL', 'DECO Liege', 'Façadier', ARRAY['fissures façade', 'isolation thermique', 'finitions murales', '25 ans d''expérience', 'produits certifiés', 'emotional need label', 'fierte', 'why company', 'deco liège se distingue par son expertise technique et sa gamme complète de produits certifiés, garantissant des finitions durables et esthétiques pour vos façades.', 'rituals', 'preparation minutieuse du support', 'application en couches successives pour un rendu uniforme']::text[], ARRAY['Application de crépi classique', 'Application de crépi isothermique', 'Rénovation de façades', 'Peinture extérieure', 'Conseil en revêtements']::text[], NULL, NULL, NULL, NULL, 'Herstal', '4040', 'BE', 'Rue de l''Abbaye 90', 'https://decoliege.be/', NULL, NULL, NULL, NULL, 'decoliegepro@gmail.com', NULL, '+32497490513', '+32497490513', NULL, NULL, NULL, 'Herstal', ARRAY['français']::text[], NULL, '[{"day":"dimanche","open":"09:30","close":"18:00","isClosed":false}]'::jsonb, NULL, NULL, NULL, '[{"question":"Proposez-vous des services d''application de crépi classique?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Quelles communes sont couvertes en priorité?","answer":"Les interventions se déroulent à Herstal et dans les communes avoisinantes, selon la nature de la demande."}]'::jsonb, 'DECO Liège est un spécialiste des façades et crépis à Herstal, proposant une large gamme de solutions pour l''intérieur comme l''extérieur. Avec plus de 25 ans d''expérience, l''entreprise allie expertise technique et conseil personnalisé pour des finitions durables et esthétiques.', 'Crépi à Herstal | DECO Liège', 'Application professionnelle de crépi isothermique avec produits certifiés. 25 ans d''expérience en rénovation de façades à Herstal.', 'DECO Liège - Crépi et isolation thermique à Herstal', 'Entreprise spécialisée dans l''application de crépi classique et isothermique, la rénovation de façades et les finitions murales à Herstal.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"DECO Liège","description":"Application professionnelle de crépi classique et isothermique avec produits certifiés.","url":"https://revelys.be/entreprises/crepi-liege-deco-liege","sameAs":["https://decoliege.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue de l''Abbaye 90","postalCode":"4040","addressLocality":"Herstal","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Herstal"},"keywords":["fissures façade","isolation thermique","finitions murales","25 ans d''expérience","produits certifiés","Application de crépi classique","Application de crépi isothermique","Rénovation de façades","Peinture extérieure","Conseil en revêtements"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-deco-liege/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-deco-liege/cover.webp"]}'::jsonb, '2026-02-19T18:25:48.790Z', TRUE, 5, 'ff843660fa66149ac7cb9a0586951708d46e7b4d8984c0b95d91a64b88ffbcb4', 'DECO Liège se distingue par son expertise technique et sa gamme complète de produits certifiés, garantissant des finitions durables et esthétiques pour vos façades.', NULL, 'Clarté', '[{"name":"Préparation minutieuse du support","description":"Nettoyage approfondi et réparation des fissures avant application pour assurer une adhérence optimale du crépi.","frequency":"toujours","impact":"évite les problèmes d''adhérence et prolonge la durée de vie de la façade","proof":null},{"name":"Application en couches successives","description":"Technique professionnelle pour un rendu uniforme et esthétique, avec séchage contrôlé entre chaque couche.","frequency":"toujours","impact":"garantit une finition impeccable et durable","proof":null},{"name":"Test d''adhérence avant séchage","description":"Vérification systématique de la prise du crépi pour détecter tout défaut précoce.","frequency":"toujours","impact":"évite les retouches ultérieures et assure un résultat parfait","proof":null},{"name":"Conseil personnalisé sur les coloris","description":"Aide à choisir la texture et la couleur adaptées au style architectural du bâtiment.","frequency":"toujours","impact":"satisfait pleinement le client avec un résultat en harmonie avec ses attentes","proof":null},{"name":"Garantie des produits appliqués","description":"Engagement sur la qualité des matériaux utilisés et leur pose professionnelle.","frequency":"toujours","impact":"offre une tranquillité d''esprit au client sur le long terme","proof":null}]'::jsonb, 87, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-deco-liege/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-deco-liege/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-deco-liege/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-deco-liege/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-deco-liege/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-deco-liege/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T18:26:39.461Z","proof":"https://decoliege.be/crepi.php"},{"label":"Seed: city hint","date":"2026-02-19T18:26:39.461Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T18:26:39.461Z","proof":"Façadier"},{"label":"Seed: search keyword","date":"2026-02-19T18:26:39.461Z","proof":"crépi"},{"label":"Extracted: city","date":"2026-02-19T18:26:39.461Z","proof":"Liege"},{"label":"BCE: mod97 valid","date":"2026-02-19T18:26:39.461Z","proof":"0433184281"},{"label":"Email extracted","date":"2026-02-19T18:26:39.461Z","proof":"decoliegepro@gmail.com"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T18:26:39.461Z","proof":"confidence=80/100"},{"label":"Phone extracted","date":"2026-02-19T18:26:39.461Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T18:26:39.461Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-deco-liege/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0433184281', 'Actif', 'BCE_CSV', '2026-02-19T18:22:41.257Z', '2026-02-19T18:22:41.257Z', 'DECO LIEGE', '1988-01-12', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T18:26:39.461Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0433184281'
    AND c_existing.slug <> 'crepi-liege-deco-liege'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'crepi-liege-k-paints', 'BE-WAL', 'K-Paints', 'Façadier', ARRAY['fissures façade', 'isolation thermique', 'finition lisse', 'protection murale', 'devis gratuit', 'liège et environs', 'application de crépi classique', 'application de crépi isothermique', 'rénovation de façades', 'préparation des supports muraux', 'peinture extérieure']::text[], ARRAY['Application de crépi classique', 'Application de crépi isothermique', 'Rénovation de façades', 'Préparation des supports muraux', 'Peinture extérieure']::text[], NULL, NULL, NULL, NULL, 'Liège', '4000', 'BE', 'Rue d''Ans 60', 'https://decostock.be/', NULL, NULL, NULL, NULL, 'decostock.rocourt@gmail.com', NULL, '+3242392267', '+3242392267', NULL, NULL, NULL, 'Liège', ARRAY['français']::text[], NULL, '[{"day":"dimanche","open":"09:30","close":"18:00","isClosed":false}]'::jsonb, NULL, NULL, NULL, '[{"question":"Proposez-vous des services d''application de crépi classique?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Intervenez-vous au-delà de la zone principale?","answer":"La zone principale est Liège. Les interventions peuvent s''étendre aux communes limitrophes selon le besoin."},{"question":"Comment contrôlez-vous la qualité de votre travail?","answer":"Des vérifications sont effectuées à chaque étape de l''intervention, avec un contrôle final avant la clôture du chantier."},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"K-Paints se distingue par son expertise dans les finitions de façade, alliant esthétique et performance technique. L''entreprise utilise des matériaux haut de gamme pour garantir une longévité optimale."}]'::jsonb, 'K-Paints, façadier spécialisé à Liège, redonne vie aux murs extérieurs avec des finitions impeccables et durables. L''entreprise maîtrise les techniques de crépi classique et isothermique pour un rendu esthétique et protecteur. Chaque projet est réalisé avec précision, en respectant les normes locales.', 'Crépi à Liège | K-Paints', 'Expert en isolation thermique et finition lisse pour façades. Préparation minutieuse des supports muraux garantissant durabilité. Interventions à Liège et environs.', 'K-Paints - Application de crépi à Liège', 'Entreprise spécialisée dans le crépi classique et isothermique, la rénovation de façades et la peinture extérieure. Basée à Liège, Rue d''Ans 60.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"K-Paints","description":"Application de crépi classique et isothermique, rénovation de façades à Liège.","url":"https://revelys.be/entreprises/crepi-liege-k-paints","sameAs":["https://decostock.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue d''Ans 60","postalCode":"4000","addressLocality":"Liège","addressCountry":"BE"},"areaServed":{"@type":"Place","name":"Liège et environs"},"keywords":["fissures façade","isolation thermique","finition lisse","protection murale","devis gratuit","liège et environs","application de crépi classique","application de crépi isothermique","rénovation de façades","préparation des supports muraux","peinture extérieure"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-k-paints/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-k-paints/cover.webp"]}'::jsonb, '2026-02-19T18:29:15.138Z', TRUE, 5, '47fb6d64ca2746dc33362c875a8259dc9c5d52bc674b662a9b31261763a13e6e', 'K-Paints se distingue par son expertise dans les finitions de façade, alliant esthétique et performance technique. L''entreprise utilise des matériaux haut de gamme pour garantir une longévité optimale.', NULL, 'Joie', '[{"name":"Préparation minutieuse du support","description":"Nettoyage approfondi et réparation des fissures avant l''application du crépi, garantissant une adhérence parfaite.","frequency":"toujours","impact":"durabilité","proof":null},{"name":"Application en couches régulières","description":"Utilisation d''une taloche pour répartir uniformément le crépi, évitant les irrégularités et assurant un rendu lisse.","frequency":"toujours","impact":"qualité visuelle","proof":null},{"name":"Séchage contrôlé","description":"Protection des surfaces traitées contre les intempéries pendant le temps de séchage pour éviter les défauts.","frequency":"toujours","impact":"résistance aux éléments","proof":null}]'::jsonb, 81, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-k-paints/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-k-paints/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-k-paints/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-k-paints/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-k-paints/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-k-paints/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T18:30:04.523Z","proof":"https://decostock.be/crepi.php"},{"label":"Seed: city hint","date":"2026-02-19T18:30:04.523Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T18:30:04.523Z","proof":"Façadier"},{"label":"Seed: search keyword","date":"2026-02-19T18:30:04.523Z","proof":"crépi"},{"label":"Extracted: city","date":"2026-02-19T18:30:04.523Z","proof":"Rocourt"},{"label":"BCE: mod97 valid","date":"2026-02-19T18:30:04.523Z","proof":"0832428957"},{"label":"Email extracted","date":"2026-02-19T18:30:04.523Z","proof":"decostock.rocourt@gmail.com"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T18:30:04.523Z","proof":"confidence=85/100"},{"label":"Phone extracted","date":"2026-02-19T18:30:04.523Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T18:30:04.523Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-k-paints/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0832428957', 'Actif', 'BCE_CSV', '2026-02-19T18:26:40.864Z', '2026-02-19T18:26:40.864Z', 'K-PAINTS', '2010-12-21', 'Personne morale', 'Société privée à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T18:30:04.523Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0832428957'
    AND c_existing.slug <> 'crepi-liege-k-paints'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'crepi-liege-profacade', 'BE-WAL', 'Profaçade', 'Façadier', ARRAY['isolation thermique', 'économies d''énergie', 'façade durable', 'devis sous 48h', 'partenaire bos', 'normes européennes', 'chantier unique par équipe', 'isolation de façades par crépi', 'rénovation de façades', 'réparation de structures endommagées', 'pose de systèmes isolants complets']::text[], ARRAY['Isolation de façades par crépi', 'Rénovation de façades', 'Réparation de structures endommagées', 'Pose de systèmes isolants complets']::text[], 'sur_devis', NULL, NULL, TRUE, 'Liège', '4000', 'BE', 'Chaussée de Tongres 449 boite 1', 'https://profacade.be/', 'https://www.facebook.com/p/Pro-Fa%C3%A7ade-100054269871118/', NULL, NULL, NULL, 'info@bos-solutions.be', NULL, '+32497805319', '+32497805319', NULL, NULL, NULL, 'Liège', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services d''isolation de façades par crépi?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Quelles communes sont couvertes en priorité?","answer":"Les interventions se déroulent à Liège et dans les communes avoisinantes, selon la nature de la demande."}]'::jsonb, 'Profaçade, spécialiste de l’isolation et de la rénovation de façades à Liège, transforme votre habitation avec des crépis isolants performants. Leur approche sur mesure allie durabilité, esthétique moderne et conformité aux normes énergétiques actuelles. Chaque projet bénéficie d’un suivi personnalisé pour un résultat impeccable.', 'Crépi à Liège | Profaçade', 'Isolation thermique par crépi avec devis sous 48h. Un seul chantier par équipe pour un suivi personnalisé en Wallonie.', 'Profaçade - Isolation de façades à Liège', 'Spécialiste du crépi isolant et de la rénovation de façades à Liège. Analyse pré-projet gratuite avec photos pour des solutions sur mesure.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Profaçade","description":"Entreprise spécialisée dans l''isolation de façades par crépi et la rénovation à Liège.","url":"https://revelys.be/entreprises/crepi-liege-profacade","sameAs":["https://profacade.be/"],"address":{"@type":"PostalAddress","streetAddress":"Chaussée de Tongres 449 boite 1","postalCode":"4000","addressLocality":"Liège","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Liège"},"keywords":["isolation thermique","économies d''énergie","façade durable","devis sous 48h","partenaire bos","normes européennes","chantier unique par équipe","isolation de façades par crépi","rénovation de façades","réparation de structures endommagées","pose de systèmes isolants complets"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-profacade/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-profacade/cover.webp"],"logo":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-profacade/logo.webp","hasOfferCatalog":{"@type":"OfferCatalog","name":"Services d''isolation et rénovation de façades"}}'::jsonb, '2026-02-19T18:32:52.541Z', TRUE, 5, '55998b50b91d13001ba0774decba950672224f7a1b4621ba3da968aaed0da985', 'Profaçade se distingue par son engagement à ne gérer qu’un seul chantier par équipe, garantissant une attention exclusive et un suivi rigoureux de A à Z. Leur expertise en isolation crépi combine performance énergétique et esthétique sur mesure.', NULL, 'Durabilité', '[{"name":"Analyse pré-projet avec photos","description":"Profaçade exige des plans, audits ou photos du bien pour évaluer précisément les besoins avant tout devis. Cette étape permet d’adapter la solution technique et esthétique.","frequency":"toujours","impact":"précision des coûts et délais","proof":null},{"name":"Pose de crépi isolant en 2 couches","description":"Leur méthode inclut une couche d’isolant rigide suivie d’un enduit minéral ou organique, garantissant étanchéité et résistance aux intempéries. Chaque application est contrôlée pour éviter les ponts thermiques.","frequency":"toujours","impact":"durabilité renforcée","proof":null},{"name":"Suivi du patron sur chantier","description":"Le gérant supervise personnellement chaque étape, vérifiant la conformité des matériaux et l’avancement. Cette présence assure un respect strict des délais et de la qualité.","frequency":"toujours","impact":"résultat impeccable","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-profacade/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-profacade/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-profacade/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-profacade/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-profacade/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-profacade/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T18:33:52.294Z","proof":"https://profacade.be/"},{"label":"Seed: city hint","date":"2026-02-19T18:33:52.294Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T18:33:52.294Z","proof":"Façadier"},{"label":"Seed: search keyword","date":"2026-02-19T18:33:52.294Z","proof":"crépi"},{"label":"Extracted: city","date":"2026-02-19T18:33:52.294Z","proof":"Liège"},{"label":"BCE: mod97 valid","date":"2026-02-19T18:33:52.294Z","proof":"0685787426"},{"label":"Email extracted","date":"2026-02-19T18:33:52.294Z","proof":"info@bos-solutions.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T18:33:52.294Z","proof":"confidence=85/100"},{"label":"Phone extracted","date":"2026-02-19T18:33:52.294Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T18:33:52.294Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-profacade/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0685787426', 'Actif', 'BCE_CSV', '2026-02-19T18:30:11.051Z', '2026-02-19T18:30:11.051Z', 'COLOR PRO FACADE', '2017-12-11', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T18:33:52.294Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0685787426'
    AND c_existing.slug <> 'crepi-liege-profacade'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'facadier-crepi-liege-eclair-facade', 'BE-WAL', 'ECLAIR FAÇADE', 'Façadier', ARRAY['fissures infiltrations', 'nettoyage écologique', 'isolation énergétique', 'façade ancienne', 'dévissage gratuit', '20 ans d''expérience', 'ravalement de façade', 'isolation thermique', 'nettoyage par sablage', 'rejointoiement', 'application de crépi', 'peinture extérieure']::text[], ARRAY['Ravalement de façade', 'Isolation thermique', 'Nettoyage par sablage', 'Rejointoiement', 'Application de crépi', 'Peinture extérieure']::text[], 'sur_devis', NULL, NULL, TRUE, 'Engis', '4480', 'BE', 'Rue Saint Nicolas, 4000 Liège, WLG, BE', 'https://www.eclairfacade.be/', NULL, NULL, NULL, NULL, 'eclairfacades@gmail.com', NULL, '+32493700707', '+32493700707', NULL, NULL, NULL, 'Engis', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de ravalement de façade?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Quelles communes sont couvertes en priorité?","answer":"Les interventions se déroulent à Engis et dans les communes avoisinantes, selon la nature de la demande."}]'::jsonb, 'ECLAIR FAÇADE, spécialiste du ravalement et de l''isolation à Engis, redonne éclat et durabilité aux façades anciennes ou récentes. Son expertise couvre sablage, rejointoiement, hydrofugation et pose d''isolants thermiques pour des bâtiments protégés des intempéries.', 'Façadier crépi à Engis | ECLAIR FAÇADE', 'Ravalement de façade avec diagnostic visuel complet pour éviter les infiltrations. Supervision par le patron sur chaque chantier à Engis.', 'ECLAIR FAÇADE - Façadier crépi à Engis', 'Entreprise spécialisée en ravalement, isolation thermique et nettoyage écologique de façades anciennes. Interventions minutieuses avec matériaux haut de gamme.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"ECLAIR FAÇADE","description":"Façadier crépi spécialisé en ravalement, isolation thermique et nettoyage écologique de façades.","url":"https://revelys.be/entreprises/facadier-crepi-liege-eclair-facade","sameAs":["https://www.eclairfacade.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue Saint Nicolas","postalCode":"4480","addressLocality":"Engis","addressRegion":"WLG","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Engis"},"keywords":["fissures infiltrations","nettoyage écologique","isolation énergétique","façade ancienne","dévissage gratuit","20 ans d''expérience","ravalement de façade","isolation thermique","nettoyage par sablage","rejointoiement","application de crépi","peinture extérieure"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-crepi-liege-eclair-facade/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-crepi-liege-eclair-facade/cover.webp"]}'::jsonb, '2026-02-19T18:36:45.636Z', TRUE, 5, 'e62aa4b8168485d3b10ce8cca3567691da2c2d70523fd9789292987b5ce1b376', 'ECLAIR FAÇADE se distingue par une approche minutieuse où le patron supervise chaque chantier, garantissant un travail artisanal et des matériaux haut de gamme pour des façades résistantes aux intempéries.', NULL, 'Durabilité', '[{"name":"Diagnostic visuel complet","description":"Analyse systématique des fissures, infiltrations et usure avant toute intervention pour adapter les techniques (hydrofugation, rejointoiement).","frequency":"Selon le besoin","impact":"Améliore la fiabilité et la qualité d''exécution.","proof":null},{"name":"Sablage à air comprimé","description":"Utilisation d''un abrasif projeté sous pression pour décaper les saletés et moisissures sans endommager la structure.","frequency":"Selon le besoin","impact":"Améliore la fiabilité et la qualité d''exécution.","proof":null},{"name":"Test d''étanchéité post-hydrofugation","description":"Projection d''eau sur la façade traitée pour vérifier l''efficacité du produit contre les infiltrations.","frequency":"Selon le besoin","impact":"Améliore la fiabilité et la qualité d''exécution.","proof":null}]'::jsonb, 93, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-crepi-liege-eclair-facade/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-crepi-liege-eclair-facade/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-crepi-liege-eclair-facade/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-crepi-liege-eclair-facade/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-crepi-liege-eclair-facade/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-crepi-liege-eclair-facade/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T18:37:37.476Z","proof":"https://www.eclairfacade.be/"},{"label":"Seed: city hint","date":"2026-02-19T18:37:37.476Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T18:37:37.476Z","proof":"Façadier"},{"label":"Seed: search keyword","date":"2026-02-19T18:37:37.476Z","proof":"Façadier crépi"},{"label":"Extracted: city","date":"2026-02-19T18:37:37.476Z","proof":"Engis"},{"label":"BCE: mod97 valid","date":"2026-02-19T18:37:37.476Z","proof":"0880552538"},{"label":"Email extracted","date":"2026-02-19T18:37:37.476Z","proof":"eclairfacades@gmail.com"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T18:37:37.476Z","proof":"confidence=80/100"},{"label":"Phone extracted","date":"2026-02-19T18:37:37.476Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T18:37:37.476Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-crepi-liege-eclair-facade/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0880552538', 'Actif', 'BCE_CSV', '2026-02-19T18:34:00.981Z', '2026-02-19T18:34:00.981Z', 'Yildirim, Ramazan', '2024-01-25', 'Personne physique', NULL, 'Situation normale', '2026-02-11', '2026-02-19T18:37:37.476Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0880552538'
    AND c_existing.slug <> 'facadier-crepi-liege-eclair-facade'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'facadier-liege-dg-renovations', 'BE-WAL', 'DG Rénovations', 'Façadier', ARRAY['nettoyage de façade', 'protection contre l''humidité', 'rénovation extérieure', 'technique douce', 'préparation hivernale', 'façade ancienne', 'dégâts des intempéries', 'durabilité matériaux', 'sablage de façade', 'rejointoiement de façade', 'peinture de façade', 'aérogommage']::text[], ARRAY['Sablage de façade', 'Rejointoiement de façade', 'Peinture de façade', 'Aérogommage']::text[], 'sur_devis', NULL, NULL, TRUE, 'Fléron', '4621', 'BE', 'Rue des Bouhys 114', 'https://www.dgrenovations.be/', NULL, NULL, NULL, NULL, 'dg-renovations@hotmail.com', NULL, '+3242620842', '+3242620842', NULL, NULL, NULL, 'Fléron', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de sablage de façade?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Quelles communes sont couvertes en priorité?","answer":"Les interventions se déroulent à Fléron et dans les communes avoisinantes, selon la nature de la demande."}]'::jsonb, 'DG Rénovations, spécialiste du sablage et rejointoiement de façades à Fléron et en province de Liège, redonne éclat et durabilité aux murs extérieurs grâce à des techniques professionnelles comme l''aérogommage. L''entreprise intervient aussi pour la peinture de façade avec des produits adaptés aux conditions climatiques locales.', 'Façadier à Fléron | DG Rénovations', 'Protection durable des façades contre l''humidité avec inspection préalable et peinture professionnelle. Interventions sur façades anciennes en région liégeoise.', 'DG Rénovations - Façadier à Fléron', 'Spécialiste de la rénovation extérieure, DG Rénovations propose sablage, rejointoiement et peinture de façade pour une protection optimale contre les intempéries. Présence du patron sur chantier.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"DG Rénovations","description":"Façadier spécialisé en rénovation extérieure et protection contre l''humidité à Fléron.","url":"https://revelys.be/entreprises/facadier-liege-dg-renovations","sameAs":["https://www.dgrenovations.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue des Bouhys 114","postalCode":"4621","addressLocality":"Fléron","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Fléron"},"keywords":["nettoyage de façade","protection contre l''humidité","rénovation extérieure","technique douce","préparation hivernale","façade ancienne","dégâts des intempéries","durabilité matériaux","sablage de façade","rejointoiement de façade","peinture de façade","aérogommage"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-dg-renovations/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-dg-renovations/cover.webp"],"hasOfferCatalog":{"@type":"OfferCatalog","name":"Services de rénovation extérieure","itemListElement":[{"@type":"Offer","name":"Sablage de façade","url":"https://www.dgrenovations.be/"},{"@type":"Offer","name":"Rejointoiement de façade","url":"https://www.dgrenovations.be/"},{"@type":"Offer","name":"Peinture de façade","url":"https://www.dgrenovations.be/"},{"@type":"Offer","name":"Aérogommage","url":"https://www.dgrenovations.be/"}]}}'::jsonb, '2026-02-19T18:39:59.456Z', TRUE, 5, '7a211c4a9be6d91f1524f12b55a7dae52002796aec9bbf0f37e023c75a7a762a', 'DG Rénovations se distingue par son approche globale combinant sablage, rejointoiement et hydrofugation pour une façade protégée durablement. Le patron est toujours présent sur chantier pour garantir la qualité des travaux.', NULL, 'Durabilité', '[{"name":"Préparation minutieuse avant sablage","description":"Inspection préalable de l''état de la façade et choix du type d''abrasif adapté au matériau (pierre, brique ou béton) pour éviter tout dommage.","frequency":"Selon le besoin","impact":"Améliore la fiabilité et la qualité d''exécution.","proof":null},{"name":"Application de peinture professionnelle","description":"Utilisation de peintures résistantes aux intempéries et application en plusieurs couches pour une protection optimale contre l''humidité.","frequency":"Selon le besoin","impact":"Améliore la fiabilité et la qualité d''exécution.","proof":null},{"name":"Contrôle qualité post-rejointoiement","description":"Vérification systématique de l''étanchéité des joints après séchage pour prévenir les infiltrations d''eau.","frequency":"Selon le besoin","impact":"Améliore la fiabilité et la qualité d''exécution.","proof":null}]'::jsonb, 93, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-dg-renovations/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-dg-renovations/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-dg-renovations/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-dg-renovations/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-dg-renovations/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-dg-renovations/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T18:41:15.237Z","proof":"https://www.dgrenovations.be/"},{"label":"Seed: city hint","date":"2026-02-19T18:41:15.237Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T18:41:15.237Z","proof":"Façadier"},{"label":"Seed: search keyword","date":"2026-02-19T18:41:15.237Z","proof":"Façadier"},{"label":"Extracted: city","date":"2026-02-19T18:41:15.237Z","proof":"Retinne"},{"label":"BCE: mod97 valid","date":"2026-02-19T18:41:15.237Z","proof":"0896592477"},{"label":"Email extracted","date":"2026-02-19T18:41:15.237Z","proof":"dg-renovations@hotmail.com"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T18:41:15.237Z","proof":"confidence=80/100"},{"label":"Phone extracted","date":"2026-02-19T18:41:15.237Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T18:41:15.237Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-dg-renovations/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0896592477', 'Actif', 'BCE_CSV', '2026-02-19T18:37:42.090Z', '2026-02-19T18:37:42.090Z', 'DG RENOVATIONS', '2008-03-20', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T18:41:15.237Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0896592477'
    AND c_existing.slug <> 'facadier-liege-dg-renovations'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'facadier-liege-ars-concept', 'BE-WAL', 'ARS Concept', 'Façadier', ARRAY['façade en bois', 'bardage ardoise', 'isolation extérieure', 'corniche vétuste', 'rénovation complète', 'démoussage façade', 'matériaux nobles', 'toiture plate', 'zinguerie étanchéité', 'projet sur mesure', 'rénovation de façades', 'bardage de façade']::text[], ARRAY['Rénovation de façades', 'Bardage de façade', 'Isolation des façades', 'Réparation de corniches', 'Entretien de façades']::text[], 'sur_devis', NULL, NULL, TRUE, 'Chaudfontaine', '4051', 'BE', 'Chemin du Panorama 5', 'https://www.arsconcept.be/', 'https://www.facebook.com/ARS-Concept-223218288134018/', NULL, NULL, NULL, 'info@arsconcept.be', NULL, '+3243787262', '+3243787262', NULL, NULL, NULL, 'Chaudfontaine', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de rénovation de façades?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Quelles communes sont couvertes en priorité?","answer":"Les interventions se déroulent à Chaudfontaine et dans les communes avoisinantes, selon la nature de la demande."}]'::jsonb, 'ARS Concept, spécialiste des façades à Chaudfontaine, allie expertise technique et esthétique pour sublimer les habitations. L''entreprise maîtrise les matériaux nobles comme le bois ou l''ardoise, tout en garantissant une isolation performante. Chaque projet est réalisé avec précision, du bardage à la rénovation complète de façade.', 'Façadier à Chaudfontaine | ARS Concept', 'Rénovation de façades sur mesure avec matériaux nobles. Approche artisanale combinant tradition et innovation pour des résultats durables en Wallonie.', 'ARS Concept - Façadier à Chaudfontaine', 'Spécialiste en rénovation complète, bardage ardoise et isolation extérieure de façades. Projets personnalisés pour particuliers et professionnels.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"ARS Concept","description":"Façadier spécialisé en rénovation complète, bardage ardoise et isolation extérieure à Chaudfontaine.","url":"https://revelys.be/entreprises/facadier-liege-ars-concept","sameAs":["https://www.arsconcept.be/"],"address":{"@type":"PostalAddress","streetAddress":"Chemin du Panorama 5","postalCode":"4051","addressLocality":"Chaudfontaine","addressCountry":"BE"},"areaServed":"Chaudfontaine, Liège","keywords":["façade en bois","bardage ardoise","isolation extérieure","corniche vétuste","rénovation complète","démoussage façade","matériaux nobles","toiture plate","zinguerie étanchéité","projet sur mesure","rénovation de façades","bardage de façade"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-ars-concept/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-ars-concept/cover.webp"]}'::jsonb, '2026-02-19T18:45:05.320Z', TRUE, 5, 'b9af22d12f2e7143bbdcbd3ecfde1ed84aae89a8396096cdd9c3d3c6ba8823af', 'ARS Concept se distingue par son approche personnalisée et son savoir-faire artisanal, combinant tradition et innovation pour des façades durables et esthétiques.', NULL, 'Joie', '[{"name":"Pose de membrane étanche","description":"Application minutieuse d''une membrane d''étanchéité sur les toitures plates avant pose du revêtement final, garantissant une protection optimale contre les infiltrations.","frequency":"toujours","impact":"évite les fuites et prolonge la durée de vie de la toiture","proof":null},{"name":"Nettoyage haute pression","description":"Utilisation d''un nettoyeur haute pression pour éliminer mousse, lichens et salissures des façades avant toute rénovation ou traitement.","frequency":"toujours","impact":"préparation optimale de la surface pour les travaux suivants","proof":null},{"name":"Test d''étanchéité","description":"Vérification systématique de l''étanchéité des joints et soudures après pose du bardage ou de la zinguerie.","frequency":"toujours","impact":"assure une protection durable contre les intempéries","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-ars-concept/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-ars-concept/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-ars-concept/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-ars-concept/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-ars-concept/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-ars-concept/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T18:45:54.878Z","proof":"https://www.arsconcept.be/facade"},{"label":"Seed: city hint","date":"2026-02-19T18:45:54.878Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T18:45:54.878Z","proof":"Façadier"},{"label":"Seed: search keyword","date":"2026-02-19T18:45:54.878Z","proof":"Façadier"},{"label":"Extracted: city","date":"2026-02-19T18:45:54.878Z","proof":""},{"label":"BCE: mod97 valid","date":"2026-02-19T18:45:54.878Z","proof":"0700995442"},{"label":"Email extracted","date":"2026-02-19T18:45:54.878Z","proof":"info@arsconcept.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T18:45:54.878Z","proof":"confidence=90/100"},{"label":"BCE recovered from local identity","date":"2026-02-19T18:45:54.878Z","proof":"score=60"},{"label":"Phone extracted","date":"2026-02-19T18:45:54.878Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T18:45:54.878Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-liege-ars-concept/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0700995442', 'Actif', 'BCE_CSV', '2026-02-19T18:41:56.842Z', '2026-02-19T18:41:56.842Z', 'ARS CONCEPT', '2018-08-20', 'Personne morale', 'Société privée à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T18:45:54.878Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0700995442'
    AND c_existing.slug <> 'facadier-liege-ars-concept'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'crepi-liege-thermo-concept', 'BE-WAL', 'Thermo-Concept', 'Façadier', ARRAY['façade abîmée', 'isolation murale', 'ciment granuleux', 'peinture hydrofuge', 'cloisons isolées', 'devis gratuit', 'patron sur chantier', 'crépissage de façade', 'isolation thermique par l''extérieur', 'cimentage décoratif', 'peinture autonettoyante', 'parachèvement intérieur']::text[], ARRAY['Crépissage de façade', 'Isolation thermique par l''extérieur', 'Cimentage décoratif', 'Peinture autonettoyante', 'Parachèvement intérieur']::text[], 'sur_devis', NULL, NULL, TRUE, 'Herstal', '4041', 'BE', 'Rue Florent Boclinville 63', 'https://www.thermo-concept.be/', 'https://www.facebook.com/Thermo-Concept-591854210949362/', NULL, NULL, NULL, 'info@thermo-concept.be', NULL, '+3243801760', '+3243801760', NULL, NULL, NULL, 'Herstal', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de crépissage de façade?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Quelles communes sont couvertes en priorité?","answer":"Les interventions se déroulent à Herstal et dans les communes avoisinantes, selon la nature de la demande."}]'::jsonb, 'Thermo-Concept redonne vie aux façades grâce à un crépissage minutieux et des isolations performantes, alliant esthétique moderne et économies d''énergie. Leur expertise s''étend aussi au cimentage et à la peinture de façade, avec une attention particulière portée aux matériaux haut de gamme. Le patron supervise chaque chantier pour garantir un résultat irréprochable.', 'Crépi à Herstal | Thermo-Concept', 'Isolation thermique et crépissage de façade sur mesure. Test d''adhérence systématique pour des finitions durables. Interventions en Région liégeoise.', 'Thermo-Concept - Crépi et isolation à Herstal', 'Entreprise spécialisée dans le crépissage, l''isolation thermique par l''extérieur et les finitions décoratives de façade. Devis gratuit sur demande.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Thermo-Concept","description":"Crépissage, isolation thermique et finitions décoratives pour façades à Herstal.","url":"https://revelys.be/entreprises/crepi-liege-thermo-concept","sameAs":["https://www.thermo-concept.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue Florent Boclinville 63","postalCode":"4041","addressLocality":"Herstal","addressCountry":"BE"},"areaServed":"Herstal, Liège","keywords":["façade abîmée","isolation murale","ciment granuleux","peinture hydrofuge","cloisons isolées","devis gratuit","patron sur chantier","crépissage de façade","isolation thermique par l''extérieur","cimentage décoratif","peinture autonettoyante","parachèvement intérieur"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-thermo-concept/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-thermo-concept/cover.webp"]}'::jsonb, '2026-02-19T18:53:02.593Z', TRUE, 5, '0cf52ddd9d266d71dd8383b546ce0595e9adafc0ead242045c17e64c14803b8c', 'Thermo-Concept transforme les façades en œuvres d''art grâce à un savoir-faire artisanal et une sélection rigoureuse de matériaux premium. Leur approche minutieuse garantit des finitions impeccables qui valorisent votre bien.', NULL, 'Joie', '[{"name":"Choix précis des isolants","description":"Analyse des propriétés thermiques (densité, conductivité) et conseil personnalisé sur les types d''isolant (organique/minéral/écologique).","frequency":"tous chantiers","impact":"optimisation énergétique","proof":null},{"name":"Application en couches maîtrisées","description":"Respect strict des épaisseurs et granulométries recommandées par les fabricants pour un rendu uniforme.","frequency":"tous chantiers","impact":"durabilité du crépi","proof":null},{"name":"Test d''adhérence avant peinture","description":"Vérification systématique de la compatibilité entre l''enduit et les peintures spécialisées (autonettoyantes, hydrofuges).","frequency":"tous chantiers","impact":"longévité des finitions","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-thermo-concept/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-thermo-concept/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-thermo-concept/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-thermo-concept/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-thermo-concept/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-thermo-concept/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T18:53:52.197Z","proof":"https://www.thermo-concept.be/"},{"label":"Seed: city hint","date":"2026-02-19T18:53:52.197Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T18:53:52.197Z","proof":"Façadier"},{"label":"Seed: search keyword","date":"2026-02-19T18:53:52.197Z","proof":"crépi"},{"label":"Extracted: city","date":"2026-02-19T18:53:52.197Z","proof":"Herstal"},{"label":"BCE: mod97 valid","date":"2026-02-19T18:53:52.197Z","proof":"0819098583"},{"label":"Email extracted","date":"2026-02-19T18:53:52.197Z","proof":"info@thermo-concept.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T18:53:52.197Z","proof":"confidence=85/100"},{"label":"Phone extracted","date":"2026-02-19T18:53:52.197Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T18:53:52.197Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-thermo-concept/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0819098583', 'Actif', 'BCE_CSV', '2026-02-19T18:45:55.380Z', '2026-02-19T18:45:55.380Z', 'THERMO-CONCEPT', '2009-09-30', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T18:53:52.197Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0819098583'
    AND c_existing.slug <> 'crepi-liege-thermo-concept'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'crepi-liege-crepisseurs', 'BE-WAL', 'Crepisseurs', 'Façadier', ARRAY['façade abimée', 'pertes thermiques', 'murs modernes', 'devis gratuit', 'patron sur chantier', 'emotional need label', 'why company', 'rituals', 'company faq', 'ras score', 'pricing model', 'budget level']::text[], ARRAY['Crépissage de façades', 'Isolation thermique extérieure', 'Cimentage mural', 'Finitions extérieures', 'Rénovation de murs']::text[], 'sur_devis', NULL, NULL, TRUE, 'Oupeye', '4684', 'BE', 'Rue de la Cale Sèche 38', 'https://www.crepisseurs.be/', NULL, NULL, NULL, NULL, 'info@crepisseurs.be', NULL, '+32488101957', '+32488101957', NULL, NULL, NULL, 'Oupeye', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de crépissage de façades?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Quelles communes sont couvertes en priorité?","answer":"Les interventions se déroulent à Oupeye et dans les communes avoisinantes, selon la nature de la demande."}]'::jsonb, 'Crépisseurs, spécialiste du crépissage et de l''isolation des façades à Oupeye, allie savoir-faire artisanal et matériaux haut de gamme pour des finitions impeccables. Leur approche minutieuse transforme les murs en surfaces contemporaines et durables, tout en optimisant l''efficacité énergétique. Chaque chantier est supervisé par le patron lui-même, garantissant un résultat à la hauteur des attentes.', 'Crépissage à Oupeye | Crépisseurs', 'Isolation thermique extérieure pour réduire les pertes énergétiques. Contrôle final par le patron sur chaque chantier. Spécialiste en façade abimée et murs modernes.', 'Crépissage et isolation à Oupeye', 'Entreprise spécialisée dans le crépissage de façades, l''isolation thermique extérieure et la rénovation de murs à Oupeye. Devis gratuit disponible.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Crépisseurs","description":"Spécialiste en crépissage et isolation thermique extérieure à Oupeye.","url":"https://revelys.be/entreprises/crepi-liege-crepisseurs","sameAs":["https://www.crepisseurs.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue de la Cale Sèche 38","postalCode":"4684","addressLocality":"Oupeye","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Oupeye"},"keywords":["façade abimée","pertes thermiques","murs modernes","devis gratuit","patron sur chantier","Crépissage de façades","Isolation thermique extérieure","Cimentage mural","Finitions extérieures","Rénovation de murs"],"image":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-crepisseurs/logo.webp","logo":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-crepisseurs/logo.webp"}'::jsonb, '2026-02-19T18:56:31.851Z', TRUE, 5, 'c7846f0a515034b72db1bc26a0943662b10dba883af377149bca19ff37562dfe', 'Chez Crépisseurs, chaque façade est traitée comme une œuvre d''art. Leur expertise unique en crépissage et isolation combine esthétique contemporaine et performance énergétique, offrant aux clients un résultat qui allie beauté et durabilité.', NULL, 'Joie', '[{"name":"Préparation minutieuse des supports","description":"Avant toute application, les murs sont soigneusement nettoyés et préparés pour garantir une adhérence parfaite du crépis ou de l''isolation. Cette étape cruciale évite les défauts ultérieurs.","frequency":"tous les chantiers","impact":"qualité durable","proof":null},{"name":"Application en couches successives","description":"Le crépis est appliqué par couches fines et régulières, avec un temps de séchage contrôlé entre chaque étape. Cette méthode assure une finition lisse et homogène sans fissures.","frequency":"tous les chantiers","impact":"résultat professionnel","proof":null},{"name":"Contrôle final par le patron","description":"Le gérant inspecte personnellement chaque chantier avant livraison pour vérifier la qualité des finitions et l''alignement avec les attentes du client.","frequency":"tous les chantiers","impact":"satisfaction garantie","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-crepisseurs/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-crepisseurs/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-crepisseurs/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-crepisseurs/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-crepisseurs/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-crepisseurs/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T18:57:20.194Z","proof":"https://www.crepisseurs.be/"},{"label":"Seed: city hint","date":"2026-02-19T18:57:20.194Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T18:57:20.194Z","proof":"Façadier"},{"label":"Seed: search keyword","date":"2026-02-19T18:57:20.194Z","proof":"crépi"},{"label":"Extracted: city","date":"2026-02-19T18:57:20.194Z","proof":"Herstal"},{"label":"BCE: mod97 valid","date":"2026-02-19T18:57:20.194Z","proof":"0691973254"},{"label":"Email extracted","date":"2026-02-19T18:57:20.194Z","proof":"info@crepisseurs.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T18:57:20.194Z","proof":"confidence=90/100"},{"label":"Phone extracted","date":"2026-02-19T18:57:20.194Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T18:57:20.194Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-crepisseurs/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0691973254', 'Actif', 'BCE_CSV', '2026-02-19T18:53:53.064Z', '2026-02-19T18:53:53.064Z', 'CREPISSEURS', '2018-03-13', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T18:57:20.194Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0691973254'
    AND c_existing.slug <> 'crepi-liege-crepisseurs'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'crepi-liege-rg-crepis', 'BE-WAL', 'RG Crépis', 'Façadier', ARRAY['fissures façade', 'humidité mur', 'isolation thermique', 'ravalement complet', 'finition crépi', 'nettoyage façade', 'protection hydrofuge', '15 ans d''expérience', 'crépi de façade', 'rénovation de façade', 'isolation thermique des murs', 'plafonnage et cimentage']::text[], ARRAY['Crépi de façade', 'Rénovation de façade', 'Isolation thermique des murs', 'Plafonnage et cimentage']::text[], 'sur_devis', NULL, NULL, TRUE, 'Theux', '4910', 'BE', 'Rue de la Résistance 15', 'https://rgcrepis.be/', NULL, NULL, NULL, NULL, 'info@rgcrepis.be', NULL, '+32495939293', '+32495939293', NULL, NULL, NULL, 'Theux', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de crépi de façade?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Quelles communes sont couvertes en priorité?","answer":"Les interventions se déroulent à Theux et dans les communes avoisinantes, selon la nature de la demande."}]'::jsonb, 'RG Crépis est un spécialiste du crépi et de la rénovation de façades à Theux. Depuis plus de 15 ans, l''entreprise allie expertise technique et approche sur mesure pour protéger, isoler et embellir les murs extérieurs des particuliers et professionnels. Chaque projet est traité avec précision, des diagnostics initiaux aux finitions soignées.', 'Crépi à Theux | RG Crépis', 'Diagnostic complet avant chaque rénovation pour éviter les réparations superficielles. Spécialiste en isolation thermique et ravalement de façade à Theux.', 'RG Crépis - Crépi et rénovation de façade à Theux', 'Entreprise spécialisée dans le crépi, la rénovation de façade et l''isolation thermique des murs. Diagnostic complet avant chaque intervention pour garantir un résultat durable.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"RG Crépis","description":"Spécialiste en crépi, rénovation de façade et isolation thermique à Theux.","url":"https://revelys.be/entreprises/crepi-liege-rg-crepis","sameAs":["https://rgcrepis.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue de la Résistance 15","postalCode":"4910","addressLocality":"Theux","addressCountry":"BE"},"areaServed":"Theux","keywords":["fissures façade","humidité mur","isolation thermique","ravalement complet","finition crépi","nettoyage façade","protection hydrofuge","15 ans d''expérience","crépi de façade","rénovation de façade","isolation thermique des murs","plafonnage et cimentage"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-rg-crepis/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-rg-crepis/cover.webp"]}'::jsonb, '2026-02-19T19:00:31.484Z', TRUE, 5, '1d9d26ffe7b4bdaa5b8d20718f01fe941084952a48a9dd43c3bb01598f749c9b', 'Chez RG Crépis, on ne se contente pas de poser du crépi ou de ravaler une façade. On analyse chaque mur pour proposer des solutions durables qui allient esthétique et performance technique.', NULL, 'Joie', '[{"name":"Diagnostic complet avant intervention","description":"Avant toute rénovation, l''équipe examine minutieusement le support, l''orientation et les zones sensibles de la façade pour éviter les réparations superficielles. Ce diagnostic permet d''établir un plan d''action précis.","frequency":"toujours","impact":"évite les mauvaises surprises et garantit une intervention adaptée","proof":null},{"name":"Préparation minutieuse des surfaces","description":"Rebouchage des fissures, reprise d''enduits et nettoyage adapté (démoussage, sablage léger) sont systématiquement réalisés pour assurer un support sain avant toute application de revêtement.","frequency":"toujours","impact":"prolonge la durée de vie des finitions","proof":null},{"name":"Application de protection hydrofuge","description":"Après rénovation, une couche imperméabilisante est appliquée pour protéger les murs contre l''humidité et les intempéries, tout en préservant leur respirabilité.","frequency":"souvent","impact":"renforce la durabilité de la façade","proof":null},{"name":"Conseil personnalisé sur les finitions","description":"L''équipe guide le client dans le choix des textures et couleurs pour harmoniser la façade avec l''existant (menuiseries, seuils) tout en respectant son style architectural.","frequency":"toujours","impact":"garantit un résultat esthétique cohérent","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-rg-crepis/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-rg-crepis/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-rg-crepis/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-rg-crepis/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-rg-crepis/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-rg-crepis/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T19:01:19.222Z","proof":"https://rgcrepis.be/"},{"label":"Seed: city hint","date":"2026-02-19T19:01:19.222Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T19:01:19.222Z","proof":"Façadier"},{"label":"Seed: search keyword","date":"2026-02-19T19:01:19.222Z","proof":"crépi"},{"label":"Extracted: city","date":"2026-02-19T19:01:19.222Z","proof":"Theux"},{"label":"BCE: mod97 valid","date":"2026-02-19T19:01:19.222Z","proof":"0791653424"},{"label":"Email extracted","date":"2026-02-19T19:01:19.222Z","proof":"info@rgcrepis.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T19:01:19.222Z","proof":"confidence=80/100"},{"label":"Phone extracted","date":"2026-02-19T19:01:19.222Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T19:01:19.222Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/crepi-liege-rg-crepis/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0791653424', 'Actif', 'BCE_CSV', '2026-02-19T18:57:26.746Z', '2026-02-19T18:57:26.746Z', 'Garcia Gil, Raphaël', '2022-09-30', 'Personne physique', NULL, 'Situation normale', '2026-02-11', '2026-02-19T19:01:19.222Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0791653424'
    AND c_existing.slug <> 'crepi-liege-rg-crepis'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'isolation-liege-qu4tre', 'BE-WAL', 'QU4TRE', 'Isolation', ARRAY['rénovation énergétique', 'peb a', 'subventions wallonnes', 'maison individuelle', 'ventilation contrôlée', 'emotional need label', 'why company', 'qu4tre se distingue par son accompagnement personnalisé tout au long des projets d''isolation, de l''audit technique à la réalisation finale. l''entreprise met un point d''honneur à proposer les meilleures techniques en fonction des spécificités de chaque logement.', 'rituals', 'audit complet avant travaux', 'choix des matériaux adaptés aux conditions climatiques locales', 'installation de systèmes de ventilation contrôlée']::text[], ARRAY['Isolation des murs', 'Isolation des toits', 'Isolation des sols', 'Isolation acoustique', 'Audit énergétique']::text[], NULL, NULL, NULL, NULL, 'Liège', '4000', 'BE', 'Rue du Laveu 58', 'https://www.qu4tre.be/', 'https://www.facebook.com/qu4treliegemedia', 'https://www.instagram.com/qu4treliegemedia/', 'https://be.linkedin.com/company/qu4treliegemedia', 'https://www.tiktok.com/@qu4treliegemedia', 'audiovisueljp.marziale@qu4tre.be', NULL, '+3242549999', '+3242549999', 'Ardent Group', 'CEO', NULL, 'Liège', ARRAY['français']::text[], '24h/24 - 7j/7', NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services d''isolation des murs?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Intervenez-vous au-delà de la zone principale?","answer":"La zone principale est Liège. Les interventions peuvent s''étendre aux communes limitrophes selon le besoin."},{"question":"Comment contrôlez-vous la qualité de votre travail?","answer":"Des vérifications sont effectuées à chaque étape de l''intervention, avec un contrôle final avant la clôture du chantier."},{"question":"Gérez-vous les interventions urgentes?","answer":"Oui, l''organisation permet de répondre aux demandes urgentes (24h/24 - 7j/7)."},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"QU4TRE se distingue par son accompagnement personnalisé tout au long des projets d''isolation, de l''audit technique à la réalisation finale. L''entreprise met un point d''honneur à proposer les meilleures techniques en fonction des spécificités de chaque logement."}]'::jsonb, 'QU4TRE se spécialise dans l''isolation thermique et acoustique pour les habitations à Liège. L''entreprise accompagne les propriétaires dans leurs projets de rénovation énergétique, en proposant des solutions adaptées aux spécificités locales. Son approche combine expertise technique et respect des normes environnementales.', 'Isolation à Liège | QU4TRE', 'Audit énergétique complet pour optimiser votre isolation. Spécialistes des matériaux adaptés au climat liégeois. Accompagnement personnalisé de l''audit à la réalisation.', 'QU4TRE - Isolation à Liège', 'Entreprise spécialisée en isolation thermique et acoustique à Liège. Audit complet, choix de matériaux performants et installation de ventilation contrôlée pour une rénovation énergétique optimale.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"QU4TRE","description":"Isolation thermique et acoustique à Liège avec accompagnement personnalisé.","url":"https://revelys.be/entreprises/isolation-liege-qu4tre","sameAs":["https://www.qu4tre.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue du Laveu 58","postalCode":"4000","addressLocality":"Liège","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Liège"},"keywords":["rénovation énergétique","peb a","subventions wallonnes","maison individuelle","ventilation contrôlée","Isolation des murs","Isolation des toits","Isolation des sols","Isolation acoustique","Audit énergétique"],"image":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-qu4tre/logo.webp"}'::jsonb, '2026-02-19T19:04:40.194Z', TRUE, 5, '4f1aea4194550e65f9a6714e0a54d412c91d196fd3ad92f90bea1e55b9285866', 'QU4TRE se distingue par son accompagnement personnalisé tout au long des projets d''isolation, de l''audit technique à la réalisation finale. L''entreprise met un point d''honneur à proposer les meilleures techniques en fonction des spécificités de chaque logement.', NULL, 'Durabilité', '[{"name":"Audit complet avant travaux","description":"Analyse détaillée de l''enveloppe du bâtiment pour identifier les points faibles et proposer des solutions sur mesure.","frequency":"Selon le besoin","impact":"Améliore la fiabilité et la qualité d''exécution.","proof":null},{"name":"Choix des matériaux adaptés","description":"Sélection de matériaux performants en fonction du climat liégeois et des spécificités architecturales.","frequency":"Selon le besoin","impact":"Améliore la fiabilité et la qualité d''exécution.","proof":null},{"name":"Installation ventilation contrôlée","description":"Mise en place de systèmes garantissant une qualité d''air optimale après isolation.","frequency":"Selon le besoin","impact":"Améliore la fiabilité et la qualité d''exécution.","proof":null}]'::jsonb, 80, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-qu4tre/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-qu4tre/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-qu4tre/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-qu4tre/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-qu4tre/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-qu4tre/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T19:05:21.568Z","proof":"https://www.qu4tre.be/infos/amenagement-du-territoire/isolation-groupee-de-50-maisons-liege/2013471"},{"label":"Seed: city hint","date":"2026-02-19T19:05:21.568Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T19:05:21.568Z","proof":"Isolation"},{"label":"Seed: search keyword","date":"2026-02-19T19:05:21.568Z","proof":"Isolation"},{"label":"Extracted: city","date":"2026-02-19T19:05:21.568Z","proof":"Liège"},{"label":"BCE: mod97 valid","date":"2026-02-19T19:05:21.568Z","proof":"0405931241"},{"label":"Email extracted","date":"2026-02-19T19:05:21.568Z","proof":"audiovisueljp.marziale@qu4tre.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T19:05:21.568Z","proof":"confidence=70/100"},{"label":"Phone extracted","date":"2026-02-19T19:05:21.568Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T19:05:21.568Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-qu4tre/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0405931241', 'Actif', 'BCE_CSV', '2026-02-19T19:01:35.000Z', '2026-02-19T19:01:35.000Z', 'Qu4tre Liège Média', '1947-03-09', 'Personne morale', 'Association sans but lucratif', 'Situation normale', '2026-02-11', '2026-02-19T19:05:21.568Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0405931241'
    AND c_existing.slug <> 'isolation-liege-qu4tre'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'isolation-liege-aktus-cci', 'BE-WAL', 'AKTus – CCI', 'Isolation', ARRAY['isolation maison', 'réduction facture énergie', 'confort thermique', 'subventions rénovation', 'ventilation performante', 'liège', 'maison ancienne', 'performance peb', 'travaux groupés', 'isolation thermique', 'isolation acoustique', 'rénovation énergétique']::text[], ARRAY['Isolation thermique', 'Isolation acoustique', 'Rénovation énergétique', 'Audit énergétique', 'Installation de systèmes de ventilation']::text[], NULL, NULL, NULL, NULL, 'Liège', '4000', 'BE', 'Rue des Guillemins 139', 'https://aktus-cci.be/', 'https://www.facebook.com/akt.ccilvn/', 'https://www.instagram.com/akt_cci_lvn/', 'https://www.linkedin.com/company/akt-cci-lvn', NULL, 'fvv@akt-ccilvn.be', NULL, '+32478662630', '+32478662630', 'Général de CAR Avenue', 'Fondateur', NULL, 'Liège', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services d''isolation thermique?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Quelles communes sont couvertes en priorité?","answer":"Les interventions se déroulent à Liège et dans les communes avoisinantes, selon la nature de la demande."},{"question":"Quelles garanties offrez-vous sur vos interventions?","answer":"La qualité repose sur une méthode structurée, des vérifications en cours d''intervention et un contrôle final avant la remise au client."},{"question":"Quelle est votre valeur ajoutee locale?","answer":"AKTus – CCI se distingue par son expertise locale et sa connaissance des dispositifs d''aide à la rénovation énergétique, comme RENO+Liège. L''entreprise propose un accompagnement complet, du diagnostic aux travaux finaux."}]'::jsonb, 'AKTus – CCI se spécialise dans l''isolation thermique et acoustique pour les bâtiments résidentiels et commerciaux à Liège. L''entreprise accompagne les propriétaires dans des projets d''efficacité énergétique, avec une approche adaptée aux normes locales. AKTus – CCI s''engage à réduire la consommation d''énergie tout en améliorant le confort des habitations.', 'Isolation à Liège | AKTus – CCI', 'Réduction des factures énergétiques grâce à un audit thermique précis. Expertise locale avec RENO+Liège pour maximiser les subventions rénovation.', 'AKTus – CCI : isolation et rénovation énergétique à Liège', 'Entreprise spécialisée en isolation thermique et acoustique, avec accompagnement complet des travaux groupés et conseils sur les primes régionales.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"AKTus – CCI","description":"Isolation thermique et acoustique à Liège avec audit énergétique et accompagnement pour subventions rénovation.","url":"https://revelys.be/entreprises/isolation-liege-aktus-cci","sameAs":["https://aktus-cci.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue des Guillemins 139","postalCode":"4000","addressLocality":"Liège","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Liège"},"keywords":["isolation maison","réduction facture énergie","confort thermique","subventions rénovation","ventilation performante","liège","maison ancienne","performance peb","travaux groupés","isolation thermique","isolation acoustique","rénovation énergétique"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-aktus-cci/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-aktus-cci/cover.webp"],"hasOfferCatalog":{"@type":"OfferCatalog","name":"Services d''isolation et rénovation énergétique","itemListElement":[{"@type":"Offer","name":"Isolation thermique","url":"https://aktus-cci.be/"},{"@type":"Offer","name":"Isolation acoustique","url":"https://aktus-cci.be/"},{"@type":"Offer","name":"Rénovation énergétique","url":"https://aktus-cci.be/"}]}}'::jsonb, '2026-02-19T19:09:05.749Z', TRUE, 5, 'bc575876a3e5227e542f619d1ce67cb1ae0699b725ee9d335ce3983b7bbf7a7b', 'AKTus – CCI se distingue par son expertise locale et sa connaissance des dispositifs d''aide à la rénovation énergétique, comme RENO+Liège. L''entreprise propose un accompagnement complet, du diagnostic aux travaux finaux.', NULL, 'Joie', '[{"name":"Audit thermique pré-intervention","description":"Utilisation de caméras thermiques pour identifier les points faibles d''isolation avant toute intervention.","frequency":"toujours","impact":"optimise l''efficacité des travaux et réduit les coûts inutiles","proof":null},{"name":"Test d''étanchéité à l''air","description":"Vérification de la qualité de l''isolation après pose, avec un appareil mesurant les fuites potentielles.","frequency":"toujours","impact":"garantit une isolation optimale et conforme aux normes","proof":null},{"name":"Conseil sur les primes régionales","description":"Explication détaillée des aides financières disponibles pour les travaux d''isolation à Liège.","frequency":"toujours","impact":"permet aux clients de bénéficier du meilleur financement possible","proof":null}]'::jsonb, 96, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-aktus-cci/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-aktus-cci/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-aktus-cci/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-aktus-cci/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-aktus-cci/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-aktus-cci/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T19:10:06.969Z","proof":"https://aktus-cci.be/2026/02/12/la-ville-de-liege-lance-lisolation-groupee-de-50-maisons/"},{"label":"Seed: city hint","date":"2026-02-19T19:10:06.969Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T19:10:06.969Z","proof":"Isolation"},{"label":"Seed: search keyword","date":"2026-02-19T19:10:06.969Z","proof":"Isolation"},{"label":"Extracted: city","date":"2026-02-19T19:10:06.969Z","proof":""},{"label":"BCE: mod97 valid","date":"2026-02-19T19:10:06.969Z","proof":"1018642530"},{"label":"Email extracted","date":"2026-02-19T19:10:06.969Z","proof":"fvv@akt-ccilvn.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T19:10:06.969Z","proof":"confidence=70/100"},{"label":"Phone extracted","date":"2026-02-19T19:10:06.969Z","proof":"source=text"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T19:10:06.969Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-aktus-cci/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE1018642530', 'Actif', 'BCE_CSV', '2026-02-19T19:05:34.261Z', '2026-02-19T19:05:34.261Z', 'NOLI', '2025-01-13', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T19:10:06.969Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE1018642530'
    AND c_existing.slug <> 'isolation-liege-aktus-cci'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'isolation-liege-superplastic', 'BE-WAL', 'Superplastic', 'Isolation', ARRAY['isolation', 'liège', 'thermique', 'acoustique', 'bricolage', 'matériau écologique', 'isolation thermique et acoustique pour bâtiments']::text[], ARRAY['Isolation thermique et acoustique pour bâtiments']::text[], 'sur_devis', NULL, NULL, NULL, 'Chaudfontaine', '4050', 'BE', 'Rue de la Béôle 55', 'https://www.superplastic.be/', NULL, NULL, 'https://www.linkedin.com/company/superplasticsa/posts/?feedView=all', NULL, 'info@superplastic.be', NULL, '+3242529870', '+3242529870', NULL, NULL, NULL, 'Chaudfontaine', ARRAY['français']::text[], 'Du lundi au vendredi', NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services d''isolation thermique et acoustique pour bâtiments?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Quelles communes sont couvertes en priorité?","answer":"Les interventions se déroulent à Chaudfontaine et dans les communes avoisinantes, selon la nature de la demande."},{"question":"Quelles garanties offrez-vous sur vos interventions?","answer":"La qualité repose sur une méthode structurée, des vérifications en cours d''intervention et un contrôle final avant la remise au client."},{"question":"Quelle est votre valeur ajoutee locale?","answer":"Ce qui les distingue localement: Spécialiste des solutions d''isolation durables pour particuliers et professionnels"}]'::jsonb, 'Superplastic accompagne les clients à Chaudfontaine (province de Liege) pour des prestations de isolation et traitement de l''humidité. Son périmètre inclut l''isolation thermique et acoustique pour bâtiments, avec un accent sur la clarté des recommandations et la qualité d''exécution. L''approche privilégie un diagnostic précis, puis une intervention structurée selon le contexte du chantier.', 'Isolation à Chaudfontaine | Superplastic', 'Solutions d''isolation thermique et acoustique pour bâtiments en Liège. Matériaux écologiques avec une durée de vie moyenne de 30 ans.', 'Superplastic - Isolation à Chaudfontaine', 'Spécialiste des solutions d''isolation durables pour particuliers et professionnels à Chaudfontaine, utilisant des matériaux écologiques.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Superplastic","description":"Spécialiste des solutions d''isolation durables pour particuliers et professionnels à Chaudfontaine.","url":"https://revelys.be/entreprises/isolation-liege-superplastic","sameAs":["https://www.superplastic.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue de la Béôle 55","postalCode":"4050","addressLocality":"Chaudfontaine","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Chaudfontaine"},"keywords":["isolation","liège","thermique","acoustique","bricolage","matériau écologique","isolation thermique et acoustique pour bâtiments"],"image":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-superplastic/logo.webp","logo":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-superplastic/logo.webp"}'::jsonb, '2026-02-19T19:16:49.819Z', TRUE, 5, '02d222728c22a172bf154aacc95b45efd6128e684c5e57fc254aac13df4161fa', 'Spécialiste des solutions d''isolation durables pour particuliers et professionnels', NULL, 'Durabilité', '[{"name":"Installation murale","description":"Idéal pour les murs intérieurs, fixation simple avec agrafes ou colle spécifique","frequency":"Une fois lors de l''installation","impact":"Amélioration immédiate du confort thermique et acoustique","proof":null},{"name":"Entretien","description":"Nettoyage occasionnel avec aspirateur ou brosse douce","frequency":"1 à 2 fois par an","impact":"Conservation de l''efficacité d''isolation sur le long terme","proof":null},{"name":"Remplacement","description":"Durée de vie moyenne de 30 ans, remplacement possible en cas de détérioration","frequency":"Tous les 25-30 ans","impact":"Maintenir des performances optimales d''isolation","proof":null}]'::jsonb, 35, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-superplastic/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-superplastic/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-superplastic/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-superplastic/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-superplastic/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-superplastic/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T19:17:31.989Z","proof":"https://www.superplastic.be/fr/produit/noma-nature-isolant-en-liege-4mm-0,5x5m/nomana745z"},{"label":"Seed: city hint","date":"2026-02-19T19:17:31.989Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T19:17:31.989Z","proof":"Isolation"},{"label":"Seed: search keyword","date":"2026-02-19T19:17:31.989Z","proof":"Isolation"},{"label":"Extracted: city","date":"2026-02-19T19:17:31.989Z","proof":"Liège"},{"label":"BCE: mod97 valid","date":"2026-02-19T19:17:31.989Z","proof":"0450495714"},{"label":"Email extracted","date":"2026-02-19T19:17:31.989Z","proof":"info@superplastic.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T19:17:31.989Z","proof":"confidence=92/100"},{"label":"Phone extracted","date":"2026-02-19T19:17:31.989Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T19:17:31.989Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/isolation-liege-superplastic/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0450495714', 'Actif', 'BCE_CSV', '2026-02-19T19:10:18.043Z', '2026-02-19T19:10:18.043Z', 'SUPERPLASTIC', '1993-07-09', 'Personne morale', 'Société anonyme', 'Situation normale', '2026-02-11', '2026-02-19T19:17:31.989Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0450495714'
    AND c_existing.slug <> 'isolation-liege-superplastic'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'chssis-liege-chassis-liege', 'BE-WAL', 'Châssis Liège', 'Chssis', ARRAY['menuiserie liège', 'châssis sur mesure', 'portes et fenêtres', 'volets roulants', 'pergola alu', 'clôture et portail', 'moustiquaire', 'store banne solaire', 'pose de châssis en alu', 'pose de châssis en pvc', 'pose de châssis en bois', 'pose de portes de garage']::text[], ARRAY['Pose de châssis en alu', 'Pose de châssis en pvc', 'Pose de châssis en bois', 'Pose de portes de garage', 'Pose de volets']::text[], 'sur_devis', NULL, NULL, TRUE, 'Liège', '4030', 'BE', 'Rue du Bassin 59B', 'https://chassisliege.com/', 'https://www.facebook.com/chassisliege', NULL, NULL, NULL, 'chassis.liege@gmail.com', NULL, '+3242658923', '+3242658923', NULL, NULL, NULL, 'Liège', ARRAY['français']::text[], NULL, '[{"day":"lundi","open":"08:30","close":"17:30","isClosed":false},{"day":"mardi","open":"08:30","close":"17:30","isClosed":false},{"day":"mercredi","open":"08:30","close":"17:30","isClosed":false},{"day":"jeudi","open":"08:30","close":"17:30","isClosed":false},{"day":"vendredi","open":"08:30","close":"12:30","isClosed":false}]'::jsonb, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de pose de châssis en alu?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Intervenez-vous au-delà de la zone principale?","answer":"La zone principale est Liège. Les interventions peuvent s''étendre aux communes limitrophes selon le besoin."},{"question":"Comment contrôlez-vous la qualité de votre travail?","answer":"Des vérifications sont effectuées à chaque étape de l''intervention, avec un contrôle final avant la clôture du chantier."},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"Châssis Liège se distingue par son expertise locale depuis près de 10 ans et sa capacité à proposer des solutions adaptées aux besoins spécifiques de chaque client, avec un suivi personnalisé."}]'::jsonb, 'Châssis Liège est votre expert en menuiserie extérieure et intérieure à Liège depuis 2014. Spécialisée dans la pose de portes, fenêtres, volets et pergolas en alu, PVC ou bois, l''entreprise propose des solutions sur mesure pour particuliers et professionnels. Chaque projet bénéficie d''une finition soignée et d''un suivi rigoureux.', 'Châssis sur mesure à Liège | Châssis Liège', 'Pose de châssis en alu, PVC ou bois avec test d''étanchéité systématique. Expertise locale depuis 10 ans pour des solutions adaptées aux besoins spécifiques.', 'Châssis et portes sur mesure à Liège', 'Spécialiste en menuiserie extérieure : châssis, volets roulants, pergolas et portails. Mesures précises et nettoyage post-intervention inclus.', '{"@context":"https://schema.org","@type":"HomeAndConstructionBusiness","name":"Châssis Liège","description":"Pose de châssis en alu, PVC ou bois à Liège avec test d''étanchéité systématique.","url":"https://revelys.be/entreprises/chssis-liege-chassis-liege","sameAs":["https://chassisliege.com/"],"address":{"@type":"PostalAddress","streetAddress":"Rue du Bassin 59B","postalCode":"4030","addressLocality":"Liège","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Liège"},"keywords":["menuiserie liège","châssis sur mesure","portes et fenêtres","volets roulants","pergola alu","clôture et portail","moustiquaire","store banne solaire","pose de châssis en alu","pose de châssis en pvc","pose de châssis en bois","pose de portes de garage"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-liege/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-liege/cover.webp"]}'::jsonb, '2026-02-19T19:40:49.538Z', TRUE, 5, '9af19109074bddc80dca5769a209a8dc7533502387773fdf852264800cd742ee', 'Châssis Liège se distingue par son expertise locale depuis près de 10 ans et sa capacité à proposer des solutions adaptées aux besoins spécifiques de chaque client, avec un suivi personnalisé.', NULL, 'Sérénité', '[{"name":"Mesure précise avant commande","description":"Chaque projet commence par une prise de mesure minutieuse sur site pour garantir l''adéquation parfaite entre le châssis et l''ouverture existante.","frequency":"toujours","impact":"qualite","proof":null},{"name":"Test d''étanchéité systématique","description":"Après pose, chaque châssis est soumis à un test de pression pour vérifier son étanchéité et sa résistance aux intempéries.","frequency":"toujours","impact":"securite","proof":null},{"name":"Nettoyage post-intervention","description":"L''équipe procède systématiquement au nettoyage des lieux après chaque intervention pour laisser les espaces impeccables.","frequency":"toujours","impact":"satisfaction client","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-liege/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-liege/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-liege/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-liege/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-liege/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-liege/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T19:41:43.323Z","proof":"https://chassisliege.com/"},{"label":"Seed: city hint","date":"2026-02-19T19:41:43.323Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T19:41:43.323Z","proof":"Chssis"},{"label":"Seed: search keyword","date":"2026-02-19T19:41:43.323Z","proof":"Chssis"},{"label":"Extracted: city","date":"2026-02-19T19:41:43.323Z","proof":"Liège"},{"label":"BCE: mod97 valid","date":"2026-02-19T19:41:43.323Z","proof":"0729787616"},{"label":"Email extracted","date":"2026-02-19T19:41:43.323Z","proof":"chassis.liege@gmail.com"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T19:41:43.323Z","proof":"confidence=80/100"},{"label":"Phone extracted","date":"2026-02-19T19:41:43.323Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T19:41:43.323Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-liege/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0729787616', 'Actif', 'BCE_CSV', '2026-02-19T19:36:50.056Z', '2026-02-19T19:36:50.056Z', 'Châssis Liège', '2019-07-04', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T19:41:43.323Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0729787616'
    AND c_existing.slug <> 'chssis-liege-chassis-liege'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'chssis-liege-leschassisnoel-be', 'BE-WAL', 'leschassisnoel be', 'Chssis', ARRAY['fenêtres pvc liège', 'châssis alu fléron', 'volets motorisés', 'portes d''entrée sur mesure', 'isolation thermique renforcée', 'devis gratuit', 'fabrication belge', 'installation de châssis pvc', 'installation de châssis aluminium', 'pose de volets roulants', 'installation de portes d''entrée', 'remplacement de fenêtres']::text[], ARRAY['Installation de châssis pvc', 'Installation de châssis aluminium', 'Pose de volets roulants', 'Installation de portes d''entrée', 'Remplacement de fenêtres', 'Pose de moustiquaires']::text[], 'sur_devis', NULL, NULL, TRUE, 'Fléron', '4621', 'BE', 'Rue Arsène Falla 42', 'https://leschassisnoel.be/', 'https://www.facebook.com/leschassisnoel', NULL, NULL, NULL, 'info@leschassisnoel.be', NULL, '+3243693470', '+3243693470', NULL, NULL, NULL, 'Fléron', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services d''installation de châssis pvc?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Intervenez-vous au-delà de la zone principale?","answer":"La zone principale est Fléron. Les interventions peuvent s''étendre aux communes limitrophes selon le besoin."},{"question":"Comment contrôlez-vous la qualité de votre travail?","answer":"Des vérifications sont effectuées à chaque étape de l''intervention, avec un contrôle final avant la clôture du chantier."},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"Châssis Noël se distingue par son expertise en solutions haut de gamme et son showroom à Fléron, permettant aux clients de visualiser concrètement les options disponibles avant achat."}]'::jsonb, 'Sur Fléron (province de Liege), leschassisnoel be prend en charge des interventions de installation de châssis pvc pour particuliers et professionnels. Les prestations les plus courantes concernent l''installation de châssis pvc, l''installation de châssis aluminium, la pose de volets roulants et l''installation de portes d''entrée, avec un suivi méthodique pendant chaque étape.', 'Installation châssis à Fléron | Leschassisnoel be', 'Mesures millimétrées et test d''étanchéité pour des châssis PVC/alu performants. Showroom à Fléron pour visualiser les options avant achat.', 'Châssis sur mesure à Fléron - Leschassisnoel be', 'Installation de fenêtres, portes et volets motorisés avec garantie d''étanchéité. Démonstration des commandes incluse.', '{"@context":"https://schema.org","@type":"HomeAndConstructionBusiness","name":"Leschassisnoel be","description":"Installation de châssis PVC/alu, portes et volets motorisés à Fléron avec test d''étanchéité.","url":"https://revelys.be/entreprises/chssis-liege-leschassisnoel-be","sameAs":["https://leschassisnoel.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue Arsène Falla 42","postalCode":"4621","addressLocality":"Fléron","addressCountry":"BE"},"areaServed":"Fléron, Liège","keywords":["fenêtres pvc liège","châssis alu fléron","volets motorisés","portes d''entrée sur mesure","isolation thermique renforcée","devis gratuit","fabrication belge","installation de châssis pvc","installation de châssis aluminium","pose de volets roulants","installation de portes d''entrée","remplacement de fenêtres"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-leschassisnoel-be/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-leschassisnoel-be/cover.webp"],"logo":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-leschassisnoel-be/logo.webp","hasOfferCatalog":{"@type":"OfferCatalog","name":"Services d''installation de châssis et portes"}}'::jsonb, '2026-02-19T19:50:07.934Z', TRUE, 5, '7758a42f7a6099f2f8a009044df5dd112a688051f905b42518dcdcb3bc83f1ed', 'Châssis Noël se distingue par son expertise en solutions haut de gamme et son showroom à Fléron, permettant aux clients de visualiser concrètement les options disponibles avant achat.', NULL, 'Sérénité', '[{"name":"Mesure millimétrée sur site","description":"Prise des cotes avec un mètre laser pour garantir une adaptation parfaite du châssis ou de la porte d''entrée à l''ouverture existante.","frequency":"100%","impact":"Garantit une installation sans ajustement ultérieur et évite les ponts thermiques.","proof":null},{"name":"Test d''étanchéité après pose","description":"Vérification systématique de l''absence de fuites d''air avec un test à la fumée, particulièrement sur les châssis PVC.","frequency":"100%","impact":"Assure une performance énergétique optimale conforme aux normes en vigueur.","proof":null},{"name":"Démonstration des commandes","description":"Explication détaillée du fonctionnement des volets motorisés ou des portes de garage, y compris la gestion des télécommandes.","frequency":"100%","impact":"Permet aux clients une utilisation autonome dès le premier jour.","proof":null}]'::jsonb, 41, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-leschassisnoel-be/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-leschassisnoel-be/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-leschassisnoel-be/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-leschassisnoel-be/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-leschassisnoel-be/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-leschassisnoel-be/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T19:51:08.332Z","proof":"https://leschassisnoel.be/"},{"label":"Seed: city hint","date":"2026-02-19T19:51:08.332Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T19:51:08.332Z","proof":"Chssis"},{"label":"Seed: search keyword","date":"2026-02-19T19:51:08.332Z","proof":"Chssis"},{"label":"Extracted: city","date":"2026-02-19T19:51:08.332Z","proof":"Fléron"},{"label":"BCE: mod97 valid","date":"2026-02-19T19:51:08.332Z","proof":"0825606194"},{"label":"Email extracted","date":"2026-02-19T19:51:08.332Z","proof":"info@leschassisnoel.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T19:51:08.332Z","proof":"confidence=95/100"},{"label":"Phone extracted","date":"2026-02-19T19:51:08.332Z","proof":"source=text"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T19:51:08.332Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-leschassisnoel-be/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0825606194', 'Actif', 'BCE_CSV', '2026-02-19T19:42:21.356Z', '2026-02-19T19:42:21.356Z', 'DANIEL NOEL', '2010-05-04', 'Personne morale', 'Société anonyme', 'Situation normale', '2026-02-11', '2026-02-19T19:51:08.332Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0825606194'
    AND c_existing.slug <> 'chssis-liege-leschassisnoel-be'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'chssis-liege-labo-chassis', 'BE-WAL', 'Labo Châssis', 'Chssis', ARRAY['châssis sur mesure', 'isolation thermique', 'menuiserie extérieure', 'porte blindée', 'volet motorisé somfy', 'rénovation façade', 'showroom liège', 'devis gratuit', 'marques aluplast schüco', 'installation de châssis pvc ou aluminium', 'pose de portes d''entrée sécurisées', 'installation de volets roulants motorisés']::text[], ARRAY['Installation de châssis pvc ou aluminium', 'Pose de portes d''entrée sécurisées', 'Installation de volets roulants motorisés', 'Remplacement complet de menuiseries extérieures', 'Pose de portes de garage isolées']::text[], 'sur_devis', NULL, NULL, TRUE, 'Berloz', '4257', 'BE', 'Rue de Hasselbrouck 96D102', 'https://www.labochassis.be/', 'https://www.facebook.com/people/LABO-Ch%C3%A2ssis/100091827986787/', NULL, NULL, NULL, 'labochassis@gmail.com', NULL, '+32470587150', '+32470587150', 'Boris Lacroix', 'Fondateur', NULL, 'Berloz', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services d''installation de châssis pvc ou aluminium?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Intervenez-vous au-delà de la zone principale?","answer":"La zone principale est Berloz. Les interventions peuvent s''étendre aux communes limitrophes selon le besoin."}]'::jsonb, 'Labo Châssis, entreprise spécialisée à Berloz, conçoit et installe des menuiseries extérieures sur mesure : châssis PVC ou aluminium, portes d''entrée sécurisées et volets motorisés. Chaque projet est suivi personnellement par Boris Lacroix pour garantir qualité et durabilité. L''entreprise travaille avec des marques reconnues comme Aluplast, Schüco et Aliplast.', 'Installation châssis à Berloz | Labo Châssis', 'Châssis PVC/alu sur mesure avec test d''étanchéité garanti. Expertise locale en isolation thermique et menuiserie extérieure pour particuliers et pros.', 'Labo Châssis - Installation de châssis à Berloz', 'Spécialiste en pose de châssis PVC ou aluminium, portes sécurisées et volets motorisés. Mesures précises sur site et nettoyage post-installation inclus.', '{"@context":"https://schema.org","@type":"HomeAndConstructionBusiness","name":"Labo Châssis","description":"Installateur de châssis PVC/alu, portes blindées et volets motorisés à Berloz.","url":"https://revelys.be/entreprises/chssis-liege-labo-chassis","sameAs":["https://www.labochassis.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue de Hasselbrouck 96D102","postalCode":"4257","addressLocality":"Berloz","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Berloz"},"keywords":["châssis sur mesure","isolation thermique","menuiserie extérieure","porte blindée","volet motorisé somfy","rénovation façade","showroom liège","devis gratuit","marques aluplast schüco","installation de châssis pvc ou aluminium","pose de portes d''entrée sécurisées","installation de volets roulants motorisés"],"image":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-labo-chassis/logo.webp"}'::jsonb, '2026-02-19T19:54:26.810Z', TRUE, 5, '3d794f3b90338b04679b2a819347df7a8efee849b63a6f353e705ac038ab9ab9', 'Chez Labo Châssis, nous allons au-delà de la simple installation : chaque projet est une histoire unique que nous suivons avec passion. Boris Lacroix supervise personnellement les chantiers pour garantir un résultat impeccable et durable.', NULL, 'Sérénité', '[{"name":"Prise de mesure sur site","description":"Mesure précise des ouvertures avec outils professionnels, vérification des écarts et adaptation du châssis avant fabrication","frequency":"tous les chantiers","impact":"garantit un ajustement parfait sans retouches","proof":null},{"name":"Test d''étanchéité à la pose","description":"Vérification systématique de l''étanchéité à l''eau et à l''air après installation, avec rapport détaillé fourni au client","frequency":"tous les chantiers","impact":"évite les infiltrations et optimise la performance énergétique","proof":null},{"name":"Nettoyage post-installation","description":"Dépoussiérage complet des surfaces, enlèvement des protections et contrôle final de l''état des lieux","frequency":"tous les chantiers","impact":"livraison clé en main sans trace du chantier","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-labo-chassis/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-labo-chassis/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-labo-chassis/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-labo-chassis/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-labo-chassis/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-labo-chassis/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T19:55:16.163Z","proof":"https://www.labochassis.be/"},{"label":"Seed: city hint","date":"2026-02-19T19:55:16.163Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T19:55:16.163Z","proof":"Chssis"},{"label":"Seed: search keyword","date":"2026-02-19T19:55:16.163Z","proof":"Chssis"},{"label":"Extracted: city","date":"2026-02-19T19:55:16.163Z","proof":"Ans"},{"label":"BCE: mod97 valid","date":"2026-02-19T19:55:16.163Z","proof":"0803994693"},{"label":"Email extracted","date":"2026-02-19T19:55:16.163Z","proof":"labochassis@gmail.com"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T19:55:16.163Z","proof":"confidence=92/100"},{"label":"Phone extracted","date":"2026-02-19T19:55:16.163Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T19:55:16.163Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-labo-chassis/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0803994693', 'Actif', 'BCE_CSV', '2026-02-19T19:51:17.136Z', '2026-02-19T19:51:17.136Z', 'LABO châssis', '2023-07-14', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T19:55:16.163Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0803994693'
    AND c_existing.slug <> 'chssis-liege-labo-chassis'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'chssis-liege-chassis-ernst', 'BE-WAL', 'Châssis Ernst', 'Chssis', ARRAY['châssis sur mesure', 'véranda basse énergie', 'pergola bioclimatique', 'certification ce', 'fabrication locale', 'isolation thermique', 'projet clé en main', 'fabrication de châssis en aluminium', 'fabrication de châssis en pvc', 'installation de vérandas classiques', 'installation de pergolas bioclimatiques', 'pose de volets appliqués']::text[], ARRAY['Fabrication de châssis en aluminium', 'Fabrication de châssis en pvc', 'Installation de vérandas classiques', 'Installation de pergolas bioclimatiques', 'Pose de volets appliqués']::text[], 'sur_devis', NULL, NULL, TRUE, 'Blégny', '4671', 'BE', 'Route de Parfondvaux 110', 'https://chassisernst.be/', 'https://www.facebook.com/chassisernst/', 'https://www.instagram.com/chassis_ernst/', 'https://www.linkedin.com/company/les-chassis-ernst/', NULL, 'info@chassisernst.be', NULL, '+3287325580', '+3287325580', 'Philippe Lagasse de Locht', 'Gerant', NULL, 'Blégny', ARRAY['français']::text[], 'Sur rendez-vous', NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de fabrication de châssis en aluminium?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Quelles communes sont couvertes en priorité?","answer":"Les interventions se déroulent à Blégny et dans les communes avoisinantes, selon la nature de la demande."}]'::jsonb, 'Châssis Ernst, fabricant wallon spécialisé dans les châssis, vérandas et pergolas depuis 1863. Basée à Petit-Rechain (Verviers), l''entreprise propose des solutions sur mesure en aluminium et PVC, certifiées CE et adaptées aux normes énergétiques actuelles. Chaque projet bénéficie d''un suivi personnalisé pour allier qualité artisanale et performance technique.', 'Fabrication de châssis à Blégny | Châssis Ernst', 'Châssis sur mesure certifiés CE avec contrôle qualité KIWA. Fabrication locale en aluminium et PVC pour une isolation thermique optimale.', 'Châssis Ernst - Fabricant de châssis à Blégny', 'Spécialiste en fabrication et installation de châssis, vérandas et pergolas bioclimatiques depuis plus de 150 ans. Contrôles qualité KIWA garantis.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Châssis Ernst","description":"Fabricant de châssis en aluminium et PVC à Blégny, spécialisé dans les solutions sur mesure avec certification CE.","url":"https://revelys.be/entreprises/chssis-liege-chassis-ernst","sameAs":["https://chassisernst.be/"],"address":{"@type":"PostalAddress","streetAddress":"Route de Parfondvaux 110","postalCode":"4671","addressLocality":"Blégny","addressCountry":"BE"},"areaServed":{"@type":"Place","name":"Blégny"},"keywords":["châssis sur mesure","véranda basse énergie","pergola bioclimatique","certification ce","fabrication locale","isolation thermique","projet clé en main","fabrication de châssis en aluminium","fabrication de châssis en pvc","installation de vérandas classiques","installation de pergolas bioclimatiques","pose de volets appliqués"],"image":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-ernst/logo.webp","logo":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-ernst/logo.webp"}'::jsonb, '2026-02-19T19:59:11.241Z', TRUE, 5, '307a2e7a86c338a486e6ed5d1207d8bcd9d7bba176ecece2ef9d2dbeb4b57bf9', 'Chez Châssis Ernst, nous combinons savoir-faire artisanal et innovation technique depuis plus de 150 ans. Nos produits sont conçus pour durer, avec une attention particulière portée à l''isolation thermique et acoustique.', NULL, 'Durabilité', '[{"name":"Contrôle qualité KIWA","description":"Chaque châssis subit deux contrôles annuels par le certificateur KIWA pour garantir la conformité aux normes CE. Les tests incluent des vérifications d''étanchéité et de résistance mécanique.","frequency":"2 fois par an","impact":"Assure une qualité constante sur tous les produits fabriqués.","proof":null},{"name":"Prise de vue aérienne","description":"Utilisation de drones pour des relevés précis des dimensions et de l''environnement du projet. Ces images servent à optimiser la conception des vérandas et pergolas.","frequency":"Pour chaque projet sur mesure","impact":"Permet une intégration parfaite avec l''architecture existante.","proof":null},{"name":"Test d''isolation thermique","description":"Mesure systématique du coefficient Uw de chaque châssis avant livraison. Les résultats sont consignés dans un rapport client.","frequency":"Pour chaque commande","impact":"Garantit des performances énergétiques conformes aux normes passives.","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-ernst/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-ernst/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-ernst/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-ernst/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-ernst/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-ernst/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T20:00:04.138Z","proof":"https://chassisernst.be/chassis/"},{"label":"Seed: city hint","date":"2026-02-19T20:00:04.138Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T20:00:04.138Z","proof":"Chssis"},{"label":"Seed: search keyword","date":"2026-02-19T20:00:04.138Z","proof":"Chssis"},{"label":"Extracted: city","date":"2026-02-19T20:00:04.138Z","proof":"Petit-rechain"},{"label":"BCE: mod97 valid","date":"2026-02-19T20:00:04.138Z","proof":"0423966808"},{"label":"Email extracted","date":"2026-02-19T20:00:04.138Z","proof":"info@chassisernst.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T20:00:04.138Z","proof":"confidence=92/100"},{"label":"Phone extracted","date":"2026-02-19T20:00:04.138Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T20:00:04.138Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chssis-liege-chassis-ernst/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0423966808', 'Actif', 'BCE_CSV', '2026-02-19T19:56:21.942Z', '2026-02-19T19:56:21.942Z', 'CHASSIS ERNST', '1983-05-20', 'Personne morale', 'Société privée à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T20:00:04.138Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0423966808'
    AND c_existing.slug <> 'chssis-liege-chassis-ernst'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'portes-et-fenetres-liege-neco', 'BE-WAL', 'NECO', 'Chssis', ARRAY['fenêtres sur mesure', 'isolation thermique', 'portes sécurisées', 'région liégeoise', 'garantie longue durée', 'protection solaire', 'menuiserie extérieure', 'projet rénovation', 'châssis performants', 'installation de châssis sur mesure', 'pose de fenêtres en pvc', 'pose de portes d''entrée en aluminium']::text[], ARRAY['Installation de châssis sur mesure', 'Pose de fenêtres en pvc', 'Pose de portes d''entrée en aluminium', 'Rénovation de menuiseries extérieures']::text[], 'sur_devis', NULL, NULL, TRUE, 'Seraing', '4102', 'BE', 'Rue F. Nicolay 213', 'https://www.neco-energie.be/', 'https://www.facebook.com/NECOenergie/', NULL, 'http://linkedin.com/company/neco-porte-et-fenetre', NULL, 'nicolasinfo@neco-energie.be', NULL, '+3243400006', '+3243400006', NULL, NULL, NULL, 'Seraing', ARRAY['français']::text[], '24h/24 - 7j/7', NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services d''installation de châssis sur mesure?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Sur quelle zone géographique intervenez-vous?","answer":"Les interventions se déroulent à Seraing et dans les communes avoisinantes, selon la nature de la demande."},{"question":"Comment la qualité des interventions est-elle assurée?","answer":"La qualité repose sur une méthode structurée, des vérifications en cours d''intervention et un contrôle final avant la remise au client."},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"NECO se distingue par son approche sur mesure et sa priorité absolue à la qualité des produits, avec une garantie de 25 ans. L''entreprise mise sur l''écoute client et une communication transparente pour garantir un projet réussi."}]'::jsonb, 'NECO est un spécialiste liégeois des châssis sur mesure, proposant une gamme complète de fenêtres et portes en PVC, aluminium, bois ou mixte. Avec 25 ans de garantie et une expertise reconnue, l''entreprise allie performance énergétique et personnalisation pour tous vos projets d''habitation.', 'Installation portes et fenêtres à Seraing | NECO', 'Châssis sur mesure avec garantie 25 ans. Mesure précise avant pose pour éviter les infiltrations d''air. Spécialiste en menuiserie extérieure en région liégeoise.', 'NECO - Portes et fenêtres à Seraing', 'Installation de châssis sur mesure, portes sécurisées et rénovation de menuiseries extérieures dans la région liégeoise. Garantie longue durée incluse.', '{"@context":"https://schema.org","@type":"HomeAndConstructionBusiness","name":"NECO","description":"Installation de portes et fenêtres sur mesure à Seraing avec garantie 25 ans.","url":"https://revelys.be/entreprises/portes-et-fenetres-liege-neco","sameAs":["https://www.neco-energie.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue F. Nicolay 213","postalCode":"4102","addressLocality":"Seraing","addressCountry":"BE"},"areaServed":{"@type":"Place","name":"Seraing, Région liégeoise"},"keywords":["fenêtres sur mesure","isolation thermique","portes sécurisées","région liégeoise","garantie longue durée","protection solaire","menuiserie extérieure","projet rénovation","châssis performants","installation de châssis sur mesure","pose de fenêtres en pvc","pose de portes d''entrée en aluminium"],"image":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-neco/logo.webp","logo":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-neco/logo.webp"}'::jsonb, '2026-02-19T20:03:49.033Z', TRUE, 5, 'ccf661bd912567a3fa419801f90c268eff2bafbc7f91902e4138ae045829da2a', 'NECO se distingue par son approche sur mesure et sa priorité absolue à la qualité des produits, avec une garantie de 25 ans. L''entreprise mise sur l''écoute client et une communication transparente pour garantir un projet réussi.', NULL, 'Joie', '[{"name":"Mesure précise avant installation","description":"Chaque châssis est mesuré avec précision sur place pour garantir un ajustement parfait, évitant les ponts thermiques et les infiltrations d''air.","frequency":"tous les projets","impact":"qualité de l''installation","proof":null},{"name":"Test d''étanchéité à la pose","description":"Un test d''étanchéité est systématiquement réalisé après installation pour vérifier l''absence de fuites et la performance du châssis.","frequency":"tous les projets","impact":"performance énergétique","proof":null},{"name":"Conseil personnalisé en showroom","description":"Les clients bénéficient d''un accompagnement individualisé dans les showrooms pour choisir les matériaux et finitions adaptés à leur projet.","frequency":"tous les projets","impact":"satisfaction client","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-neco/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-neco/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-neco/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-neco/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-neco/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-neco/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T20:04:43.430Z","proof":"https://www.neco-energie.be/"},{"label":"Seed: city hint","date":"2026-02-19T20:04:43.430Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T20:04:43.430Z","proof":"Chssis"},{"label":"Seed: search keyword","date":"2026-02-19T20:04:43.430Z","proof":"portes et fenêtres"},{"label":"Extracted: city","date":"2026-02-19T20:04:43.430Z","proof":"Seraing"},{"label":"BCE: mod97 valid","date":"2026-02-19T20:04:43.430Z","proof":"0828169271"},{"label":"Email extracted","date":"2026-02-19T20:04:43.430Z","proof":"nicolasinfo@neco-energie.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T20:04:43.430Z","proof":"confidence=92/100"},{"label":"Phone extracted","date":"2026-02-19T20:04:43.430Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T20:04:43.430Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-neco/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0828169271', 'Actif', 'BCE_CSV', '2026-02-19T20:00:34.963Z', '2026-02-19T20:00:34.963Z', 'NECO ENERGIE', '2010-07-30', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T20:04:43.430Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0828169271'
    AND c_existing.slug <> 'portes-et-fenetres-liege-neco'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'portes-et-fenetres-liege-belgoplast', 'BE-WAL', 'Belgoplast', 'Chssis', ARRAY['menuiserie sur mesure', 'isolation thermique', 'sécurité anti-effraction', 'showroom flémalle', 'service après-vente réactif', 'châssis pvc veka', 'châssis aluminium aluk', 'pose professionnelle', '30 ans d''expérience', 'fabrication de châssis pvc', 'fabrication de châssis aluminium', 'pose de menuiseries extérieures']::text[], ARRAY['Fabrication de châssis pvc', 'Fabrication de châssis aluminium', 'Pose de menuiseries extérieures', 'Entretien de et maintenance des châssis']::text[], 'sur_devis', NULL, NULL, NULL, 'Flémalle', '4400', 'BE', 'Chemin des Moissons 7', 'https://www.belgoplast.be/', NULL, NULL, NULL, NULL, 'info@belgoplast.be', NULL, '+3242506415', '+3242506415', NULL, NULL, NULL, 'Flémalle', ARRAY['français', 'allemand']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de fabrication de châssis pvc?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Sur quelle zone géographique intervenez-vous?","answer":"Les interventions se déroulent à Flémalle et dans les communes avoisinantes, selon la nature de la demande."},{"question":"Comment la qualité des interventions est-elle assurée?","answer":"La qualité repose sur une méthode structurée, des vérifications en cours d''intervention et un contrôle final avant la remise au client."},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"Belgoplast se distingue par sa fabrication locale en Province de Liège, combinant savoir-faire artisanal et machines performantes pour des châssis sur mesure. Son showroom de 500 m² permet une expérience client immersive avant achat."}]'::jsonb, 'Belgoplast, fabricant liégeois spécialisé dans les châssis en PVC et aluminium sur mesure, allie expertise artisanale et technologies modernes pour des menuiseries durables. Son showroom de 500 m² à Flémalle expose une gamme complète de fenêtres, portes et volets, conçus pour optimiser confort thermique et sécurité. L''entreprise assure la pose par ses équipes qualifiées, avec un service après-vente réactif.', 'Menuiserie sur mesure à Flémalle | Belgoplast', 'Fabrication locale de châssis PVC et aluminium avec test d''étanchéité. Showroom de 500 m² en Province de Liège pour une expérience client immersive.', 'Belgoplast - Menuiserie à Flémalle', 'Spécialiste des portes et fenêtres sur mesure, Belgoplast propose fabrication locale et pose professionnelle en Province de Liège. Showroom disponible.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Belgoplast","description":"Fabrication et pose de menuiseries extérieures sur mesure à Flémalle.","url":"https://revelys.be/entreprises/portes-et-fenetres-liege-belgoplast","sameAs":["https://www.belgoplast.be/"],"address":{"@type":"PostalAddress","streetAddress":"Chemin des Moissons 7","postalCode":"4400","addressLocality":"Flémalle","addressCountry":"BE"},"areaServed":{"@type":"Place","name":"Flémalle, Province de Liège"},"keywords":["menuiserie sur mesure","isolation thermique","sécurité anti-effraction","showroom flémalle","service après-vente réactif","châssis pvc veka","châssis aluminium aluk","pose professionnelle","30 ans d''expérience","fabrication de châssis pvc","fabrication de châssis aluminium","pose de menuiseries extérieures"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-belgoplast/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-belgoplast/cover.webp"],"hasOfferCatalog":{"@type":"OfferCatalog","name":"Services Belgoplast","itemListElement":[{"@type":"Offer","name":"Fabrication de châssis PVC","url":"https://www.belgoplast.be/"},{"@type":"Offer","name":"Fabrication de châssis aluminium","url":"https://www.belgoplast.be/"},{"@type":"Offer","name":"Pose de menuiseries extérieures","url":"https://www.belgoplast.be/"}]}}'::jsonb, '2026-02-19T20:09:15.702Z', TRUE, 5, '1c2e4f860a3855c4c742359ebcbc27270cd2fed08f14a465454170f924fe919a', 'Belgoplast se distingue par sa fabrication locale en Province de Liège, combinant savoir-faire artisanal et machines performantes pour des châssis sur mesure. Son showroom de 500 m² permet une expérience client immersive avant achat.', NULL, 'Durabilité', '[{"name":"Test d''étanchéité à l''air","description":"Chaque châssis est soumis à un test de pression pour vérifier son étanchéité avant livraison, garantissant des performances optimales contre les infiltrations.","frequency":"Selon le besoin","impact":"Améliore la fiabilité et la qualité d''exécution.","proof":null},{"name":"Montage de quincaillerie Roto NT","description":"Installation systématique de ferrures anti-effraction certifiées, avec vérification du galet de verrouillage pour une sécurité maximale.","frequency":"Selon le besoin","impact":"Améliore la fiabilité et la qualité d''exécution.","proof":null},{"name":"Nettoyage des soudures PVC","description":"Ébavurage minutieux des angles soudés à l''aide d''outils spécifiques pour éviter les aspérités et garantir un rendu esthétique parfait.","frequency":"Selon le besoin","impact":"Améliore la fiabilité et la qualité d''exécution.","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-belgoplast/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-belgoplast/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-belgoplast/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-belgoplast/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-belgoplast/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-belgoplast/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T20:10:23.826Z","proof":"https://www.belgoplast.be/"},{"label":"Seed: city hint","date":"2026-02-19T20:10:23.826Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T20:10:23.826Z","proof":"Chssis"},{"label":"Seed: search keyword","date":"2026-02-19T20:10:23.826Z","proof":"portes et fenêtres"},{"label":"Extracted: city","date":"2026-02-19T20:10:23.826Z","proof":""},{"label":"BCE: mod97 valid","date":"2026-02-19T20:10:23.826Z","proof":"0452626447"},{"label":"Email extracted","date":"2026-02-19T20:10:23.826Z","proof":"info@belgoplast.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T20:10:23.826Z","proof":"confidence=92/100"},{"label":"Phone extracted","date":"2026-02-19T20:10:23.826Z","proof":"source=text"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T20:10:23.826Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-belgoplast/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0452626447', 'Actif', 'BCE_CSV', '2026-02-19T20:04:54.693Z', '2026-02-19T20:04:54.693Z', 'BELGOPLAST', '1994-04-26', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T20:10:23.826Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0452626447'
    AND c_existing.slug <> 'portes-et-fenetres-liege-belgoplast'
)
ON CONFLICT (slug) DO UPDATE SET market = EXCLUDED.market, name = EXCLUDED.name, industry = EXCLUDED.industry, tags = EXCLUDED.tags, services = EXCLUDED.services, pricing_model = EXCLUDED.pricing_model, budget_level = EXCLUDED.budget_level, price_indication = EXCLUDED.price_indication, devis_gratuit = EXCLUDED.devis_gratuit, city = EXCLUDED.city, postal_code = EXCLUDED.postal_code, country = EXCLUDED.country, address = EXCLUDED.address, website = EXCLUDED.website, facebook = EXCLUDED.facebook, instagram = EXCLUDED.instagram, linkedin = EXCLUDED.linkedin, tiktok = EXCLUDED.tiktok, contact_email = EXCLUDED.contact_email, contact_name = EXCLUDED.contact_name, contact_phone = EXCLUDED.contact_phone, public_phone = EXCLUDED.public_phone, founder_name = EXCLUDED.founder_name, founder_role = EXCLUDED.founder_role, founder_photo_url = EXCLUDED.founder_photo_url, ideal_zone = EXCLUDED.ideal_zone, languages = EXCLUDED.languages, availability = EXCLUDED.availability, opening_hours = EXCLUDED.opening_hours, google_rating = EXCLUDED.google_rating, google_reviews_count = EXCLUDED.google_reviews_count, google_reviews = EXCLUDED.google_reviews, company_faq = EXCLUDED.company_faq, description = EXCLUDED.description, seo_title = EXCLUDED.seo_title, seo_description = EXCLUDED.seo_description, og_title = EXCLUDED.og_title, og_description = EXCLUDED.og_description, seo_jsonld = EXCLUDED.seo_jsonld, seo_generated_at = EXCLUDED.seo_generated_at, seo_ai_used = EXCLUDED.seo_ai_used, seo_version = EXCLUDED.seo_version, seo_last_inputs_hash = EXCLUDED.seo_last_inputs_hash, why_company = EXCLUDED.why_company, why_entrepreneur = EXCLUDED.why_entrepreneur, emotional_need_label = EXCLUDED.emotional_need_label, rituals = EXCLUDED.rituals, ras_score = EXCLUDED.ras_score, logo_url = EXCLUDED.logo_url, cover_image_url = EXCLUDED.cover_image_url, gallery_urls = EXCLUDED.gallery_urls, video_urls = EXCLUDED.video_urls, video_embed_url = EXCLUDED.video_embed_url, tier = EXCLUDED.tier, verification_status = EXCLUDED.verification_status, verification_checks = EXCLUDED.verification_checks, content_status = EXCLUDED.content_status, is_claimed = EXCLUDED.is_claimed, opt_out_status = EXCLUDED.opt_out_status, bce_number = EXCLUDED.bce_number, bce_status = EXCLUDED.bce_status, bce_source = EXCLUDED.bce_source, bce_verified_at = EXCLUDED.bce_verified_at, bce_last_checked_at = EXCLUDED.bce_last_checked_at, bce_legal_name = EXCLUDED.bce_legal_name, founded_on = EXCLUDED.founded_on, bce_type_of_enterprise = EXCLUDED.bce_type_of_enterprise, bce_juridical_form = EXCLUDED.bce_juridical_form, bce_juridical_situation = EXCLUDED.bce_juridical_situation, bce_source_update_date = EXCLUDED.bce_source_update_date
WHERE companies.is_claimed IS NOT TRUE;

INSERT INTO companies (slug, market, name, industry, tags, services, pricing_model, budget_level, price_indication, devis_gratuit, city, postal_code, country, address, website, facebook, instagram, linkedin, tiktok, contact_email, contact_name, contact_phone, public_phone, founder_name, founder_role, founder_photo_url, ideal_zone, languages, availability, opening_hours, google_rating, google_reviews_count, google_reviews, company_faq, description, seo_title, seo_description, og_title, og_description, seo_jsonld, seo_generated_at, seo_ai_used, seo_version, seo_last_inputs_hash, why_company, why_entrepreneur, emotional_need_label, rituals, ras_score, logo_url, cover_image_url, gallery_urls, video_urls, video_embed_url, tier, verification_status, verification_checks, content_status, is_claimed, opt_out_status, bce_number, bce_status, bce_source, bce_verified_at, bce_last_checked_at, bce_legal_name, founded_on, bce_type_of_enterprise, bce_juridical_form, bce_juridical_situation, bce_source_update_date, created_at)
SELECT 'portes-et-fenetres-liege-ams-menuiserie', 'BE-WAL', 'AMS Menuiserie', 'Chssis', ARRAY['châssis sur mesure', 'isolation thermique', 'porte coupe-feu', 'menuiserie durable', 'agrément régional', 'travaux extérieurs', 'rénovation intérieure', 'matériaux certifiés', 'fabrication et pose de châssis', 'remplacement de vitrerie', 'installation de portes coupe-feu', 'pose de moustiquaires et stores']::text[], ARRAY['Fabrication et pose de châssis', 'Remplacement de vitrerie', 'Installation de portes coupe-feu', 'Pose de moustiquaires et stores', 'Construction de terrasses en bois', 'Travaux de menuiserie générale']::text[], 'sur_devis', NULL, NULL, TRUE, 'Seraing', '4100', 'BE', 'Rue d''Egmont et de Hornes 6 boite A', 'https://www.amsmenuiserie.be/', NULL, NULL, NULL, NULL, 'alan@menuiserie-ams.be', NULL, '+3243786344', '+3243786344', NULL, NULL, NULL, 'Seraing', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Proposez-vous des services de fabrication et pose de châssis?","answer":"Oui, cette prestation fait partie des interventions proposées, avec vérification sur place avant réalisation."},{"question":"Intervenez-vous au-delà de la zone principale?","answer":"La zone principale est Seraing. Les interventions peuvent s''étendre aux communes limitrophes selon le besoin."},{"question":"Comment contrôlez-vous la qualité de votre travail?","answer":"Des vérifications sont effectuées à chaque étape de l''intervention, avec un contrôle final avant la clôture du chantier."},{"question":"Qu''est-ce qui vous distingue sur votre marche local?","answer":"AMS Menuiserie se distingue par son expertise dans les matériaux durables et son agrément ISIB pour l''installation de portes coupe-feu, garantissant des réalisations conformes aux normes."}]'::jsonb, 'AMS Menuiserie est spécialisée dans la fabrication et l''installation de châssis sur mesure à Seraing, utilisant des matériaux durables pour garantir une isolation optimale. L''entreprise intervient également dans les communes voisines comme Herstal ou Flémalle pour des projets de menuiserie intérieure et extérieure. Son agrément régional wallon assure des prestations conformes aux normes en vigueur.', 'Menuiserie à Seraing | AMS Menuiserie', 'Fabrication et pose de châssis sur mesure avec matériaux certifiés. Agrément ISIB pour portes coupe-feu, garantissant conformité aux normes locales.', 'AMS Menuiserie - Portes et fenêtres à Seraing', 'Entreprise spécialisée en menuiserie durable à Seraing : châssis sur mesure, isolation thermique et portes coupe-feu certifiées. Devis gratuit.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"AMS Menuiserie","description":"Menuisier spécialisé en châssis sur mesure, isolation thermique et portes coupe-feu certifiées à Seraing.","url":"https://revelys.be/entreprises/portes-et-fenetres-liege-ams-menuiserie","sameAs":["https://www.amsmenuiserie.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue d''Egmont et de Hornes 6 boite A","postalCode":"4100","addressLocality":"Seraing","addressCountry":"BE"},"areaServed":{"@type":"City","name":"Seraing"},"keywords":["châssis sur mesure","isolation thermique","porte coupe-feu","menuiserie durable","agrément régional","travaux extérieurs","rénovation intérieure","matériaux certifiés","fabrication et pose de châssis","remplacement de vitrerie","installation de portes coupe-feu","pose de moustiquaires et stores"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-ams-menuiserie/logo.webp","https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-ams-menuiserie/cover.webp"],"logo":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-ams-menuiserie/logo.webp","hasOfferCatalog":{"@type":"OfferCatalog","name":"Services de menuiserie","itemListElement":[{"@type":"Offer","name":"Fabrication et pose de châssis"},{"@type":"Offer","name":"Remplacement de vitrerie"},{"@type":"Offer","name":"Installation de portes coupe-feu"},{"@type":"Offer","name":"Pose de moustiquaires et stores"},{"@type":"Offer","name":"Construction de terrasses en bois"},{"@type":"Offer","name":"Travaux de menuiserie générale"}]}}'::jsonb, '2026-02-19T20:13:59.345Z', TRUE, 5, '359a661faadf5cea5a0bbd5903fdc086ae10ad57ef6a77a6b7b3e1de32a6b35f', 'AMS Menuiserie se distingue par son expertise dans les matériaux durables et son agrément ISIB pour l''installation de portes coupe-feu, garantissant des réalisations conformes aux normes.', NULL, 'Durabilité', '[{"name":"Test d''étanchéité des châssis","description":"Après installation, chaque châssis est soumis à un test d''étanchéité pour vérifier l''absence de fuites et garantir une isolation optimale.","frequency":"toujours","impact":"qualite","proof":null},{"name":"Choix des matériaux durables","description":"L''entreprise sélectionne systématiquement des essences de bois certifiées et des profilés PVC haute performance pour une longévité accrue.","frequency":"toujours","impact":"durabilite","proof":null},{"name":"Mesure sur site avant fabrication","description":"Les menuisiers réalisent des relevés précis directement chez le client pour éviter toute erreur de dimensionnement.","frequency":"toujours","impact":"precision","proof":null}]'::jsonb, 98, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-ams-menuiserie/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-ams-menuiserie/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-ams-menuiserie/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-ams-menuiserie/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-ams-menuiserie/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-ams-menuiserie/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-19T20:15:16.727Z","proof":"https://www.amsmenuiserie.be/"},{"label":"Seed: city hint","date":"2026-02-19T20:15:16.727Z","proof":"Liège"},{"label":"Seed: industry category","date":"2026-02-19T20:15:16.727Z","proof":"Chssis"},{"label":"Seed: search keyword","date":"2026-02-19T20:15:16.727Z","proof":"portes et fenêtres"},{"label":"Extracted: city","date":"2026-02-19T20:15:16.727Z","proof":""},{"label":"BCE: mod97 valid","date":"2026-02-19T20:15:16.727Z","proof":"0563799929"},{"label":"Email extracted","date":"2026-02-19T20:15:16.727Z","proof":"alan@menuiserie-ams.be"},{"label":"LLM structured (mistral-small3.2:24b-instruct-q5_k_m)","date":"2026-02-19T20:15:16.727Z","proof":"confidence=80/100"},{"label":"Phone extracted","date":"2026-02-19T20:15:16.727Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-19T20:15:16.727Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/portes-et-fenetres-liege-ams-menuiserie/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0563799929', 'Actif', 'BCE_CSV', '2026-02-19T20:11:29.510Z', '2026-02-19T20:11:29.510Z', 'A.M.S. Menuiserie', '2014-10-08', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-19T20:15:16.727Z'
WHERE NOT EXISTS (
