https://github.com/kb-web-development/commerzbank-securities-tracker
Domain Driven Design Laravel Commerzbank securities tracker application
https://github.com/kb-web-development/commerzbank-securities-tracker
Last synced: 3 months ago
JSON representation
Domain Driven Design Laravel Commerzbank securities tracker application
- Host: GitHub
- URL: https://github.com/kb-web-development/commerzbank-securities-tracker
- Owner: KB-WEB-DEVELOPMENT
- License: mit
- Created: 2024-08-09T07:59:30.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-02-22T12:03:58.000Z (4 months ago)
- Last Synced: 2025-02-22T13:20:21.813Z (4 months ago)
- Language: PHP
- Size: 572 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# commerzbank-securities-tracker
Laravel Domain Driven Design (DDD) project which makes use of (German bank) Commerzbank
Securities API.To read about Commerzbank Securities API: https://developer.commerzbank.com/products/api-catalog/sandbox/securities-api/v4/try-this-api
Through the API, Commerzbank customers can retrieve information about:
(1) their account securities ids ( note: a customer may have only one account securities id or multiple account securities ids)
(2) the portfolio tied to each such account id
(3) all transactions tied to each such account id

I followed Martin Joo's DDD's Laravel approach quite closely when it comes to structure:

Insights from his blog: https://martinjoo.dev/domain-driven-design-with-laravel-domains-and-applications
A) Install and run:
- cp .env.example .env
- composer install
- Set up your databaseYou should request (1) an access token and (2) the live api access URI from Commerzbank for real data.
Those two values need to be set for the following two parameters in the .env file:COMMERZBANK_ACCESS_TOKEN
COMMERZBANK_ACCESS_URI
(COMMERZBANK_URI_TIMEOUT=5)
- php artisan migrate
- php artisan db:seed --class=DatabaseSeeder
- php artisan serve
- npm install
- npm run devYou can login with username "[email protected]" and password "password".
B) Custom commands:
ImportPortfolioCommand.php (File location: App/Console/Commands/ImportPortfolioCommand.php)
--> shows how the portfolio data for a specific account securities id would be imported
(Artisan command in terminal: php artisan portfolio:import)
ImportTransactionsCommand.php (File location: App/Console/Commands/ImportTransactionsCommand.php)
--> shows how all transactions data for a specific account securities id would be imported
(Artisan command in terminal: php artisan transactions:import)