{"id":10506,"date":"2026-02-21T14:57:44","date_gmt":"2026-02-21T13:57:44","guid":{"rendered":"https:\/\/demo.www.gabix.ga\/?page_id=10506"},"modified":"2026-02-21T15:33:31","modified_gmt":"2026-02-21T14:33:31","slug":"tarifs","status":"publish","type":"page","link":"https:\/\/demo.www.gabix.ga\/index.php\/tarifs\/","title":{"rendered":"Tarifs"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"10506\" class=\"elementor elementor-10506\">\n\t\t\t\t<div class=\"elementor-element elementor-element-fa80adf e-flex e-con-boxed e-con e-parent\" data-id=\"fa80adf\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d5c2b1a elementor-widget elementor-widget-html\" data-id=\"d5c2b1a\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t  <div class=\"wrap\">\n    <div class=\"hero\">\n      <h1>Tarifs<\/h1>\n      <p class=\"subtitle\">\n        <strong>Tarifs HT \u2014 nets \u00e0 percevoir par GABIX.<\/strong>\n        TPS (9,5%) pr\u00e9compt\u00e9e \u00e0 la source par le client (retenue) et revers\u00e9e au Tr\u00e9sor.\n      <\/p>\n\n      <div class=\"controls\">\n        <div class=\"pill\">\n          <span style=\"font-weight:900;\">P\u00e9riode :<\/span>\n          <select id=\"period\">\n            <option value=\"monthly\" selected>Mensuel (MRC)<\/option>\n            <option value=\"quarterly\">Trimestriel<\/option>\n            <option value=\"semiannual\">Semestriel<\/option>\n            <option value=\"annual\">Annuel<\/option>\n          <\/select>\n        <\/div>\n        <div class=\"pill\">\n          <span style=\"font-weight:900;\">Paiement :<\/span>\n          <span>Payable d\u2019avance<\/span>\n        <\/div>\n      <\/div>\n\n      <div class=\"note\">\n        Peering priv\u00e9 (PNI \/ VLAN priv\u00e9) : <strong>0 XAF<\/strong> (provisioning) \u2014 <strong>0 XAF<\/strong> (redevance mensuelle).\n      <\/div>\n    <\/div>\n\n    <div class=\"grid\" id=\"cards\"><\/div>\n\n    <div class=\"panel\">\n      <details>\n        <summary>\n          <span>\u24d8 TPS (9,5%) \u2014 affichage facture<\/span>\n          <span style=\"opacity:.75;\">(cliquer pour ouvrir)<\/span>\n        <\/summary>\n        <p>\n          La facture pr\u00e9sente : <code>Assiette brute HT<\/code> \u2212 <code>TPS 9,5% (retenue client)<\/code> = <code>Net \u00e0 payer \u00e0 GABIX<\/code>.\n          Le client reverse la TPS au Tr\u00e9sor et remet l\u2019attestation\/quittance de versement \u00e0 GABIX.\n        <\/p>\n      <\/details>\n    <\/div>\n  <\/div>\n\n  <!-- Modal -->\n  <div class=\"overlay\" id=\"overlay\" role=\"dialog\" aria-modal=\"true\" aria-label=\"D\u00e9tail TPS\">\n    <div class=\"modal\">\n      <div class=\"head\">\n        <h2 id=\"modalTitle\">D\u00e9tail TPS<\/h2>\n        <button class=\"close\" id=\"closeBtn\">Fermer<\/button>\n      <\/div>\n      <div class=\"content\">\n        <table>\n          <tbody>\n            <tr>\n              <td>Tarif affich\u00e9 (net \u00e0 percevoir)<\/td>\n              <td id=\"netCell\">\u2014<\/td>\n            <\/tr>\n            <tr>\n              <td>Assiette brute HT (soumise \u00e0 TPS)<\/td>\n              <td id=\"grossCell\">\u2014<\/td>\n            <\/tr>\n            <tr>\n              <td>TPS 9,5% \u2014 retenue \u00e0 la source (client)<\/td>\n              <td class=\"neg\" id=\"tpsCell\">\u2014<\/td>\n            <\/tr>\n            <tr>\n              <td><strong>Net \u00e0 payer \u00e0 GABIX<\/strong><\/td>\n              <td id=\"netPayCell\">\u2014<\/td>\n            <\/tr>\n          <\/tbody>\n        <\/table>\n        <div class=\"foot\">\n          Le client reverse la TPS au Tr\u00e9sor et remet l\u2019attestation\/quittance de versement \u00e0 GABIX.\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <script>\n    const TPS_RATE = 0.095;\n    const DIVISOR = (1 - TPS_RATE); \/\/ 0.905\n\n    const plans = [\n      { key:'100m', speed:'100 Mbps', netMonthly: 70000, bullets:[\n        'Peering public',\n        'Portail statistiques',\n        'Services PCH (si interconnect\u00e9)',\n        'PNI \/ VLAN priv\u00e9 : 0 XAF'\n      ]},\n      { key:'1g', speed:'1 Gbps', netMonthly: 230000, bullets:[\n        'Peering public',\n        'Portail statistiques',\n        'Services PCH (si interconnect\u00e9)',\n        'PNI \/ VLAN priv\u00e9 : 0 XAF'\n      ]},\n      { key:'10g', speed:'10 Gbps', netMonthly: 680000, bullets:[\n        'Peering public',\n        'Portail statistiques',\n        'Services PCH (si interconnect\u00e9)',\n        'PNI \/ VLAN priv\u00e9 : 0 XAF'\n      ]},\n      { key:'40g', speed:'40 Gbps', netMonthly: 1350000, bullets:[\n        'Peering public',\n        'Portail statistiques',\n        'Services PCH (si interconnect\u00e9)',\n        'PNI \/ VLAN priv\u00e9 : 0 XAF'\n      ]},\n    ];\n\n    const multipliers = { monthly: 1, quarterly: 3, semiannual: 6, annual: 12 };\n    const labels = { monthly: 'Mensuel (MRC)', quarterly: 'Trimestriel', semiannual: 'Semestriel', annual: 'Annuel' };\n    const perLabels = { monthly: '\/mois', quarterly: '\/trimestre', semiannual: '\/semestre', annual: '\/an' };\n\n    const fmt = (n) => new Intl.NumberFormat('fr-FR').format(Math.round(n));\n\n    const cards = document.getElementById('cards');\n    const periodSelect = document.getElementById('period');\n\n    function computeGross(net){\n      const gross = net \/ DIVISOR;\n      const tps = gross - net;\n      return {gross, tps};\n    }\n\n    function renderCards(){\n      const period = periodSelect.value;\n      const m = multipliers[period];\n      cards.innerHTML = '';\n\n      plans.forEach(p => {\n        const net = p.netMonthly * m;\n\n        const el = document.createElement('div');\n        el.className = 'card';\n        el.innerHTML = `\n          <div class=\"top\">\n            <div class=\"speed\">\n              <strong>${p.speed}<\/strong>\n              <span class=\"badge\">HT \u2022 Net GABIX<\/span>\n            <\/div>\n            <div class=\"price\">${fmt(net)} <span style=\"font-size:14px; font-weight:900;\">XAF<\/span><\/div>\n            <div class=\"per\">${labels[period]} <span style=\"opacity:.65;\">${perLabels[period]}<\/span><\/div>\n            <div class=\"micro\">\n              HT \u2014 Net \u00e0 percevoir par GABIX<br\/>\n              TPS 9,5% pr\u00e9compt\u00e9e par le client\n            <\/div>\n          <\/div>\n          <div class=\"body\">\n            ${p.bullets.map(b => `<div class=\"li\"><span class=\"dot\"><\/span><div>${b}<\/div><\/div>`).join('')}\n          <\/div>\n          <div class=\"actions\">\n            <button class=\"btn primary\" data-detail=\"${p.key}\">Voir d\u00e9tail TPS<\/button>\n          <\/div>\n        `;\n        el.querySelector('[data-detail]').addEventListener('click', () => openModal(p, period));\n        cards.appendChild(el);\n      });\n    }\n\n    \/\/ Modal\n    const overlay = document.getElementById('overlay');\n    const closeBtn = document.getElementById('closeBtn');\n    const modalTitle = document.getElementById('modalTitle');\n    const netCell = document.getElementById('netCell');\n    const grossCell = document.getElementById('grossCell');\n    const tpsCell = document.getElementById('tpsCell');\n    const netPayCell = document.getElementById('netPayCell');\n\n    function openModal(plan, period){\n      const m = multipliers[period];\n      const net = plan.netMonthly * m;\n      const {gross, tps} = computeGross(net);\n\n      modalTitle.textContent = `${plan.speed} \u2014 ${labels[period]}`;\n      netCell.textContent = `${fmt(net)} XAF`;\n      grossCell.textContent = `${fmt(gross)} XAF`;\n      tpsCell.textContent = `\u2212 ${fmt(tps)} XAF`;\n      netPayCell.textContent = `${fmt(net)} XAF`;\n\n      overlay.classList.add('show');\n    }\n\n    function closeModal(){ overlay.classList.remove('show'); }\n    closeBtn.addEventListener('click', closeModal);\n    overlay.addEventListener('click', (e)=>{ if(e.target === overlay) closeModal(); });\n    document.addEventListener('keydown', (e)=>{ if(e.key === 'Escape') closeModal(); });\n\n    periodSelect.addEventListener('change', renderCards);\n    renderCards();\n  <\/script>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Tarifs Tarifs HT \u2014 nets \u00e0 percevoir par GABIX. TPS (9,5%) pr\u00e9compt\u00e9e \u00e0 la source par le client (retenue) et revers\u00e9e au Tr\u00e9sor. P\u00e9riode : Mensuel (MRC)TrimestrielSemestrielAnnuel Paiement : Payable d\u2019avance Peering priv\u00e9 (PNI \/ VLAN priv\u00e9) : 0 XAF (provisioning) \u2014 0 XAF (redevance mensuelle). \u24d8 TPS (9,5%) \u2014 affichage facture (cliquer pour ouvrir) [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-10506","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/demo.www.gabix.ga\/index.php\/wp-json\/wp\/v2\/pages\/10506","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/demo.www.gabix.ga\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/demo.www.gabix.ga\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/demo.www.gabix.ga\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/demo.www.gabix.ga\/index.php\/wp-json\/wp\/v2\/comments?post=10506"}],"version-history":[{"count":11,"href":"https:\/\/demo.www.gabix.ga\/index.php\/wp-json\/wp\/v2\/pages\/10506\/revisions"}],"predecessor-version":[{"id":10532,"href":"https:\/\/demo.www.gabix.ga\/index.php\/wp-json\/wp\/v2\/pages\/10506\/revisions\/10532"}],"wp:attachment":[{"href":"https:\/\/demo.www.gabix.ga\/index.php\/wp-json\/wp\/v2\/media?parent=10506"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}