Tampilan
Konfigurasi Environment
Semua konfigurasi runtime dikendalikan lewat environment variables (tidak ada file config terpisah selain config/config.js untuk database). Template tersedia di .env.example.
Keamanan
File .env berisi secret (kredensial database, secret JWT, API key Xendit/Zoho/AWS). Jangan pernah commit .env ke git. Lihat Known Issues untuk rekomendasi secret management.
Environment & server
| Variabel | Contoh / default | Keterangan |
|---|---|---|
NODE_ENV | development / production | Mode Node.js |
ENV | local | Dipakai untuk pemilihan config DB (bukan NODE_ENV) |
PORT | 5000 | Port HTTP server |
JWT / token secret
| Variabel | Keterangan |
|---|---|
ACCESS_TOKEN_SECRET | Secret untuk access token |
REFRESH_TOKEN_SECRET | Secret untuk refresh token |
VERIFICATION_TOKEN_SECRET | Secret untuk token verifikasi email |
RESET_TOKEN_SECRET | Secret untuk token reset password |
Detail masa berlaku token ada di Ringkasan & Autentikasi API.
Database (PostgreSQL)
| Variabel | Contoh | Keterangan |
|---|---|---|
DB_DIALECT | postgres | Dialect Sequelize |
DB_HOST | Host database | |
DB_PORT | 5432 | Port (set eksplisit; default helper 3306) |
DB_DATABASE | Nama database | |
DB_USERNAME | User database | |
DB_PASSWORD | Password database | |
DATABASE_URL | Connection string (dipakai saat ENV=production, dengan SSL) | |
DB_LOGGING | false | Aktifkan logging query Sequelize |
SMTP notifikasi (nodemailer)
| Variabel | Keterangan |
|---|---|
SMTP_HOST | Host SMTP untuk email notifikasi |
SMTP_USER | User SMTP |
SMTP_PASSWORD | Password SMTP |
MAIL_EMAIL | support@aktiva.co.id |
MAIL_SUPPORT / MAIL_WEBSITE | URL support & website |
DASHBOARD_URL | URL dashboard frontend |
SENDER_EMAIL | From default email notifikasi |
SENDER_EMAIL_ACC | From untuk email accounting/invoice |
Zimbra (SOAP Admin API)
| Variabel | Keterangan |
|---|---|
SMTP_URL | Endpoint SOAP Zimbra (instance AKTIVA) |
USER_CREDENTIAL / PASSWORD_CREDENTIAL | Kredensial admin Zimbra AKTIVA |
SMTP_URL_EXC | Endpoint SOAP Zimbra (instance EXCELLENT) |
SMTP_EXC_USER_CREDENTIAL / SMTP_EXC_PASSWORD_CREDENTIAL | Kredensial admin Zimbra EXCELLENT |
Relay & DNS records (halaman setup pelanggan)
| Variabel | Contoh | Keterangan |
|---|---|---|
SMTP_RELAY_HOST | relay.aktiva.co.id | Host relay yang ditampilkan ke pelanggan |
SMTP_RELAY_PORT | 587 | Port relay |
SMTP_RELAY_SECURITY | SSL/TLS | Keamanan koneksi |
DKIM_SIGN_RECORDS | sign._domainkey | Record DKIM |
DKIM_SIGN_RECORDS_CNAME | sign.dkim.aktiva.co.id | CNAME DKIM |
SPF_RECORD / SPF_RECORD_BEFORE | Record SPF |
ZoneMTA (ZMTA)
| Variabel | Contoh | Keterangan |
|---|---|---|
ZMTA_URL | Base URL API plugin ZoneMTA (token & domain) | |
ZMTA_SEND_EMAIL_ENDPOINT | https://backend-dev.aktiva.co.id/app/v1/send | Endpoint pengiriman email yang dipakai pelanggan |
Linode Object Storage (AWS SDK)
| Variabel | Contoh | Keterangan |
|---|---|---|
ACCESS_KEY_AWS | Access key | |
SECRET_KEY_AWS | Secret key | |
REGION_AWS | ap-south-1 | Region |
Zoho Books
| Variabel | Keterangan |
|---|---|
ZOHO_CLIENT_ID2 / ZOHO_CLIENT_SECRET2 / ZOHO_REDIRECT_URL2 | Kredensial OAuth (cara baru) |
ZOHO_REFRESH_TOKEN | Refresh token OAuth |
ZOHO_CLIENT_ID / ZOHO_CLIENT_SECRET / ZOHO_EMAIL / ZOHO_PASSWORD | Kredensial cara lama (legacy) |
ZOHO_REDIRECT_URL / AUTHORIZE_ZOHO_PATH / AUTHORIZE_ZOHO_HOST | URL otorisasi |
ZOHO_ORGANIZATION_ID | Wajib — ID organisasi Zoho |
ZOHO_TAX_ID / ZOHO_CURRENCY_ID | Pajak & mata uang |
ZOHO_ESTIMATE_TEMPLATE_ID / ZOHO_INVOICE_TEMPLATE_ID | Template dokumen |
ZOHO_PAYMENT_ACCOUNT_ID | Akun pembayaran |
Xendit
| Variabel | Keterangan |
|---|---|
SECRET_KEY_XENDIT | Secret key API Xendit |
CALLBACK_TOKEN_XENDIT | Token verifikasi callback (header x-callback-token) |
Elasticsearch
| Variabel | Contoh | Keterangan |
|---|---|---|
ES_ENABLE | true | Aktifkan integrasi ES |
ES_PROTOCOL | http | Protokol |
ES_HOST / ES_PORT | Host & port | |
ES_AUTH | Kredensial auth | |
ES_CLEAN_LOG_INDEX | dashboard-clean-log | Index log bersih |
ES_RAW_LOG_INDEX | dashboard-raw-log | Index log mentah |
Lain-lain
| Variabel | Contoh | Keterangan |
|---|---|---|
PACKAGE_SIZE_MULTIPLIER | 1447489.4 | Multiplier ukuran paket untuk perhitungan paket pelanggan |
Variabel tambahan
Beberapa variabel dipakai di kode namun tidak tercantum di .env.example, antara lain: INTERNAL_API_KEY (auth endpoint internal), SPARKPOST_WEBHOOK_USER / SPARKPOST_WEBHOOK_PASS (basic auth webhook SparkPost), dan kredensial MailWizz/AMC (AMC_BASE_URL, dll.). Periksa kode helper terkait saat menyiapkan environment.