Fractal Banking REST API - test task
Java 8, Gradle 5 or gradle-wrapper
fractal.banking.WebApp
gradle build
cd ./rest-server/build/libs
java -jar fractal-banking.jar
Project divided into 3 modules
- fractal-sdk - Fractal API rest client implementation using Retrofit2/OkHttp3
- categorization-service - Transaction categorization by description and merchant
- rest-server - Spring Boot 2 REST server implementation with spring-data-jpa repositories.
Swagger REST UI is available by link http://localhost:8888
Synchronize transactions from Fractal API
PUT /v1/bank/{bankId}/account/{accountId}/transaction/sync
then following endpoint will return categorized transactions
GET /v1/bank/{bankId}/account/{accountId}/transaction
Fractal Sandbox test values
- bankId: 6
- accountId: fakeAcc, fakeAcc3, fakeAcc111
H2 in-memory database is used as spring-data source to simplify run and build
Replace CategorizationService implementation with Word2Vec deep learning neural network model using deeplearning4j
https://www.kaggle.com/c/word2vec-nlp-tutorial/overview/part-2-word-vectors