An API to manage information of XML invoices
The following options are available:
- User authentication
- Upload invoice XML file
- Invoice summary notification
- Invoice list with pagination
- Invoice full detail
- Delete invoices
- Get total accumulated amount of items per currency
- Get total accumulated amount of invoices per currency
A Postman collection is available to test the API:
This project use the Sail package, so you will need:
- Docker
- Docker Compose
First you will have to install the Composer dependencies:
docker run --rm \
--pull=always \
-v "$(pwd)":/opt \
-w /opt \
laravelsail/php82-composer:latest \
bash -c "composer install"
Then you will have to start the containers:
./vendor/bin/sail up -d
And enter the laravel.test
container with:
docker exec -it xml-invoice-recorder-laravel.test-1 bash
Once inside the container, run the migrations and seed the tables:
php artisan migrate --seed
Since the Passport package is used for authentication, you will have to install it:
php artisan passport:install
Great, you are ready to use the features of this project.
Run the unit and feature tests (inside the laravel.test
container) with:
php artisan test