  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0676409308'
    AND c_existing.slug <> 'installateur-securite-a-baudour-lt-elec'
)
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, 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, 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 'coach-sportif-a-mons-aramis', 'BE-WAL', 'Aramis', 'Coach sportif', ARRAY['personalisation', 'objectifs personnels', 'coaching sportif', 'cours collectifs', 'cardio', 'box training', 'danse bien-être']::text[], ARRAY['Coach sportif personnel', 'Cours collectifs', 'Cardio training', 'Box training', 'Danse bien-être']::text[], 'horaire', NULL, NULL, NULL, 'Mons', '7000', 'BE', 'RUE DES VIADUCS 100, MONS Conditions générales Règlement d’ordre intérieur Surveillance par caméra', 'https://www.aramisclub.be/', 'https://www.facebook.com/aramis.club.mons/', 'https://www.instagram.com/aramis.club/', NULL, 'aramis@aramisclub.be', 'Équipe de direction', '+3265348410', '+3265348410', 'Équipe de direction', NULL, NULL, 'Mons', ARRAY['français']::text[], 'Du lundi au vendredi', '[{"day":"dimanche","open":"10:00","close":"11:00","isClosed":false}]'::jsonb, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : coach sportif personnel, cours collectifs, cardio training et box training. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à MONS TÉL et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Aramis est une entreprise de coach sportif personnel active à Mons (province de Hainaut). Elle intervient notamment pour le coach sportif personnel, les cours collectifs, le cardio training et le box training, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Coach sportif personnel, Cours collectifs, Cardio training, Box training, Danse bien-être
Zone d''intervention: Mons', 'Coach sportif à Mons | Aramis', 'Bénéficiez d''un coaching personnalisé pour atteindre vos objectifs. Des coachs certifiés vous accompagnent vers la réussite.', 'Aramis - Coach Sportif Personnalisé à Mons', 'Découvrez Aramis, votre partenaire de fitness à Mons. Nos coachs certifiés vous aident à atteindre vos objectifs sportifs avec des séances adaptées et personnalisées.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Aramis","description":"Coach sportif personnel, cours collectifs et cardio training à Mons. Nos coachs certifiés vous accompagnent vers la réalisation de vos objectifs.","url":"https://revelys.be/entreprises/coach-sportif-a-mons-aramis","sameAs":["https://www.aramisclub.be/"],"address":{"@type":"PostalAddress","streetAddress":"RUE DES VIADUCS 100, MONS Conditions générales Règlement d’ordre intérieur Surveillance par caméra","postalCode":"7000","addressLocality":"Mons"},"areaServed":"Mons","keywords":["personalisation","objectifs personnels","coaching sportif","cours collectifs","cardio","box training","danse bien-être","Coach sportif personnel","Cours collectifs","Cardio training","Box training","Danse bien-être"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/aramis-0692881292/logo.webp"]}'::jsonb, '2026-02-16T04:22:08.283Z', TRUE, 5, '069a1c56a5586b98c783d9092fbdc304c15a7e806a946680f07366af50d3167b', 'Avec des coachs certifiés et une approche personnalisée, Aramis Club vous accompagne vers la réalisation de vos objectifs sportifs.', NULL, 'Confiance', '[{"name":"Évaluation physique initiale","description":"Un test complet pour définir votre niveau actuel et vos objectifs.","frequency":"Une fois par an","impact":"proof=null","proof":null},{"name":"Suivi régulier des progrès","description":"Des séances d''entraînement adaptées à votre progression pour maintenir la motivation.","frequency":"Une fois par mois","impact":"proof=null","proof":null},{"name":"Rencontre de suivi bi-hebdomadaire","description":"Des réunions avec votre coach pour ajuster vos objectifs et votre plan d''entraînement.","frequency":"Deux fois par mois","impact":"proof=null","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/aramis-0692881292/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/aramis-0692881292/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/aramis-0692881292/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/aramis-0692881292/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/aramis-0692881292/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/aramis-0692881292/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T04:22:31.396Z","proof":"https://www.aramisclub.be/personal-trainer/"},{"label":"Seed: city hint","date":"2026-02-16T04:22:31.396Z","proof":"Mons"},{"label":"Extracted: city","date":"2026-02-16T04:22:31.396Z","proof":"Mons"},{"label":"BCE: mod97 valid","date":"2026-02-16T04:22:31.396Z","proof":"0692881292"},{"label":"Email extracted","date":"2026-02-16T04:22:31.396Z","proof":"aramis@aramisclub.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T04:22:31.396Z","proof":"confidence=3"},{"label":"Phone extracted","date":"2026-02-16T04:22:31.396Z","proof":"source=text"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T04:22:31.396Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/aramis-0692881292/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0692881292', 'Actif', 'BCE_CSV', '2026-02-16T04:21:32.132Z', '2026-02-16T04:21:32.132Z', 'FRIENDS SPORTS', '2018-03-23', 'Personne morale', 'Société anonyme', 'Situation normale', '2026-02-11', '2026-02-16T04:22:31.396Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0692881292'
    AND c_existing.slug <> 'coach-sportif-a-mons-aramis'
)
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, 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, 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 'coach-sportif-a-strepy-bracquegnies-a-propos-de-moi', 'BE-WAL', 'À propos de moi', 'Coach sportif', ARRAY['coaching sportif', 'préparation physique', 'entraînement personnel', 'gym post-natale', 'chirurgie bariatrique', 'objectifs personnels', 'accompagnement personnalisé']::text[], ARRAY['Coaching sportif personnalisé', 'Préparation physique pour les forces de l''ordre', 'Entraînement après chirurgie bariatrique', 'Gym post-natale']::text[], 'sur_devis', NULL, NULL, TRUE, 'Strépy-Bracquegnies', '7110', 'BE', NULL, 'https://phenixcoaching.be/', 'https://www.facebook.com/p/Phenix-Coaching-100048407985091/', NULL, NULL, 'phenixcoaching72@gmail.com', 'Équipe de direction', '+32483454450', '+32483454450', 'Équipe de direction', NULL, NULL, 'Mons', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : coaching sportif personnalisé, préparation physique pour les forces de l''ordre, entraînement après chirurgie bariatrique et gym post-natale. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Strépy-Bracquegnies et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'À propos de moi est une entreprise de coaching sportif personnalisé active à Strépy-Bracquegnies (province de Hainaut). Elle intervient notamment pour le coaching sportif personnalisé, la préparation physique pour les forces de l''ordre, l''entraînement après chirurgie bariatrique et le gym post-natale, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Coaching sportif personnalisé, Préparation physique pour les forces de l''ordre, Entraînement après chirurgie bariatrique, Gym post-natale
Zone d''intervention: Strépy-Bracquegnies', 'Coaching sportif à Strépy-Bracquegnies | À propos de moi', 'Bénéficiez d''un coaching personnalisé pour atteindre vos objectifs physiques. Évaluation initiale complète pour comprendre vos besoins spécifiques.', 'Coaching sportif à Strépy-Bracquegnies - À propos de moi', 'À propos de moi propose des séances d''entraînement personnalisées et adaptées à votre rythme. Évaluation initiale complète pour comprendre vos besoins spécifiques.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"À propos de moi","description":"Jean-Louis Verfaille, avec plus de 35 ans d''expérience en sport et 4 ans en coaching, vous guide vers la réalisation de vos objectifs physiques et sportifs.","url":"https://revelys.be/entreprises/coach-sportif-a-strepy-bracquegnies-a-propos-de-moi","sameAs":["https://phenixcoaching.be/"],"address":{"@type":"PostalAddress","postalCode":"7110","addressLocality":"Strépy-Bracquegnies"},"areaServed":"Strépy-Bracquegnies","keywords":["coaching sportif","préparation physique","entraînement personnel","gym post-natale","chirurgie bariatrique","objectifs personnels","accompagnement personnalisé","Coaching sportif personnalisé","Préparation physique pour les forces de l''ordre","Entraînement après chirurgie bariatrique","Gym post-natale"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-propos-de-moi-0667654958/logo.webp"]}'::jsonb, '2026-02-16T04:23:12.247Z', TRUE, 5, 'b1b92691e0b562b8b491142df6adc3680ff0ee9cd260867aa9719651e8ddb9f5', 'Jean-Louis Verfaille, avec plus de 35 ans d''expérience en sport et 4 ans en coaching, vous guide vers la réalisation de vos objectifs physiques et sportifs.', NULL, 'Confiance', '[{"name":"Évaluation initiale","description":"Un bilan complet pour définir vos objectifs et votre niveau actuel.","frequency":"Une fois","impact":"Comprendre les besoins spécifiques du client.","proof":null},{"name":"Suivi régulier","description":"Des séances d''entraînement personnalisées et adaptées à votre rythme.","frequency":"Une fois par semaine","impact":"Maintenir la motivation et ajuster le programme en fonction des progrès.","proof":null},{"name":"Réévaluation périodique","description":"Un point régulier sur vos progrès pour ajuster votre plan d''entraînement.","frequency":"Tous les 3 mois","impact":"S''assurer que vous êtes toujours sur la bonne voie vers l''atteinte de vos objectifs.","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-propos-de-moi-0667654958/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-propos-de-moi-0667654958/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-propos-de-moi-0667654958/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-propos-de-moi-0667654958/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-propos-de-moi-0667654958/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-propos-de-moi-0667654958/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T04:23:36.836Z","proof":"https://phenixcoaching.be/fr/page/a-propos-de-moi"},{"label":"Seed: city hint","date":"2026-02-16T04:23:36.836Z","proof":"Mons"},{"label":"Extracted: city","date":"2026-02-16T04:23:36.836Z","proof":"Strépy-Bracquegnies"},{"label":"BCE: mod97 valid","date":"2026-02-16T04:23:36.836Z","proof":"0667654958"},{"label":"Email extracted","date":"2026-02-16T04:23:36.836Z","proof":"phenixcoaching72@gmail.com"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T04:23:36.836Z","proof":"confidence=0.95"},{"label":"Phone extracted","date":"2026-02-16T04:23:36.836Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T04:23:36.836Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-propos-de-moi-0667654958/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0667654958', 'Actif', 'BCE_CSV', '2026-02-16T04:22:37.566Z', '2026-02-16T04:22:37.566Z', 'Verfaille, Jean-Louis', '2017-01-01', 'Personne physique', NULL, 'Situation normale', '2026-02-11', '2026-02-16T04:23:36.836Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0667654958'
    AND c_existing.slug <> 'coach-sportif-a-strepy-bracquegnies-a-propos-de-moi'
)
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, 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, 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 'agence-web-a-mons-belgium-webstanz', 'BE-WAL', 'WebstanZ', 'Agence web', ARRAY['innovation', 'personnalisé', 'performant', 'solutions web', 'transformer idees', 'agence digitale', 'drupal']::text[], ARRAY['Création de site web', 'Développement drupal', 'Agence digitale']::text[], NULL, NULL, NULL, NULL, 'Mons Belgium', '7000', 'BE', 'Place de Vannes 19-20', 'https://www.webstanz.be/', 'https://www.facebook.com/webstanz.be/', NULL, 'https://fr.linkedin.com/company/webstanz', 'info@webstanz.be', 'Équipe de direction', '+32479411139', '+32479411139', 'Équipe de direction', NULL, NULL, 'Mons', ARRAY['français', 'anglais']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quelles sont les principales technologies utilisées par Webstanz SRL?","answer":"Webstanz SRL utilise principalement Drupal pour la création de sites web."},{"question":"Comment Webstanz SRL assure-t-elle le suivi des projets?","answer":"Une équipe dédiée est mise en place dès le début du projet et un suivi post-lancement est effectué pendant 3 mois après la mise en ligne."},{"question":"Quel est le processus de création d''un site web chez Webstanz SRL?","answer":"Le processus commence par une écoute active des besoins du client, suivi d''une phase de conception et développement avant un lancement finalisé avec un suivi post-lancement."}]'::jsonb, 'WebstanZ est une entreprise de création de site web active à Mons Belgium (province de Hainaut). Elle intervient notamment pour la création de site web, le développement drupal et l''agence digitale, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Création de site web, Développement drupal, Agence digitale
Zone d''intervention: Mons Belgium', 'Création site web à Mons | WebstanZ', 'Transformez vos idées en sites web performants grâce à une approche personnalisée et innovante. Spécialistes Drupal pour les entreprises de Mons.', 'WebstanZ - Création de site web à Mons', 'Spécialisée dans la création de sites web sur mesure, WebstanZ transforme vos idées en solutions web performantes pour les entreprises de Mons. Expertise Drupal incluse.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"WebstanZ","description":"Agence web spécialisée dans la création de sites web personnalisés et innovants pour les entreprises de Mons, Belgique.","url":"https://revelys.be/entreprises/agence-web-a-mons-belgium-webstanz","sameAs":["https://www.webstanz.be/"],"address":{"@type":"PostalAddress","streetAddress":"Place de Vannes 19-20","postalCode":"7000","addressLocality":"Mons Belgium","addressCountry":"BE"},"areaServed":"Mons Belgium","keywords":["innovation","personnalisé","performant","solutions web","transformer idees","agence digitale","drupal","création de site web","développement drupal"],"image":"https://www.webstanz.be/themes/custom/wzest/logo-wz-full.svg","logo":"https://www.webstanz.be/themes/custom/wzest/logo-wz-full.svg"}'::jsonb, '2026-02-16T04:27:43.042Z', TRUE, 5, 'd622840de127030fcdecc76daed50ca4f77fa01e2b998859dc12ea7c9b494d28', 'Webstanz SRL distingue ses clients par une approche personnalisée et innovante, transformant leurs idées en sites web performants.', NULL, 'Confiance', '[{"name":"Écoute active des besoins du client","description":"Comprendre les attentes spécifiques de chaque projet pour offrir une solution sur mesure.","frequency":"À chaque début de projet","impact":"Permet d''adapter la stratégie web à l''image et aux objectifs du client.","proof":null},{"name":"Mise en place d''une équipe dédiée","description":"Un groupe spécialisé travaille en étroite collaboration avec le client pour assurer une communication fluide.","frequency":"À chaque début de projet","impact":"Garantit un suivi régulier et des résultats optimisés.","proof":null},{"name":"Suivi post-lancement","description":"Assure le bon fonctionnement du site web après son lancement.","frequency":"Tous les mois pendant 3 mois","impact":"Permet de corriger rapidement tout problème technique et d''optimiser la performance.","proof":null}]'::jsonb, 75, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/agence-web-a-mons-belgium-webstanz/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/webstanz-0739656573/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/webstanz-0739656573/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/webstanz-0739656573/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/webstanz-0739656573/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/webstanz-0739656573/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T04:28:05.077Z","proof":"https://www.webstanz.be/fr"},{"label":"Seed: city hint","date":"2026-02-16T04:28:05.077Z","proof":"Mons"},{"label":"Extracted: city","date":"2026-02-16T04:28:05.077Z","proof":"Mons Belgium"},{"label":"BCE: mod97 valid","date":"2026-02-16T04:28:05.077Z","proof":"0739656573"},{"label":"Email extracted","date":"2026-02-16T04:28:05.077Z","proof":"info@webstanz.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T04:28:05.077Z","proof":"confidence=80"},{"label":"Phone extracted","date":"2026-02-16T04:28:05.077Z","proof":"source=text"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T04:28:05.077Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/webstanz-0739656573/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0739656573', 'Actif', 'BCE_CSV', '2026-02-16T04:27:02.257Z', '2026-02-16T04:27:02.257Z', 'WebstanZ', '2019-12-16', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T04:28:05.077Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0739656573'
    AND c_existing.slug <> 'agence-web-a-mons-belgium-webstanz'
)
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, 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, 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 'agence-web-a-mons-mentions-legales', 'BE-WAL', 'Mentions légales', 'Agence web', ARRAY['création', 'référencement', 'développement', 'maintenance', 'stratégie digitale', 'professionnels']::text[], ARRAY['Création de site web', 'Référencement naturel', 'Gestion de contenu', 'Développement d''applications mobiles', 'Formation aux métiers du web']::text[], 'sur_devis', NULL, NULL, NULL, 'Mons', '7000', 'BE', 'retourParlons de votre projetEmail :Message :Envoyer Boulevard Sainctelette 39 Mons retour retourParlons de votre projetEmail :Message :Envoyer Boule', 'http://mds-digitalagency.be/', 'https://www.facebook.com/mdsdigitalagency/', 'https://www.instagram.com/mds_digitalagency/', 'https://www.linkedin.com/company/mds-digitalagency', 'mathieu@mds-digitalagency.be', 'LauraChief Operating OfficerLisaLead Web', '+32476538593', '+32476538593', 'LauraChief Operating OfficerLisaLead Web', 'CEO', NULL, 'Mons', ARRAY['français', 'anglais']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Comment fonctionne votre processus de travail?","answer":"Notre processus commence par une étude préalable du projet, suivie d''une phase de création et de mise en œuvre, puis un suivi régulier pour s''assurer que les objectifs sont atteints."},{"question":"Offrez-vous des formations aux clients?","answer":"Oui, nous proposons des sessions de formation pour assurer une utilisation optimale des outils développés par notre équipe."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à MonsTVA et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'MDS Digital Agency est une agence web basée à Mons qui offre des services complets de création et gestion de sites internet, applications mobiles et stratégies digitales pour aider les entreprises à se développer en ligne.
Services principaux: Création de site web, Référencement naturel, Gestion de contenu, Développement d''applications mobiles, Formation aux métiers du web
Zone d''intervention: Mons', 'Création site web à Mons | MDS Digital Agency', 'Bénéficiez d''une analyse approfondie avant chaque projet pour une compréhension claire des objectifs. Spécialistes du référencement naturel et de la stratégie digitale', 'Création site web à Mons - MDS Digital Agency', 'Spécialisés en création de sites web, référencement naturel et développement d''applications mobiles. Nous accompagnons les professionnels de Mons pour une présence digitale optimisée.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"MDS Digital Agency","description":"Agence web spécialisée en création de sites internet, référencement naturel et stratégie digitale pour les professionnels.","url":"https://revelys.be/entreprises/agence-web-a-mons-mentions-legales","sameAs":["http://mds-digitalagency.be/"],"address":{"@type":"PostalAddress","streetAddress":"Boulevard Sainctelette 39","postalCode":"7000","addressLocality":"Mons"},"areaServed":"Mons","keywords":["création","référencement","développement","maintenance","stratégie digitale","professionnels","Création de site web","Référencement naturel","Gestion de contenu","Développement d''applications mobiles","Formation aux métiers du web"],"image":"https://www.mds-digitalagency.be/static/logo_mds_title_white-1affbe7c735198b84766b6117d92f9ea.svg"}'::jsonb, '2026-02-16T04:28:52.370Z', TRUE, 5, '650f1606714019644f4681cf30318b10c2b98c183f0f2b18d2b404edb22779c1', 'MDS Digital Agency vous accompagne dans la création et le développement de votre présence en ligne avec des solutions sur mesure.', NULL, 'Confiance', '[{"name":"Étude préalable du projet","description":"Analyse approfondie des besoins avant toute intervention.","frequency":"Une fois par projet","impact":"Assure une compréhension claire et complète des objectifs.","proof":null},{"name":"Suivi régulier","description":"Réunions mensuelles pour évaluer l''avancement du projet.","frequency":"Mensuelle","impact":"Permet de s''adapter rapidement aux changements et d''atteindre les objectifs.","proof":null},{"name":"Formation client","description":"Sessions de formation pour assurer une utilisation optimale des outils développés.","frequency":"Une fois par projet","impact":"Augmente l''autonomie du client et la satisfaction.","proof":null}]'::jsonb, 75, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/agence-web-a-mons-mentions-legales/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/mentions-legales-0538820152/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/mentions-legales-0538820152/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/mentions-legales-0538820152/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/mentions-legales-0538820152/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/mentions-legales-0538820152/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T04:29:14.848Z","proof":"http://mds-digitalagency.be/"},{"label":"Seed: city hint","date":"2026-02-16T04:29:14.848Z","proof":"Mons"},{"label":"Extracted: city","date":"2026-02-16T04:29:14.848Z","proof":"Mons"},{"label":"BCE: mod97 valid","date":"2026-02-16T04:29:14.848Z","proof":"0538820152"},{"label":"Email extracted","date":"2026-02-16T04:29:14.848Z","proof":"mathieu@mds-digitalagency.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T04:29:14.848Z","proof":"confidence=0.95"},{"label":"Phone extracted","date":"2026-02-16T04:29:14.848Z","proof":"source=text"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T04:29:14.848Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/mentions-legales-0538820152/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0538820152', 'Actif', 'BCE_CSV', '2026-02-16T04:28:11.451Z', '2026-02-16T04:28:11.451Z', 'MDS-PROCONSULT', '2013-09-20', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T04:29:14.848Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0538820152'
    AND c_existing.slug <> 'agence-web-a-mons-mentions-legales'
)
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, 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, 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 'seo-a-braine-le-comte-renaud-de-harlez-creation-de-sites-web', 'BE-WAL', 'Renaud De Harlez - Création de sites web', 'SEO', ARRAY['seo', 'audit technique', 'rédaction web', 'création site web', 'wordpress', 'éco-conception']::text[], ARRAY['Consultant seo', 'Audit technique', 'Rédaction optimisée pour le seo', 'Création de site web wordpress', 'Éco-conception web']::text[], NULL, 2, NULL, NULL, 'Braine-le-Comte', '7090', 'BE', '11 Chemin du Baurdiquin, , BE', 'https://renauddeharlez.be/', 'https://www.facebook.com/RenauddeharlezSEO', 'https://www.instagram.com/renauddhz/', 'https://www.linkedin.com/in/renaud-de-harlez/', 'renaud@renauddeharlez.be', 'Équipe de direction', '+32479237627', '+32479237627', 'Équipe de direction', NULL, NULL, 'Mons', ARRAY['français']::text[], '24h/24 - 7j/7', '[{"day":"lundi","open":"09:00","close":"18:00","isClosed":false},{"day":"mardi","open":"09:00","close":"18:00","isClosed":false},{"day":"mercredi","open":"09:00","close":"18:00","isClosed":false},{"day":"jeudi","open":"09:00","close":"18:00","isClosed":false},{"day":"vendredi","open":"09:00","close":"18:00","isClosed":false}]'::jsonb, 5, 14, '[{"author":"Jean B.","text":"Un expert SEO qui a su propulser mon site en tête des résultats Google. Résultats impressionnants !","rating":5,"publishedAt":null,"originalUrl":null},{"author":"Claire M.","text":"Très bon accompagnement, Renaud maîtrise parfaitement le référencement naturel.","rating":5,"publishedAt":null,"originalUrl":null},{"author":"David R.","text":"Un professionnel réactif et efficace. Mon site est mieux classé et mon trafic a doublé.","rating":5,"publishedAt":null,"originalUrl":null},{"author":"Julie L.","text":"Grâce à Renaud, notre boutique Shopify est passée de la 4ème à la 1ère page sur Google en quelques mois !","rating":5,"publishedAt":null,"originalUrl":null},{"author":"Marc T.","text":"Un accompagnement expert pour notre refonte SEO Shopify. Je recommande sans hésitation.","rating":5,"publishedAt":null,"originalUrl":null},{"author":"Sophie R.","text":"Très bon suivi et conseils précis pour optimiser le référencement naturel de notre boutique Shopify.","rating":5,"publishedAt":null,"originalUrl":null},{"author":"Mathilde A.","text":"Un expert en SEO qui a su booster le trafic de mon site en quelques mois. Très satisfait du service !","rating":5,"publishedAt":null,"originalUrl":null},{"author":"Thomas R.","text":"Approche très professionnelle et résultats concrets. Mon site est bien mieux positionné sur Google.","rating":5,"publishedAt":null,"originalUrl":null},{"author":"Sophie D.","text":"Un accompagnement personnalisé et une expertise pointue. Je recommande vivement !","rating":5,"publishedAt":null,"originalUrl":null}]'::jsonb, '[{"question":"Quels sont les avantages de travailler avec un consultant SEO?","answer":"Un consultant SEO peut vous aider à améliorer votre visibilité en ligne, augmenter le trafic qualifié sur votre site et optimiser vos conversions."},{"question":"Combien de temps faut-il pour voir des résultats après une stratégie SEO?","answer":"Les résultats du SEO peuvent prendre entre 3 à 12 mois avant d''être visibles, selon la concurrence et l''état initial du site web."},{"question":"Quelle est votre approche en matière de création de sites web?","answer":"Nous créons des sites web pensés pour le référencement naturel, sécurisés, performants et éco-conçus pour une meilleure expérience utilisateur."}]'::jsonb, 'Renaud De Harlez - Création de sites web est une entreprise de consultant seo active à Braine-le-Comte (province de Hainaut). Elle intervient notamment pour le consultant seo, l''audit technique, la rédaction optimisée pour le seo et la création de site web wordpress, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Consultant seo, Audit technique, Rédaction optimisée pour le seo, Création de site web wordpress, Éco-conception web
Zone d''intervention: Braine-le-Comte', 'Création sites web à Braine-le-Comte | Renaud De Harlez', 'Améliorez votre visibilité en ligne avec un audit technique complet. Spécialistes SEO et éco-conception pour les entreprises de Braine-le-Comte.', 'Création sites web à Braine-le-Comte - Renaud De Harlez', 'Spécialisés en création de sites web, audit technique et optimisation SEO. Offrez-vous une présence web durable grâce à nos services d''éco-conception.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Renaud De Harlez - Création de sites web","description":"Spécialisés en création de sites web, audit technique et optimisation SEO.","url":"https://revelys.be/entreprises/seo-a-braine-le-comte-renaud-de-harlez-creation-de-sites-web","sameAs":["https://renauddeharlez.be/"],"address":{"@type":"PostalAddress","streetAddress":"11 Chemin du Baurdiquin","postalCode":"7090","addressLocality":"Braine-le-Comte"},"areaServed":["Braine-le-Comte"],"keywords":["seo","audit technique","rédaction web","création site web","wordpress","éco-conception","Consultant seo","Audit technique","Rédaction optimisée pour le seo","Création de site web wordpress","Éco-conception web"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/renaud-de-harlez-creation-de-sites-web-0840519054/logo.webp"]}'::jsonb, '2026-02-16T04:32:06.331Z', TRUE, 5, 'beb10f4fdbcdacba44c98af2b1dc4a65f7b1b44dd6103044df756da981720c9c', 'Renaud De Harlez offre des solutions SEO sur mesure pour améliorer la visibilité en ligne de ses clients, avec une approche technique et stratégique.', NULL, 'Confiance', '[{"name":"Audit technique complet du site web","description":"Analyse détaillée de l''optimisation technique du site pour améliorer sa performance SEO.","frequency":"Une fois par projet","impact":"Améliore la visibilité en ligne et le référencement naturel.","proof":null},{"name":"Formation personnalisée sur l''optimisation du site web","description":"Session de formation pour aider les clients à gérer efficacement leur propre site web après sa création.","frequency":"Une fois par client","impact":"Permet aux clients d''être autonomes dans la gestion et l''évolution de leur site.","proof":null},{"name":"Suivi régulier des performances SEO","description":"Analyse mensuelle des résultats SEO pour ajuster les stratégies en fonction des données.","frequency":"Mensuel","impact":"Assure une optimisation constante et améliore la visibilité sur le long terme.","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/renaud-de-harlez-creation-de-sites-web-0840519054/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/renaud-de-harlez-creation-de-sites-web-0840519054/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/renaud-de-harlez-creation-de-sites-web-0840519054/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/renaud-de-harlez-creation-de-sites-web-0840519054/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/renaud-de-harlez-creation-de-sites-web-0840519054/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/renaud-de-harlez-creation-de-sites-web-0840519054/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T04:32:29.634Z","proof":"https://renauddeharlez.be/agence-seo-mons/"},{"label":"Seed: city hint","date":"2026-02-16T04:32:29.634Z","proof":"Mons"},{"label":"Extracted: city","date":"2026-02-16T04:32:29.634Z","proof":"Braine-le-Comte"},{"label":"BCE: mod97 valid","date":"2026-02-16T04:32:29.634Z","proof":"0840519054"},{"label":"Email extracted","date":"2026-02-16T04:32:29.634Z","proof":"renaud@renauddeharlez.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T04:32:29.634Z","proof":"confidence=3"},{"label":"Phone extracted","date":"2026-02-16T04:32:29.634Z","proof":"source=jsonld"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T04:32:29.634Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/renaud-de-harlez-creation-de-sites-web-0840519054/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0840519054', 'Actif', 'BCE_CSV', '2026-02-16T04:31:21.292Z', '2026-02-16T04:31:21.292Z', 'de Harlez de Deulin, Renaud', '2023-05-06', 'Personne physique', NULL, 'Situation normale', '2026-02-11', '2026-02-16T04:32:29.634Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0840519054'
    AND c_existing.slug <> 'seo-a-braine-le-comte-renaud-de-harlez-creation-de-sites-web'
)
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, 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, 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 'graphiste-a-mons-group-graphic', 'BE-WAL', 'Group Graphic', 'Graphiste', ARRAY['création graphique', 'impression haute définition', 'enseigne lumineuse', 'lettrage véhicule', 'signalétique intérieure', 'proximité client']::text[], ARRAY['Création d''identité visuelle', 'Impression papier', 'Création de site web', 'Motion design 2d 3d', 'Lettrage véhicule']::text[], 'horaire', NULL, NULL, TRUE, 'Mons', '7034', 'BE', 'Rue des Anglais - (Obourg)', 'https://www.group-graphic.be/', 'https://www.facebook.com/LeGroupGraphic/?locale=fr_FR', 'https://www.instagram.com/legroupgraphic', 'https://be.linkedin.com/company/le-group-graphic', 'info@group-graphic.be', 'Équipe de direction', '+3265348954', '+3265348954', 'Équipe de direction', NULL, NULL, 'Mons', ARRAY['français', 'anglais']::text[], '24h/24 - 7j/7', NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : création d''identité visuelle, impression papier, création de site web et motion design 2d 3d. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Mons et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Group Graphic est une entreprise de création d''identité visuelle active à Mons (province de Hainaut). Elle intervient notamment pour la création d''identité visuelle, l''impression papier, la création de site web et la motion design 2d 3d, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Création d''identité visuelle, Impression papier, Création de site web, Motion design 2d 3d, Lettrage véhicule
Zone d''intervention: Mons', 'Graphiste / branding à Mons | Group Graphic', 'Bénéficiez de conseils personnalisés pour maximiser votre communication visuelle. Des créations graphiques et des impressions haute définition adaptées aux besoins', 'Group Graphic - Graphiste & Branding à Mons', 'Découvrez Group Graphic, un studio spécialisé en création d''identité visuelle et impression haute définition. Nous vous accompagnons pour une communication visuelle efficace et adaptée aux besoins', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Group Graphic","description":"Graphiste / branding à Mons, offrant des services de création d''identité visuelle et impression haute définition.","url":"https://revelys.be/entreprises/graphiste-a-mons-group-graphic","sameAs":["https://www.group-graphic.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue des Anglais - (Obourg)","postalCode":"7034","addressLocality":"Mons"},"areaServed":"Mons","keywords":["création graphique","impression haute définition","enseigne lumineuse","lettrage véhicule","signalétique intérieure","proximité client","Création d''identité visuelle","Impression papier","Création de site web","Motion design 2d 3d"],"image":{"@type":"ImageObject","url":"https://www.group-graphic.be/wp-content/uploads/2024/03/gg_logo.svg"}}'::jsonb, '2026-02-16T04:35:18.489Z', TRUE, 5, '69bea893f5ed3f20a5a556dde89419b909bea78951b4ef92e17121fe8cf0ff17', 'Group Graphic offre des conseils personnalisés et une production en interne pour maximiser l’impact de votre communication visuelle.', NULL, 'Confiance', '[{"name":"Consultation initiale","description":"Une rencontre avec un conseiller créatif pour comprendre vos besoins.","frequency":"Une fois par projet","impact":"Établissement d''un plan stratégique personnalisé","proof":null},{"name":"Suivi régulier","description":"Des appels ou des réunions pour s''assurer que le projet progresse comme prévu.","frequency":"Une fois par mois","impact":"Garantit un service après-vente irréprochable","proof":null},{"name":"Livraison finale","description":"Installation et mise en place de l''identité visuelle créée.","frequency":"Une fois par projet","impact":"Vos clients sont immédiatement impressionnés par votre nouvelle image","proof":null}]'::jsonb, 75, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/graphiste-a-mons-group-graphic/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/group-graphic-0811288501/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/group-graphic-0811288501/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/group-graphic-0811288501/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/group-graphic-0811288501/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/group-graphic-0811288501/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T04:35:39.950Z","proof":"https://www.group-graphic.be/"},{"label":"Seed: city hint","date":"2026-02-16T04:35:39.950Z","proof":"Mons"},{"label":"Extracted: city","date":"2026-02-16T04:35:39.950Z","proof":"Mons"},{"label":"BCE: mod97 valid","date":"2026-02-16T04:35:39.950Z","proof":"0811288501"},{"label":"Email extracted","date":"2026-02-16T04:35:39.950Z","proof":"info@group-graphic.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T04:35:39.950Z","proof":"confidence=80"},{"label":"Phone extracted","date":"2026-02-16T04:35:39.950Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T04:35:39.950Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/group-graphic-0811288501/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0811288501', 'Actif', 'BCE_CSV', '2026-02-16T04:34:47.988Z', '2026-02-16T04:34:47.988Z', 'VISUAL CARTES.BE', '2009-04-15', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T04:35:39.950Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0811288501'
    AND c_existing.slug <> 'graphiste-a-mons-group-graphic'
)
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, 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, 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 'developpeur-a-mons-contactez-noussuivez-nous-sur-mission-target', 'BE-WAL', 'Mission Target', 'Développeur', ARRAY['développement sur mesure', 'expertise technique', 'collaboration continue', 'flexibilité', 'proximité client', 'solutions innovantes']::text[], ARRAY['Développement .net', 'Front end interfaces', 'Business intelligence', 'Bases de données']::text[], NULL, NULL, NULL, NULL, 'Mons Contactez-nousSuivez-nous sur', '7000', 'BE', 'Rue Jacques Prévert 14 boîte 0.2, Mons, Hainaut, BE', 'https://www.missiontarget.com/', NULL, NULL, 'https://www.linkedin.com/company/mission-target/', 'info@missiontarget.com', 'Équipe de direction', '+32476206311', '+32476206311', 'Équipe de direction', NULL, NULL, 'Mons', ARRAY['français', 'anglais']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : développement .net, front end interfaces, business intelligence et bases de données. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Mons Contactez-nousSuivez-nous sur et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Mission Target, basée à Mons, offre des services de développement logiciel .NET, front-end et Business Intelligence sur mesure. L''équipe pluridisciplinaire assure une collaboration continue et personnalisée pour répondre aux défis numériques complexes.
Services principaux: Développement .net, Front end interfaces, Business intelligence, Bases de données
Zone d''intervention: Mons Contactez-nousSuivez-nous sur', 'Développement sur mesure à Mons | Mission Target', 'Bénéficiez d''une expertise technique et de solutions innovantes. Suivi régulier des projets pour une gestion efficace.', 'Mission Target - Développeur / Automatisation à Mons', 'Spécialisés en développement sur mesure, Mission Target offre des solutions techniques innovantes avec un suivi hebdomadaire des projets.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Mission Target","description":"Développement sur mesure et expertise technique pour une gestion efficace de vos projets.","url":"https://revelys.be/entreprises/developpeur-a-mons-contactez-noussuivez-nous-sur-mission-target","sameAs":["https://www.missiontarget.com/"],"address":{"@type":"PostalAddress","streetAddress":"Rue Jacques Prévert 14 boîte 0.2","postalCode":"7000","addressLocality":"Mons Contactez-nousSuivez-nous sur","addressRegion":"Hainaut","addressCountry":"BE"},"areaServed":"Mons Contactez-nousSuivez-nous sur","keywords":["développement sur mesure","expertise technique","collaboration continue","flexibilité","proximité client","solutions innovantes","Développement .net","Front end interfaces","Business intelligence","Bases de données"],"image":"https://www.missiontarget.com/wp-content/themes/mission_target/assets/imgs/MISSION_TARGET-logo.svg"}'::jsonb, '2026-02-16T04:42:07.085Z', TRUE, 5, '4cba953bce029cf6d0ad5d9f4e2a484efc4922fe6e45e16d395e8802ff39dcfb', 'Mission Target distingue par une approche personnalisée et des équipes multidisciplinaires formées aux dernières technologies.', NULL, 'Confiance', '[{"name":"Formation continue","description":"Nos ingénieurs bénéficient d''une formation régulière pour maîtriser les technologies actuelles.","frequency":"mensuelle","impact":"augmente la compétence technique et l''efficacité de nos équipes.","proof":null},{"name":"Suivi des projets","description":"Nous assurons un suivi régulier pour garantir le bon déroulement des projets.","frequency":"hebdomadaire","impact":"permet une gestion efficace et réactive.","proof":null},{"name":"Réunions d''équipe","description":"Des réunions régulières pour renforcer la cohésion et l''efficacité de nos équipes.","frequency":"mensuelle","impact":"améliore la communication et la collaboration.","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/developpeur-a-mons-contactez-noussuivez-nous-sur-mission-target/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/mission-target-0718839482/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/mission-target-0718839482/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/mission-target-0718839482/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/mission-target-0718839482/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/mission-target-0718839482/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T04:42:27.269Z","proof":"https://www.missiontarget.com/developpement-logiciels/"},{"label":"Seed: city hint","date":"2026-02-16T04:42:27.269Z","proof":"Mons"},{"label":"Extracted: city","date":"2026-02-16T04:42:27.269Z","proof":"Mons Contactez-nousSuivez-nous sur"},{"label":"BCE: mod97 valid","date":"2026-02-16T04:42:27.269Z","proof":"0718839482"},{"label":"Email extracted","date":"2026-02-16T04:42:27.269Z","proof":"info@missiontarget.com"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T04:42:27.269Z","proof":"confidence=0.95"},{"label":"Phone extracted","date":"2026-02-16T04:42:27.269Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T04:42:27.269Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/mission-target-0718839482/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0718839482', 'Actif', 'BCE_CSV', '2026-02-16T04:41:31.794Z', '2026-02-16T04:41:31.794Z', 'MISSION TARGET', '2019-01-17', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T04:42:27.269Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0718839482'
    AND c_existing.slug <> 'developpeur-a-mons-contactez-noussuivez-nous-sur-mission-target'
)
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, 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, 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 'support-it-a-tournai-sip', 'BE-WAL', 'SIP', 'Support IT', ARRAY['proactif', 'qualité', 'pme', 'organisations', 'belgique', 'france', 'luxembourg', 'cybersécurité']::text[], ARRAY['Support it', 'Cybersécurité', 'Infrastructure & cloud', 'Erp compta', 'E-commerce']::text[], 'sur_devis', NULL, NULL, NULL, 'Tournai', '7522', 'BE', 'Rue de la Terre à Briques, 6, , Wallonie, BE', 'https://valexgroup.be/', 'https://www.facebook.com/siptournai', NULL, 'https://www.linkedin.com/company/s-i-p/', 'sales@valexgroup.be', 'Équipe de direction', '+3269890826', '+3269890826', 'Équipe de direction', NULL, NULL, 'Mons', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : support it, cybersécurité, infrastructure & cloud et erp compta. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Tournai et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité est suivie via nos experts établissent un diagnostic initial sans engagement pour associer un budget à votre projet."}]'::jsonb, 'SIP est une entreprise de sécurité active à Tournai (province de Hainaut). Elle intervient notamment pour le support it, la cybersécurité, l''infrastructure & cloud et l''erp compta, avec une approche orientée diagnostic et résolution durable des problèmes. Ses interventions s''adressent aux particuliers et aux professionnels à Tournai et dans les communes voisines, avec un premier échange clair avant intervention.
Services principaux: Support it, Cybersécurité, Infrastructure & cloud, Erp compta, E-commerce
Zone d''intervention: Tournai', 'Support IT et cybersécurité à Tournai | SIP', 'Optimisez votre infrastructure IT avec des audits gratuits. Expertise constante pour les PME belges, françaises et luxembourgeoises.', 'SIP - Support IT et Cybersécurité à Tournai', 'SIP offre des services de support IT et cybersécurité adaptés aux besoins spécifiques des PME en Belgique, France et Luxembourg. Nos audits technico-commerciaux gratuits aident à budgétiser les', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"SIP","description":"Support IT et cybersécurité pour PME en Belgique, France et Luxembourg. Audits gratuits et formation continue des consultants.","url":"https://revelys.be/entreprises/support-it-a-tournai-sip","sameAs":["https://valexgroup.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue de la Terre à Briques, 6","postalCode":"7522","addressLocality":"Tournai","addressCountry":"BE"},"areaServed":["Tournai","France","Luxembourg"],"keywords":["proactif","qualité","pme","organisations","belgique","france","luxembourg","cybersécurité","Support it","Cybersécurité","Infrastructure & cloud","Erp compta","E-commerce"],"image":["https://sip.be/wp-content/themes/theme-enfant/img/logo-bleu.svg"]}'::jsonb, '2026-02-16T04:48:15.832Z', TRUE, 5, 'ab056d552167a17a073884406d6e4541e06834d9f4b924b927acabb12423b8c4', 'SIP vous accompagne dans vos choix IT sur le long terme avec des solutions adaptées à chaque client.', NULL, 'Confiance', '[{"name":"Audit technico-commerciaux gratuits","description":"Nos experts établissent un diagnostic initial sans engagement pour associer un budget à votre projet.","frequency":"Une fois par an","impact":"Permet d''optimiser l''infrastructure IT et de budgétiser les projets.","proof":null},{"name":"Formation continue des consultants","description":"Nos experts sont formés sur les technologies émergentes pour vous offrir le meilleur service.","frequency":"Tous les trimestres","impact":"Assure une expertise constante et pertinente.","proof":null},{"name":"Suivi personnalisé","description":"Une équipe dédiée vous accompagne dans vos projets IT, de la conception à l''implémentation.","frequency":"Tous les mois","impact":"Renforce la relation client et garantit un service sur mesure.","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/support-it-a-tournai-sip/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/sip-0744713639/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/sip-0744713639/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/sip-0744713639/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/sip-0744713639/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/sip-0744713639/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T04:48:38.837Z","proof":"https://valexgroup.be/"},{"label":"Seed: city hint","date":"2026-02-16T04:48:38.837Z","proof":"Mons"},{"label":"Extracted: city","date":"2026-02-16T04:48:38.837Z","proof":"Tournai"},{"label":"BCE: mod97 valid","date":"2026-02-16T04:48:38.837Z","proof":"0744713639"},{"label":"Email extracted","date":"2026-02-16T04:48:38.837Z","proof":"sales@valexgroup.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T04:48:38.837Z","proof":"confidence=0.95"},{"label":"Phone extracted","date":"2026-02-16T04:48:38.837Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T04:48:38.837Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/sip-0744713639/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0744713639', 'Actif', 'BCE_CSV', '2026-02-16T04:47:42.107Z', '2026-02-16T04:47:42.107Z', 'VALEX GROUP', '2020-03-04', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T04:48:38.837Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0744713639'
    AND c_existing.slug <> 'support-it-a-tournai-sip'
)
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, 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, 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 'plombier-a-chapelle-lez-a-antoine-new', 'BE-WAL', 'A. Antoine - New', 'Plombier', ARRAY['dépannage', 'installation', 'entretien', 'chauffage', 'plomberie', 'sécurité', 'rapide']::text[], ARRAY['Dépannage sanitaire', 'Installation d''adoucisseurs d''eau', 'Réparation de chauffe-eau', 'Entretien de systèmes de chauffage']::text[], 'sur_devis', NULL, NULL, TRUE, 'Chapelle-lez-', '7160', 'BE', 'Chaussée Romaine 30', 'https://www.a-antoine.be/', 'https://www.facebook.com/trooper121/?ref=page_internal', NULL, NULL, 'service.clientele@aantoinesprl.benr', 'Équipe de direction', '+3264265391', '+3264265391', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : dépannage sanitaire, installation d''adoucisseurs d''eau, réparation de chauffe-eau et entretien de systèmes de chauffage. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Chapelle-lez- et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'A. Antoine - New est une entreprise de plomberie active à Chapelle-lez- (province de Hainaut). Elle intervient notamment pour le dépannage sanitaire, l''installation d''adoucisseurs d''eau, la réparation de chauffe-eau et l''entretien de systèmes de chauffage, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Dépannage sanitaire, Installation d''adoucisseurs d''eau, Réparation de chauffe-eau, Entretien de systèmes de chauffage
Zone d''intervention: Chapelle-lez-', 'Plombier à Chapelle-lez-Herlaimont | A. Antoine - New', 'Dépannage rapide et professionnel pour plomberie et chauffage. Entretien annuel des chauffe-eaux assuré pour une longévité optimale.', 'Plombier à Chapelle-lez-Herlaimont | A Antoine - New', 'A Antoine offre un service de dépannage rapide et professionnel en plomberie et chauffage. Entretien annuel des chauffe-eaux pour une longévité optimale.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"A. Antoine - New","description":"Dépannage rapide et professionnel en plomberie et chauffage.","url":"https://revelys.be/entreprises/plombier-a-chapelle-lez-a-antoine-new","sameAs":["https://www.a-antoine.be/"],"address":{"@type":"PostalAddress","streetAddress":"Chaussée Romaine 30","postalCode":"7160","addressLocality":"Chapelle-lez-"},"areaServed":["Chapelle-lez-"],"keywords":["dépannage","installation","entretien","chauffage","plomberie","sécurité","rapide","Dépannage sanitaire","Installation d''adoucisseurs d''eau","Réparation de chauffe-eau","Entretien de systèmes de chauffage"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-antoine-new-0449402978/logo.webp"]}'::jsonb, '2026-02-16T04:51:21.187Z', TRUE, 5, '49f2fa33a310057ef40353342a1c885b3d1c1b234a66d0fa1177e2c910d288c1', 'A Antoine vous offre un service de dépannage rapide et professionnel, garantissant votre tranquillité d''esprit.', NULL, 'Sérénité', '[{"name":"Réparation de fuites","description":"Notre équipe intervient rapidement pour réparer les fuites d''eau.","frequency":"Quand nécessaire","impact":"proof=null","proof":null},{"name":"Entretien annuel des chauffe-eaux","description":"Nous assurons l''entretien régulier de vos chauffe-eaux pour une longévité optimale.","frequency":"Annuellement","impact":"proof=null","proof":null},{"name":"Installation d''adoucisseurs d''eau","description":"Nous installons des adoucisseurs d''eau de qualité pour protéger vos équipements.","frequency":"Sur demande","impact":"proof=null","proof":null}]'::jsonb, 75, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-antoine-new-0449402978/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-antoine-new-0449402978/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-antoine-new-0449402978/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-antoine-new-0449402978/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-antoine-new-0449402978/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-antoine-new-0449402978/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T04:51:44.131Z","proof":"https://www.a-antoine.be/"},{"label":"Seed: city hint","date":"2026-02-16T04:51:44.131Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T04:51:44.131Z","proof":"Chapelle-lez-"},{"label":"BCE: mod97 valid","date":"2026-02-16T04:51:44.131Z","proof":"0449402978"},{"label":"Email extracted","date":"2026-02-16T04:51:44.131Z","proof":"service.clientele@aantoinesprl.benr"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T04:51:44.131Z","proof":"confidence=0.92"},{"label":"Phone extracted","date":"2026-02-16T04:51:44.131Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T04:51:44.131Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-antoine-new-0449402978/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0449402978', 'Actif', 'BCE_CSV', '2026-02-16T04:50:48.039Z', '2026-02-16T04:50:48.039Z', 'A. ANTOINE', '1993-02-09', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T04:51:44.131Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0449402978'
    AND c_existing.slug <> 'plombier-a-chapelle-lez-a-antoine-new'
)
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, 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, 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 'electricien-a-la-louviere-db-domotique', 'BE-WAL', 'DB Domotique', 'Électricien', ARRAY['électricité générale', 'domotique', 'conformité', 'câblage informatique', 'surveillance', 'expertise technique']::text[], ARRAY['Installation de électrique', 'Remise en conformité', 'Vidéophonie', 'Câblage réseau', 'Caméra de surveillance']::text[], 'sur_devis', NULL, NULL, TRUE, 'La Louvière', '7100', 'BE', NULL, 'https://dbdomotique.be/', 'https://www.facebook.com/Db.domotique/', NULL, NULL, 'db.domotique@outlook.com', 'Équipe de direction', '+32495707685', '+32495707685', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], '24h/24 - 7j/7', NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : installation de électrique, remise en conformité, vidéophonie et câblage réseau. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à La Louvière et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité est suivie via jérôme De Bruyne assure le suivi de chaque projet depuis l''installation jusqu''à la finalisation."}]'::jsonb, 'DB Domotique est une entreprise de électricité active à La Louvière (province de Hainaut). Elle intervient notamment pour l''installation de électrique, le remise en conformité, la vidéophonie et le câblage réseau, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Installation de électrique, Remise en conformité, Vidéophonie, Câblage réseau, Caméra de surveillance
Zone d''intervention: La Louvière', 'Électricien à La Louvière | DB Domotique', 'Installation électrique et domotique sur mesure pour optimiser la sécurité. Devis gratuits sans engagement.', 'Électricien et domotique sur mesure à La Louvière', 'DB Domotique propose des solutions électriques et de domotique personnalisées pour améliorer votre confort et sécurité. Demandez un devis gratuit!', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"DB Domotique","description":"Électricien et domotique sur mesure à La Louvière.","url":"https://revelys.be/entreprises/electricien-a-la-louviere-db-domotique","sameAs":["https://dbdomotique.be/"],"address":{"@type":"PostalAddress","postalCode":"7100","addressLocality":"La Louvière"},"areaServed":"La Louvière","keywords":["électricité générale","domotique","conformité","câblage informatique","surveillance","expertise technique","Installation de électrique","Remise en conformité","Vidéophonie","Câblage réseau","Caméra de surveillance"],"image":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/db-domotique-0660772413/logo.webp"}}'::jsonb, '2026-02-16T04:53:54.951Z', TRUE, 5, 'a6c767e7a22954796ee16dea4b68a198c70192dc57dde351b219d196aa04f3f0', 'DB Domotique vous offre des solutions électriques et domotiques sur mesure, garantissant une sécurité optimale et un confort quotidien.', NULL, 'Sécurité', '[{"name":"Patron sur chantier du début à la fin","description":"Jérôme De Bruyne assure le suivi de chaque projet depuis l''installation jusqu''à la finalisation.","frequency":"Chaque projet","impact":"Assure un travail soigné et personnalisé","proof":null},{"name":"Devis gratuit sur mesure","description":"Un devis détaillé sans engagement pour vous aider à planifier votre budget.","frequency":"Sur demande","impact":"Permet une prise de décision éclairée.","proof":null},{"name":"Excellent rapport qualité/prix","description":"Des services compétitifs et de haute qualité pour un meilleur retour sur investissement.","frequency":"Toujours","impact":"Satisfait vos attentes sans vous ruiner","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/db-domotique-0660772413/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/db-domotique-0660772413/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/db-domotique-0660772413/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/db-domotique-0660772413/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/db-domotique-0660772413/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/db-domotique-0660772413/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T04:54:15.881Z","proof":"https://dbdomotique.be/electricite/la-louviere"},{"label":"Seed: city hint","date":"2026-02-16T04:54:15.881Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T04:54:15.881Z","proof":"La Louvière"},{"label":"BCE: mod97 valid","date":"2026-02-16T04:54:15.881Z","proof":"0660772413"},{"label":"Email extracted","date":"2026-02-16T04:54:15.881Z","proof":"db.domotique@outlook.com"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T04:54:15.881Z","proof":"confidence=0.9"},{"label":"Phone extracted","date":"2026-02-16T04:54:15.881Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T04:54:15.881Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/db-domotique-0660772413/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0660772413', 'Actif', 'BCE_CSV', '2026-02-16T04:53:24.762Z', '2026-02-16T04:53:24.762Z', 'De Bruyne, Jérôme', '2016-08-08', 'Personne physique', NULL, 'Situation normale', '2026-02-11', '2026-02-16T04:54:15.881Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0660772413'
    AND c_existing.slug <> 'electricien-a-la-louviere-db-domotique'
)
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, 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, 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-a-managee-mail-serrurerie-inghels', 'BE-WAL', 'Serrurerie Inghels', 'Serrurier', ARRAY['serrurier local', 'intervention rapide', 'expertise éprouvée', 'audit complet', 'réactivité maximale', 'fns membre']::text[], ARRAY['Dépannage d’urgence', 'Ouverture de porte', 'Remplacement de serrure', 'Réparation de serrure', 'Reproduction de clé', 'Conseils et audit de sécurité']::text[], 'sur_devis', NULL, NULL, NULL, 'ManageE-mail', '7170', 'BE', 'Grand'' Rue 19', 'https://serrurerieinghels.be/', NULL, NULL, NULL, 'manageinfo@serrurerieinghels.be', 'Équipe de direction', '+3264833020', '+3264833020', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], '24h/24 - 7j/7', NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : dépannage d’urgence, ouverture de porte, remplacement de serrure et réparation de serrure. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à ManageE-mail et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Serrurerie Inghels est une entreprise de serrurerie active à ManageE-mail (province de Hainaut). Elle intervient notamment pour le dépannage d’urgence, l''ouverture de porte, le remplacement de serrure et la réparation de serrure, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Dépannage d’urgence, Ouverture de porte, Remplacement de serrure, Réparation de serrure, Reproduction de clé, Conseils et audit de sécurité
Zone d''intervention: ManageE-mail', 'Serrurerie à Manage | Serrurerie Inghels', 'Intervention rapide et expertise éprouvée pour sécuriser votre porte. Diagnostic précis sur place.', 'Serrurerie Inghels - Serrurier à Manage', 'Serrurerie Inghels, serrurier local à Manage offrant des interventions rapides et une expertise éprouvée pour sécuriser vos portes.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Serrurerie Inghels","description":"Intervention rapide et expertise éprouvée pour sécuriser votre porte. Diagnostic précis sur place.","url":"https://revelys.be/entreprises/serrurier-a-managee-mail-serrurerie-inghels","sameAs":["https://serrurerieinghels.be/"],"address":{"@type":"PostalAddress","streetAddress":"Grand'' Rue 19","postalCode":"7170","addressLocality":"ManageE-mail"},"areaServed":"ManageE-mail","keywords":["serrurier local","intervention rapide","expertise éprouvée","audit complet","réactivité maximale","fns membre","Dépannage d’urgence","Ouverture de porte","Remplacement de serrure","Réparation de serrure","Reproduction de clé","Conseils et audit de sécurité"],"image":["https://serrurerieinghels.be/wp-content/uploads/2025/10/Logo-Inghels.svg"]}'::jsonb, '2026-02-16T05:02:25.418Z', TRUE, 5, '5c950dae47172408cce6a29f896e8313887aef4e62c1db9ccd37f98234f0e655', 'Chez Serrurerie Inghels, nous plaçons la satisfaction du client et l’éthique au premier plan. Nous intervenons avec outillage professionnel, méthode rigoureuse, et conseils adaptés à votre porte et à votre budget.', NULL, 'Confiance', '[{"name":"Contactez-nous pour une intervention rapide","description":"Appelez dès maintenant votre serrurier à Manage pour un dépannage sans attente.","frequency":"Une fois par urgence","impact":"Rapidité d''intervention","proof":null},{"name":"Diagnostic précis sur place","description":"Nous établissons un diagnostic précis afin de vous proposer la solution la plus adaptée.","frequency":"Une fois par intervention","impact":"Solution efficace","proof":null},{"name":"Conseils personnalisés pour prévenir les problèmes","description":"Nous assurons la sécurisation complète de votre porte et vous donnons des conseils personnalisés.","frequency":"Une fois par intervention","impact":"Prévention future","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurier-a-managee-mail-serrurerie-inghels/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurerie-inghels-1028847227/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurerie-inghels-1028847227/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurerie-inghels-1028847227/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurerie-inghels-1028847227/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurerie-inghels-1028847227/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T05:02:47.206Z","proof":"https://serrurerieinghels.be/serrurier-la-louviere/"},{"label":"Seed: city hint","date":"2026-02-16T05:02:47.206Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T05:02:47.206Z","proof":"ManageE-mail"},{"label":"BCE: mod97 valid","date":"2026-02-16T05:02:47.206Z","proof":"1028847227"},{"label":"Email extracted","date":"2026-02-16T05:02:47.206Z","proof":"manageinfo@serrurerieinghels.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T05:02:47.206Z","proof":"confidence=0.9"},{"label":"Phone extracted","date":"2026-02-16T05:02:47.206Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T05:02:47.206Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/serrurerie-inghels-1028847227/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE1028847227', 'Actif', 'BCE_CSV', '2026-02-16T05:01:48.550Z', '2026-02-16T05:01:48.550Z', 'Serrurerie Inghels', '2025-10-08', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T05:02:47.206Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE1028847227'
    AND c_existing.slug <> 'serrurier-a-managee-mail-serrurerie-inghels'
)
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, 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, 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-a-la-louviere-lock-security', 'BE-WAL', 'Lock Security', 'Serrurier', ARRAY['serrurier rapide', 'dépannage urgent', 'porte blindée', 'installation sécurisée', 'service professionnel', 'confiance']::text[], ARRAY['Réparation de serrures', 'Remplacement de cylindres', 'Ouverture de portes', 'Installation de portes blindées']::text[], 'sur_devis', NULL, NULL, TRUE, 'La Louvière', '7500', 'BE', 'Rue Royale 34', 'https://www.lock-security.be/', 'https://www.facebook.com/locksecu/', NULL, NULL, 'info@lock-security.be', 'Équipe de direction', '+32474501277', '+32474501277', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], NULL, '[{"day":"mercredi","open":"09:00","close":"12:30","isClosed":false},{"day":"vendredi","open":"09:00","close":"12:30","isClosed":false},{"day":"samedi","open":"09:00","close":"13:00","isClosed":false}]'::jsonb, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : réparation de serrures, remplacement de cylindres, ouverture de portes et installation de portes blindées. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Doornik Tel depannage et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Lock Security est une entreprise de serrurerie active à La Louvière (province de Hainaut). Elle intervient notamment pour la réparation de serrures, le remplacement de cylindres, l''ouverture de portes et l''installation de portes blindées, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Réparation de serrures, Remplacement de cylindres, Ouverture de portes, Installation de portes blindées
Zone d''intervention: La Louvière', 'Serrurier à La Louvière | Lock Security', 'Réparation rapide et efficace pour sécuriser votre maison. Formation continue des techniciens pour un service professionnel.', 'Lock Security - Serrurerie à Doornik', 'Fournit des solutions de sécurité rapides et fiables avec une formation régulière des techniciens, assurant la protection de votre maison.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Lock Security","description":"Serrurerie rapide et sécurisée pour Doornik Tel depannage","url":"https://revelys.be/entreprises/serrurier-a-la-louviere-lock-security","sameAs":["https://www.lock-security.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue Royale 34","postalCode":"7500","addressLocality":"La Louvière"},"areaServed":"La Louvière","keywords":["serrurier rapide","dépannage urgent","porte blindée","installation sécurisée","service professionnel","confiance","Réparation de serrures","Remplacement de cylindres","Ouverture de portes","Installation de portes blindées"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/lock-security-0563327104/logo.webp"]}'::jsonb, '2026-02-16T05:05:23.169Z', TRUE, 5, '9fd8ce35e1650283d316fd178ab9f35dc695e459c0579e7ca00eaa6e9f8dfdde', 'Lock Security vous offre des solutions de sécurité rapides et efficaces pour protéger votre maison.', NULL, 'Sécurité', '[{"name":"Réponse rapide aux urgences","description":"Nos techniciens interviennent rapidement pour résoudre vos problèmes de serrurerie.","frequency":"24/7","impact":"proof=null","proof":null},{"name":"Formation continue des techniciens","description":"Chaque membre de notre équipe est formé régulièrement pour maintenir un haut niveau de compétence.","frequency":"Annuelle","impact":"proof=null","proof":null},{"name":"Installation de portes blindées","description":"Nous installons des portes blindées pour renforcer la sécurité de votre maison.","frequency":"Sur demande","impact":"proof=null","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/lock-security-0563327104/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/lock-security-0563327104/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/lock-security-0563327104/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/lock-security-0563327104/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/lock-security-0563327104/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/lock-security-0563327104/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T05:05:43.772Z","proof":"https://www.lock-security.be/fr/serrurier-la-louviere/"},{"label":"Seed: city hint","date":"2026-02-16T05:05:43.772Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T05:05:43.772Z","proof":"La Louvière"},{"label":"BCE: mod97 valid","date":"2026-02-16T05:05:43.772Z","proof":"0563327104"},{"label":"Email extracted","date":"2026-02-16T05:05:43.772Z","proof":"info@lock-security.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T05:05:43.772Z","proof":"confidence=100"},{"label":"Phone extracted","date":"2026-02-16T05:05:43.772Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T05:05:43.772Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/lock-security-0563327104/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0563327104', 'Actif', 'BCE_CSV', '2026-02-16T05:04:44.329Z', '2026-02-16T05:04:44.329Z', 'Lock Security', '2014-09-25', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T05:05:43.772Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0563327104'
    AND c_existing.slug <> 'serrurier-a-la-louviere-lock-security'
)
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, 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, 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-a-la-louviere-votre-expert-en-toiture-a-la-louviere', 'BE-WAL', 'Votre expert en toiture à La Louvière', 'Toiture', ARRAY['confiance', 'qualité supérieure', 'écologique', 'durabilité', 'sécurité', 'expertise']::text[], ARRAY['Réparation de fuites', 'Entretien du chauffe-eau', 'Isolation thermique', 'Pose de tuiles', 'Remplacement d''ardoises']::text[], 'sur_devis', NULL, NULL, TRUE, 'La Louvière', '7100', 'BE', NULL, 'https://rjconcepttoiture.be/', 'https://www.facebook.com/johanruttar', 'https://www.instagram.com/rj_concept_toiture/', NULL, 'johan@rjconcepttoiture.be', 'Équipe de direction', '+32492778872', '+32492778872', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : réparation de fuites, entretien du chauffe-eau, isolation thermique et pose de tuiles. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à La Louvière et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Votre expert en toiture à La Louvière est une entreprise de toiture active à La Louvière (province de Hainaut). Elle intervient notamment pour la réparation de fuites, l''entretien du chauffe-eau, l''isolation thermique et la pose de tuiles, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Réparation de fuites, Entretien du chauffe-eau, Isolation thermique, Pose de tuiles, Remplacement d''ardoises
Zone d''intervention: La Louvière', 'Expert en toiture à La Louvière | Votre expert en toiture', 'Réparation de fuites et isolation thermique avec des matériaux écologiques. Spécialistes pour votre sécurité et durabilité dans la région.', 'Expertise en toiture à La Louvière', 'Spécialisés en réparations et entretien de toitures, nous offrons des solutions écologiques et sécuritaires. Contactez-nous pour votre projet de toiture dans la région.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Votre expert en toiture à La Louvière","description":"Réparations et entretien de toitures avec des matériaux écologiques pour la sécurité et la durabilité.","url":"https://revelys.be/entreprises/toiture-a-la-louviere-votre-expert-en-toiture-a-la-louviere","sameAs":["https://rjconcepttoiture.be/"],"address":{"@type":"PostalAddress","postalCode":"7100","addressLocality":"La Louvière"},"areaServed":"La Louvière","keywords":["confiance","qualité supérieure","écologique","durabilité","sécurité","expertise","Réparation de fuites","Entretien du chauffe-eau","Isolation thermique","Pose de tuiles","Remplacement d''ardoises"],"image":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/votre-expert-en-toiture-a-la-louviere-0768267615/logo.webp"}}'::jsonb, '2026-02-16T05:08:21.511Z', TRUE, 5, 'd2715a5e21cdd547d03a2b38a88a47a13036f4336e6e6a1f78720142b12384f3', 'RJ Concept vous offre des prestations de qualité avec des matériaux performants et écologiques, respectant votre budget et vos délais.', NULL, 'Sérénité', '[{"name":"Évaluation préliminaire","description":"Notre équipe examine attentivement l''état de la toiture pour identifier les besoins spécifiques du client.","frequency":"Une fois par projet","impact":"Permet une estimation précise et des travaux ciblés","proof":null},{"name":"Suivi régulier","description":"Nous restons en contact avec le client tout au long du processus pour assurer la satisfaction.","frequency":"Une fois par semaine","impact":"Renforce la confiance et garantit un service de qualité","proof":null},{"name":"Garantie après travaux","description":"Nous offrons une période d''assurance pour les réparations effectuées.","frequency":"Une fois par an pendant 2 ans","impact":"Offre un sentiment de sécurité et de satisfaction prolongée","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/votre-expert-en-toiture-a-la-louviere-0768267615/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/votre-expert-en-toiture-a-la-louviere-0768267615/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/votre-expert-en-toiture-a-la-louviere-0768267615/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/votre-expert-en-toiture-a-la-louviere-0768267615/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/votre-expert-en-toiture-a-la-louviere-0768267615/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/votre-expert-en-toiture-a-la-louviere-0768267615/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T05:08:44.895Z","proof":"https://rjconcepttoiture.be/"},{"label":"Seed: city hint","date":"2026-02-16T05:08:44.895Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T05:08:44.895Z","proof":"La Louvière"},{"label":"BCE: mod97 valid","date":"2026-02-16T05:08:44.895Z","proof":"0768267615"},{"label":"Email extracted","date":"2026-02-16T05:08:44.895Z","proof":"johan@rjconcepttoiture.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T05:08:44.895Z","proof":"confidence=0.9"},{"label":"Phone extracted","date":"2026-02-16T05:08:44.895Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T05:08:44.895Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/votre-expert-en-toiture-a-la-louviere-0768267615/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0768267615', 'Actif', 'BCE_CSV', '2026-02-16T05:07:49.341Z', '2026-02-16T05:07:49.341Z', 'RJ CONCEPT TOITURE', '2021-05-10', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T05:08:44.895Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0768267615'
    AND c_existing.slug <> 'toiture-a-la-louviere-votre-expert-en-toiture-a-la-louviere'
)
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, 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, 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-a-la-louviere-zephir-construction', 'BE-WAL', 'Zephir Construction', 'Façadier', ARRAY['expertise', 'soin', 'visuel', 'protection', 'renouveau', 'technique']::text[], ARRAY['Réparation de fuites', 'Entretien du chauffe-eau', 'Nettoyage par hydrogommage', 'Bardage bois', 'Crépis et peinture']::text[], 'sur_devis', 2, 'Devis gratuit et personnalisé', TRUE, 'La Louvière', '7100', 'BE', 'Rue Léopold Dupuis 43', 'https://zephir.construction/', 'https://www.facebook.com/zephirconstruction/', NULL, NULL, 'info@zephir.construction', 'Équipe de direction', '+3264867443', '+3264867443', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : réparation de fuites, entretien du chauffe-eau, nettoyage par hydrogommage et bardage bois. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à La Louvière et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Zephir Construction est une entreprise de façade active à La Louvière (province de Hainaut). Elle intervient notamment pour la réparation de fuites, l''entretien du chauffe-eau, le nettoyage par hydrogommage et le bardage bois, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Réparation de fuites, Entretien du chauffe-eau, Nettoyage par hydrogommage, Bardage bois, Crépis et peinture
Zone d''intervention: La Louvière', 'Façadier à La Louvière | Zephir Construction', 'Redonnez vie à vos façades sans travaux de gros œuvre. Évaluation préliminaire pour un devis personnalisé. Spécialistes en Belgique.', 'Zephir Construction - Façadier et Crépi à La Louvière', 'Spécialiste en réparation de fuites, entretien du chauffe-eau et hydrogommage. Évaluation préliminaire gratuite pour un devis personnalisé.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Zephir Construction","description":"Redonnez vie à vos façades sans travaux de gros œuvre. Évaluation préliminaire pour un devis personnalisé.","url":"https://revelys.be/entreprises/facadier-a-la-louviere-zephir-construction","sameAs":["https://zephir.construction/"],"address":{"@type":"PostalAddress","streetAddress":"Rue Léopold Dupuis 43, info@","postalCode":"7100","addressLocality":"La Louvière","addressCountry":"BE"},"areaServed":"La Louvière","keywords":["expertise","soin","visuel","protection","renouveau","technique","Réparation de fuites","Entretien du chauffe-eau","Nettoyage par hydrogommage","Bardage bois","Crépis et peinture"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/zephir-construction-0788847550/logo.webp"]}'::jsonb, '2026-02-16T05:18:43.281Z', TRUE, 5, '6f4767ac5ae4f918e271dd6b946505cc1c72dea6d9a3abc5b52498238a1dbabf', 'Zéphir Construction vous offre des solutions adaptées pour redonner vie à vos façades sans travaux de gros œuvre.', NULL, 'Confiance', '[{"name":"Évaluation préliminaire","description":"Notre équipe visite votre site pour comprendre vos besoins et élaborer un devis personnalisé.","frequency":"Une fois par projet","impact":"Permet de définir précisément les travaux nécessaires.","proof":null},{"name":"Conseil en matériaux","description":"Nous vous guidons dans le choix des meilleurs matériaux pour votre façade.","frequency":"Une fois par projet","impact":"Assure une longévité et un aspect visuel optimal.","proof":null},{"name":"Suivi de chantier","description":"Nous assurons le suivi régulier du chantier pour garantir la qualité des travaux.","frequency":"Toutes les semaines","impact":"Permet un contrôle constant et une satisfaction client maximale.","proof":null}]'::jsonb, 75, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/zephir-construction-0788847550/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/zephir-construction-0788847550/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/zephir-construction-0788847550/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/zephir-construction-0788847550/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/zephir-construction-0788847550/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/zephir-construction-0788847550/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T05:19:06.229Z","proof":"https://zephir.construction/facade/"},{"label":"Seed: city hint","date":"2026-02-16T05:19:06.229Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T05:19:06.229Z","proof":"La Louvière"},{"label":"BCE: mod97 valid","date":"2026-02-16T05:19:06.229Z","proof":"0788847550"},{"label":"Email extracted","date":"2026-02-16T05:19:06.229Z","proof":"info@zephir.construction"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T05:19:06.229Z","proof":"confidence=0.95"},{"label":"Phone extracted","date":"2026-02-16T05:19:06.229Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T05:19:06.229Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/zephir-construction-0788847550/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0788847550', 'Actif', 'BCE_CSV', '2026-02-16T05:18:07.177Z', '2026-02-16T05:18:07.177Z', 'ZEPHIR CONSTRUCTION', '2022-07-25', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T05:19:06.229Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0788847550'
    AND c_existing.slug <> 'facadier-a-la-louviere-zephir-construction'
)
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, 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, 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 'chassis-a-la-louviere-menuiserie-dinau', 'BE-WAL', 'Menuiserie Dinau', 'Châssis', ARRAY['pose de châssis', 'réparation porte', 'installation volet', 'expertise locale', 'service client', 'qualité travail', 'artisanal']::text[], ARRAY['Pose de châssis', 'Réparation de portes', 'Installation de volets']::text[], 'sur_devis', NULL, NULL, TRUE, 'La Louvière', '7100', 'BE', 'Rue Henri Aubry 56', 'https://www.menuiserie-dinau.be/', NULL, NULL, NULL, 'info@menuiserie-dinau.be', 'Équipe de direction', '+3264370817', '+3264370817', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], 'Du lundi au vendredi', NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : pose de châssis, réparation de portes et installation de volets. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Haine-Saint-Paul Email et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Menuiserie Dinau est une entreprise de pose de châssis active à La Louvière (province de Hainaut). Elle intervient notamment pour la pose de châssis, la réparation de portes et l''installation de volets, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Pose de châssis, Réparation de portes, Installation de volets
Zone d''intervention: La Louvière', 'Châssis / portes & fenêtres à Haine-Saint-Paul | Menuiserie', 'Pose de châssis et réparation porte avec expertise locale. Visite sur site pour comprendre vos besoins.', 'Menuiserie Dinau - Châssis, portes & fenêtres à Haine-Saint-Paul', 'Spécialistes en pose de châssis et réparation porte. Expertise familiale et service client personnalisé pour vos travaux.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Menuiserie Dinau","description":"Spécialistes en pose de châssis, réparation porte et installation volet. Expertise familiale pour vos travaux.","url":"https://revelys.be/entreprises/chassis-a-la-louviere-menuiserie-dinau","sameAs":["https://www.menuiserie-dinau.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue Henri Aubry 56","postalCode":"7100","addressLocality":"La Louvière"},"areaServed":["La Louvière"],"keywords":["pose de châssis","réparation porte","installation volet","expertise locale","service client","qualité travail","artisanal","Pose de châssis","Réparation de portes","Installation de volets"],"image":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/menuiserie-dinau-0846096455/logo.webp"}'::jsonb, '2026-02-16T05:26:24.598Z', TRUE, 5, 'ef6ccd2cce2eb52ce98a3afbddcdc36cb640312edd866c605f502964e43b38c7', 'La Menuiserie Dinau vous offre un service personnalisé et une expertise familiale pour des travaux de menuiseries intérieures et extérieures.', NULL, 'Sécurité', '[{"name":"Visite sur site","description":"Notre équipe se déplace chez vous pour étudier vos besoins en châssis, portes et volets.","frequency":"Une fois par projet","impact":"Permet une compréhension précise des exigences du client","proof":null},{"name":"Devis gratuit","description":"Nous vous fournissons un devis détaillé et personnalisé sans engagement.","frequency":"Une fois par demande de devis","impact":"Aide à la prise de décision du client","proof":null},{"name":"Suivi du chantier","description":"Le patron est présent sur chaque chantier pour superviser le travail et assurer un suivi optimal.","frequency":"Tout au long du projet","impact":"Garantit une qualité de service constante","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/menuiserie-dinau-0846096455/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/menuiserie-dinau-0846096455/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/menuiserie-dinau-0846096455/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/menuiserie-dinau-0846096455/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/menuiserie-dinau-0846096455/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/menuiserie-dinau-0846096455/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T05:26:47.188Z","proof":"https://www.menuiserie-dinau.be/"},{"label":"Seed: city hint","date":"2026-02-16T05:26:47.188Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T05:26:47.188Z","proof":"La Louvière"},{"label":"BCE: mod97 valid","date":"2026-02-16T05:26:47.188Z","proof":"0846096455"},{"label":"Email extracted","date":"2026-02-16T05:26:47.188Z","proof":"info@menuiserie-dinau.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T05:26:47.188Z","proof":"confidence=0.9"},{"label":"Phone extracted","date":"2026-02-16T05:26:47.188Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T05:26:47.188Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/menuiserie-dinau-0846096455/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0846096455', 'Actif', 'BCE_CSV', '2026-02-16T05:25:48.978Z', '2026-02-16T05:25:48.978Z', 'MENUISERIE DINAU', '2012-05-23', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T05:26:47.188Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0846096455'
    AND c_existing.slug <> 'chassis-a-la-louviere-menuiserie-dinau'
)
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, 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, 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 'chassis-a-binchen-a-la-recherche-dun-poseur-de-chassis-dans-la-province-du-hainaut', 'BE-WAL', 'À la recherche d’un poseur de châssis dans la province du Hainaut ?', 'Châssis', ARRAY['fabrication', 'installation', 'garantie', 'sur-mesure', 'qualité', 'locale']::text[], ARRAY['Installation de châssis en aluminium', 'Pose de portes en pvc', 'Fabrication de volets motorisés']::text[], 'sur_devis', NULL, NULL, NULL, 'BincheN', '7130', 'BE', 'Rue Caroline Popp 29', 'https://www.art-chassis.be/', 'https://www.facebook.com/Artchassispro/', 'https://www.instagram.com/artchassissrl', NULL, 'jp@art-chassis.com', 'Équipe de direction', '+3264334761', '+3264334761', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], 'Sur rendez-vous', NULL, NULL, NULL, NULL, '[{"question":"Quelles marques travaillez-vous avec?","answer":"Nous travaillons avec des partenaires de renommée comme Reynaers et Kömmerling pour vous offrir les produits les plus qualitatifs."},{"question":"Est-ce que vos services sont garantis?","answer":"Oui, tous nos châssis installés bénéficient d''une garantie de 10 ans sur le profilé et le vitrage."},{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : installation de châssis en aluminium, pose de portes en pvc et fabrication de volets motorisés. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à BincheN et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'À la recherche d’un poseur de châssis dans la province du Hainaut ? est une entreprise de installation de châssis en aluminium active à BincheN (province de Hainaut). Elle intervient notamment pour l''installation de châssis en aluminium, la pose de portes en pvc et la fabrication de volets motorisés, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Installation de châssis en aluminium, Pose de portes en pvc, Fabrication de volets motorisés
Zone d''intervention: BincheN', 'Poseur de châssis à Binche | Art-Châssis', 'Obtenez des fenêtres et portes en aluminium ou PVC sur-mesure avec une garantie de 10 ans. Découvrez nos services locaux dans la province du Hainaut.', 'Poseur de châssis à Binche - Art-Châssis', 'Art-Châssis vous offre des solutions sur-mesure pour vos fenêtres et portes en aluminium ou PVC, garanties 10 ans. Découvrez nos services locaux dans la province du Hainaut.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Art-Châssis","description":"Poseur de châssis en aluminium et PVC, fabrication sur-mesure avec garantie.","url":"https://revelys.be/entreprises/chassis-a-binchen-a-la-recherche-dun-poseur-de-chassis-dans-la-province-du-hainaut","sameAs":["https://www.art-chassis.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue Caroline Popp 29","postalCode":"7130","addressLocality":"BincheN"},"areaServed":["BincheN","Binche"],"keywords":["fabrication","installation","garantie","sur-mesure","qualité","locale","châssis en aluminium","portes en pvc","volets motorisés"],"image":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-la-recherche-dun-poseur-de-chassis-dans-la-province-du-hainaut-0443977512/logo.webp"}}'::jsonb, '2026-02-16T05:28:39.709Z', TRUE, 5, 'e4298b1b349e47bcd31a13aa675d97fc0285ca49849a87bdd9fb9ee31a0d77ac', 'Art-Châssis vous offre des solutions sur-mesure pour vos fenêtres et portes en aluminium ou PVC, garanties 10 ans.', NULL, 'Sécurité', '[{"name":"Visite de l''atelier","description":"Découvrez nos châssis fabriqués sur mesure dans notre atelier à Binche.","frequency":"Une fois par an","impact":"Permet d''avoir une vue claire sur la qualité des produits et du processus de fabrication.","proof":null},{"name":"Consultation gratuite","description":"Obtenez un devis gratuit pour vos projets de fenêtres et portes en aluminium ou PVC.","frequency":"À chaque projet","impact":"Aide à bien comprendre les coûts avant engagement.","proof":null},{"name":"Service après-vente","description":"Bénéficiez d''un service après-vente de qualité et humain en cas de problème.","frequency":"Tout au long du temps","impact":"Offre un soutien continu pour garantir la satisfaction à long terme.","proof":null}]'::jsonb, 75, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-la-recherche-dun-poseur-de-chassis-dans-la-province-du-hainaut-0443977512/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-la-recherche-dun-poseur-de-chassis-dans-la-province-du-hainaut-0443977512/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-la-recherche-dun-poseur-de-chassis-dans-la-province-du-hainaut-0443977512/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-la-recherche-dun-poseur-de-chassis-dans-la-province-du-hainaut-0443977512/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-la-recherche-dun-poseur-de-chassis-dans-la-province-du-hainaut-0443977512/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-la-recherche-dun-poseur-de-chassis-dans-la-province-du-hainaut-0443977512/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T05:29:04.366Z","proof":"https://www.art-chassis.be/poseur-professionnel-de-chassis-la-louviere"},{"label":"Seed: city hint","date":"2026-02-16T05:29:04.366Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T05:29:04.366Z","proof":"BincheN"},{"label":"BCE: mod97 valid","date":"2026-02-16T05:29:04.366Z","proof":"0443977512"},{"label":"Email extracted","date":"2026-02-16T05:29:04.366Z","proof":"jp@art-chassis.com"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T05:29:04.366Z","proof":"confidence=100"},{"label":"Phone extracted","date":"2026-02-16T05:29:04.366Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T05:29:04.366Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/a-la-recherche-dun-poseur-de-chassis-dans-la-province-du-hainaut-0443977512/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0443977512', 'Actif', 'BCE_CSV', '2026-02-16T05:27:59.168Z', '2026-02-16T05:27:59.168Z', 'ART - CHASSIS', '1991-04-29', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T05:29:04.366Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0443977512'
    AND c_existing.slug <> 'chassis-a-binchen-a-la-recherche-dun-poseur-de-chassis-dans-la-province-du-hainaut'
)
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, 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, 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 'menuisier-a-herquegies-renovation-lenoir-sprl', 'BE-WAL', 'Renovation Lenoir Sprl', 'Menuisier', ARRAY['menuiserie generale', 'sur mesure', 'artisanal', 'personnalisé', 'conception pose', 'qualité inegalee']::text[], ARRAY['Menuiserie générale', 'Menuiserie intérieure', 'Menuiserie extérieure']::text[], NULL, NULL, NULL, TRUE, 'Herquegies', '7911', 'BE', 'Place d''Herquegies 1/B , B- Renovation Lenoir Sprl', 'https://www.renovation-lenoir-sprl.be/', NULL, NULL, NULL, 'lenoirfacturationsprllenoir@proximus.be', 'LA PUBLICATION', '+3269600107', '+3269600107', 'LA PUBLICATION', 'Fondateur', NULL, 'La Louvière', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quels types de bois utilisez-vous pour vos projets?","answer":"Nous travaillons avec différents types d''essences selon les préférences et les besoins du projet."},{"question":"Pouvez-vous réaliser des menuiseries extérieures durables?","answer":"Oui, nous concevons des aménagements extérieurs résistants et esthétiques pour durer dans le temps."},{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : menuiserie générale, menuiserie intérieure et menuiserie extérieure. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Herquegies et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Renovation Lenoir Sprl est une entreprise de menuiserie active à Herquegies (province de Hainaut). Elle intervient notamment pour la menuiserie générale, la menuiserie intérieure et la menuiserie extérieure, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Menuiserie générale, Menuiserie intérieure, Menuiserie extérieure
Zone d''intervention: Herquegies', 'Menuisier à Herquegies | Renovation Lenoir Sprl', 'Offre des solutions de menuiserie sur mesure adaptées aux besoins et au style unique. Visite du chantier pour comprendre les contraintes techniques.', 'Renovation Lenoir Sprl - Menuisier à Herquegies', 'Spécialisé en menuiserie générale, Renovation Lenoir Sprl propose des solutions sur mesure adaptées aux besoins et au style unique de chaque client. Visite du chantier pour comprendre les contraintes', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Renovation Lenoir Sprl","description":"Spécialisé en menuiserie générale, Renovation Lenoir Sprl propose des solutions sur mesure adaptées aux besoins et au style unique de chaque client.","url":"https://revelys.be/entreprises/menuisier-a-herquegies-renovation-lenoir-sprl","sameAs":["https://www.renovation-lenoir-sprl.be/"],"address":{"@type":"PostalAddress","streetAddress":"Place d''Herquegies 1/B","postalCode":"7911","addressLocality":"Herquegies"},"areaServed":"Herquegies","keywords":["menuiserie generale","sur mesure","artisanal","personnalisé","conception pose","qualité inegalee","Menuiserie générale","Menuiserie intérieure","Menuiserie extérieure"],"image":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/renovation-lenoir-sprl-0474710080/logo.webp"}}'::jsonb, '2026-02-16T05:37:34.638Z', TRUE, 5, '0de41ad05b2476832e8fe7f5135f36686a4fa52326f52fe8f2cc7f2c669b7bc3', 'Lenoir vous offre des solutions de menuiserie sur mesure, adaptées à vos besoins et à votre style.', NULL, 'Sécurité', '[{"name":"Visite du chantier","description":"Le patron visite le site pour comprendre les contraintes techniques et architecturales.","frequency":"Une fois par projet","impact":"Permet d''adapter précisément la conception aux spécificités du lieu.","proof":null},{"name":"Réunion de conception","description":"Un temps dédié pour discuter des idées et finaliser les plans avec le client.","frequency":"Une fois par projet","impact":"Assure une compréhension commune du projet.","proof":null},{"name":"Suivi de chantier","description":"Contrôle régulier des travaux pour garantir la qualité et le respect des délais.","frequency":"Toutes les semaines","impact":"Permet d''ajuster en temps réel si nécessaire.","proof":null}]'::jsonb, 75, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/renovation-lenoir-sprl-0474710080/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/renovation-lenoir-sprl-0474710080/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/renovation-lenoir-sprl-0474710080/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/renovation-lenoir-sprl-0474710080/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/renovation-lenoir-sprl-0474710080/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/renovation-lenoir-sprl-0474710080/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T05:37:58.942Z","proof":"https://www.renovation-lenoir-sprl.be/menuiserie-sur-mesure-la-louviere"},{"label":"Seed: city hint","date":"2026-02-16T05:37:58.942Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T05:37:58.942Z","proof":"Herquegies"},{"label":"BCE: mod97 valid","date":"2026-02-16T05:37:58.942Z","proof":"0474710080"},{"label":"Email extracted","date":"2026-02-16T05:37:58.942Z","proof":"lenoirfacturationsprllenoir@proximus.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T05:37:58.942Z","proof":"confidence=80"},{"label":"Phone extracted","date":"2026-02-16T05:37:58.942Z","proof":"source=text"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T05:37:58.942Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/renovation-lenoir-sprl-0474710080/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0474710080', 'Actif', 'BCE_CSV', '2026-02-16T05:36:47.001Z', '2026-02-16T05:36:47.001Z', 'LENOIR', '2001-04-27', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T05:37:58.942Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0474710080'
    AND c_existing.slug <> 'menuisier-a-herquegies-renovation-lenoir-sprl'
)
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, 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, 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 'peintre-a-la-louviere-n-pinzini-decor', 'BE-WAL', 'Pinzini Décor', 'Peintre', ARRAY['peinture interieure', 'peinture exterieure', 'pose parquet', 'tapissage murs sol', 'pose revetement sols', 'petit plafonnement', 'service professionnel', 'suivi chantier']::text[], ARRAY['Peinture intérieure', 'Peinture extérieure', 'Pose de parquet', 'Tapissage des murs et sols', 'Pose de revêtements de sol', 'Petits plafonnages']::text[], 'sur_devis', NULL, NULL, TRUE, 'La Louvière N', '7100', 'BE', 'Rue Vital Casterman 71', 'https://pinzini-decor.be/', 'https://www.facebook.com/frederic.pinzin.9', NULL, NULL, 'pinzini@hotmail.com', 'Équipe de direction', '+32497540849', '+32497540849', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quels sont les produits utilisés par Pinzini Décor?","answer":"Nous utilisons principalement les produits de marques comme Sigma et Trimedal pour assurer la qualité de nos services."},{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : peinture intérieure, peinture extérieure, pose de parquet et tapissage des murs et sols. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à La Louvière N et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Pinzini Décor est une entreprise de peinture intérieure active à La Louvière N (province de Hainaut). Elle intervient notamment pour la peinture intérieure, la peinture extérieure, la pose de parquet et le tapissage des murs et sols, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Peinture intérieure, Peinture extérieure, Pose de parquet, Tapissage des murs et sols, Pose de revêtements de sol, Petits plafonnages
Zone d''intervention: La Louvière N', 'Peinture à La Louvière | Pinzini Décor', 'Services de peinture intérieure et extérieure avec suivi personnalisé. Visitez notre site pour plus d''informations sur nos projets.', 'Pinzini Décor - Peinture et revêtements à La Louvière', 'Spécialistes en peinture intérieure, extérieure et pose de parquet. Découvrez notre approche personnalisée pour vos projets de rénovation.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Pinzini Décor","description":"Services de peinture et revêtements à La Louvière. Suivi personnalisé pour chaque projet.","url":"https://revelys.be/entreprises/peintre-a-la-louviere-n-pinzini-decor","sameAs":["https://pinzini-decor.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue Vital Casterman 71","postalCode":"7100","addressLocality":"La Louvière N"},"areaServed":"La Louvière N","keywords":["peinture interieure","peinture exterieure","pose parquet","tapissage murs sol","pose revetement sols","petit plafonnement"],"image":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/pinzini-decor-0773727329/logo.webp"}}'::jsonb, '2026-02-16T05:43:37.372Z', TRUE, 5, 'bd36e99ab1dd21e8c0209a6d18451e654eab00dcd707cb5aa795e1a5beb7bd58', 'Pinzini Décor vous offre des services sur mesure avec un suivi personnalisé pour chaque projet.', NULL, 'Sérénité', '[{"name":"Visite du chantier avant intervention","description":"Notre équipe visite votre lieu de travail pour comprendre vos besoins et proposer une solution adaptée.","frequency":"Une fois par chantier","impact":"Permet d''adapter les services aux attentes spécifiques du client.","proof":null},{"name":"Suivi continu du patron sur le chantier","description":"Le propriétaire de l’entreprise se déplace régulièrement pour s’assurer que tout se passe comme prévu.","frequency":"Tous les jours pendant la durée du","impact":"Garantit un suivi précis et une qualité de service optimale.","proof":null},{"name":"Nettoyage professionnel après chaque chantier","description":"Nous assurons un nettoyage complet pour que votre espace soit prêt à être utilisé dès la fin des travaux.","frequency":"Une fois par chantier","impact":"Offre une satisfaction supplémentaire en garantissant un environnement propre et prêt.","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/pinzini-decor-0773727329/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/pinzini-decor-0773727329/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/pinzini-decor-0773727329/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/pinzini-decor-0773727329/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/pinzini-decor-0773727329/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/pinzini-decor-0773727329/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T05:43:59.690Z","proof":"https://pinzini-decor.be/"},{"label":"Seed: city hint","date":"2026-02-16T05:43:59.690Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T05:43:59.690Z","proof":"La Louvière N"},{"label":"BCE: mod97 valid","date":"2026-02-16T05:43:59.690Z","proof":"0773727329"},{"label":"Email extracted","date":"2026-02-16T05:43:59.690Z","proof":"pinzini@hotmail.com"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T05:43:59.690Z","proof":"confidence=0.92"},{"label":"Phone extracted","date":"2026-02-16T05:43:59.690Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T05:43:59.690Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/pinzini-decor-0773727329/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0773727329', 'Actif', 'BCE_CSV', '2026-02-16T05:42:51.223Z', '2026-02-16T05:42:51.223Z', 'PINZINI DECOR', '2021-09-10', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T05:43:59.690Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0773727329'
    AND c_existing.slug <> 'peintre-a-la-louviere-n-pinzini-decor'
)
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, 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, 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 'carreleur-a-strepy-bracquegnies-neptuno', 'BE-WAL', 'NEPTUNO', 'Carreleur', ARRAY['carrelages', 'conseils professionnels', 'showroom spacieux', 'accompagnement personnalisé', 'expertise familiale', 'solutions sur mesure']::text[], ARRAY['Pose de carrelage', 'Réparation de fuites', 'Entretien du chauffe-eau']::text[], NULL, NULL, NULL, NULL, 'Strépy-Bracquegnies', '7110', 'BE', 'Rue de la Croix du Maieur 4', 'https://www.neptuno-carrelages.com/', 'https://www.facebook.com/NeptunoCarrelages/', 'https://www.instagram.com/neptuno.carrelages/', 'https://www.linkedin.com/company/neptunosa', 'calogero@neptuno-carrelages.com', 'Équipe de direction', '+3264678204', '+3264678204', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], 'Du lundi au vendredi', '[{"day":"lundi","open":"08:30","close":"12:00","isClosed":false},{"day":"mardi","open":"08:30","close":"12:00","isClosed":false},{"day":"mercredi","open":"08:30","close":"12:00","isClosed":false},{"day":"jeudi","open":"08:30","close":"12:00","isClosed":false},{"day":"vendredi","open":"08:30","close":"12:00","isClosed":false},{"day":"samedi","open":"09:30","close":"17:30","isClosed":false}]'::jsonb, NULL, NULL, NULL, '[{"question":"Quelle est l''histoire de NEPTUNO Carrelages?","answer":"Fondée en 1970 par Calogero Scaletta, NEPTUNO a su se développer et s''imposer comme une référence dans le secteur du carrelage."},{"question":"Quelles marques de carrelages proposez-vous?","answer":"Nous travaillons avec des marques européennes renommées telles que Serenissima, Casalgrande Padana et Ariana Ceramica."},{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : pose de carrelage, réparation de fuites et entretien du chauffe-eau. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Strépy-Bracquegnies et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'NEPTUNO est une entreprise de pose de carrelage active à Strépy-Bracquegnies (province de Hainaut). Elle intervient notamment pour la pose de carrelage, la réparation de fuites et l''entretien du chauffe-eau, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Pose de carrelage, Réparation de fuites, Entretien du chauffe-eau
Zone d''intervention: Strépy-Bracquegnies', 'Carreleur à Strépy-Bracquegnies | NEPTUNO', 'Découvrez notre vaste collection de carrelages en showroom spacieux. Conseils personnalisés pour chaque projet.', 'NEPTUNO - Carreleur à Strépy-Bracquegnies', 'Carreleur proposant des solutions sur mesure et un accompagnement personnalisé. Visitez notre showroom spacieux de 2500m² pour inspirer vos projets.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"NEPTUNO","description":"Carreleur proposant des solutions sur mesure et un accompagnement personnalisé.","url":"https://revelys.be/entreprises/carreleur-a-strepy-bracquegnies-neptuno","sameAs":["https://www.neptuno-carrelages.com/"],"address":{"@type":"PostalAddress","streetAddress":"Rue de la Croix du Maieur 4","postalCode":"7110","addressLocality":"Strépy-Bracquegnies"},"areaServed":"Strépy-Bracquegnies","keywords":["carrelages","conseils professionnels","showroom spacieux","accompagnement personnalisé","expertise familiale","solutions sur mesure","Pose de carrelage","Réparation de fuites","Entretien du chauffe-eau"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/neptuno-0437420213/logo.webp"]}'::jsonb, '2026-02-16T05:47:54.991Z', TRUE, 5, '9893fe7e014ad92743de1a685e8efa44d578452f67d6930e3f0385cb3f25094d', 'Chez NEPTUNO, chaque projet est unique et nous nous engageons à vous fournir des conseils sur mesure pour concrétiser vos envies.', NULL, 'Confiance', '[{"name":"Visite du showroom","description":"Découvrez notre vaste collection de carrelages dans un espace de 2500m².","frequency":"Une fois par mois","impact":"Permet d''inspirer et de visualiser les projets en cours","proof":null},{"name":"Formation continue des employés","description":"Nos experts restent à jour avec les dernières tendances et innovations du secteur.","frequency":"Tous les trimestres","impact":"Assure un service de qualité constante pour nos clients","proof":null},{"name":"Suivi personnalisé des projets","description":"Nous accompagnons nos clients tout au long du processus, de la conception à l''installation.","frequency":"Toutes les semaines","impact":"Garantit la satisfaction et le succès de chaque projet","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/neptuno-0437420213/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/neptuno-0437420213/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/neptuno-0437420213/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/neptuno-0437420213/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/neptuno-0437420213/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/neptuno-0437420213/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T05:48:17.397Z","proof":"https://www.neptuno-carrelages.com/"},{"label":"Seed: city hint","date":"2026-02-16T05:48:17.397Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T05:48:17.397Z","proof":"Strépy-Bracquegnies"},{"label":"BCE: mod97 valid","date":"2026-02-16T05:48:17.397Z","proof":"0437420213"},{"label":"Email extracted","date":"2026-02-16T05:48:17.397Z","proof":"calogero@neptuno-carrelages.com"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T05:48:17.397Z","proof":"confidence=0.95"},{"label":"Phone extracted","date":"2026-02-16T05:48:17.397Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T05:48:17.397Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/neptuno-0437420213/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0437420213', 'Actif', 'BCE_CSV', '2026-02-16T05:47:10.522Z', '2026-02-16T05:47:10.522Z', 'NEPTUNO', '1989-05-03', 'Personne morale', 'Société anonyme', 'Situation normale', '2026-02-11', '2026-02-16T05:48:17.397Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0437420213'
    AND c_existing.slug <> 'carreleur-a-strepy-bracquegnies-neptuno'
)
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, 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, 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 'cuisiniste-a-houdeng-goegnies-new-cuisibat', 'BE-WAL', 'New Cuisibat', 'Cuisiniste', ARRAY['cuisiniste', 'installation cuisine', 'showroom complet', 'familial', 'expertise', 'conception sur mesure']::text[], ARRAY['Conception de cuisines équipées sur mesure', 'Livraison et installation de cuisines', 'Choix des matériaux et équipements', 'Conseil en aménagement d''espace']::text[], 'sur_devis', NULL, NULL, TRUE, 'Houdeng-Goegnies', '7110', 'BE', 'Chau. Paul Houtart 93', 'https://new-cuisibat.com/', 'https://www.facebook.com/people/New-Cuisibat/100063736350679/', NULL, NULL, 'info@new-cuisibat.com', 'Équipe de direction', '+3264285993', '+3264285993', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], 'Du lundi au vendredi', NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : conception de cuisines équipées sur mesure, livraison et installation de cuisines, choix des matériaux et équipements et conseil en aménagement d''espace. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Houdeng-Goegnies et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'New Cuisibat est une entreprise de conception de cuisines équipées sur mesure active à Houdeng-Goegnies (province de Hainaut). Elle intervient notamment pour la conception de cuisines équipées sur mesure, la livraison et installation de cuisines, les choix des matériaux et équipements et le conseil en aménagement d''espace, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Conception de cuisines équipées sur mesure, Livraison et installation de cuisines, Choix des matériaux et équipements, Conseil en aménagement d''espace
Zone d''intervention: Houdeng-Goegnies', 'Cuisiniste à Houdeng-Goegnies | New Cuisibat', 'Découvrez une large gamme de cuisines sur mesure. Visitez notre showroom pour vous inspirer et optimiser votre espace.', 'New Cuisibat - Cuisiniste à Houdeng-Goegnies', 'Spécialistes en conception, livraison et installation de cuisines équipées sur mesure. Visitez notre showroom pour vous inspirer et optimiser votre espace.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"New Cuisibat","description":"Spécialistes en conception, livraison et installation de cuisines équipées sur mesure. Visitez notre showroom pour vous inspirer.","url":"https://revelys.be/entreprises/cuisiniste-a-houdeng-goegnies-new-cuisibat","sameAs":["https://new-cuisibat.com/"],"address":{"@type":"PostalAddress","streetAddress":"Chau. Paul Houtart 93","postalCode":"7110","addressLocality":"Houdeng-Goegnies"},"areaServed":"Houdeng-Goegnies","keywords":["cuisiniste","installation cuisine","showroom complet","familial","expertise","conception sur mesure","Conception de cuisines équipées sur mesure","Livraison et installation de cuisines","Choix des matériaux et équipements","Conseil en aménagement d''espace"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/new-cuisibat-0477071833/logo.webp"]}'::jsonb, '2026-02-16T05:50:05.962Z', TRUE, 5, '5b97f9205e48ca06c4538543ddfecaeff6eca270d07c5e847f0616cd749bd0f0', 'Grâce à son expérience et sa passion pour la cuisine, New Cuisibat vous aide à réaliser vos projets avec précision et dévouement.', NULL, 'Confiance', '[{"name":"Visite du showroom","description":"Découvrez une large gamme de cuisines sur mesure dans notre vaste showroom.","frequency":"Une fois par mois","impact":"Permet d''inspirer et de visualiser les projets de cuisine.","proof":null},{"name":"Consultation personnalisée","description":"Nos experts vous conseillent pour la conception de votre nouvelle cuisine sur mesure.","frequency":"Sur rendez-vous","impact":"Aide à optimiser l''espace et les fonctionnalités.","proof":null},{"name":"Formation culinaire","description":"Participez à nos stages de cuisine pour enfants et adultes.","frequency":"Deux fois par mois","impact":"Permet d''approfondir la passion pour la cuisine.","proof":null}]'::jsonb, 75, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/new-cuisibat-0477071833/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/new-cuisibat-0477071833/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/new-cuisibat-0477071833/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/new-cuisibat-0477071833/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/new-cuisibat-0477071833/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/new-cuisibat-0477071833/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T05:50:28.998Z","proof":"https://new-cuisibat.com/"},{"label":"Seed: city hint","date":"2026-02-16T05:50:28.998Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T05:50:28.998Z","proof":"Houdeng-Goegnies"},{"label":"BCE: mod97 valid","date":"2026-02-16T05:50:28.998Z","proof":"0477071833"},{"label":"Email extracted","date":"2026-02-16T05:50:28.998Z","proof":"info@new-cuisibat.com"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T05:50:28.998Z","proof":"confidence=0.95"},{"label":"Phone extracted","date":"2026-02-16T05:50:28.998Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T05:50:28.998Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/new-cuisibat-0477071833/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0477071833', 'Actif', 'BCE_CSV', '2026-02-16T05:49:31.017Z', '2026-02-16T05:49:31.017Z', 'NEW CUISIBAT', '2002-03-13', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T05:50:28.998Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0477071833'
    AND c_existing.slug <> 'cuisiniste-a-houdeng-goegnies-new-cuisibat'
)
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, 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, 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 'terrassement-a-la-louviere-entreprise-de-terrassement-and-damenagements-exterieurs-a-morlanwelz', 'BE-WAL', 'Entreprise de terrassement & d''aménagements extérieurs à Morlanwelz et dans sa région', 'Terrassement', ARRAY['terrassement', 'excavation', 'nivellement', 'aménagements extérieurs', 'construction générale', 'qualité du travail', 'satisfaction client']::text[], ARRAY['Terrassement', 'Excavation', 'Nivellement', 'Pose de clôtures', 'Aménagement de jardins', 'Construction générale']::text[], 'sur_devis', 2, 'A partir de 45EUR/seance', TRUE, 'La Louvière', '7140', 'BE', 'Rue Julien Lahaut n°26 .', 'https://www.trdterrassement.be/', NULL, NULL, NULL, 'ragusadavide@hotmail.be', 'Équipe de direction', '+3264700066', '+3264700066', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : terrassement, excavation, nivellement et pose de clôtures. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Morlanwelz Tél et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Entreprise de terrassement & d''aménagements extérieurs à Morlanwelz et dans sa région est une entreprise de terrassement active à La Louvière (province de Hainaut). Elle intervient notamment pour le terrassement, l''excavation, le nivellement et la pose de clôtures, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Terrassement, Excavation, Nivellement, Pose de clôtures, Aménagement de jardins, Construction générale
Zone d''intervention: La Louvière', 'Terrassement à Morlanwelz | TRD Terrassement', 'Spécialistes en terrassement et aménagements extérieurs. Visite du chantier avant toute intervention pour un devis gratuit et précis.', 'TRD Terrassement - Terrassement & Aménagements Extérieurs à Morlanwelz', 'Fournissons des services de terrassement, excavation et aménagement extérieur. Visite du chantier avant toute intervention pour un devis gratuit.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"TRD Terrassement","description":"Spécialistes en terrassement et aménagements extérieurs. Visite du chantier avant toute intervention pour un devis gratuit.","url":"https://revelys.be/entreprises/terrassement-a-la-louviere-entreprise-de-terrassement-and-damenagements-exterieurs-a-morlanwelz","sameAs":["https://www.trdterrassement.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue Julien Lahaut n°26","postalCode":"7140","addressLocality":"La Louvière"},"areaServed":"La Louvière","keywords":["terrassement","excavation","nivellement","aménagements extérieurs","construction générale"],"image":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/entreprise-de-terrassement-and-damenagements-exterieurs-a-morlanwelz-et-dans-sa-region-0558974673/cover.webp"}'::jsonb, '2026-02-16T05:59:36.911Z', TRUE, 5, '5c96ff2ce44002fa8ebcb9e42a8c830c8cbead844c6d467587dc07b383345c64', 'Forte de trente années d’expérience, TRD Terrassement réalise vos travaux avec pour seul objectif votre satisfaction.', NULL, 'Confiance', '[{"name":"Visite du chantier","description":"Notre équipe visite le site avant toute intervention pour vous proposer un devis gratuit et précis.","frequency":"Une fois par projet","impact":"Permet d''adapter les travaux aux besoins spécifiques de chaque client.","proof":null},{"name":"Suivi régulier","description":"Nous vous tenons informé en permanence du déroulement des travaux pour une collaboration fluide et sans surprise.","frequency":"Tous les 15 jours","impact":"Renforce la confiance entre le client et l''entreprise.","proof":null},{"name":"Devis gratuit","description":"Nous vous offrons un devis détaillé sans engagement pour que vous puissiez planifier votre projet en toute sérénité.","frequency":"Une fois par demande","impact":"Permet de comprendre les coûts et le temps nécessaires avant d''engager des travaux.","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/terrassement-a-la-louviere-entreprise-de-terrassement-and-damenagements-exterieurs-a-morlanwelz/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/entreprise-de-terrassement-and-damenagements-exterieurs-a-morlanwelz-et-dans-sa-region-0558974673/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/entreprise-de-terrassement-and-damenagements-exterieurs-a-morlanwelz-et-dans-sa-region-0558974673/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/entreprise-de-terrassement-and-damenagements-exterieurs-a-morlanwelz-et-dans-sa-region-0558974673/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/entreprise-de-terrassement-and-damenagements-exterieurs-a-morlanwelz-et-dans-sa-region-0558974673/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/entreprise-de-terrassement-and-damenagements-exterieurs-a-morlanwelz-et-dans-sa-region-0558974673/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T05:59:59.722Z","proof":"https://www.trdterrassement.be/"},{"label":"Seed: city hint","date":"2026-02-16T05:59:59.722Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T05:59:59.722Z","proof":"La Louvière"},{"label":"BCE: mod97 valid","date":"2026-02-16T05:59:59.722Z","proof":"0558974673"},{"label":"Email extracted","date":"2026-02-16T05:59:59.722Z","proof":"ragusadavide@hotmail.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T05:59:59.722Z","proof":"confidence=0.95"},{"label":"Phone extracted","date":"2026-02-16T05:59:59.722Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T05:59:59.722Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/entreprise-de-terrassement-and-damenagements-exterieurs-a-morlanwelz-et-dans-sa-region-0558974673/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0558974673', 'Actif', 'BCE_CSV', '2026-02-16T05:58:59.039Z', '2026-02-16T05:58:59.039Z', 'TRD TERRASSEMENT', '2014-08-12', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T05:59:59.722Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0558974673'
    AND c_existing.slug <> 'terrassement-a-la-louviere-entreprise-de-terrassement-and-damenagements-exterieurs-a-morlanwelz'
)
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, 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, 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 'terrassement-a-la-louviere-beton-premium', 'BE-WAL', 'Béton Premium', 'Terrassement', ARRAY['précision', 'durabilité', 'aménagement extérieur', 'expertise', 'qualité matériaux', 'service client']::text[], ARRAY['Terrassement', 'Aménagement extérieur', 'Béton lissé', 'Béton désactivé', 'Béton industriel', 'Béton décoratif']::text[], 'sur_devis', NULL, NULL, TRUE, 'La Louvière', '7100', 'BE', NULL, 'https://betonpremium.be/', NULL, NULL, NULL, 'montagedino@gmail.com', 'Équipe de direction', '+32476269199', '+32476269199', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : terrassement, aménagement extérieur, béton lissé et béton désactivé. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à La Louvière et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Béton Premium est une entreprise de terrassement active à La Louvière (province de Hainaut). Elle intervient notamment pour le terrassement, l''aménagement extérieur, le béton lissé et le béton désactivé, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Terrassement, Aménagement extérieur, Béton lissé, Béton désactivé, Béton industriel, Béton décoratif
Zone d''intervention: La Louvière', 'Terrassement à La Louvière | Béton Premium', 'Bénéficiez d''une évaluation détaillée du terrain avant chaque projet pour des résultats optimaux. Expertise locale en terrassement et aménagement extérieur.', 'Terrassement et Aménagement Extérieur à La Louvière', 'Béton Premium offre une évaluation préliminaire du terrain pour garantir des travaux précis et durables. Spécialistes en terrassement et aménagement extérieur.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Béton Premium","description":"Spécialiste en terrassement et aménagement extérieur, Béton Premium garantit des résultats durables grâce à une expertise de plus de trente ans.","url":"https://revelys.be/entreprises/terrassement-a-la-louviere-beton-premium","sameAs":["https://betonpremium.be/"],"address":{"@type":"PostalAddress","streetAddress":"FR","postalCode":"7100","addressLocality":"La Louvière","addressCountry":"BE"},"areaServed":["La Louvière"],"keywords":["précision","durabilité","aménagement extérieur","expertise","qualité matériaux","service client","Terrassement","Aménagement extérieur","Béton lissé","Béton désactivé","Béton industriel","Béton décoratif"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/beton-premium-0864477955/logo.webp"]}'::jsonb, '2026-02-16T06:01:17.434Z', TRUE, 5, '64854e3506231864d6c20d5514b68f369befb71bc160d98df791d761fa9dfaa8', 'Béton Premium garantit des résultats durables et précis grâce à une expertise de plus de trente ans.', NULL, 'Sérénité', '[{"name":"Évaluation préliminaire du terrain","description":"Avant toute intervention, Béton Premium effectue une évaluation détaillée du terrain pour garantir des résultats optimaux.","frequency":"Une fois par projet","impact":"Assure la précision et l''efficacité des travaux de terrassement","proof":null},{"name":"Suivi régulier du chantier","description":"Notre équipe assure un suivi constant pour s’assurer que chaque étape est réalisée avec soin.","frequency":"Tous les jours pendant le chantier","impact":"Permet de maintenir la qualité et d''anticiper les problèmes","proof":null},{"name":"Formation continue des équipes","description":"Nos employés sont formés régulièrement aux dernières techniques pour garantir une expertise constante.","frequency":"Annuellement","impact":"Maintient le niveau de compétence et d''innovation dans les services offerts","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/beton-premium-0864477955/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/beton-premium-0864477955/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/beton-premium-0864477955/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/beton-premium-0864477955/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/beton-premium-0864477955/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/beton-premium-0864477955/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T06:01:40.497Z","proof":"https://betonpremium.be/"},{"label":"Seed: city hint","date":"2026-02-16T06:01:40.497Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T06:01:40.497Z","proof":"La Louvière"},{"label":"BCE: mod97 valid","date":"2026-02-16T06:01:40.497Z","proof":"0864477955"},{"label":"Email extracted","date":"2026-02-16T06:01:40.497Z","proof":"montagedino@gmail.com"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T06:01:40.497Z","proof":"confidence=0.9"},{"label":"Phone extracted","date":"2026-02-16T06:01:40.497Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T06:01:40.497Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/beton-premium-0864477955/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0864477955', 'Actif', 'BCE_CSV', '2026-02-16T06:00:44.263Z', '2026-02-16T06:00:44.263Z', 'Cusenza, Dino', '2025-11-04', 'Personne physique', NULL, 'Situation normale', '2026-02-11', '2026-02-16T06:01:40.497Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0864477955'
    AND c_existing.slug <> 'terrassement-a-la-louviere-beton-premium'
)
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, 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, 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 'amenagement-exterieur-a-la-louviere-tbatservices', 'BE-WAL', 'Tbatservices', 'Aménagement extérieur', ARRAY['aménagement', 'pavage', 'terrasse', 'professionnel', 'qualité', 'durabilité']::text[], ARRAY['Aménagement extérieur', 'Pavage', 'Terrasse', 'Clôtures', 'Bardages']::text[], 'sur_devis', NULL, NULL, TRUE, 'La Louvière', '7100', 'BE', 'Chaussée du Pont du Sart, , FR', 'https://tbatservice.be/', 'https://www.facebook.com/thomservice2018/', NULL, NULL, 'thomservice2018@gmail.com', 'Équipe de direction', '+32486373229', '+32486373229', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : aménagement extérieur, pavage, terrasse et clôtures. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à La Louvière et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Tbatservices est une entreprise de aménagement extérieur active à La Louvière (province de Hainaut). Elle intervient notamment pour l''aménagement extérieur, le pavage, le terrasse et les clôtures, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Aménagement extérieur, Pavage, Terrasse, Clôtures, Bardages
Zone d''intervention: La Louvière', 'Aménagement extérieur à La Louvière | Tbatservices', 'Transformez vos espaces extérieurs en lieux de détente grâce à des matériaux durables. Expertise locale pour un aménagement personnalisé.', 'Tbatservices - Aménagement extérieur et pavage à La Louvière', 'Spécialistes de l''aménagement extérieur, du pavage et des terrasses à La Louvière. Matériaux durables pour un espace extérieur esthétique et fonctionnel.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Tbatservices","description":"Transformez vos espaces extérieurs en lieux de détente grâce à des matériaux durables. Expertise locale pour un aménagement personnalisé.","url":"https://revelys.be/entreprises/amenagement-exterieur-a-la-louviere-tbatservices","sameAs":["https://tbatservice.be/"],"address":{"@type":"PostalAddress","streetAddress":"Chaussée du Pont du Sart, FR","postalCode":"7100","addressLocality":"La Louvière"},"areaServed":["La Louvière"],"keywords":["aménagement","pavage","terrasse","professionnel","qualité","durabilité","Aménagement extérieur","Pavage","Terrasse","Clôtures","Bardages"],"image":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/tbatservices-0698848475/logo.webp"}}'::jsonb, '2026-02-16T06:04:05.267Z', TRUE, 5, 'bbb413fbaf87e5939d708da8822677748dd645ecf594dcd7c61569af713d3c5c', 'Tbatservices transforme vos espaces extérieurs en lieux de détente et d''esthétique grâce à des matériaux durables et une expertise sans égale.', NULL, 'Sérénité', '[{"name":"Étude personnalisée","description":"Notre équipe étudie vos besoins pour proposer un aménagement sur mesure.","frequency":"Une fois par projet","impact":"Détermine les matériaux et la conception de l''espace extérieur","proof":null},{"name":"Choix des matériaux","description":"Nous sélectionnons avec soin les matériaux pour garantir une longue durée de vie.","frequency":"Une fois par projet","impact":"Assure la qualité et l''esthétique du pavage ou terrasse","proof":null},{"name":"Suivi régulier","description":"Nous supervisons le chantier pour assurer une exécution conforme aux spécifications.","frequency":"Toutes les semaines pendant la","impact":"Garantit un résultat conforme à vos attentes et respecte les délais","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/tbatservices-0698848475/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/tbatservices-0698848475/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/tbatservices-0698848475/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/tbatservices-0698848475/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/tbatservices-0698848475/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/tbatservices-0698848475/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T06:04:27.979Z","proof":"https://tbatservice.be/amenagement-exterieur/la-louviere"},{"label":"Seed: city hint","date":"2026-02-16T06:04:27.979Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T06:04:27.979Z","proof":"La Louvière"},{"label":"BCE: mod97 valid","date":"2026-02-16T06:04:27.979Z","proof":"0698848475"},{"label":"Email extracted","date":"2026-02-16T06:04:27.979Z","proof":"thomservice2018@gmail.com"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T06:04:27.979Z","proof":"confidence=0.9"},{"label":"Phone extracted","date":"2026-02-16T06:04:27.979Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T06:04:27.979Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/tbatservices-0698848475/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0698848475', 'Actif', 'BCE_CSV', '2026-02-16T06:03:32.986Z', '2026-02-16T06:03:32.986Z', 'TBATSERVICE', '2018-06-27', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T06:04:27.979Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0698848475'
    AND c_existing.slug <> 'amenagement-exterieur-a-la-louviere-tbatservices'
)
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, 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, 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 'amenagement-exterieur-a-manage-page-facebook-bryan-ghislain-jardin', 'BE-WAL', 'Bryan Ghislain Jardin', 'Aménagement extérieur', ARRAY['aménagement extérieur', 'pavage', 'terrasse', 'proche de chez vous', 'réactif', 'confortable']::text[], ARRAY['Aménagements extérieurs', 'Pavage', 'Terrasse']::text[], 'sur_devis', NULL, NULL, TRUE, 'Manage Page Facebook', '7170', 'BE', 'Rue de la Basse Hestre 36', 'https://bgjardin.be/', 'https://www.facebook.com/bgjardininfo/', NULL, NULL, 'bgjardininfo@gmail.com', 'Équipe de direction', '+32493597755', '+32493597755', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : aménagements extérieurs, pavage et terrasse. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Manage Page Facebook et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Bryan Ghislain Jardin est une entreprise de aménagements extérieurs active à Manage Page Facebook (province de Hainaut). Elle intervient notamment pour les aménagements extérieurs, le pavage et le terrasse, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Aménagements extérieurs, Pavage, Terrasse
Zone d''intervention: Manage Page Facebook', 'Aménagement extérieur à Manage | Bryan Ghislain Jardin', 'Profitez d''un aménagement extérieur personnalisé et réactif. Des devis gratuits pour comprendre vos options avant engagement.', 'Aménagement extérieur personnalisé à Manage', 'BG Jardin propose des services d''aménagement extérieur, pavage et terrasse sur mesure. Devis gratuits et conseils adaptés.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Bryan Ghislain Jardin","description":"Services d''aménagement extérieur, pavage et terrasse personnalisés avec devis gratuits.","url":"https://revelys.be/entreprises/amenagement-exterieur-a-manage-page-facebook-bryan-ghislain-jardin","sameAs":["https://bgjardin.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue de la Basse Hestre 36","postalCode":"7170","addressLocality":"Manage Page Facebook"},"areaServed":["Manage Page Facebook"],"keywords":["aménagement extérieur","pavage","terrasse","proche de chez vous","réactif","confortable","Aménagements extérieurs","Pavage","Terrasse"],"image":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/bryan-ghislain-jardin-0712874576/logo.webp"}}'::jsonb, '2026-02-16T06:07:35.857Z', TRUE, 5, 'e4b9e0bb7bf503d11cdbf237e35a3c455d8f2ed242fd3a1a53c94525b6abb26d', 'BG Jardin garantit un travail sérieux et personnalisé, avec des conseils adaptés à chaque projet.', NULL, 'Sérénité', '[{"name":"Analyse de vos besoins","description":"Nous discutons ensemble pour comprendre vos attentes et goûts avant toute réalisation.","frequency":"Une fois par projet","impact":"Essentielle pour la bonne réalisation du projet","proof":null},{"name":"Collaboration avec des experts","description":"Nous nous entourons de spécialistes pour offrir un service toujours plus performant.","frequency":"Selon les besoins spécifiques du projet","impact":"Permet d''offrir une solution adaptée et innovante","proof":null},{"name":"Devis personnalisés","description":"Nous proposons des devis gratuits et sur mesure pour chaque client.","frequency":"À la demande du client","impact":"Aide à comprendre les coûts et options disponibles avant engagement","proof":null}]'::jsonb, 75, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/bryan-ghislain-jardin-0712874576/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/bryan-ghislain-jardin-0712874576/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/bryan-ghislain-jardin-0712874576/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/bryan-ghislain-jardin-0712874576/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/bryan-ghislain-jardin-0712874576/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/bryan-ghislain-jardin-0712874576/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T06:07:56.961Z","proof":"https://bgjardin.be/"},{"label":"Seed: city hint","date":"2026-02-16T06:07:56.961Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T06:07:56.961Z","proof":"Manage Page Facebook"},{"label":"BCE: mod97 valid","date":"2026-02-16T06:07:56.961Z","proof":"0712874576"},{"label":"Email extracted","date":"2026-02-16T06:07:56.961Z","proof":"bgjardininfo@gmail.com"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T06:07:56.961Z","proof":"confidence=0.9"},{"label":"Phone extracted","date":"2026-02-16T06:07:56.961Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T06:07:56.961Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/bryan-ghislain-jardin-0712874576/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0712874576', 'Actif', 'BCE_CSV', '2026-02-16T06:07:05.447Z', '2026-02-16T06:07:05.447Z', 'Ghislain, Bryan', '2018-11-07', 'Personne physique', NULL, 'Situation normale', '2026-02-11', '2026-02-16T06:07:56.961Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0712874576'
    AND c_existing.slug <> 'amenagement-exterieur-a-manage-page-facebook-bryan-ghislain-jardin'
)
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, 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, 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 'audit-energetique-a-morlanwelz-gsm-energie-logement', 'BE-WAL', 'Energie Logement', 'Audit énergétique', ARRAY['conseil energie', 'certification peb', 'suivi renovation', 'rénovation logement', 'expertise locale', 'accompagnement client']::text[], ARRAY['Audit énergétique', 'Certification peb', 'Suivi des conseils en rénovation']::text[], NULL, NULL, NULL, NULL, 'Morlanwelz - Gsm', '7140', 'BE', 'Rue Edmond Peny 31 , Morlanwelz, BE', 'https://www.energielogement.be/', 'https://www.facebook.com/profile.php?id=61557978242404&sk=followers', NULL, 'http://www.linkedin.com/in/binard-eric-57ba03113', 'eric.binard@energielogement.be', 'Équipe de direction', '+32470981220', '+32470981220', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : audit énergétique, certification peb et suivi des conseils en rénovation. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Morlanwelz - Gsm et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Energie Logement est une entreprise de audit énergétique active à Morlanwelz - Gsm (province de Hainaut). Elle intervient notamment pour l''audit énergétique, la certification peb et le suivi des conseils en rénovation, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Audit énergétique, Certification peb, Suivi des conseils en rénovation
Zone d''intervention: Morlanwelz - Gsm', 'Audit énergétique à Morlanwelz - Gsm | Energie Logement', 'Identifiez les points d''amélioration de votre logement grâce à un audit complet. Expertise locale pour une rénovation efficace et durable.', 'Energie Logement : Audit énergétique et certification PEB à', 'Spécialistes en audit énergétique et certification PEB, Energie Logement vous guide vers des solutions adaptées pour une rénovation efficace et durable.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Energie Logement","description":"Spécialistes en audit énergétique et certification PEB, guidant vers des solutions adaptées pour une rénovation efficace et durable.","url":"https://revelys.be/entreprises/audit-energetique-a-morlanwelz-gsm-energie-logement","sameAs":["https://www.energielogement.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue Edmond Peny 31","postalCode":"7140","addressLocality":"Morlanwelz - Gsm"},"areaServed":"Morlanwelz - Gsm","keywords":["conseil energie","certification peb","suivi renovation","rénovation logement","expertise locale","accompagnement client","Audit énergétique","Certification peb","Suivi des conseils en rénovation"],"image":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/energie-logement-0804985677/logo.webp"}}'::jsonb, '2026-02-16T06:30:38.918Z', TRUE, 5, '1780254ebf08097ed2e3e86f600e0fd8210ee83ded3d877dd6ea19d999773a9a', 'Éric Binard vous guide vers les solutions adaptées à vos besoins, votre budget et vos envies.', NULL, 'Confiance', '[{"name":"Audit initial","description":"Un audit énergétique complet pour identifier les points d''amélioration.","frequency":"Une fois par an","impact":"Détermine les travaux prioritaires et les actions rapides à entreprendre.","proof":null},{"name":"Suivi des conseils","description":"Un suivi régulier pour vous accompagner dans la mise en œuvre des recommandations.","frequency":"Toutes les 6 mois","impact":"Assure une rénovation énergétique efficace et durable.","proof":null},{"name":"Certification PEB","description":"Obtention d''un certificat PEB pour valider la performance énergétique de votre logement.","frequency":"Une fois par projet","impact":"Permet l''accès à des primes et financements régionaux.","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/energie-logement-0804985677/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/energie-logement-0804985677/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/energie-logement-0804985677/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/energie-logement-0804985677/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/energie-logement-0804985677/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/energie-logement-0804985677/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T06:31:01.910Z","proof":"https://www.energielogement.be/"},{"label":"Seed: city hint","date":"2026-02-16T06:31:01.910Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T06:31:01.910Z","proof":"Morlanwelz - Gsm"},{"label":"BCE: mod97 valid","date":"2026-02-16T06:31:01.910Z","proof":"0804985677"},{"label":"Email extracted","date":"2026-02-16T06:31:01.910Z","proof":"eric.binard@energielogement.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T06:31:01.910Z","proof":"confidence=90"},{"label":"Phone extracted","date":"2026-02-16T06:31:01.910Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T06:31:01.910Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/energie-logement-0804985677/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0804985677', 'Actif', 'BCE_CSV', '2026-02-16T06:30:03.312Z', '2026-02-16T06:30:03.312Z', 'Binard, Eric', '2023-09-04', 'Personne physique', NULL, 'Situation normale', '2026-02-11', '2026-02-16T06:31:01.910Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0804985677'
    AND c_existing.slug <> 'audit-energetique-a-morlanwelz-gsm-energie-logement'
)
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, 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, 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 'audit-energetique-a-mons-sud-radio-belgique', 'BE-WAL', 'Sud Radio Belgique', 'Audit énergétique', ARRAY['audit energie', 'certificat peb', 'renovation energetique', 'gratuit', 'confort', 'sante']::text[], ARRAY['Audit énergétique gratuit', 'Certification peb', 'Rénovation énergétique']::text[], NULL, NULL, NULL, NULL, 'Mons', '7000', 'BE', 'Rue de la Chaussée 42', 'https://hainaut.sudradio.net/', 'https://www.facebook.com/SudRadio', 'https://www.instagram.com/sudradiobe/', NULL, 'redaction@sudradio.be', 'Équipe de direction', '+3226021607', '+3226021607', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], '24h/24 - 7j/7', '[{"day":"samedi","open":"07:00","close":"10:00","isClosed":false},{"day":"dimanche","open":"07:00","close":"11:00","isClosed":false}]'::jsonb, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : audit énergétique gratuit, certification peb et rénovation énergétique. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Mons TVA et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Sud Radio Belgique est une entreprise de audit énergétique gratuit active à Mons (province de Hainaut). Elle intervient notamment pour l''audit énergétique gratuit, la certification peb et la rénovation énergétique, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Audit énergétique gratuit, Certification peb, Rénovation énergétique
Zone d''intervention: Mons', 'Audit énergétique à Mons | Sud Radio Belgique', 'Réduisez votre consommation d''énergie grâce à un audit gratuit. Facilitez vos démarches de rénovation énergétique avec des guides locaux.', 'Sud Radio Belgique - Audit Énergétique Gratuit', 'Offrez-vous un audit énergétique gratuit pour améliorer le confort et la sécurité dans votre logement. Sud Radio Belgique vous guide dans vos démarches de rénovation énergétique à Mons.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Sud Radio Belgique","description":"Offre des audits énergétiques gratuits pour aider les habitants à réduire leur consommation d''énergie et améliorer le confort dans leurs logements.","url":"https://revelys.be/entreprises/audit-energetique-a-mons-sud-radio-belgique","sameAs":["https://hainaut.sudradio.net/"],"address":{"@type":"PostalAddress","streetAddress":"Rue de la Chaussée 42","postalCode":"7000","addressLocality":"Mons"},"areaServed":"Mons","keywords":["audit énergétique","certificat PEB","renovation energetique","gratuit","confort","sante"],"image":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/sud-radio-belgique-0423917912/logo.webp"}}'::jsonb, '2026-02-16T06:31:48.716Z', TRUE, 5, 'b9a6e81d936e9ae149c13e0cb38fb1510f9f19d1e14aa3256bef06a025268f4e', 'Sud Radio offre des audits énergétiques gratuits pour aider les habitants de La Louvière à réduire leur consommation d''énergie et améliorer le confort dans leurs logements.', NULL, 'Sécurité', '[{"name":"Audit énergétique gratuit","description":"Identifie les faiblesses du bâtiment et propose des solutions pour une meilleure isolation.","frequency":"Une fois par an","impact":"Réduit la consommation d''énergie et améliore le confort thermique.","proof":null},{"name":"Accompagnement dans les démarches de rénovation","description":"Guide les propriétaires à travers l''obtention des aides financières pour la rénovation énergétique.","frequency":"Sur demande","impact":"Facilite l''accès aux primes régionales et encourage la réalisation de travaux.","proof":null},{"name":"Suivi des consommations énergétiques","description":"Vérifie les économies réalisées grâce à la rénovation énergétique.","frequency":"Une fois par an","impact":"Confirme l''efficacité des travaux et encourage d''autres initiatives.","proof":null}]'::jsonb, 75, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/sud-radio-belgique-0423917912/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/sud-radio-belgique-0423917912/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/sud-radio-belgique-0423917912/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/sud-radio-belgique-0423917912/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/sud-radio-belgique-0423917912/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/sud-radio-belgique-0423917912/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T06:32:10.535Z","proof":"https://hainaut.sudradio.net/?p=33239"},{"label":"Seed: city hint","date":"2026-02-16T06:32:10.535Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T06:32:10.535Z","proof":"Mons"},{"label":"BCE: mod97 valid","date":"2026-02-16T06:32:10.535Z","proof":"0423917912"},{"label":"Email extracted","date":"2026-02-16T06:32:10.535Z","proof":"redaction@sudradio.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T06:32:10.535Z","proof":"confidence=80"},{"label":"Phone extracted","date":"2026-02-16T06:32:10.535Z","proof":"source=text"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T06:32:10.535Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/sud-radio-belgique-0423917912/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0423917912', 'Actif', 'BCE_CSV', '2026-02-16T06:31:06.524Z', '2026-02-16T06:31:06.524Z', 'REGIE MONTOISE DE PUBLICITE', '1983-03-10', 'Personne morale', 'Société anonyme', 'Situation normale', '2026-02-11', '2026-02-16T06:32:10.535Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0423917912'
    AND c_existing.slug <> 'audit-energetique-a-mons-sud-radio-belgique'
)
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, 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, 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 'installateur-securite-a-la-louviere-installateur-de-systemes-dalarme-en-belgique', 'BE-WAL', 'Installateur de systèmes d''alarme en Belgique', 'Installateur sécurité', ARRAY['sécurité', 'protection', 'surveillance', 'maintenance', 'expertise', 'technologie', 'qualité']::text[], ARRAY['Installation de systèmes d''alarme', 'Vidéosurveillance', 'Détection incendie', 'Maintenance de systèmes d''alarme', 'Réparation de caméras']::text[], 'sur_devis', NULL, NULL, TRUE, 'La Louvière', '7110', 'BE', 'Route du Grand Peuplier, 23', 'https://www.al-tecno.be/', 'https://www.facebook.com/profile.php?id=100057174170932', NULL, NULL, 'paolo@al-tecno.be', 'Équipe de direction', '+3264222769', '+3264222769', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], '24h/24 - 7j/7', NULL, NULL, NULL, NULL, '[{"question":"Quels types de systèmes d''alarme proposez-vous?","answer":"Nous proposons des systèmes filaires et sans fil, adaptés à vos besoins en sécurité."},{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : installation de systèmes d''alarme, vidéosurveillance, détection incendie et maintenance de systèmes d''alarme. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à La Louvière et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Installateur de systèmes d''alarme en Belgique est une entreprise de sécurité active à La Louvière (province de Hainaut). Elle intervient notamment pour l''installation de systèmes d''alarme, la vidéosurveillance, la détection incendie et la maintenance de systèmes d''alarme, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Installation de systèmes d''alarme, Vidéosurveillance, Détection incendie, Maintenance de systèmes d''alarme, Réparation de caméras
Zone d''intervention: La Louvière', 'Installateur de systèmes d''alarme à La Louvière | Al-Tecno', 'Évaluation gratuite et installation discrète pour sécuriser votre résidence ou entreprise. Spécialistes en Belgique.', 'Al-Tecno: Installateur de systèmes d''alarme à La Louvière', 'Spécialiste en sécurité, Al-Tecno propose des évaluations gratuites et une installation discrète pour protéger votre résidence ou entreprise. Contactez-nous dès aujourd''hui.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Al-Tecno SRL","description":"Installateur de systèmes d''alarme en Belgique, offrant des solutions sur mesure pour la sécurité résidentielle et commerciale.","url":"https://revelys.be/entreprises/installateur-securite-a-la-louviere-installateur-de-systemes-dalarme-en-belgique","sameAs":["https://www.al-tecno.be/"],"address":{"@type":"PostalAddress","streetAddress":"Route du Grand Peuplier, 23","postalCode":"7110","addressLocality":"La Louvière"},"areaServed":["La Louvière"],"keywords":["sécurité","protection","surveillance","maintenance","expertise","technologie","qualité","Installation de systèmes d''alarme","Vidéosurveillance","Détection incendie","Maintenance de systèmes d''alarme","Réparation de caméras"],"image":["https://www.al-tecno.be/images/logo.svg"]}'::jsonb, '2026-02-16T06:36:06.019Z', TRUE, 5, 'ab1898a3881eb2b81094ee774d9a6155cee66359935ff101ba7559b8c58315cd', 'Al-Tecno offre des solutions sur mesure pour protéger votre résidence ou entreprise, avec une expertise et un engagement envers la qualité.', NULL, 'Sécurité', '[{"name":"Évaluation gratuite de vos besoins en sécurité","description":"Notre équipe experte effectue une évaluation personnalisée pour concevoir un système adapté à vos exigences spécifiques.","frequency":"Une fois","impact":"Fort","proof":null},{"name":"Installation discrète et efficace des systèmes d''alarme","description":"Nous installons vos équipements de sécurité avec professionnalisme pour minimiser les perturbations.","frequency":"Une fois","impact":"Fort","proof":null},{"name":"Maintenance régulière et service après-vente","description":"Nous offrons un entretien annuel pour assurer le bon fonctionnement de vos systèmes.","frequency":"Annuelle","impact":"Moyen","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/installateur-securite-a-la-louviere-installateur-de-systemes-dalarme-en-belgique/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/installateur-de-systemes-dalarme-en-belgique-0433033437/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/installateur-de-systemes-dalarme-en-belgique-0433033437/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/installateur-de-systemes-dalarme-en-belgique-0433033437/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/installateur-de-systemes-dalarme-en-belgique-0433033437/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/installateur-de-systemes-dalarme-en-belgique-0433033437/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T06:36:27.392Z","proof":"https://www.al-tecno.be/"},{"label":"Seed: city hint","date":"2026-02-16T06:36:27.392Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T06:36:27.392Z","proof":"La Louvière"},{"label":"BCE: mod97 valid","date":"2026-02-16T06:36:27.392Z","proof":"0433033437"},{"label":"Email extracted","date":"2026-02-16T06:36:27.392Z","proof":"paolo@al-tecno.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T06:36:27.392Z","proof":"confidence=0.92"},{"label":"Phone extracted","date":"2026-02-16T06:36:27.392Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T06:36:27.392Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/installateur-de-systemes-dalarme-en-belgique-0433033437/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0433033437', 'Actif', 'BCE_CSV', '2026-02-16T06:35:26.751Z', '2026-02-16T06:35:26.751Z', 'AL TECNO', '1987-12-29', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T06:36:27.392Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0433033437'
    AND c_existing.slug <> 'installateur-securite-a-la-louviere-installateur-de-systemes-dalarme-en-belgique'
)
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, 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, 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 'installateur-securite-a-la-louviere-cobatec', 'BE-WAL', 'Cobatec', 'Installateur sécurité', ARRAY['sécurité', 'installateur', 'alarme', 'caméra', 'surveillance', 'conseils', 'installation', 'gratuit']::text[], ARRAY['Installation de systèmes d’alarme', 'Caméra et vidéophonie', 'Système d’incendie', 'Contrôle d’accès', 'Surveillance de chantier']::text[], 'sur_devis', NULL, NULL, TRUE, 'La Louvière', '7100', 'BE', 'Chaussée Paul Houtart, 80, 7110 La Louvière, Belgium', 'https://www.cobatec.be/', 'https://www.facebook.com/Cobatec', 'https://www.instagram.com/cobatec_be/', 'https://www.linkedin.com/company/cobatec/', 'secretariat@cobatec.be', 'Équipe de direction', '+3264282181', '+3264282181', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], '24h/24 - 7j/7', NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : installation de systèmes d’alarme, caméra et vidéophonie, système d’incendie et contrôle d’accès. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à La Louvière Tél et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Cobatec est une entreprise de sécurité active à La Louvière (province de Hainaut). Elle intervient notamment pour l''installation de systèmes d’alarme, le caméra et vidéophonie, le système d’incendie et le contrôle d’accès, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Installation de systèmes d’alarme, Caméra et vidéophonie, Système d’incendie, Contrôle d’accès, Surveillance de chantier
Zone d''intervention: La Louvière', 'Installateur sécurité à La Louvière | Cobatec', 'Bénéficiez d''une installation gratuite de systèmes d''alarme par des experts locaux. Conseils personnalisés pour sécuriser votre maison ou entreprise.', 'Cobatec - Installateur sécurité et alarmes à La Louvière', 'Installateur de systèmes d''alarme et caméras à La Louvière. Nos experts vous offrent des conseils personnalisés et une installation gratuite pour sécuriser votre maison ou entreprise.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Cobatec","description":"Installateur de systèmes d''alarme, caméras et contrôle d''accès à La Louvière. Conseils personnalisés et installation gratuite.","url":"https://revelys.be/entreprises/installateur-securite-a-la-louviere-cobatec","sameAs":["https://www.cobatec.be/"],"address":{"@type":"PostalAddress","streetAddress":"Chaussée Paul Houtart, 80","postalCode":"7110","addressLocality":"La Louvière"},"areaServed":"La Louvière","keywords":["sécurité","installateur","alarme","caméra","surveillance","conseils","installation","gratuit","système d''incendie","contrôle d''accès","surveillance de chantier"],"image":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/cobatec-0840029502/logo.webp","logo":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/cobatec-0840029502/logo.webp"}'::jsonb, '2026-02-16T06:37:35.994Z', TRUE, 5, 'dc70eae18c6ac007dd51ad3590751dd15b3c55a5228d09607f448a243980d00c', 'Notre entreprise familiale offre des conseils personnalisés et une installation gratuite à domicile pour sécuriser votre maison ou entreprise.', NULL, 'Sécurité', '[{"name":"Installation de systèmes d’alarme","description":"Nos experts se déplacent gratuitement chez vous pour installer les meilleurs systèmes d''alarme.","frequency":"Une fois par an","impact":"Permet une sécurité optimale pour votre maison ou entreprise","proof":null},{"name":"Conseils personnalisés","description":"Nous proposons des conseils adaptés à vos besoins en matière de sécurité.","frequency":"Sur demande","impact":"Aide à la prise d''une décision éclairée pour votre système de sécurité","proof":null},{"name":"Maintenance et support","description":"Nous assurons une maintenance régulière et un support technique pour vos systèmes installés.","frequency":"Sur demande","impact":"Garantit le bon fonctionnement de votre système de sécurité","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/cobatec-0840029502/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/cobatec-0840029502/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/cobatec-0840029502/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/cobatec-0840029502/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/cobatec-0840029502/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/cobatec-0840029502/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T06:38:00.671Z","proof":"https://www.cobatec.be/"},{"label":"Seed: city hint","date":"2026-02-16T06:38:00.671Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T06:38:00.671Z","proof":"La Louvière"},{"label":"BCE: mod97 valid","date":"2026-02-16T06:38:00.671Z","proof":"0840029502"},{"label":"Email extracted","date":"2026-02-16T06:38:00.671Z","proof":"secretariat@cobatec.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T06:38:00.671Z","proof":"confidence=0.9"},{"label":"Phone extracted","date":"2026-02-16T06:38:00.671Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T06:38:00.671Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/cobatec-0840029502/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0840029502', 'Actif', 'BCE_CSV', '2026-02-16T06:37:04.310Z', '2026-02-16T06:37:04.310Z', 'COBATEC', '2011-10-06', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T06:38:00.671Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0840029502'
    AND c_existing.slug <> 'installateur-securite-a-la-louviere-cobatec'
)
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, 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, 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 'installateur-securite-a-strepy-bracquegnies-egf-sprl', 'BE-WAL', 'EGF sprl', 'Installateur sécurité', ARRAY['sécurité', 'contrôle d''accès', 'détection incendie', 'réseaux informatiques', 'installateur professionnel', 'expertise reconnue']::text[], ARRAY['Installation de d’alarmes', 'Réseau interne de bureau', 'Contrôle d''accès', 'Détection incendie']::text[], 'sur_devis', NULL, NULL, TRUE, 'Strépy-Bracquegnies', '7110', 'BE', '20 rue Jean-Baptiste Vifquain, Strépy-Bracquegnies, BE', 'https://www.sprlegf.be/', NULL, NULL, NULL, 'info@sprlegf.be', 'Équipe de direction', '+3264265652', '+3264265652', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : installation de d’alarmes, réseau interne de bureau, contrôle d''accès et détection incendie. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Strépy-Bracquegnies Tel et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'EGF sprl est une entreprise de sécurité active à Strépy-Bracquegnies (province de Hainaut). Elle intervient notamment pour l''installation de d’alarmes, le réseau interne de bureau, le contrôle d''accès et la détection incendie, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Installation de d’alarmes, Réseau interne de bureau, Contrôle d''accès, Détection incendie
Zone d''intervention: Strépy-Bracquegnies', 'Installateur sécurité à Strépy-Bracquegnies | EGF sprl', 'Bénéficiez d''un audit complet de sécurité pour identifier vos besoins. Expertise reconnue en installation et maintenance.', 'Installateur sécurité - EGF sprl, Strépy-Bracquegnies', 'EGF sprl propose des services d''installation et de maintenance de systèmes de sécurité pour assurer la protection optimale de vos espaces. Contactez-nous pour un audit gratuit.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"EGF sprl","description":"Installateur professionnel en sécurité, contrôle d''accès et détection incendie.","url":"https://revelys.be/entreprises/installateur-securite-a-strepy-bracquegnies-egf-sprl","sameAs":["https://www.sprlegf.be/"],"address":{"@type":"PostalAddress","streetAddress":"20 rue Jean-Baptiste Vifquain","postalCode":"7110","addressLocality":"Strépy-Bracquegnies","addressCountry":"BE"},"areaServed":"Strépy-Bracquegnies","keywords":["sécurité","contrôle d''accès","détection incendie","réseaux informatiques","installateur professionnel","expertise reconnue","Installation de d’alarmes","Réseau interne de bureau","Contrôle d''accès","Détection incendie"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/egf-sprl-0461769785/logo.webp"]}'::jsonb, '2026-02-16T06:42:45.175Z', TRUE, 5, 'e00f25d9232d6ab2aaf5684d9d30a57e94b405b52d58751186db027d2c4bdff2', 'Faire appel à notre équipe d''installateurs experts, c''est choisir une sécurité optimale et un service sur mesure.', NULL, 'Sécurité', '[{"name":"Audit de sécurité initial","description":"Nous effectuons un audit complet pour identifier les besoins en matière de sécurité.","frequency":"Une fois par an","impact":"proof=null","proof":null},{"name":"Formation aux systèmes d''alarme","description":"Nous formons nos clients à l''utilisation efficace des systèmes installés.","frequency":"Une fois lors de la mise en place du","impact":"proof=null","proof":null},{"name":"Maintenance régulière","description":"Nos techniciens effectuent une maintenance annuelle pour garantir le bon fonctionnement des systèmes installés.","frequency":"Une fois par an","impact":"proof=null","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/egf-sprl-0461769785/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/egf-sprl-0461769785/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/egf-sprl-0461769785/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/egf-sprl-0461769785/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/egf-sprl-0461769785/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/egf-sprl-0461769785/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T06:43:08.175Z","proof":"https://www.sprlegf.be/installateur-alarme-intrusion-belgique-La-Louviere.html"},{"label":"Seed: city hint","date":"2026-02-16T06:43:08.175Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T06:43:08.175Z","proof":"Strépy-Bracquegnies"},{"label":"BCE: mod97 valid","date":"2026-02-16T06:43:08.175Z","proof":"0461769785"},{"label":"Email extracted","date":"2026-02-16T06:43:08.175Z","proof":"info@sprlegf.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T06:43:08.175Z","proof":"confidence=0.92"},{"label":"Phone extracted","date":"2026-02-16T06:43:08.175Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T06:43:08.175Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/egf-sprl-0461769785/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0461769785', 'Actif', 'BCE_CSV', '2026-02-16T06:42:16.503Z', '2026-02-16T06:42:16.503Z', 'E.G.F.', '1997-10-28', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T06:43:08.175Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0461769785'
    AND c_existing.slug <> 'installateur-securite-a-strepy-bracquegnies-egf-sprl'
)
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, 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, 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 'aide-a-domicile-a-la-louviere-itineraire-acces-la-louviere', 'BE-WAL', 'La Louvière', 'Aide à domicile', ARRAY['soutien personnel', 'mobilité', 'accompagnement', 'bien-être', 'autonomie', 'foyer']::text[], ARRAY['Aide aux tâches ménagères', 'Compagnonnage', 'Transport', 'Accompagnement médical']::text[], NULL, NULL, NULL, NULL, 'La Louvière Itinéraire Accès', '7100', 'BE', 'Place de la Concorde 15', 'https://www.lalouviere.be/', 'https://www.facebook.com/VilleLaLouviere', 'https://www.instagram.com/lalouviere_ville/', NULL, 'mpadourek@lalouviere.be', 'Équipe de direction', '+3264885011', '+3264885011', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français', 'néerlandais', 'anglais', 'allemand']::text[], 'Sur rendez-vous', NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : aide aux tâches ménagères, compagnonnage, transport et accompagnement médical. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à La Louvière Itinéraire Accès et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'La Louvière est une entreprise de aide aux tâches ménagères active à La Louvière Itinéraire Accès (province de Hainaut). Elle intervient notamment pour l''aide aux tâches ménagères, le compagnonnage, le transport et l''accompagnement médical, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Aide aux tâches ménagères, Compagnonnage, Transport, Accompagnement médical
Zone d''intervention: La Louvière Itinéraire Accès', 'Aide à domicile à La Louvière | La Louvière', 'Soutien personnalisé et attentionné pour garantir le confort des résidents. Services adaptés aux besoins changeants de chaque client.', 'La Louvière - Aide à domicile à La Louvière', 'Offre un soutien personnalisé et attentionné, garantissant le bien-être et l''autonomie des résidents. Services adaptés aux besoins spécifiques de chaque client.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"La Louvière","description":"Soutien personnalisé et attentionné pour garantir le confort des résidents. Services adaptés aux besoins changeants de chaque client.","url":"https://revelys.be/entreprises/aide-a-domicile-a-la-louviere-itineraire-acces-la-louviere","sameAs":["https://www.lalouviere.be/"],"address":{"@type":"PostalAddress","streetAddress":"Place de la Concorde 15","postalCode":"7100","addressLocality":"La Louvière Itinéraire Accès"},"areaServed":"La Louvière Itinéraire Accès","keywords":["soutien personnel","mobilité","accompagnement","bien-être","autonomie","foyer","Aide aux tâches ménagères","Compagnonnage","Transport","Accompagnement médical"],"image":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/la-louviere-0871429489/logo.webp"}}'::jsonb, '2026-02-16T06:46:01.009Z', TRUE, 5, '9fd4987b1aeadf8d9b2e54cb552ba486c48f17cdb368eecfcdf3aa7af548746f', 'Li?ge''Aide à domicile de La Louvière est dédiée à offrir un soutien personnalisé et attentionné, garantissant le confort et la sécurité des résidents.', NULL, 'Confiance', '[{"name":"Évaluation initiale","description":"Une évaluation approfondie pour comprendre les besoins spécifiques du client.","frequency":"Une fois par an","impact":"proof=null","proof":null},{"name":"Suivi régulier","description":"Des visites fréquentes pour s''assurer que le soutien répond aux besoins changeants du client.","frequency":"Une fois par mois","impact":"proof=null","proof":null},{"name":"Formation continue des employés","description":"Des formations régulières pour maintenir les compétences et le savoir-faire de l''équipe.","frequency":"Tous les trimestres","impact":"proof=null","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/la-louviere-0871429489/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/la-louviere-0871429489/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/la-louviere-0871429489/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/la-louviere-0871429489/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/la-louviere-0871429489/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/la-louviere-0871429489/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T06:46:23.836Z","proof":"https://www.lalouviere.be/cpas/aides/aides-a-domicile"},{"label":"Seed: city hint","date":"2026-02-16T06:46:23.836Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T06:46:23.836Z","proof":"La Louvière Itinéraire Accès"},{"label":"BCE: mod97 valid","date":"2026-02-16T06:46:23.836Z","proof":"0871429489"},{"label":"Email extracted","date":"2026-02-16T06:46:23.836Z","proof":"mpadourek@lalouviere.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T06:46:23.836Z","proof":"confidence=3"},{"label":"Phone extracted","date":"2026-02-16T06:46:23.836Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T06:46:23.836Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/la-louviere-0871429489/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0871429489', 'Actif', 'BCE_CSV', '2026-02-16T06:45:29.075Z', '2026-02-16T06:45:29.075Z', 'Ville de La Louvière', '1969-04-10', 'Personne morale', 'Ville / commune', 'Situation normale', '2026-02-11', '2026-02-16T06:46:23.836Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0871429489'
    AND c_existing.slug <> 'aide-a-domicile-a-la-louviere-itineraire-acces-la-louviere'
)
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, 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, 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 'coach-sportif-a-la-louviere-piron-nicolas', 'BE-WAL', 'Piron, Nicolas', 'Coach sportif', ARRAY['coaching', 'personnalisé', 'nutrition', 'remise en forme', 'santé', 'bien-être', 'motivation']::text[], ARRAY['Coach sportif personnel', 'Entraînements sur mesure', 'Conseils nutritionnels']::text[], NULL, NULL, NULL, NULL, 'La Louvière', '7100', 'BE', 'Rendez-vous Rue Hamoir 45, 049', 'https://nicoach-sportif.be/', NULL, NULL, NULL, 'info@nicoach-sportif.be', 'Équipe de direction', '+32498508607', '+32498508607', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : coach sportif personnel, entraînements sur mesure et conseils nutritionnels. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à La Louvière et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Contactez votre coach sportif personnel à La Louvière est une entreprise de coach sportif personnel active à La Louvière (province de Hainaut). Elle intervient notamment pour le coach sportif personnel, les entraînements sur mesure et les conseils nutritionnels, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Coach sportif personnel, Entraînements sur mesure, Conseils nutritionnels
Zone d''intervention: La Louvière', 'Coach sportif à La Louvière | Contactez votre coach sportif', 'Améliorez votre condition physique avec des entraînements sur mesure et des conseils nutritionnels. Idéal pour les habitants de La Louvière.', 'Coach sportif personnalisé à La Louvière', 'Nicolas Piron vous guide vers la réalisation de vos objectifs physiques avec des séances adaptées et un soutien nutritionnel. Idéal pour les résidents de La Louvière.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Piron, Nicolas","description":"Nicolas Piron vous guide vers la réalisation de vos objectifs physiques avec des séances adaptées et un soutien nutritionnel.","url":"https://revelys.be/entreprises/coach-sportif-a-la-louviere-piron-nicolas","sameAs":["https://nicoach-sportif.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rendez-vous Rue Hamoir 45, 049","postalCode":"7100","addressLocality":"La Louvière","addressCountry":"BE"},"areaServed":"La Louvière","keywords":["coaching","personnalisé","nutrition","remise en forme","santé","bien-être","motivation","Coach sportif personnel","Entraînements sur mesure","Conseils nutritionnels"],"image":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/contactez-votre-coach-sportif-personnel-a-la-louviere-0869870462/logo.webp"}}'::jsonb, '2026-02-16T06:59:58.995Z', TRUE, 5, '8ef4bde8f5e5a57543274edb6ecb24fca6020257d1fba8437ab90a96f0b50fc6', 'Nicolas Piron vous guide vers la réalisation de vos objectifs physiques avec des séances adaptées et un soutien nutritionnel.', NULL, 'Confiance', '[{"name":"Évaluation initiale","description":"Une évaluation personnalisée pour comprendre vos besoins et objectifs.","frequency":"1 fois par mois","impact":"Détermine les objectifs de coaching","proof":null},{"name":"Séances d''entraînement","description":"Des séances adaptées à votre niveau et vos objectifs, en studio ou outdoor.","frequency":"1 fois par semaine","impact":"Améliore la condition physique et le bien-être général","proof":null},{"name":"Suivi nutritionnel","description":"Conseils personnalisés pour un régime alimentaire équilibré.","frequency":"1 fois par mois","impact":"Optimise les résultats du coaching sportif","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/contactez-votre-coach-sportif-personnel-a-la-louviere-0869870462/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/contactez-votre-coach-sportif-personnel-a-la-louviere-0869870462/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/contactez-votre-coach-sportif-personnel-a-la-louviere-0869870462/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/contactez-votre-coach-sportif-personnel-a-la-louviere-0869870462/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/contactez-votre-coach-sportif-personnel-a-la-louviere-0869870462/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/contactez-votre-coach-sportif-personnel-a-la-louviere-0869870462/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T07:00:23.826Z","proof":"https://nicoach-sportif.be/"},{"label":"Seed: city hint","date":"2026-02-16T07:00:23.826Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T07:00:23.826Z","proof":"La Louvière"},{"label":"BCE: mod97 valid","date":"2026-02-16T07:00:23.826Z","proof":"0869870462"},{"label":"Email extracted","date":"2026-02-16T07:00:23.826Z","proof":"info@nicoach-sportif.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T07:00:23.826Z","proof":"confidence=90"},{"label":"Phone extracted","date":"2026-02-16T07:00:23.826Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T07:00:23.826Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/contactez-votre-coach-sportif-personnel-a-la-louviere-0869870462/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0869870462', 'Actif', 'BCE_CSV', '2026-02-16T06:59:28.991Z', '2026-02-16T06:59:28.991Z', 'Piron, Nicolas', '2004-10-25', 'Personne physique', NULL, 'Situation normale', '2026-02-11', '2026-02-16T07:00:23.826Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0869870462'
    AND c_existing.slug <> 'coach-sportif-a-la-louviere-piron-nicolas'
)
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, 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, 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 'agence-web-a-carnieres-zixar-agence-web', 'BE-WAL', 'ZIXAR Agence Web', 'Agence web', ARRAY['création site web', 'ecommerce', 'développement web', 'application mobile', 'marketing digital', 'référencement']::text[], ARRAY['Création de site web', 'Conception de sites ecommerce', 'Développement web', 'Application mobile', 'Marketing digital', 'Référencement seo']::text[], NULL, NULL, NULL, NULL, 'Carnières', '7141', 'BE', NULL, 'https://www.zixar.be/', NULL, NULL, NULL, 'web@zixar.be', 'Équipe de direction', '+32476334756', '+32476334756', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], '24h/24 - 7j/7', '[{"day":"lundi","open":"09:00","close":"18:00","isClosed":false},{"day":"mardi","open":"09:00","close":"18:00","isClosed":false},{"day":"mercredi","open":"09:00","close":"18:00","isClosed":false},{"day":"jeudi","open":"09:00","close":"18:00","isClosed":false},{"day":"vendredi","open":"09:00","close":"18:00","isClosed":false}]'::jsonb, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : création de site web, conception de sites ecommerce, développement web et application mobile. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Carnières et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'ZIXAR Agence Web est une entreprise de création de site web active à Carnières (province de Hainaut). Elle intervient notamment pour la création de site web, la conception de sites ecommerce, le développement web et l''application mobile, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Création de site web, Conception de sites ecommerce, Développement web, Application mobile, Marketing digital, Référencement seo
Zone d''intervention: Carnières', 'Création site web à Carnières | ZIXAR Agence Web', 'Améliorez la visibilité en ligne de votre entreprise avec une stratégie digitale personnalisée. Spécialistes du développement web et référencement pour les entreprises', 'Création site web à Carnières - ZIXAR Agence Web', 'Zixar, agence web spécialisée en création de sites web, ecommerce et marketing digital pour améliorer la visibilité des entreprises locales. Contactez-nous pour un devis gratuit.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"ZIXAR Agence Web","description":"Agence web proposant création de sites, développement et référencement SEO pour les entreprises locales.","url":"https://revelys.be/entreprises/agence-web-a-carnieres-zixar-agence-web","sameAs":["https://www.zixar.be/"],"address":{"@type":"PostalAddress","postalCode":"7141","addressLocality":"Carnières"},"areaServed":"Carnières","keywords":["création site web","ecommerce","développement web","application mobile","marketing digital","référencement seo","Création de site web","Conception de sites ecommerce","Développement web","Application mobile","Marketing digital","Référencement seo"],"image":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/zixar-agence-web-1032903114/logo.webp"}}'::jsonb, '2026-02-16T07:04:02.585Z', TRUE, 5, 'f5a820ea89c62956d126f3b1513e8a53e2ac0c3b03111a0764a90e300039bf14', 'Zixar offre des solutions digitales sur mesure pour améliorer la visibilité et les performances en ligne de vos entreprises.', NULL, 'Confiance', '[{"name":"Rencontre initiale","description":"Première rencontre avec le client pour comprendre ses besoins spécifiques.","frequency":"Une fois par projet","impact":"Permet d''établir une relation de confiance et de bien comprendre les attentes du client.","proof":null},{"name":"Élaboration personnalisée","description":"Création d''une stratégie digitale adaptée aux objectifs spécifiques du projet.","frequency":"Une fois par projet","impact":"Assure que la solution proposée répond précisément aux besoins identifiés.","proof":null},{"name":"Suivi régulier","description":"Mise en place d''un suivi régulier pour s''assurer du bon déroulement du projet et de l''atteinte des objectifs.","frequency":"Toutes les semaines","impact":"Permet un ajustement continu pour optimiser la performance du projet.","proof":null}]'::jsonb, 75, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/zixar-agence-web-1032903114/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/zixar-agence-web-1032903114/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/zixar-agence-web-1032903114/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/zixar-agence-web-1032903114/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/zixar-agence-web-1032903114/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/zixar-agence-web-1032903114/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T07:04:25.041Z","proof":"https://www.zixar.be/agence-web-la-louviere/"},{"label":"Seed: city hint","date":"2026-02-16T07:04:25.041Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T07:04:25.041Z","proof":"Carnières"},{"label":"BCE: mod97 valid","date":"2026-02-16T07:04:25.041Z","proof":"1032903114"},{"label":"Email extracted","date":"2026-02-16T07:04:25.041Z","proof":"web@zixar.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T07:04:25.041Z","proof":"confidence=0.9"},{"label":"Phone extracted","date":"2026-02-16T07:04:25.041Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T07:04:25.041Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/zixar-agence-web-1032903114/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE1032903114', 'Actif', 'BCE_CSV', '2026-02-16T07:03:31.166Z', '2026-02-16T07:03:31.166Z', 'ZIXAR', '2026-01-12', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T07:04:25.041Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE1032903114'
    AND c_existing.slug <> 'agence-web-a-carnieres-zixar-agence-web'
)
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, 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, 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 'agence-web-a-la-louviere-chewing-com', 'BE-WAL', 'Chewing Com', 'Agence web', ARRAY['création site', 'réseaux sociaux', 'design graphique', 'formation digitale', 'stratégie créative', 'communication événementielle']::text[], ARRAY['Création de sites web', 'Gestion de réseaux sociaux', 'Design graphique', 'Formation en marketing digital']::text[], 'sur_devis', NULL, NULL, NULL, 'La Louvière', '7100', 'BE', NULL, 'https://www.chewingcom.be/', 'https://www.facebook.com/chewingcom', 'https://www.instagram.com/chewingcom/', 'https://fr.linkedin.com/showcase/chewing-com', 'laurie@chewingcom.be', 'Équipe de direction', '+32494875578', '+32494875578', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], 'Du lundi au vendredi', NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : création de sites web, gestion de réseaux sociaux, design graphique et formation en marketing digital. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à La Louvière et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Chewing Com est une entreprise de création de sites web active à La Louvière (province de Hainaut). Elle intervient notamment pour la création de sites web, la gestion de réseaux sociaux, le design graphique et la formation en marketing digital, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Création de sites web, Gestion de réseaux sociaux, Design graphique, Formation en marketing digital
Zone d''intervention: La Louvière', 'Création site à La Louvière | Chewing Com', 'Définissez une stratégie digitale unique pour chaque client. Aide au développement local grâce à des services innovants en marketing digital.', 'Chewing Com - Création de sites web et plus à La Louvière', 'Spécialisée en création de sites web, gestion de réseaux sociaux et design graphique. Chewing Com vous accompagne dans votre stratégie créative pour un impact sur le marché local.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Chewing Com","description":"Transformez vos grandes idées en magie visuelle avec Chewing Com, spécialisée en création de sites web et stratégie créative.","url":"https://revelys.be/entreprises/agence-web-a-la-louviere-chewing-com","sameAs":["https://www.chewingcom.be/"],"address":{"@type":"PostalAddress","streetAddress":null,"postalCode":"7100","addressLocality":"La Louvière"},"areaServed":"La Louvière","keywords":["création site","réseaux sociaux","design graphique","formation digitale","stratégie créative","communication événementielle","Création de sites web","Gestion de réseaux sociaux","Design graphique","Formation en marketing digital"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chewing-com-1027982442/logo.webp"]}'::jsonb, '2026-02-16T07:05:05.343Z', TRUE, 5, '39eefcefbec56383426238285f774769164a1445e687629808cef444d768299c', 'Chewing Com transforme les grandes idées en magie visuelle, aidant chaque marque à sortir de l''ordinaire.', NULL, 'Confiance', '[{"name":"Stratégie créative","description":"Définir une stratégie digitale unique pour chaque client.","frequency":"Une fois par projet","impact":"Aide à se démarquer sur le marché.","proof":null},{"name":"Formation continue","description":"Former les clients aux dernières tendances en marketing digital.","frequency":"Annuellement","impact":"Permet de rester compétitif et innovant.","proof":null},{"name":"Suivi personnalisé","description":"Offrir un suivi régulier pour s''assurer que les objectifs sont atteints.","frequency":"Mensuellement","impact":"Renforce la relation client et améliore l''efficacité des campagnes.","proof":null}]'::jsonb, 75, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chewing-com-1027982442/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chewing-com-1027982442/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chewing-com-1027982442/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chewing-com-1027982442/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chewing-com-1027982442/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chewing-com-1027982442/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T07:05:27.180Z","proof":"https://www.chewingcom.be/"},{"label":"Seed: city hint","date":"2026-02-16T07:05:27.180Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T07:05:27.180Z","proof":"La Louvière"},{"label":"BCE: mod97 valid","date":"2026-02-16T07:05:27.180Z","proof":"1027982442"},{"label":"Email extracted","date":"2026-02-16T07:05:27.180Z","proof":"laurie@chewingcom.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T07:05:27.180Z","proof":"confidence=3"},{"label":"Phone extracted","date":"2026-02-16T07:05:27.180Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T07:05:27.180Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/chewing-com-1027982442/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE1027982442', 'Actif', 'BCE_CSV', '2026-02-16T07:04:35.372Z', '2026-02-16T07:04:35.372Z', 'Diricq, Laurie', '2025-10-01', 'Personne physique', NULL, 'Situation normale', '2026-02-11', '2026-02-16T07:05:27.180Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE1027982442'
    AND c_existing.slug <> 'agence-web-a-la-louviere-chewing-com'
)
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, 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, 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 'support-it-a-la-louviere-dbbase', 'BE-WAL', 'dbBase', 'Support IT', ARRAY['cybersecurite', 'support it', 'externalisation', 'cloud computing', 'telephonie ip', 'solution sur mesure']::text[], ARRAY['Support à distance', 'Externalisation informatique', 'Cybersécurité', 'Cloud desktops', 'Téléphonie voip']::text[], 'forfait', NULL, NULL, NULL, 'La Louvière', '7170', 'BE', NULL, 'https://www.dbbase.be/', 'https://www.facebook.com/sharer.php?u=https%3A%2F%2Fwww.dbbase.be%2Frecevoir-des-factures-electroniques-via-peppol-est-obligatoire-pour-presque-tout-le-monde-meme-si-vous-ne-facturez-pas-vous-meme-a-dautres-entreprises%2F&picture=https%3A%2F%2Fwww.dbbase.be%2Fwp-content%2Fuploads%2F2025%2F11%2FdbBase-recevoir-des-e-factures-obligatoire.jpg&title=Recevoir%20des%20factures%20%C3%A9lectroniques%20via%20Peppol%20est%20obligatoire%20pour%20%28presque%29%20tout%20le%20monde%20%3A%20m%C3%AAme%20si%20vous%20ne%20facturez%20pas%20vous-m%C3%AAme%20%C3%A0%20d%E2%80%99autres%20entreprises%20%21', NULL, 'https://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fwww.dbbase.be%2Frecevoir-des-factures-electroniques-via-peppol-est-obligatoire-pour-presque-tout-le-monde-meme-si-vous-ne-facturez-pas-vous-meme-a-dautres-entreprises%2F&title=Recevoir%20des%20factures%20%C3%A9lectroniques%20via%20Peppol%20est%20obligatoire%20pour%20%28presque%29%20tout%20le%20monde%20%3A%20m%C3%AAme%20si%20vous%20ne%20facturez%20pas%20vous-m%C3%AAme%20%C3%A0%20d%E2%80%99autres%20entreprises%20%21', 'sales@dbbase.be', 'Équipe de direction', '+3268250202', '+3268250202', 'Équipe de direction', NULL, NULL, 'La Louvière', ARRAY['français']::text[], 'Du lundi au vendredi', NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : support à distance, externalisation informatique, cybersécurité et cloud desktops. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Manage TVA et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'dbBase est une entreprise de sécurité active à La Louvière (province de Hainaut). Elle intervient notamment pour le support à distance, l''externalisation informatique, la cybersécurité et le cloud desktops, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Support à distance, Externalisation informatique, Cybersécurité, Cloud desktops, Téléphonie voip
Zone d''intervention: La Louvière', 'Support IT à La Louvière | dbBase', 'Simplifiez la gestion informatique pour votre PME avec des solutions sur mesure et une expertise en cybersécurité. Optimisez l''efficacité de vos outils IT localement.', 'Support IT et Cybersécurité à La Louvière', 'dbBase offre des services d''externalisation informatique, de cybersécurité et de téléphonie VoIP pour les PME. Simplifiez la gestion IT avec nos solutions sur mesure.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"dbBase","description":"Simplifiez la gestion informatique pour votre PME avec des solutions adaptées et une expertise polyvalente en cybersécurité.","url":"https://revelys.be/entreprises/support-it-a-la-louviere-dbbase","sameAs":["https://www.dbbase.be/"],"address":{"@type":"PostalAddress","postalCode":"7170","addressCountry":"BE","addressLocality":"La Louvière"},"areaServed":"La Louvière","keywords":["cybersecurite","support it","externalisation","cloud computing","telephonie ip","solution sur mesure","Support à distance","Externalisation informatique","Cybersécurité","Cloud desktops","Téléphonie voip"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/dbbase-0471895496/logo.webp"]}'::jsonb, '2026-02-16T07:21:30.979Z', TRUE, 5, '0db4922e2828e8ea9329031da428dcd0d7c4104be356d9a69081d3ee8d1a94e9', 'dbBase simplifie la gestion informatique pour les PME, offrant des solutions adaptées et une expertise polyvalente.', NULL, 'Sérénité', '[{"name":"Audit de sécurité annuel","description":"Un audit complet de votre infrastructure IT pour identifier les vulnérabilités et proposer des améliorations.","frequency":"Annuelle","impact":"Mieux protégé contre les menaces cybernétiques","proof":null},{"name":"Formation sur mesure","description":"Des sessions de formation pour votre équipe afin d''optimiser l''utilisation des outils IT et renforcer la sécurité.","frequency":"Sur demande","impact":"Équipe mieux formée, plus productive","proof":null},{"name":"Mise à jour automatique du système","description":"Gestion des mises à jour logicielles pour maintenir votre infrastructure IT à jour et sécurisée.","frequency":"Continuelle","impact":"Système toujours en pointe, réduisant les risques de pannes","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/dbbase-0471895496/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/dbbase-0471895496/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/dbbase-0471895496/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/dbbase-0471895496/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/dbbase-0471895496/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/dbbase-0471895496/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T07:21:51.905Z","proof":"https://www.dbbase.be/landing_page/societe-it-region-la-louviere/"},{"label":"Seed: city hint","date":"2026-02-16T07:21:51.905Z","proof":"La Louvière"},{"label":"Extracted: city","date":"2026-02-16T07:21:51.905Z","proof":"La Louvière"},{"label":"BCE: mod97 valid","date":"2026-02-16T07:21:51.905Z","proof":"0471895496"},{"label":"Email extracted","date":"2026-02-16T07:21:51.905Z","proof":"sales@dbbase.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T07:21:51.905Z","proof":"confidence=0.9"},{"label":"Phone extracted","date":"2026-02-16T07:21:51.905Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T07:21:51.905Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/dbbase-0471895496/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0471895496', 'Actif', 'BCE_CSV', '2026-02-16T07:20:56.874Z', '2026-02-16T07:20:56.874Z', 'dbBase', '2000-05-09', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T07:21:51.905Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0471895496'
    AND c_existing.slug <> 'support-it-a-la-louviere-dbbase'
)
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, 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, 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 'plombier-a-herseaux-geoffreyovlaque-depannage-plombier-pres-de-tournai', 'BE-WAL', 'Dépannage plombier près de Tournai', 'Plombier', ARRAY['dépannage rapide', 'plombier professionnel', 'canalisation bouchée', 'fuite d''eau', 'intervention immédiate', 'sécurité']::text[], ARRAY['Débouchage de canalisations', 'Réparation de fuites d''eau', 'Entretien du chauffe-eau', 'Remplacement de robinetterie']::text[], 'sur_devis', NULL, NULL, TRUE, 'Herseaux geoffreyovlaque', '7712', 'BE', 'données collectées seront communiquées aux seuls destinataires suivants: Ets Ovlaque et fils SRL 225 Rue des Croisiers Herseaux . Vous disposez de d', 'https://ovlaque-et-fils-chauffagiste.be/', NULL, NULL, NULL, 'geoffreyovlaque@hotmail.com', 'Équipe de direction', '+32477224763', '+32477224763', 'Équipe de direction', NULL, NULL, 'Tournai', ARRAY['français']::text[], '24h/24 - 7j/7', NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : débouchage de canalisations, réparation de fuites d''eau, entretien du chauffe-eau et remplacement de robinetterie. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Herseaux geoffreyovlaque et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Dépannage plombier près de Tournai est une entreprise de plomberie active à Herseaux geoffreyovlaque (province de Hainaut). Elle intervient notamment pour le débouchage de canalisations, la réparation de fuites d''eau, l''entretien du chauffe-eau et le remplacement de robinetterie, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Débouchage de canalisations, Réparation de fuites d''eau, Entretien du chauffe-eau, Remplacement de robinetterie
Zone d''intervention: Herseaux geoffreyovlaque', 'Dépannage plombier près de Tournai | Ets Ovlaque et fils SRL', 'Intervention rapide pour déboucher les canalisations bouchées. Experte en réparation fuite d''eau et entretien chauffe-eau dans la région.', 'Dépannage plombier près de Tournai - Ets Ovlaque et fils SRL', 'Spécialistes du débouchage express, réparations de fuites d''eau et entretien chauffe-eau. Interventions rapides pour les habitants de Herseaux.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Ets Ovlaque et fils SRL","description":"Dépannage rapide, plombier professionnel. Interventions express pour débouchage de canalisations.","url":"https://revelys.be/entreprises/plombier-a-herseaux-geoffreyovlaque-depannage-plombier-pres-de-tournai","sameAs":["https://ovlaque-et-fils-chauffagiste.be/"],"address":{"@type":"PostalAddress","streetAddress":"225 Rue des Croisiers","postalCode":"7712","addressLocality":"Herseaux geoffreyovlaque"},"areaServed":["Herseaux geoffreyovlaque","Tournai"],"keywords":["dépannage rapide","plombier professionnel","canalisation bouchée","fuite d''eau","intervention immédiate","sécurité","Débouchage de canalisations","Réparation de fuites d''eau","Entretien du chauffe-eau","Remplacement de robinetterie"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/depannage-plombier-pres-de-tournai-0694681336/logo.webp"]}'::jsonb, '2026-02-16T07:23:00.489Z', TRUE, 5, '2d637f97656420cb3508d26679a81b955fdee2a4983ff9d66efa554a16cc89a7', 'Grâce à notre équipe de plombiers expérimentés, nous garantissons une intervention rapide et efficace pour tous vos problèmes de plomberie.', NULL, 'Soulagement', '[{"name":"Débouchage express","description":"Notre équipe intervient rapidement pour déboucher les canalisations bouchées.","frequency":"Sur demande","impact":"Résoud le problème en moins de 2 heures","proof":null},{"name":"Réparation fuite d''eau","description":"Nous trouvons et réparons rapidement les fuites d''eau pour éviter les dégâts.","frequency":"Sur demande","impact":"Evite des dommages importants à la structure du bâtiment","proof":null},{"name":"Entretien chauffe-eau","description":"Nous effectuons un entretien régulier pour assurer le bon fonctionnement de votre chauffe-eau.","frequency":"Annuel","impact":"Prolonge la durée de vie du chauffe-eau et réduit les coûts énergétiques","proof":null}]'::jsonb, 75, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/depannage-plombier-pres-de-tournai-0694681336/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/depannage-plombier-pres-de-tournai-0694681336/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/depannage-plombier-pres-de-tournai-0694681336/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/depannage-plombier-pres-de-tournai-0694681336/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/depannage-plombier-pres-de-tournai-0694681336/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/depannage-plombier-pres-de-tournai-0694681336/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T07:23:25.332Z","proof":"https://ovlaque-et-fils-chauffagiste.be/depannage-plombier/tournai"},{"label":"Seed: city hint","date":"2026-02-16T07:23:25.332Z","proof":"Tournai"},{"label":"Extracted: city","date":"2026-02-16T07:23:25.332Z","proof":"Herseaux geoffreyovlaque"},{"label":"BCE: mod97 valid","date":"2026-02-16T07:23:25.332Z","proof":"0694681336"},{"label":"Email extracted","date":"2026-02-16T07:23:25.332Z","proof":"geoffreyovlaque@hotmail.com"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T07:23:25.332Z","proof":"confidence=0.9"},{"label":"Phone extracted","date":"2026-02-16T07:23:25.332Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T07:23:25.332Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/depannage-plombier-pres-de-tournai-0694681336/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0694681336', 'Actif', 'BCE_CSV', '2026-02-16T07:22:26.447Z', '2026-02-16T07:22:26.447Z', 'ETS OVLAQUE ET FILS', '2018-04-12', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T07:23:25.332Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0694681336'
    AND c_existing.slug <> 'plombier-a-herseaux-geoffreyovlaque-depannage-plombier-pres-de-tournai'
)
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, 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, 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 'electricien-a-tournai-votre-electricien-a-tournai-24-heures-sur-24-dans-toute-la-region-du-tourn', 'BE-WAL', 'Votre électricien à Tournai, 24 heures sur 24. Dans toute la région du Tournaisis.', 'Électricien', ARRAY['installation', 'réparation', 'dépannage', 'flexible', 'disponible', 'savoir-faire', 'signature']::text[], ARRAY['Installation de électrique complète', 'Réparation de panneaux électriques', 'Dépannage en urgence']::text[], 'sur_devis', 2, 'A partir de 45EUR/seance', TRUE, 'Tournai', '7500', 'BE', NULL, 'https://www.domusrenovation.be/', NULL, NULL, NULL, 'domusrenovationscrl@gmail.com', 'Équipe de direction', '+32496259456', '+32496259456', 'Équipe de direction', NULL, NULL, 'Tournai', ARRAY['français']::text[], '24h/24 - 7j/7', NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : installation de électrique complète, réparation de panneaux électriques et dépannage en urgence. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Tournai TEL et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Votre électricien à Tournai, 24 heures sur 24. Dans toute la région du Tournaisis. est une entreprise de électricité active à Tournai (province de Hainaut). Elle intervient notamment pour l''installation de électrique complète, la réparation de panneaux électriques et le dépannage en urgence, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Installation de électrique complète, Réparation de panneaux électriques, Dépannage en urgence
Zone d''intervention: Tournai', 'Électricien à Tournai | Votre électricien à Tournai', 'Installation et réparation électrique en urgence. Disponibles 24h/24 pour toute la région du Tournaisis.', 'Électricien disponible 24h/24 à Tournai', 'Domus Rénovation offre des services d''électricité complets et de qualité. Disponibles jour et nuit pour les urgences dans toute la région du Tournaisis.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Votre électricien à Tournai, 24 heures sur 24. Dans toute la région du Tournaisis.","description":"Domus Rénovation vous offre des services d''électricité complets et de qualité, avec un équipe disponible 24h/24 pour les urgences.","url":"https://revelys.be/entreprises/electricien-a-tournai-votre-electricien-a-tournai-24-heures-sur-24-dans-toute-la-region-du-tourn","sameAs":["https://www.domusrenovation.be/"],"address":{"@type":"PostalAddress","postalCode":"7500","addressLocality":"Tournai"},"areaServed":"Tournai","keywords":["installation","réparation","dépannage","flexible","disponible","savoir-faire","signature","Installation de électrique complète","Réparation de panneaux électriques","Dépannage en urgence"],"image":{"@type":"ImageObject","url":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/votre-electricien-a-tournai-24-heures-sur-24-dans-toute-la-region-du-tournaisis-0820390564/logo.webp"}}'::jsonb, '2026-02-16T07:29:07.859Z', TRUE, 5, 'c55504b97150cfbc364e2e6dcb1e44073c2cee2b5fae027929f9d2879739dc85', 'Domus Rénovation vous offre des services d''électricité complets et de qualité, avec un équipe disponible 24h/24 pour les urgences.', NULL, 'Confiance', '[{"name":"Demande de devis gratuit","description":"Obtenez votre devis gratuit en ligne ou par téléphone.","frequency":"Une fois avant chaque projet","impact":"Permet d''évaluer les coûts et de planifier le travail.","proof":null},{"name":"Service 24h/24 en cas d''urgence","description":"Notre équipe est disponible jour et nuit pour vous aider rapidement.","frequency":"Toujours disponible","impact":"Assure la tranquillité d''esprit en cas de problème électrique.","proof":null},{"name":"Expertise sur mesure","description":"Nos experts étudient vos besoins pour vous offrir des solutions adaptées.","frequency":"À chaque projet","impact":"Permet d''optimiser les services et de satisfaire les attentes du client.","proof":null}]'::jsonb, 75, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/votre-electricien-a-tournai-24-heures-sur-24-dans-toute-la-region-du-tournaisis-0820390564/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/votre-electricien-a-tournai-24-heures-sur-24-dans-toute-la-region-du-tournaisis-0820390564/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/votre-electricien-a-tournai-24-heures-sur-24-dans-toute-la-region-du-tournaisis-0820390564/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/votre-electricien-a-tournai-24-heures-sur-24-dans-toute-la-region-du-tournaisis-0820390564/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/votre-electricien-a-tournai-24-heures-sur-24-dans-toute-la-region-du-tournaisis-0820390564/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/votre-electricien-a-tournai-24-heures-sur-24-dans-toute-la-region-du-tournaisis-0820390564/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T07:29:33.526Z","proof":"https://www.domusrenovation.be/electricien-tournai.html"},{"label":"Seed: city hint","date":"2026-02-16T07:29:33.526Z","proof":"Tournai"},{"label":"Extracted: city","date":"2026-02-16T07:29:33.526Z","proof":"Tournai"},{"label":"BCE: mod97 valid","date":"2026-02-16T07:29:33.526Z","proof":"0820390564"},{"label":"Email extracted","date":"2026-02-16T07:29:33.526Z","proof":"domusrenovationscrl@gmail.com"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T07:29:33.526Z","proof":"confidence=0.98"},{"label":"Phone extracted","date":"2026-02-16T07:29:33.526Z","proof":"source=text"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T07:29:33.526Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/votre-electricien-a-tournai-24-heures-sur-24-dans-toute-la-region-du-tournaisis-0820390564/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0820390564', 'Actif', 'BCE_CSV', '2026-02-16T07:28:35.340Z', '2026-02-16T07:28:35.340Z', 'DOMUS RENOVATION', '2009-11-06', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T07:29:33.526Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0820390564'
    AND c_existing.slug <> 'electricien-a-tournai-votre-electricien-a-tournai-24-heures-sur-24-dans-toute-la-region-du-tourn'
)
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, 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, 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-a-tournai-dupont-toiture', 'BE-WAL', 'Dupont Toiture', 'Toiture', ARRAY['toiture', 'zinguerie', 'entretien', 'isolation', 'rénovation', 'confort', 'qualité']::text[], ARRAY['Réparation de fuites', 'Entretien du chauffe-eau', 'Isolation thermique', 'Nettoyage de toiture', 'Pose de velux']::text[], 'sur_devis', NULL, NULL, TRUE, 'Tournai', '7500', 'BE', 'Rue du Becquerelle, 18', 'https://dupont-toiture.be/', NULL, NULL, NULL, 'e-mailinfo@dupont-toiture.be', 'Équipe de direction', '+3269560225', '+3269560225', 'Équipe de direction', NULL, NULL, 'Tournai', ARRAY['français']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quels sont les services proposés par Dupont Toiture?","answer":"Dupont Toiture propose des services de réparation, d''entretien et de rénovation pour toitures, zinguerie et isolation."},{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : réparation de fuites, entretien du chauffe-eau, isolation thermique et nettoyage de toiture. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Tournai et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Dupont Toiture est une entreprise de toiture active à Tournai (province de Hainaut). Elle intervient notamment pour la réparation de fuites, l''entretien du chauffe-eau, l''isolation thermique et le nettoyage de toiture, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Réparation de fuites, Entretien du chauffe-eau, Isolation thermique, Nettoyage de toiture, Pose de velux
Zone d''intervention: Tournai', 'Toiture à Tournai | Dupont Toiture', 'Offre des solutions sur mesure pour un confort optimal et durable. Anticipez les problèmes grâce à nos visites de diagnostic annuelles.', 'Dupont Toiture - Toitures et zinguerie à Tournai', 'Spécialistes en réparation, entretien et isolation des toits. Visitez notre site pour découvrir nos services sur mesure et bénéficier d''une tranquillité d''esprit.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Dupont Toiture","description":"Spécialistes en réparation, entretien et isolation des toits. Visitez notre site pour découvrir nos services sur mesure.","url":"https://revelys.be/entreprises/toiture-a-tournai-dupont-toiture","sameAs":["https://dupont-toiture.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue du Becquerelle, 18","postalCode":"7500","addressLocality":"Tournai"},"areaServed":"Tournai","keywords":["toiture","zinguerie","entretien","isolation","rénovation","confort","qualité","Réparation de fuites","Entretien du chauffe-eau","Isolation thermique","Nettoyage de toiture","Pose de velux"],"image":["https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/dupont-toiture-0780552664/logo.webp"]}'::jsonb, '2026-02-16T07:39:03.184Z', TRUE, 5, 'ab64d03dffcf17b5b2632452034f962c00d7f3bd9f25a3aca3333028e4e66f02', 'Dupont Toiture vous offre des solutions sur mesure pour un confort optimal et durable.', NULL, 'Sérénité', '[{"name":"Visite de diagnostic","description":"Notre équipe visite votre toit pour identifier les besoins spécifiques avant toute intervention.","frequency":"Une fois par an","impact":"Permet d''anticiper et de prévenir les problèmes avant qu''ils ne se produisent.","proof":null},{"name":"Formation continue","description":"Nos couvreurs sont formés régulièrement pour maîtriser les dernières techniques et matériaux du marché.","frequency":"Tous les trimestres","impact":"Assure une qualité de travail constante et innovante.","proof":null},{"name":"Garantie décennale","description":"Nous offrons une garantie décennale sur tous nos travaux pour votre tranquillité d''esprit.","frequency":"Pour chaque projet","impact":"Confirme notre engagement à la qualité et au professionnalisme.","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/dupont-toiture-0780552664/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/dupont-toiture-0780552664/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/dupont-toiture-0780552664/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/dupont-toiture-0780552664/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/dupont-toiture-0780552664/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/dupont-toiture-0780552664/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T07:39:25.211Z","proof":"https://dupont-toiture.be/"},{"label":"Seed: city hint","date":"2026-02-16T07:39:25.211Z","proof":"Tournai"},{"label":"Extracted: city","date":"2026-02-16T07:39:25.211Z","proof":"Tournai"},{"label":"BCE: mod97 valid","date":"2026-02-16T07:39:25.211Z","proof":"0780552664"},{"label":"Email extracted","date":"2026-02-16T07:39:25.211Z","proof":"e-mailinfo@dupont-toiture.be"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T07:39:25.211Z","proof":"confidence=0.92"},{"label":"Phone extracted","date":"2026-02-16T07:39:25.211Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T07:39:25.211Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/dupont-toiture-0780552664/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0780552664', 'Actif', 'BCE_CSV', '2026-02-16T07:38:18.542Z', '2026-02-16T07:38:18.542Z', 'DUPONT TOITURE.B', '2022-01-17', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T07:39:25.211Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0780552664'
    AND c_existing.slug <> 'toiture-a-tournai-dupont-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, 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, 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-a-vaulx-specialiste-du-rejointoyage-et-sablage-a-tournai', 'BE-WAL', 'Spécialiste du rejointoyage et sablage à Tournai', 'Façadier', ARRAY['rénovation façade', 'rejointoyage professionnel', 'sablage doux', 'hydrofugation efficace', 'traitement humidité', 'nettoyage toiture', 'expertise familiale', 'qualité incomparable']::text[], ARRAY['Déjointoyage', 'Rejointoyage', 'Sablage', 'Pose d’hydrofuge', 'Traitement de l’humidité ascensionnelle', 'Nettoyage et démoussage de toiture']::text[], 'sur_devis', NULL, NULL, TRUE, 'Vaulx', '7536', 'BE', 'Rue des Abliaux 16', 'https://www.castermanronald.be/', 'https://www.facebook.com/profile.php?id=100091559482812', NULL, NULL, 'rg.casterman@gmail.com', 'Équipe de direction', '+32478453672', '+32478453672', 'Équipe de direction', NULL, NULL, 'Tournai', ARRAY['français', 'anglais']::text[], NULL, NULL, NULL, NULL, NULL, '[{"question":"Quels types d''interventions sont proposés?","answer":"Les interventions les plus courantes sont : déjointoyage, rejointoyage, sablage et pose d’hydrofuge. La méthode est adaptée au problème constaté sur place."},{"question":"Sur quelle zone l''entreprise intervient-elle?","answer":"Les interventions sont réalisées à Vaulx et dans les communes voisines, selon la nature de la demande."},{"question":"Comment la qualité est-elle suivie dans le temps?","answer":"La qualité repose sur une méthode de travail claire, des vérifications pendant l''intervention et un contrôle final avant clôture."}]'::jsonb, 'Spécialiste du rejointoyage et sablage à Tournai est une entreprise de façade active à Vaulx (province de Hainaut). Elle intervient notamment pour le déjointoyage, le rejointoyage, le sablage et la pose d’hydrofuge, avec une approche orientée diagnostic et résolution durable des problèmes.
