Integrating a Morse Code Website with Monzo Payment Links and Transaction Flow

I run a Morse Code translator website that allows users to convert text to Morse code and decode Morse back into readable text, with features like real-time translation, audio playback, and shareable outputs. I’m currently exploring the idea of adding a simple monetization layer using Monzo, such as allowing users to unlock additional features or support the site via payment links. However, since my platform is primarily a frontend JavaScript application, I’m unsure how well it can integrate with Monzo’s payment flow.

One of the main challenges is how to securely connect user actions on my website with a Monzo payment. For example, I’d like a user to click a “unlock premium features” button, complete a payment via a Monzo .me link, and then immediately gain access to additional functionality. Since Monzo payment links typically operate outside of the website environment, I’m not sure how to reliably detect when a payment has been completed and tie that back to the correct user session.

Another issue is the lack of a traditional backend or user account system on my site. The Morse Code translator is currently stateless, meaning users don’t log in or have persistent accounts. This makes it difficult to store payment status or manage feature access over time. I’m considering adding a lightweight backend or temporary token system, but I’m unsure what the best approach would be for a simple tool that’s meant to remain fast and accessible.

Timing and user experience are also concerns. The translator works in real time, and I want to avoid disrupting that experience with a complicated payment flow. You can view more about it. If a user completes a Monzo payment in a separate tab or app, there may be delays or no clear way to automatically update the UI when they return. I’m looking for suggestions on how to handle this transition smoothly without confusing users or requiring manual refreshes.

I’m also curious about whether Monzo provides any form of webhook, API, or notification system that could be used to confirm payments programmatically. If such features exist, I’d like to understand how they could be integrated into a small web project like mine. If not, I may need to rely on alternative methods, which raises questions about reliability and security.

Finally, I’d really appreciate input from the Monzo community or developers who have tried to integrate Monzo payment links into custom web tools. For a lightweight, interactive site like a Morse Code translator, what’s the recommended way to handle payments and feature unlocking? Should I introduce a backend service for verification, or are there simpler patterns that still provide a smooth and secure user experience? Sorry for long post!

Drop the focus on Monzo and use Stripe?

1 Like

Should have written it in Morse :slightly_smiling_face:

1 Like

You’ll need to use a “payment provider” of some kind. The big ones like Stripe, SumUp and Revolut are good options - when you get enough volume other options are available. All of them offer webhooks to notify you of payment completion to your server. I’d honestly reconmend having your own backend for it as it gives you flexibility to move provider if you need to in future.

I quite like SumUp myself - easy to set up, next day payouts and good pricing.