Files
eSIM-Tools/docs/reference/README_simyo_esim_EN.md
Abner ad16472fad 📝 docs: 全面审查并修复项目文档质量
- 重构 ARCHITECTURE.md,拆分未来架构到独立文件,修复 TypeScript 伪代码
- 修正 CLAUDE.md 模块结构图路径与实际代码一致
- 统一 README 中英文版快速开始步骤,补充环境变量配置
- 修复 TOKEN_REFRESH_FIX.md 未声明变量错误
- 统一修复文档格式模板,更新 reference 文件引用路径
- 优化 CORS_SOLUTION.md 标题语义和安全建议
- 补充 SECURITY.md CSP 配置上下文说明
- 调整 User_Guide.md 视频位置,补充扫码安装步骤
2026-05-19 19:30:37 +08:00

3.2 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

  • src/simyo/simyo_modular.html - Simyo eSIM Device Change Tool (Production Version, Modular Architecture)
  • tests/test_simyo_esim.html - Comprehensive Test Page (Development/Test Version)

🔧 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