Inspiration

Bordivo started with a simple question: how can a traveler quickly find out whether they can enter a country and what they need to arrange before travelling?

In reality, that question is rarely simple. The answer may depend on someone’s passport, country of residence, destination, transit stops, reason for travel and travel dates. The information is often spread across government websites, embassy pages, PDFs and separate application portals. Some pages are difficult to understand, and it is easy to miss an important exception.

I built Bordivo because I wanted to bring this information together in one clear and practical route assessment, while still showing the official sources behind the result.

What it does

A traveler enters their passport, country of residence, destination, travel purpose, dates and any transit countries. Bordivo then creates a route specific overview with the likely visa or entry route, the main requirements, required documents, possible fees, processing information, official application pages and practical next steps.

The result can be copied, printed or saved to an account. Travelers can start a check without registering and decide later whether they want to save it.

Bordivo is different from a normal travel chatbot because it keeps the answer connected to the official sources. When information is incomplete, unclear or possibly outdated, Bordivo shows that instead of filling the gap with a confident guess.

Bordivo also monitors selected official sources for changes. The new Change Impact Engine can identify which route types and saved cases may need to be reviewed when an official source changes. It separates confirmed route relevance, possible impact, insufficient evidence and no detected impact. Human review is still required before any traveler guidance is changed.

How we built it

Bordivo is a full-stack Node.js web application with a public route checker, traveler accounts, saved checks, team cases, source monitoring and an internal review area.

I designed the product flow and used Codex during development to help implement, review and test the system. Bordivo works with structured traveler information and official-source references, so the route assessment, evidence, source links and unanswered questions remain connected.

During Build Week, I used GPT-5.6 in Codex to build the Change Impact Engine. Bordivo was already live, so I did not want to risk changing the existing scanner. The new engine was therefore built as a separate, read-only module behind a feature flag.

It receives existing source, change events and compares them with saved route and case information. It does not run new scans, edit traveler cases or automatically publish new conclusions. I also added tests for the different impact states, historical events, incomplete evidence, privacy, authentication and API access.

Challenges we ran into

One of the biggest challenges was deciding whether information from an official source actually applied to a specific traveler. Government websites do not use one standard structure or vocabulary. Information can be divided across immigration portals, embassy pages, PDFs and application websites.

Another challenge was that a website change does not automatically mean that an immigration rule has changed. It may only be a wording update, a new fee, an announcement for a future date or a redesigned page. The system therefore had to be careful about what it classified as relevant.

Older monitoring events were also difficult because many of them did not contain enough structured information to safely identify affected routes. I made sure those older events could never be classified as confirmed impact.

The most important rule was that missing evidence should never be treated as proof that there is no impact.

Accomplishments that we're proud of

I am proud that Bordivo has grown into more than a basic visa checker. It combines route-specific guidance, official sources, saved traveler checks, team workflows and source monitoring in one system.

I am also proud that the Change Impact Engine was added without rewriting or risking the existing scanner. The new feature is isolated, read-only and disabled by default. It can explain why a route or saved case may require attention without pretending that it has made a final legal decision.

The engine and API tests all passed, as did the existing scanner, authentication and readiness tests. No existing production data or scanner behaviour had to be changed.

Most importantly, Bordivo remains honest about uncertainty. It does not hide missing information just to make an answer look complete.

What we learned

The main thing I learned is that finding an official source is only the beginning. A reliable system also needs to understand who the information applies to, when it becomes effective, whether another official source supports it and what information is still missing.

I also learned that uncertainty should be visible. In travel and immigration guidance, saying that something still needs to be verified is better than giving a polished answer that cannot be properly supported.

Building the Change Impact Engine also taught me the value of adding new functionality in a controlled way. Keeping the module separate and well tested made it possible to improve a live application without unnecessarily changing parts that already worked.

What's next for Bordivo Visa Check

The next step is to expand the number of verified routes and improve the connection between official source changes and active traveler cases.

I also want to improve the agency workspace, so travel professionals can review larger numbers of cases when an important rule changes.

The long term goal is for Bordivo to help travelers and travel professionals understand not only what they may need, but also where the information came from, when it changed and what still needs to be checked before travelling.

Built With

Share this project:

Updates