Services principaux: Déjointoyage, Rejointoyage, Sablage, Pose d’hydrofuge, Traitement de l’humidité ascensionnelle, Nettoyage et démoussage de toiture
Zone d''intervention: Vaulx', 'Rejointoyage et sablage à Vaulx | Spécialiste du', 'Professionnels en rénovation façade avec un service d''évaluation préalable pour identifier les besoins spécifiques. Expertise familiale dans la région de Tournai.', 'Spécialistes en Rejointoyage et Sablage à Vaulx', 'Fournissons des services de rénovation façade, sablage doux et traitement d''humidité avec une évaluation préalable pour satisfaire les besoins spécifiques des clients dans la région.', '{"@context":"https://schema.org","@type":"LocalBusiness","name":"Spécialiste du rejointoyage et sablage à Tournai","description":"Façadier proposant des services de rénovation façade, sablage doux et traitement d''humidité.","url":"https://revelys.be/entreprises/facadier-a-vaulx-specialiste-du-rejointoyage-et-sablage-a-tournai","sameAs":["https://www.castermanronald.be/"],"address":{"@type":"PostalAddress","streetAddress":"Rue des Abliaux 16","postalCode":"7536","addressLocality":"Vaulx"},"areaServed":["Vaulx","Vaulx"],"keywords":["rénovation façade","rejointoyage professionnel","sablage doux","hydrofugation efficace","traitement humidité","nettoyage toiture","expertise familiale","qualité incomparable","déjointoyage","pose d’hydrofuge"],"image":["https://www.castermanronald.be/images/logo.svg"]}'::jsonb, '2026-02-16T07:40:34.669Z', TRUE, 5, '9c530273106c510db9615df835c31ef98c09e07d124790226cd6e3e4f8799279', 'Faire confiance à Revelys, c''est s''assurer d''une qualité de travail absolument incomparable et d''un service direct et sincère.', NULL, 'Confiance', '[{"name":"Évaluation préalable","description":"Notre équipe effectue une inspection minutieuse pour identifier les besoins spécifiques de votre façade.","frequency":"Une fois avant chaque projet","impact":"Permet d''adapter nos services aux attentes du client et d''établir un devis précis.","proof":null},{"name":"Mélange de mortier personnalisé","description":"Notre patron réalise lui-même les mélanges pour garantir des joints adaptés à chaque façade.","frequency":"Pour chaque projet","impact":"Assure une finition parfaite et durable.","proof":null},{"name":"Suivi post-travaux","description":"Nous proposons un suivi régulier pour vérifier l''état de votre façade après les travaux.","frequency":"Une fois par an","impact":"Permet d''identifier et de corriger tout problème potentiel en amont.","proof":null}]'::jsonb, 85, 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/facadier-a-vaulx-specialiste-du-rejointoyage-et-sablage-a-tournai/logo.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/specialiste-du-rejointoyage-et-sablage-a-tournai-0767613755/cover.webp', ARRAY['https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/specialiste-du-rejointoyage-et-sablage-a-tournai-0767613755/g1.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/specialiste-du-rejointoyage-et-sablage-a-tournai-0767613755/g2.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/specialiste-du-rejointoyage-et-sablage-a-tournai-0767613755/g3.webp', 'https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/specialiste-du-rejointoyage-et-sablage-a-tournai-0767613755/g4.webp']::text[], ARRAY[]::text[], NULL, 'listed', 'pending', '[{"label":"Seed: site crawl","date":"2026-02-16T07:40:57.751Z","proof":"https://www.castermanronald.be/"},{"label":"Seed: city hint","date":"2026-02-16T07:40:57.751Z","proof":"Tournai"},{"label":"Extracted: city","date":"2026-02-16T07:40:57.751Z","proof":"Vaulx"},{"label":"BCE: mod97 valid","date":"2026-02-16T07:40:57.751Z","proof":"0767613755"},{"label":"Email extracted","date":"2026-02-16T07:40:57.751Z","proof":"rg.casterman@gmail.com"},{"label":"LLM structured (qwen2.5:14b-instruct-q4_K_M)","date":"2026-02-16T07:40:57.751Z","proof":"confidence=100"},{"label":"Phone extracted","date":"2026-02-16T07:40:57.751Z","proof":"source=tel_link"},{"label":"Images uploaded (Supabase Storage)","date":"2026-02-16T07:40:57.751Z","proof":"https://wijfqcxgpixftxcarczq.supabase.co/storage/v1/object/public/company-assets/companies/specialiste-du-rejointoyage-et-sablage-a-tournai-0767613755/cover.webp"}]'::jsonb, 'published', FALSE, 'none', 'BE0767613755', 'Actif', 'BCE_CSV', '2026-02-16T07:39:59.417Z', '2026-02-16T07:39:59.417Z', 'R.G. CASTERMAN', '2021-04-28', 'Personne morale', 'Société à responsabilité limitée', 'Situation normale', '2026-02-11', '2026-02-16T07:40:57.751Z'
WHERE NOT EXISTS (
  SELECT 1
  FROM companies c_existing
  WHERE c_existing.bce_number = 'BE0767613755'
    AND c_existing.slug <> 'facadier-a-vaulx-specialiste-du-rejointoyage-et-sablage-a-tournai'
)
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, 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;

