Case study · Software · 2026
A CRM built around GMS
Global Marketing & Sales, Inc.
A customer relationship management (CRM) system for travel and tourism marketing. GMS can organise contacts by country, review imports, and prepare outreach lists.
- The need
- GMS needed to organise tourism contacts by country and keep offices with shared company names separate.
- The work
- A custom CRM with import review, country records, contact filters, and outreach lists.
- The result
- Staff can prepare lists by country, city, company type, and destination. GMS provided a written recommendation.
- Sector
- Tourism-trade marketing & outreach
- Engagement
- Custom CRM — design & build
- Scope
- Country-specific CRM, import checks, list builder
- Started
- Spring 2026
- Status
- Released
- Built with
- React · TypeScript · Supabase · Vercel
The need
Country guides the work
GMS works in travel and tourism marketing across several countries. The team needs to find contacts for a specific country, city, company type, or destination.
Keep offices separate. A company can have offices in several countries that share a name or website. GMS needed to keep these records separate during imports and list preparation.
Read imported names correctly. Contact files can use different text formats. An incorrect format can damage accented names. The importer needed to read these files and let staff review the records.
Test the approach before commitment. Laura’s letter describes concerns about subscription fees for sales features GMS did not need. A working example helped the team assess a custom system.
The team’s records and tasks defined the system.
The build
Records and lists organised by country
Company and contact records connect to import checks, filters, and list tools. The system supports five main tasks.
- Review a contact import. The importer accepts CSV and spreadsheet files. It recognises common English, Spanish, and Portuguese column names and checks mapped records. Windows-1252 text support helps preserve accented names. Batch records and rollback controls support import review.
- Keep country records separate. Duplicate checks compare country as well as company details. This reduces the risk of combining offices from different countries when they share a name, website, or email address.
- Prepare an invitation list. The list builder checks for contacts from different countries. Some export and copy options ask for confirmation when a list contains more than one country. Staff review the intended recipients.
- Filter records for outreach. Country, city, company type, and destination filters work together. Staff can use these fields to prepare a contact list for a specific task.
- Review a missing country. An optional import setting sends contacts without a country to Needs Review. Staff can record a reason for a Special / Global contact. These records stay separate from country views until reviewed or deliberately selected.
Built with React · TypeScript · Supabase · Vercel
Software checks support staff review of the records.
In practice
Released software and client feedback
The CRM was released, with follow-up changes to contact entry and company search. Laura’s September 10, 2026 recommendation describes the development and testing process.
What changed
- Company pages include telephone and website fields. Staff can search the company list alphabetically, with country and city details to distinguish matching names.
- The Add Contact form resets for each new contact. Activity checks reject deleted records and a contact linked to a different company.
From GMS
Laura describes a useful working example, a flexible development process, and quick adjustments during testing. Read her full recommendation on the Nest Digital website.
Design decisions
Build around the team’s records
Country affects both company matching and the selection of an outreach list. The design gives staff ways to review missing or conflicting information.
Use country when matching companies
A shared name or website does not establish that two offices belong in one record. The import process compares country and company details.
Make missing information visible
An import can use the source country, a country selected for the batch, or a review route. Staff can then resolve records that need more information.
Keep a person in the review process
Column mapping, record checks, and country review help staff correct source problems. These controls do not establish that every imported value is correct.
Ongoing work
Staff still review imported records. Hosting, handover, and support are handled separately. New marketing connections need an agreed scope.