Files
eSIM-Tools/docs/reference/README_simyo_esim_EN.md
Abner 404fc88332 🧹 chore(cleanup): 移除未使用的模块化版本并修复文档问题
- 删除 src/js/modules/giffgaff/ 和 src/js/modules/simyo/ 目录(未完成的重构尝试)
- 移除 webpack.config.js 中未使用的别名配置和入口文件
- 修复文档错链:移除对不存在的 DEVELOPMENT_GUIDE.md 引用
- 修复文档错链:将 CORS_SOLUTION.md 中的 simyo_proxy_server.js 更正为 server.js
- 更新 tests/CLAUDE.md 中 Jest 版本为 30.3.0
- 移除 src/simyo/MODULE_ARCHITECTURE.md 中过时的重构计划
- 精简 docs/reference/ 下的技术文档,移除与根 README 重复的内容
- 删除已弃用的 .serena/ 工具目录
- 更新根 CLAUDE.md 反映清理后的新目录结构
- 删除 3 个引用已删除模块的测试文件

所有测试通过,构建成功,质量检查和安全检查均通过。
2026-05-18 21:58:42 +08:00

3.3 KiB

Simyo NL eSIM Tool - Technical Reference

A complete eSIM device change web tool built based on the Simyo ESIM V2.postman_collection.json Postman script.

📁 File Description

Main Files

  • simyo_modular.html - Simyo eSIM Device Change Tool (Production Version, Modular Architecture)
  • tests/test_simyo_esim.html - Comprehensive Test Page (Development/Test Version)
  • Simyo ESIM V2.postman_collection.json - Original Postman Script (Reference Document)
  • simyo.html - Original Simplified Version (Reference)

🔧 Technical Architecture

Frontend Technology Stack

  • HTML5 - Semantic Structure
  • CSS3 - Responsive Design, Bootstrap 5.3.0, Simyo Brand Colors
  • JavaScript (ES6+) - Modern JavaScript Features
  • Font Awesome 6.0.0 - Icon Library

API Integration

  • Simyo Sessions API - User Authentication and Session Management
  • Simyo eSIM API - eSIM Configuration Retrieval and Management
  • QR Code API - QR Code Generation Service

Key API Endpoints

const apiEndpoints = {
    login: "https://appapi.simyo.nl/simyoapi/api/v1/sessions",
    getEsim: "https://appapi.simyo.nl/simyoapi/api/v1/esim/get-by-customer",
    confirmInstall: "https://appapi.simyo.nl/simyoapi/api/v1/esim/reorder-profile-installed",
    qrcode: "https://qrcode.show/"
};

💰 Number Preservation Service

Simyo offers number preservation service with details:

  • Payee: ING BANK N.V.
  • IBAN: NL19INGB0007811670
  • Amount: 10 Euro minimum
  • Remarks: Your Simyo number (complete number starting with 06)

📝 Development Instructions

Core Component Architecture

// Global State Management
const appState = {
    sessionToken: "",      // Simyo session token
    activationCode: "",    // eSIM activation code
    phoneNumber: "",       // User phone number
    password: "",          // User password
    currentStep: 1         // Current step
};

Main Function Description

  • mockValidatePhoneNumber() - Validate Dutch phone number format
  • createHeaders() - Generate Simyo API request headers
  • showSection(stepNumber) - Show specified step
  • showStatus(element, message, type) - Show status information
  • generateQRCode(data) - Generate eSIM QR code

API Call Example

// Login Simyo Account
const response = await fetch('https://appapi.simyo.nl/simyoapi/api/v1/sessions', {
    method: 'POST',
    headers: createHeaders(false),
    body: JSON.stringify({
        phoneNumber: '0613123712',
        password: 'your_password'
    })
});

// Get eSIM Information
const esimResponse = await fetch('https://appapi.simyo.nl/simyoapi/api/v1/esim/get-by-customer', {
    method: 'GET',
    headers: createHeaders(true) // Include session token
});

🔄 Differences from Giffgaff Tool

Feature Simyo eSIM Giffgaff eSIM
Authentication Method Username/password login OAuth 2.0 PKCE
MFA Verification No additional verification Email verification code
API Complexity Relatively simple GraphQL + REST
Number of Steps 4-step process 5-step process
Device Replacement Dedicated process support Through SIM swap
Number Preservation 10 Euro minimum According to normal plan

Document Version: 1.1.0 Last Updated: 2026-05-18 Maintainer: eSIM Tools Team