CASE STUDY - *Grocery Delivery Services.

The client is a Home Food Broker for more than 20 years. They offer a wide variety of premium meats and non-perishable groceries. They offer a real alternative to the supermarket, one of the most advanced in the home grocery business.

Unlike large chains, they do not have supermarkets to maintain and they do not invest in expensive marketing campaigns. The business model starts with finding out what their client’s budget is and the amounts they usually allocate for their yearly grocery needs.

Client’s receive their grocery in advance and commit on a flexible payment method with no-deposit, no-interest financing plan.

* The company name is kept confidential in this case study.


The Masterplan objective was to develop an application system that would help GDS [Grocery Delivery Services.] expand to different markets and sales channels while empowering its client base. With hundreds of thousands bank transaction and millions of dollars of direct to consumer contracts, it was clear that the challenges to develop the solution was going to affect all departments and operations.


The NXT10PAY project was initially designed as a payment application to collect monthly reoccurring payments from customers, based on contracts signed for home grocery services. The project started with an API integration to HSBC bank of Canada to allow EFT [Electronic fund transfer] handshake and transmission between GDS and HSBC. A semi-manual process that took approximately 5 hours and 2 employees to complete 3 times a week.

It was decided that NXT10PAY will be developed as a new application using C# .NET Core 2.2 MVC, SQL server, IIS, jquery, Microsoft Power Bi, knockout.js technologies and not on the existing GDS CRM, which was ageing and diagnosed to have data integrity and expandability issues. Since time was an issue and redevelopment of a CRM was not an option, NXT10 with GDS approval decided that integration between NXT10PAY and the CRM was a faster solution which will allow business continuity.

At early NXT10PAY development stages, management and development team realized that to achieve a complete solution, it was important that customer profiles and contract are imported to NXT10PAY as soon as they are declared sold. A sold contact means the customer received their groceries and their contract status is now in owing to GDS and the payment schedule is active, NXT10PAY must start collecting. At this stage customers are invited to join their portal or download the GDS mobile app which displays their payment dates, terms and tools that allows customers to manage their contract and payments.

It is a normal business activity for contracts to be amended, NXT10PAY is designed to allow amendments in multiple formats. From payment date changes, complete frequency and terms modification, contract ownership changes, oversell, credits and more.

Automation and expandability were key in NXT10PAY ‘s development. Payments and transactions can be rejected and returned. Treating thousands of such transaction can be painful and human error friendly. NXT10PAY is designed to treat these transactions automatically and proactively. A returned payment is automatically rescheduled, service charges are added, reported to GDS agents, dashboards, financial reports and communicated to customers by email, text and GDS mobile app through the integration between Drip, Gonative [for mobile app] and NXT10PAY.

NXT10PAY’s connectivity with multiple databases internally and externally is allowing GDS to warehouse the data in a clustered SQL environment, which helps GDS with data mining, BI [business intelligence] and data distribution to multiple GDS departments, partners and clients.

Data Collection.

Signed contacts are uploaded to GDS CRM after a sale is completed using a sales application that was developed by GDS, which is used by sales consultants. The contacts are then imported in batches to NXT10PAY, the importing process can be performed automatically or manually. NXT10PAY has a built-in contact creation management system for manual sale [POS]. Data can be pushed or pulled to NXT10PAY from other inhouse, cloud based applications including paper based data using OCR.

Data Collection.

Payments Scheduling.

Once contracts are imported to NXT10PAY, the application automatically creates and schedules the payments based on the agreed contract terms, which at this point the client becomes part of the scheduled *EFT [Electronic Fund transfer] process.

Auto Client Greeting.

Once contacts are imported, Clients are automatically created by NXT10PAY during the contact import process from the GDS CRM. NXT10PAY through its integration to Drip triggers email and text communication with clients welcoming them to GDS and inviting them to down the GDS mobile app.

Auto Client Greeting.

EFT [Electronic Fund Transfer]

NXT10PAY can generate an EFT [Electronic Fund Transfer] on scheduled bases or manually through NXT10PAY EFT tools. The EFT is then automatically sent to the bank to be processed. At this stage NXT10PAY will be in listening mode [to that specific EFT] as payment statuses become available and sent back to NXT10PAY. The process can take up to 48 hours or more [if client disputes payments]. Meanwhile payments are marked as paid and clients contacts are updated. NXT10PAY then reports the transactions to multiple reports and make them available LIVE to management, customer service and other departments.

