Technology domain:
- Custom Software Engineering
- System Integrations
Problem
Our client is a leader in the booking and activity domain, working with local destination partners who sell their products on the client’s booking platforms and the platform enables partners to create their own sites and sell products from other vendors. Client’s booking platform already accepts online payments from customers. Now the client wants to accept in-person payment at multiple locations through their booking platform. The challenge lies in enabling flawless integration of terminals on various devices (like tablet, laptops), ensuring secure initial one time setup for payment collection.
Background
Our client works with local destination partners who sell their products on the client’s booking platform. Client’s platform already uses stripe to accept payment. To enhance payment options, clients wanted to integrate stripe terminals with various devices such as tablets and laptops to accept in-person payments from different locations.
The Challenge
Connecting different terminals to various devices
We have multiple terminals and devices at one location. We need to configure stripe terminals with those devices on which the client’s web application is running.
Secure one-time initial setup for terminals on devices
How we can configure different terminals on various devices by doing one time setup on each device with less operational overhead and using them for future payments.
Implementing cancellation of payments through our application
How we can provide functionality to cancel running payments on a terminal from a point of sale application with error-handling mechanisms to manage secure and consistent transactions.
Solution Overview
The team conducted thorough research on the available solutions and chose Stripe Terminals due to their strong hardware–software synergy and compliance with the country’s financial regulations. The solution was implemented in multiple phases, beginning with the procurement of terminals and their registration with Stripe using Stripe’s APIs. Since the terminals were intended to be deployed across multiple physical locations, a robust integration was designed to link each terminal to a specific location, enabling efficient tracking, grouping, and management of terminals by location.
To enable payment acceptance on partner sites, Stripe Terminals were configured to work seamlessly with the client’s point-of-sale applications running on devices such as tablets and laptops. A secure, password-protected, one-time setup page was developed, allowing operator users to configure terminals with specific devices. Partners could generate unique security passwords for this setup process, which operators used to complete the initial configuration, significantly reducing ongoing setup and configuration overhead.
Additionally, a continuous and reliable connection was established between the partner site and the Stripe Terminal, supported by proper error-handling mechanisms to ensure smooth payment processing. Customers were also given the ability to cancel in-progress payments directly from the partner site, improving overall user experience and operational control.
Highlights
- Provided functionality for creating locations and associating terminals with these locations directly from the client’s booking platform.
- Enabled configuration and use of multiple terminals at a single location, accommodating various devices like tablets and laptops for in-person payments.
- Implemented a secure, password-protected page for one-time terminal setup on various devices.
- Provide cancel processing payments to customers directly from the partner site, maintaining a continuous connection with the Stripe terminal.
Measurable Outcomes
✔️ Terminals could be registered and managed within the booking platform eliminating the need for manual terminal registration through the Stripe dashboard.
✔️ The solution offers in-person payments at multiple locations, across various devices, with minimal configuration.
✔️ The solution remained compliant with financial regulations and secure in-person payment processing.
✔️ The solution was designed to scale effortlessly across multiple partner locations. New terminals could be quickly added to any location without complex setup processes, allowing the client’s booking platform to grow with minimal overhead in terms of managing in-person payments.
The reduced site slowdown has boosted the overall user experience and revenue.
Technologies used
- VueJS
- HTML
- CSS
- JavaScript
- TypeScript
- Stripe Javascript SDK
- Stripe Golang SDK
- Golang



