Key Information

Register
Submit
The challenge is finished.

Challenge Overview

Challenge Objectives

We did an environment setup challenge for this project. Based on the environment setup this is the first API development challenge. In this challenge the following tasks are covered.
  • Develop the System API required for ACH transaction
  • Unit test the ACH Transaction API using Postman

Project Background

FNBC Classic - Mulesoft API project aims to design and build Process APIs using RAML and Mulesoft. There will be 8 API endpoints to be built according to requirements provided by the client. The client will provide the data models and some sample data to assist with generating a test environment that can be used by competitors.  The project will be approached by first building the RAML specifications for each endpoint and then implementing them using Mulesoft’s Community Edition. The resulting APIs will be exported and transferred to FNBC Classic along with the RAML specs.

Technology Stack
  • RAML (https://raml.org/)
  • Mulesoft (https://www.mulesoft.com/) -  Mule ESB 3.9.0
  • Cassandra Datastax (DSE 5.1)
  • XML
  • Java 8
  • Maven
  • Unit Testing using Postman
If any other libraries or dependencies is required you have to get the approval in forums.

Individual requirements

Challenge Input: We will provide the following as challenge input.
  • 2 Mule Project implementation that were done for CCD and DDA transactions that can be used your reference.
  • Winning submission of the environment setup challenge so that you can easily setup the environment for the project.
  • ACH Data xls for creating the required database table.
Scope:
  • Table - Create a table in cassandra that follows the given structure.
CREATE TABLE customer_datastore.account_clearing_house_posted_transactions_by_acctnmbr (
   acct_nmbr text,
   product_code text,
   posted_date text,
   transaction_uid text,
    ---columns based on ACH DATA xls here---
   PRIMARY KEY ((acct_nmbr, product_code), posted_date, transaction_uid)
)
  • Create the RAML Specification using Anypoint API designer for the System API - systemapi-ach-transactions
  • Using the RAML specification implement the API using Anypoint Studio
  • The API should support filtering based on acct_nmbr, product_code, start & end dates
  • Also the API should support pagination, you can refer how the limit is applied to the result set in the existing projects.
  • Create test data and provide Postman scripts to test your submission.
Deployment Guide and Validation Document

Make sure to provide the README.md that covers
  • Deployment - How to build and run your submission without any issues should be covered in this document. 
  • Configuration - If any configuration is used by the submission it should be documented properly.
  • Dependency Installation - You should clearly describe the step-by-step guide for installing dependencies that are required for evaluating your submission.
A Validation.md that covers:
  • Steps to test the transaction APIs that are deployed in the environment.
  • Validation video / screencast
This is optional, but can be quite helpful for review and validation.

Important Notes
  • Make sure that your submission follows the existing project structures. You can definitely improvise that.
  • Please use AWS free tier to setup the VM. Check the instructions given in the environment setup winning submission.


Final Submission Guidelines

You can submit your source code as a zip file which should contain
  • Mule Project
  • Database scripts including test data creation
  • Postman Test Scripts

ELIGIBLE EVENTS:

Topcoder Open 2019

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30072621