Skip to main content

Appendix

Environment Variable Reference

Variable Type Required Description
ENV string Yes Environment (DEVELOPMENT/PRODUCTION)
API_PORT number Yes Server port (default: 3610)
BASE_DOMAIN string Yes API base URL
DB_HOST string Yes PostgreSQL host
DB_PORT number Yes PostgreSQL port
DB_USER string Yes PostgreSQL username
DB_PASSWORD string Yes PostgreSQL password
DB string Yes PostgreSQL database name
MONGO_DB string Yes MongoDB connection string
REDIS_HOST string Yes Redis host
REDIS_PORT number Yes Redis port
REDIS_PASSWORD string No Redis password
JWT_SECRET string Yes JWT signing secret
XENDIT_SECRET_KEY string Yes Xendit API secret key
XENDIT_CALLBACK_TOKEN string Yes Xendit webhook token
GOSEND_CLIENT_ID string Yes GoSend API client ID
GOSEND_KEY string Yes GoSend API key
GOSEND_ADDRESS string Yes GoSend API base URL
MINIO_ENDPOINT string Yes Minio server endpoint
MINIO_PORT number Yes Minio server port
MINIO_ACCESS_KEY string Yes Minio access key
MINIO_SECRET_KEY string Yes Minio secret key
EMAIL_HOST string Yes SMTP host
EMAIL_PORT number Yes SMTP port
EMAIL_USER string Yes SMTP username
EMAIL_PASSWORD string Yes SMTP password

Database Schema Overview

Key PostgreSQL Tables

  • store: Store information and settings
  • user_info: User profiles and authentication
  • product: Product catalog
  • product_variant: Product variations (size, color, etc.)
  • store_order: Order records
  • store_order_details: Line items in orders
  • cart: Shopping cart items
  • address_list: Delivery addresses
  • balance_mutation: Financial transactions
  • affiliate_account: Affiliate user accounts
  • affiliate_commissions: Commission records
  • affiliate_invitations: Referral relationships
  • review: Product reviews
  • voucher: Discount codes
  • virtual_account: Payment virtual accounts
  • xendit_invoice: Payment invoices
  • bank_info: Bank account information
  • payout_record: Payout history

Key MongoDB Collections

  • store_chat: Chat messages
  • store_chat_room: Chat room metadata
  • affiliate_category: Affiliate product categories
  • affiliate_clicks: Click tracking for affiliate links
  • affiliate_links: Generated affiliate links
  • order_info_cached: Cached order data
  • shipping_info_cached: Cached shipping calculations
  • price_info_cached: Cached price calculations

API Response Status Codes

Code Meaning Usage
200 OK Successful request
201 Created Resource created successfully
400 Bad Request Invalid request parameters
401 Unauthorized Authentication required
403 Forbidden Insufficient permissions
404 Not Found Resource not found
422 Unprocessable Entity Validation errors
500 Internal Server Error Server error
503 Service Unavailable Service temporarily unavailable