[{"data":1,"prerenderedAt":236},["ShallowReactive",2],{"i-circle-flags:gb":3,"project-fr-\u002Fprojects\u002Fgosim":8,"projects-nav-fr":207,"i-mdi:android":229,"i-mdi:apple":232,"i-mdi:google-play":234},{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":7},0,512,false,"\u003Cmask id=\"SVGqdEcMdXs\">\u003Ccircle cx=\"256\" cy=\"256\" r=\"256\" fill=\"#fff\"\u002F>\u003C\u002Fmask>\u003Cg mask=\"url(#SVGqdEcMdXs)\">\u003Cpath fill=\"#eee\" d=\"m0 0l8 22l-8 23v23l32 54l-32 54v32l32 48l-32 48v32l32 54l-32 54v68l22-8l23 8h23l54-32l54 32h32l48-32l48 32h32l54-32l54 32h68l-8-22l8-23v-23l-32-54l32-54v-32l-32-48l32-48v-32l-32-54l32-54V0l-22 8l-23-8h-23l-54 32l-54-32h-32l-48 32l-48-32h-32l-54 32L68 0z\"\u002F>\u003Cpath fill=\"#0052b4\" d=\"M336 0v108L444 0Zm176 68L404 176h108zM0 176h108L0 68ZM68 0l108 108V0Zm108 512V404L68 512ZM0 444l108-108H0Zm512-108H404l108 108Zm-68 176L336 404v108z\"\u002F>\u003Cpath fill=\"#d80027\" d=\"M0 0v45l131 131h45zm208 0v208H0v96h208v208h96V304h208v-96H304V0zm259 0L336 131v45L512 0zM176 336L0 512h45l131-131zm160 0l176 176v-45L381 336z\"\u002F>\u003C\u002Fg>",{"id":9,"title":10,"appStore":11,"body":12,"company":160,"cover":161,"description":162,"extension":163,"gallery":164,"illustration":174,"kind":175,"links":174,"live":176,"meta":177,"metrics":178,"navigation":182,"order":183,"ownership":184,"path":185,"platforms":186,"playStore":189,"role":190,"seo":191,"stack":192,"stem":203,"summary":204,"year":205,"__hash__":206},"projects_fr\u002Fprojects\u002Fgosim.md","GoSIM — application eSIM reconstruite en React Native","https:\u002F\u002Fapps.apple.com\u002Fus\u002Fapp\u002Fgosim-esim-unlimted-internet\u002Fid6749241521",{"type":13,"value":14,"toc":143},"minimark",[15,20,24,28,31,35,64,68,73,76,80,83,87,90,94,102,106,112,116,125,129],[16,17,19],"h2",{"id":18},"contexte","Contexte",[21,22,23],"p",{},"GoSIM vend des eSIM de voyage au sein de l'écosystème Goubba : choisir une destination, payer et installer un forfait data sans passer en boutique. La première version était une application Vue 3 encapsulée dans Capacitor. Avec la croissance du produit — recharges, paiement partiel, achat en invité, points de fidélité, campagnes marketing — la WebView a atteint ses limites : transitions saccadées sur Android milieu de gamme, SDK de paiement partiellement supportés et un pont natif sur mesure pour chaque fonctionnalité.",[16,25,27],{"id":26},"rôle","Rôle",[21,29,30],{},"Contributeur principal de la refonte mobile (~90 % des commits) : architecture, plan de migration et majorité des fonctionnalités. Contributions backend en Laravel sur les mêmes fonctionnalités — points, mode maintenance, parcours de paiement — pour une livraison de bout en bout.",[16,32,34],{"id":33},"défi","Défi",[36,37,38,46,52,58],"ul",{},[39,40,41,45],"li",{},[42,43,44],"strong",{},"Remplacer une application en production sans geler les fonctionnalités"," — la v2 devait atteindre la parité pendant que la v1 recevait encore des correctifs.",[39,47,48,51],{},[42,49,50],{},"Paiements natifs"," — Stripe, PayPal et Airwallex exigent chacun leur SDK officiel et leur parcours de confirmation.",[39,53,54,57],{},[42,55,56],{},"Données pour le marketing"," — des installations et achats attribués, et des liens qui ouvrent le bon écran.",[39,59,60,63],{},[42,61,62],{},"Compatibilité des appareils"," — un « oui » erroné signifie un forfait payé impossible à installer.",[16,65,67],{"id":66},"approche","Approche",[69,70,72],"h3",{"id":71},"expo-router-et-routes-minces","Expo Router et routes minces",[21,74,75],{},"Routage par fichiers sur Expo, logique organisée par fonctionnalité (auth, destinations, paiement, eSIM, points). La même structure a permis d'intégrer GoSIM comme mini-app de la super-app Go, dans un monorepo pnpm + Turborepo.",[69,77,79],{"id":78},"trois-fournisseurs-de-paiement-un-seul-parcours","Trois fournisseurs de paiement, un seul parcours",[21,81,82],{},"Stripe, PayPal et Airwallex intégrés via leurs SDK natifs derrière un parcours unique ; paiement partiel et recharge réutilisent le même chemin.",[69,84,86],{"id":85},"programme-de-fidélité-gopoints","Programme de fidélité GoPoints",[21,88,89],{},"Points gagnés à chaque achat et échangés contre des coupons — écrans de l'application (solde, codes, résultats) et règles backend d'attribution et de dépense.",[69,91,93],{"id":92},"liens-profonds-appsflyer-et-meta","Liens profonds, AppsFlyer et Meta",[21,95,96,97,101],{},"Schéma ",[98,99,100],"code",{},"gosim:\u002F\u002F",", universal\u002Fapp links et AppsFlyer OneLink pour ouvrir directement la destination ou l'offre d'une campagne ; AppsFlyer et le SDK Meta (Facebook) pour l'attribution des installations et achats.",[69,103,105],{"id":104},"exploitation-en-production","Exploitation en production",[21,107,108,111],{},[42,109,110],{},"Mode maintenance"," piloté à distance sans republication, notifications push et messages in-app Firebase, gestion centralisée des erreurs avec états récupérables.",[69,113,115],{"id":114},"vérification-de-compatibilité-avant-paiement","Vérification de compatibilité avant paiement",[21,117,118,119,124],{},"Un module natif iOS\u002FAndroid lit les signaux eSIM de l'appareil, publié sous le nom ",[120,121,123],"a",{"href":122},"\u002Ffr\u002Fprojects\u002Fesim-compatibility-checker","react-native-esim-compatibility-checker",".",[16,126,128],{"id":127},"résultats","Résultats",[36,130,131,134,137,140],{},[39,132,133],{},"Une application iOS et Android fluide, avec une seule base de code TypeScript.",[39,135,136],{},"Trois moyens de paiement, points de fidélité et liens de campagne en production.",[39,138,139],{},"Des données d'attribution utilisées par l'équipe marketing.",[39,141,142],{},"Moins de tickets « mon eSIM ne marche pas ».",{"title":144,"searchDepth":145,"depth":145,"links":146},"",2,[147,148,149,150,159],{"id":18,"depth":145,"text":19},{"id":26,"depth":145,"text":27},{"id":33,"depth":145,"text":34},{"id":66,"depth":145,"text":67,"children":151},[152,154,155,156,157,158],{"id":71,"depth":153,"text":72},3,{"id":78,"depth":153,"text":79},{"id":85,"depth":153,"text":86},{"id":92,"depth":153,"text":93},{"id":104,"depth":153,"text":105},{"id":114,"depth":153,"text":115},{"id":127,"depth":145,"text":128},"Goubba","\u002Fimages\u002Fprojects\u002Fgosim.webp","Refonte de l'application eSIM de voyage de Goubba, de Vue + Capacitor vers React Native (Expo) — paiements natifs Stripe, PayPal et Airwallex, programme de points, liens profonds et attribution marketing, avec contributions au backend Laravel.","md",[165,168,171],{"src":166,"alt":167},"\u002Fimages\u002Fprojects\u002Fgosim\u002Fapp-1.webp","Choix d'un forfait pour l'Italie",{"src":169,"alt":170},"\u002Fimages\u002Fprojects\u002Fgosim\u002Fapp-2.webp","Écran Mes eSIM avec données restantes et recharge",{"src":172,"alt":173},"\u002Fimages\u002Fprojects\u002Fgosim\u002Fapp-3.webp","Installation d'une nouvelle eSIM pour la Turquie",null,"mobile","https:\u002F\u002Fgowallet.money\u002FgoSim",{},[179,180,181],"3 SDK de paiement natifs","Points fidélité, liens profonds et attribution","~30 % de performances en plus",true,1,"company","\u002Fprojects\u002Fgosim",[187,188],"ios","android","https:\u002F\u002Fplay.google.com\u002Fstore\u002Fapps\u002Fdetails?id=com.gosim.app","Développeur mobile principal · contributeur backend",{"title":10,"description":162},[193,194,195,196,197,198,199,200,201,202],"React Native","Expo Router","TypeScript","Laravel","Stripe","PayPal","Airwallex","AppsFlyer","Meta SDK","Firebase","projects\u002Fgosim","Refonte React Native d'une application eSIM en production : paiements natifs, points de fidélité et liens profonds.","2026","Jy6fYtRYh8vAvphZFW6a-QHI7taRmfMA4V7QTECPEBI",[208,209,212,214,217,220,223,226],{"path":185,"title":10},{"path":210,"title":211},"\u002Fprojects\u002Fpresalio","Presalio — suite de vente terrain et distribution",{"path":213,"title":123},"\u002Fprojects\u002Fesim-compatibility-checker",{"path":215,"title":216},"\u002Fprojects\u002Fefficy","Efficy — audits magasin et score de performance",{"path":218,"title":219},"\u002Fprojects\u002Fgosim-landing","Site GoSIM — choisir et acheter une eSIM sur le web",{"path":221,"title":222},"\u002Fprojects\u002Fadele-invest","Adele Invest — plateforme immobilière off-market",{"path":224,"title":225},"\u002Fprojects\u002Fgo-landing","GO — le site de la super-app",{"path":227,"title":228},"\u002Fprojects\u002Fcall360","Call360 — CRM multi-tenant, centre d'appels et module cliniques",{"left":4,"top":4,"width":230,"height":230,"rotate":4,"vFlip":6,"hFlip":6,"body":231},24,"\u003Cpath fill=\"currentColor\" d=\"M16.61 15.15c-.46 0-.84-.37-.84-.83s.38-.82.84-.82s.84.36.84.82s-.38.83-.84.83m-9.2 0c-.46 0-.84-.37-.84-.83s.38-.82.84-.82s.83.36.83.82s-.37.83-.83.83m9.5-5.01l1.67-2.88c.09-.17.03-.38-.13-.47c-.17-.1-.38-.04-.45.13l-1.71 2.91A10.15 10.15 0 0 0 12 8.91c-1.53 0-3 .33-4.27.91L6.04 6.91a.334.334 0 0 0-.47-.13c-.17.09-.22.3-.13.47l1.66 2.88C4.25 11.69 2.29 14.58 2 18h20c-.28-3.41-2.23-6.3-5.09-7.86\"\u002F>",{"left":4,"top":4,"width":230,"height":230,"rotate":4,"vFlip":6,"hFlip":6,"body":233},"\u003Cpath fill=\"currentColor\" d=\"M18.71 19.5c-.83 1.24-1.71 2.45-3.05 2.47c-1.34.03-1.77-.79-3.29-.79c-1.53 0-2 .77-3.27.82c-1.31.05-2.3-1.32-3.14-2.53C4.25 17 2.94 12.45 4.7 9.39c.87-1.52 2.43-2.48 4.12-2.51c1.28-.02 2.5.87 3.29.87c.78 0 2.26-1.07 3.81-.91c.65.03 2.47.26 3.64 1.98c-.09.06-2.17 1.28-2.15 3.81c.03 3.02 2.65 4.03 2.68 4.04c-.03.07-.42 1.44-1.38 2.83M13 3.5c.73-.83 1.94-1.46 2.94-1.5c.13 1.17-.34 2.35-1.04 3.19c-.69.85-1.83 1.51-2.95 1.42c-.15-1.15.41-2.35 1.05-3.11\"\u002F>",{"left":4,"top":4,"width":230,"height":230,"rotate":4,"vFlip":6,"hFlip":6,"body":235},"\u003Cpath fill=\"currentColor\" d=\"M3 20.5v-17c0-.59.34-1.11.84-1.35L13.69 12l-9.85 9.85c-.5-.25-.84-.76-.84-1.35m13.81-5.38L6.05 21.34l8.49-8.49zm3.35-4.31c.34.27.59.69.59 1.19s-.22.9-.57 1.18l-2.29 1.32l-2.5-2.5l2.5-2.5zM6.05 2.66l10.76 6.22l-2.27 2.27z\"\u002F>",1791726330258]