Introducing the rules of the game ♘

Singapore Hackathon: Saving the world from online payments fraud

By Ka Chee Ho, Data Scientist, Adyen Singapore

Developers love a good challenge. Online merchants love to stop fraud. In collaboration with HackerX, we recently put these two things together with a Hackathon at Huone Singapore — challenging over 50 participants including developers, computer science students, data scientists, and more, from over 10 companies and universities, to build an effective fraud detection bot in Java.

The introduction

The event began with a brief introduction from Onno van Paridon, lead software engineer for Adyen Asia Pacific, who discussed scaling workflow and infrastructure at Adyen from zero to an annual transaction volume of $100 billion+, and also shared insights into the Adyen Formula, a set of principles that keep us focused on creating long term value for merchants.

The challenge begins

The Hackathon itself began with participants forming into groups of up to five people. Each team was supplied with a set of dummy data, including transaction values, payment methods (such as credit card, wallet, or other), shopper locations, and so on, along with some suggested checks as a starting point. With this information, the teams then had to combine their data analysis skills with their own knowledge and intuition (for example — is an unusually high transaction value a possible indicator of fraud?) in order to assign fraud ‘scores’ to different parameters.

Team working on the challenge

Let the games begin! 🤾‍

Based on these scores, the teams began building their Java-based fraud detection bots. As they built and tested various checks, they received scores through the online Integrated Development Environment (IDE) provided for their bot. Furthermore, teams received feedback on how checks could be optimized, for example to reduce ‘false positives’ — that is to say, valid transactions that are wrongly recognized as attempted fraud. With the scoring system and feedback in place, the teams had the tools and information necessary to iterate on their checks and make incremental improvements to the bots.

Coding on a laptop

Time to catch fraudsters 🕵️‍

Sharing insights and selecting a winner

Once the project was completed, two teams were selected to share their work and their approach to building the bots. This was a great opportunity for everyone to get an insight into how other teams work, not just from a coding perspective, but also in terms of workflow and collaboration.

Choosing a winner was difficult due to a huge range of variables to consider and also a degree of subjectivity in the competition. Many teams dived straight into complex data science and algorithms to solve the problem. However, the winning team conceptually uncovered almost all the key patterns of fraud, but just as importantly, they were able to combine development and data analysis skills with common sense and rationality, and understand and communicate the reasons why they built the bot they way they did. As Onno noted during the presentation:

“In Adyen, we believe winning is more important than ego; we work as a team — this is something which was very evident from this team.”

Below you can see the happy winners with their prize packs — including a Raspberry Pi each!

The winning team

The happy winners 🏆

Find out more about development careers at Adyen

The Hackathon was great fun, but online payments fraud is a serious issue. In fact, in the U.S. alone it has been projected to reach over $7 billion annually by 2020.

Technical careers at Adyen

We are on the lookout for talented engineers and technical people to help us build the infrastructure of global commerce!

Check out developer vacancies

Developer newsletter

Get updated on new blog posts and other developer news.

Subscribe now

Sign up for the newsletter

By submitting this form, you acknowledge that you have reviewed the terms of our Privacy Statement and consent to the use of data in accordance therewith.

Are you looking for test card numbers?

Would you like to contact support?