Automatic payments Reschedule.

When a payment is marked as failed, it is automatically rescheduled by NXT10PAY and a service charge is added to that specific payment. Bank EFT will report includes NSF, stop payments, closed accounts, bank account errors and bank account changes. Based on bank EFT reply, NXT10PAY will populate the data accordingly and adjust the client account while reporting the values live to the dashboard and financial reports. When a payment is rejected and updated in PPM, request is sent to DRIP to email or txt the client notifying them that their payment failed and rescheduled.

Automatic payments Reschedule.

Combined payments.

In some cases, a client might have multiple payment scheduled on the same EFT day, to avoid multiple transactions and client service charges, NXT10PAY is designed to combine all payments into one payment request but separately managed on NXT10PAY. Note: when a combined payment is rejected or fails and reported to NXT10PAY by the bank, NXT10PAY will then uncombine the payment and separately change the status and reschedule them.

Block client account. [In arrears]

NXT10PAY is designed to block client accounts for failing payments. If a client fails 3 payments in a row, NXT10PAY will block the account and notify internal GDS agents for action. Blocked client will not be included in EFT until the issue is resolved. GDS agents can manually reactivate and unblock accounts as they see fit.

Block client account. [In arrears]

Split payments.

Split payments is a feature used to divide an existing unpaid payment into multiple new unpaid payments spaced out at a specified frequency (weekly, biweekly, monthly, bimonthly) and specified amount for each payment. This action will then readjust and balance all reports and balances in NXT10PAY. Specifically, the president report.

Renewed contracts.

Renewed contracts are imported and added to the client profile. A client profile stores passed contract and contract history in the database.

Renewed contracts.

Payment date change.

Payment date change, which is an option available to clients, allow clients to change their future payment dates. NXT10PAY will display available change dates based on EFT dates NXT10PAY will process within the next 30 days of the original payment date. This action is then reported to all reports. Due to business rules, clients cannot change payment dates for their first payment and will only be allowed date changes based on their payment frequency. Blocked clients are not allowed to change their payment date until their file is reactivated.

Purchasing payment date changes.

Client can purchase payment date options after their allowance of payment date change is consumed. At this point NXT10PAY will allow a client to change their payment date for a fee which will be added to their next payment.

Purchasing payment date changes.

Amend and contract changes.

NXT10PAY tools allow GDS agents to amend and change contracts as they see fit or upon client requests. Agents are able to change payment dates, paid date, the status of the payment, frequency [weekly, biweekly, monthly, bimonthly], add to the contract value [oversell] or credit clients to payments done, cancellation of orders. All activities directly affect reporting and future EFT and are populated live into the database.

Activity monitoring and contract audit.

NXT10PAY is constantly mining contracts to validate values. Contracts calculated value can differ from the contract value, NXT10PAY flags problematic contracts and reports them for clearance. Contacts could be unbalanced due to missing payments caused by rescheduling or human error. This is an automated auditing tools to help GDS agents investigate troubled contracts.

Activity monitoring and contract audit.

Epicer Android & iOS mobile applications.

The GDS mobile applications which can be downloaded from the mobile stores are built to allow client to login to their profile, where they can view their payment history, change payment dates and update their profiles. Some of these actions trigger a notification to GDS agents for changes approval. Only GDS client's are allowed to register as NXT10PAY verifies the client profile [client postal code, phone number] before allowing a user to register.


Create a flexible development framework that over time facilitates appropriate commercial responses to changing market conditions.


Fully accessible to high management, employees, suppliers, third party applications & clients within limitations as per operation policies.


Efficient use of all resources & modules, maximising developments and ensure that quality technology is used & maintained.


Application uptime, responsiveness, scalability, reliability, recoverability and fault tolerance were considered during the QA phase.


Essential factors that is significant in driving and redefining GDS in terms of productivity, growth and client communication.


To make GDS more resilient is key to protecting its brand, reputation and sensitive customer information. Identifying - Assessing - Responding to risk was a must have.