At Equals Money, the introduction of a batch payments feature presented an exciting opportunity to attract larger companies and expand our core offering to our existing customer base. Previously, if users wanted to send payments on masse, they would need to process each payment individually, and every transaction would need to be validated by our internal team. These time consuming manual processes bogged down the users, prospective customers, and our internal team, and presented limitations on total volume of payments that could be processed in any given day. This lead to many prospective customers turning to other solutions.
The goal with batch payments is to give users the flexibility they need to process thousands of payments quickly and securely. These users were often finance controllers with existing processes, softwares, and spreadsheets, and who required a solution that would fit seamlessly into their existing workflows.
I began my research by collecting information about the features that are deployed by existing apps with bulk payments. I compared various apps by looking at several key features, including input methods, currencies supported, approvals, error handling, and scheduling. I found that across existing apps, most bulk payments features did not allow users to add funds directly from the bulk payment flow or pay from multiple sources currencies and balances, and the features were typically not available on mobile.
To gain an understanding of key motivations, behaviours, and pain points of people who would like to make batch payments, I asked direct customers, white label customers, API customers, and the Equals Money internal team on their needs. Here were my key findings:
Users need the ability to save and reuse payment templates, especially for recurring payments such as payroll. In many cases, users preferred making their edits in a spreadsheet where they could easily add in their own data from other spreadsheets they would often have on hand. In particular, users considered CSV import and export of batch payments to be a time saving feature. Additionally, being able to copy a previous batch payment to create a new one was seen as useful.
Equals Money users have a wide range of use cases, and needed the flexibility to pay in any currency and from any balance. They often want to pay multiple recipients, possibly in different currencies, within a single batch payment. Customers also emphasised the need to send multi-currency bulk payments from a single file.
Overall, the feedback consistently pointed towards a desire for granular error handling and the flexibility to address issues without having to redo the entire bulk payment process from scratch. Clear error handling and payment validation in the UI and the CSV was desired.
Many users, especially in larger organisations or those who process payroll, require built-in approval processes for batch payments. In particular, users requested features such as multiple approval levels, role-based permissions, and transparency in the approval workflow.
The need to schedule recurring payments would be a key part of workflows such as payroll.
We then organised these key findings into a user persona:
I need a solution that allows me to efficiently process payments to multiple countries, currencies, and recipients all at once. This would save us significant time and reduce the complexity of our monthly payroll process.
Efficient bulk payment processing for payroll and vendors
Ability to handle multiple currencies in a single bulk payment
CSV upload functionality for bulk payments
Option to save and reuse payment templates
Clear visibility into fees and exchange rates
Ability to schedule recurring payments
Multi-tier approval process based on value
Scheduling and ability to book in batch on a future date
Integration with accounting software
Create and approve confidential payments
More risk of human error with manual entry of payments
Current process is time-consuming, has to do 100+ transactions at a time and would like to simplify the process by uploading a spreadsheet or CSV file
Spends time following up with approvers via email or slack to get a batch approved
Guided by the user persona, I brainstormed and categorized potential app features into three groups: must-haves, nice-to-haves, and not needed. For the bulk payments feature, we prioritized based on customer feedback, technical limitations, and the need to deliver value quickly.
Local and domestic payments came first due to SEPA compliance and high user demand. Milestone 1 focused on backend essentials—file upload and payment sending—over advanced UI elements like inline editing or scheduling. Since customers preferred editing files in their own tools, we streamlined the workflow to launch faster and start collecting feedback.
Milestone 2 will bring front-end improvements, while Milestone 3 will introduce enhancements like inline editing. Although research showed this would be helpful, we prioritized payment approvals to avoid workflow bottlenecks.
The features were then organised into a high level User Flow:
Here's the more in depth user flow:
Upon creating the user flow, I began to brainstorm and visualise my ideas into a low fidelity prototype. We began our user testing with this prototype.
I ran two user tests to assess the usability of the batch payment flow:
Upload CSV (5 users), and add payments manually (5 users). The findings were organised into an affinity diagram.
Overall, we found:
These improvements we made following analysis of user feedback.
The designs were then restyled by new components, documentation, animations, and illustrations, created in collaboration with the design team at Equals Money.