Interactive Guide: Skip the Queues at Hai Phong (HPH) Airport https://cdn.tailwindcss.com https://cdn.jsdelivr.net/npm/chart.js body { font-family: ‘Inter’, sans-serif; background-color: #F8F5F2; color: #374151; } .active-btn { background-color: #1E40AF !important; color: white !important; box-shadow: 0 4px 14px 0 rgb(0 0 0 / 10%); } .flow-step { transition: all 0.3s ease; border-left-width: 4px; } .flow-step-connector { height: 2rem; width: 2px; margin: 0.5rem auto; background-color: #D1D5DB; } .pain-point { border-color: #F59E0B; background-color: #FFFBEB; } .solution-point { border-color: #10B981; background-color: #F0FDF4; } .chart-container { position: relative; width: 100%; max-width: 500px; margin-left: auto; margin-right: auto; height: 220px; max-height: 300px; } @media (min-width: 640px) { .chart-container { height: 250px; } }

Skip the Queues at Hai Phong (HPH) Airport

Your interactive guide to a smooth and fast arrival.

First, tell us your visa status:

Planning Your Arrival in Hai Phong

Welcome! A smooth start makes for a great trip. Select your visa status above to see a personalized guide to your airport journey. Below, you’ll find essential preparation tips and information about our service designed to make your arrival fast and effortless.

Essential Pre-Arrival Checklist

🛂

Passport & Visa

Passport valid for 6+ months. E-visa printed or VOA Approval Letter ready.

🏨

Accommodation Info

Keep your first hotel’s name and address handy for arrival forms.

🛃

Customs Rules

Declare cash over $5,000 USD. Be aware of alcohol/tobacco limits.

Why Trust Vietnamimmigration.org?

Ready for a Stress-Free Arrival?

Book our Expedited Entry Service now and let us handle the queues while you think about your adventure.

© 2024 Interactive Airport Guide. Information based on data from Vietnamimmigration.org.

document.addEventListener(‘DOMContentLoaded’, function() { const btnEvisa = document.getElementById(‘btn-evisa’); const btnVoa = document.getElementById(‘btn-voa’); const contentViews = document.querySelectorAll(‘[data-view]’); let voaChart = null; function switchView(viewName) { contentViews.forEach(view => { if (view.dataset.view === viewName) { view.classList.remove(‘hidden’); } else { view.classList.add(‘hidden’); } }); // Handle button active states if (viewName === ‘evisa’) { btnEvisa.classList.add(‘active-btn’); btnVoa.classList.remove(‘active-btn’); } else if (viewName === ‘voa’) { btnVoa.classList.add(‘active-btn’); btnEvisa.classList.remove(‘active-btn’); } else { btnEvisa.classList.remove(‘active-btn’); btnVoa.classList.remove(‘active-btn’); } } btnEvisa.addEventListener(‘click’, () => switchView(‘evisa’)); btnVoa.addEventListener(‘click’, () => { switchView(‘voa’); // Lazy-load chart if (!voaChart) { const ctx = document.getElementById(‘voaFeesChart’).getContext(‘2d’); voaChart = new Chart(ctx, { type: ‘bar’, data: { labels: [‘Single Entry (up to 30 days)’, ‘Multiple Entry (up to 30 days)’], datasets: [{ label: ‘Stamping Fee (USD)’, data: [25, 50], backgroundColor: [ ‘rgba(59, 130, 246, 0.7)’, ‘rgba(29, 78, 216, 0.7)’ ], borderColor: [ ‘rgba(59, 130, 246, 1)’, ‘rgba(29, 78, 216, 1)’ ], borderWidth: 1 }] }, options: { responsive: true, maintainAspectRatio: false, scales: { y: { beginAtZero: true, ticks: { callback: function(value) { return ‘$’ + value; } } } }, plugins: { legend: { display: false }, tooltip: { callbacks: { label: function(context) { let label = context.dataset.label || ”; if (label) { label += ‘: ‘; } if (context.parsed.y !== null) { label += new Intl.NumberFormat(‘en-US’, { style: ‘currency’, currency: ‘USD’ }).format(context.parsed.y); } return label; } } } } } }); } }); // Set default view on page load switchView(‘default’); });
evisa.vn Avatar

Published by