Aplikasi ini adalah API untuk marketplace yang menawarkan fitur diskon dan bebas ongkir bagi pelanggan. Setiap transaksi produk di atas Rp15.000 mendapatkan bebas ongkir, dan jika transaksi produk di atas Rp50.000, pelanggan mendapatkan diskon sebesar 10%. API ini mendukung registrasi pengguna, manajemen produk oleh merchant, dan pencatatan transaksi oleh pelanggan.
Peran:
Backend Developer
Fitur:
- Autentikasi: Sistem login dan registrasi dengan JWT.
- Manajemen Produk: Merchant dapat membuat, memperbarui, dan menghapus produk.
- Diskon & Bebas Ongkir: Otomatisasi bebas ongkir untuk transaksi di atas Rp15.000 dan diskon 10% untuk transaksi di atas Rp50.000.
- Manajemen Transaksi: Pencatatan transaksi produk oleh pelanggan, serta pelaporan transaksi kepada merchant.
Teknologi:
- Node.js
- Express
- Sequelize (ORM)
- MySQL
- JWT (JSON Web Token)
- Postman (untuk pengujian API)
Penggunaan:
- Clone repositori ini:
git clone https://github.com/yourusername/backend-marketplace cd backend-marketplace
- Install dependensi dengan menjalankan perintah:
npm install
- Konfigurasi variabel lingkungan Anda di file
.env
:JWT_SECRET=your_jwt_secret DATABASE='marketplace' DATABASE_USERNAME='username' DATABASE_PASSWORD='password' DATABASE_HOST='localhost' DATABASE_PORT=3306 DATABASE_TYPE='mysql' DATABASE_LOGGING=false
- Buat database MySQL dengan nama
marketplace
. - Pastikan server Anda berjalan dengan menjalankan perintah:
npm run start
API Endpoints:
Auth:
- POST /api/auth/register Body: { "username": "merchant1", "password": "password", "role": "merchant" }
- POST /api/auth/login Body: { "username": "merchant1", "password": "password" }
Products:
- POST /api/products Headers: { "Authorization": "Bearer your_jwt_token" } Body: { "name": "Product A", "price": 20000 }
- GET /api/products
- PUT /api/products/:id Headers: { "Authorization": "Bearer your_jwt_token" } Body: { "name": "Product A Updated", "price": 25000 }
- DELETE /api/products/:id Headers: { "Authorization": "Bearer your_jwt_token" }
Transactions:
- POST /api/transactions Headers: { "Authorization": "Bearer your_jwt_token" } Body: { "productId": 1, "quantity": 3 }
- GET /api/transactions/merchant Headers: { "Authorization": "Bearer your_jwt_token" }
Postman Collection:
- File koleksi Postman untuk pengujian endpoint API terletak di direktori
postman
dan diberi namapostman_collection.json
. - Untuk mengimpor koleksi Postman, buka Postman, klik tombol
Import
, dan pilih file dari direktoripostman
.
Kesimpulan:
Proyek ini menunjukkan kemampuan dalam mengelola marketplace dengan fitur diskon dan bebas ongkir yang otomatis. Aplikasi ini memberikan fleksibilitas bagi merchant dan kenyamanan bagi pelanggan.
Source Code :
Untuk informasi lebih lanjut tentang proyek ini atau untuk berdiskusi tentang kolaborasi proyek, silakan hubungi saya atau kunjungi website saya.
: