Skip to content

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

VariabelContoh / defaultKeterangan
NODE_ENVdevelopment / productionMode Node.js
ENVlocalDipakai untuk pemilihan config DB (bukan NODE_ENV)
PORT5000Port HTTP server

JWT / token secret

VariabelKeterangan
ACCESS_TOKEN_SECRETSecret untuk access token
REFRESH_TOKEN_SECRETSecret untuk refresh token
VERIFICATION_TOKEN_SECRETSecret untuk token verifikasi email
RESET_TOKEN_SECRETSecret untuk token reset password

Detail masa berlaku token ada di Ringkasan & Autentikasi API.

Database (PostgreSQL)

VariabelContohKeterangan
DB_DIALECTpostgresDialect Sequelize
DB_HOSTHost database
DB_PORT5432Port (set eksplisit; default helper 3306)
DB_DATABASENama database
DB_USERNAMEUser database
DB_PASSWORDPassword database
DATABASE_URLConnection string (dipakai saat ENV=production, dengan SSL)
DB_LOGGINGfalseAktifkan logging query Sequelize

SMTP notifikasi (nodemailer)

VariabelKeterangan
SMTP_HOSTHost SMTP untuk email notifikasi
SMTP_USERUser SMTP
SMTP_PASSWORDPassword SMTP
MAIL_EMAILsupport@aktiva.co.id
MAIL_SUPPORT / MAIL_WEBSITEURL support & website
DASHBOARD_URLURL dashboard frontend
SENDER_EMAILFrom default email notifikasi
SENDER_EMAIL_ACCFrom untuk email accounting/invoice

Zimbra (SOAP Admin API)

VariabelKeterangan
SMTP_URLEndpoint SOAP Zimbra (instance AKTIVA)
USER_CREDENTIAL / PASSWORD_CREDENTIALKredensial admin Zimbra AKTIVA
SMTP_URL_EXCEndpoint SOAP Zimbra (instance EXCELLENT)
SMTP_EXC_USER_CREDENTIAL / SMTP_EXC_PASSWORD_CREDENTIALKredensial admin Zimbra EXCELLENT

Relay & DNS records (halaman setup pelanggan)

VariabelContohKeterangan
SMTP_RELAY_HOSTrelay.aktiva.co.idHost relay yang ditampilkan ke pelanggan
SMTP_RELAY_PORT587Port relay
SMTP_RELAY_SECURITYSSL/TLSKeamanan koneksi
DKIM_SIGN_RECORDSsign._domainkeyRecord DKIM
DKIM_SIGN_RECORDS_CNAMEsign.dkim.aktiva.co.idCNAME DKIM
SPF_RECORD / SPF_RECORD_BEFORERecord SPF

ZoneMTA (ZMTA)

VariabelContohKeterangan
ZMTA_URLBase URL API plugin ZoneMTA (token & domain)
ZMTA_SEND_EMAIL_ENDPOINThttps://backend-dev.aktiva.co.id/app/v1/sendEndpoint pengiriman email yang dipakai pelanggan

Linode Object Storage (AWS SDK)

VariabelContohKeterangan
ACCESS_KEY_AWSAccess key
SECRET_KEY_AWSSecret key
REGION_AWSap-south-1Region

Zoho Books

VariabelKeterangan
ZOHO_CLIENT_ID2 / ZOHO_CLIENT_SECRET2 / ZOHO_REDIRECT_URL2Kredensial OAuth (cara baru)
ZOHO_REFRESH_TOKENRefresh token OAuth
ZOHO_CLIENT_ID / ZOHO_CLIENT_SECRET / ZOHO_EMAIL / ZOHO_PASSWORDKredensial cara lama (legacy)
ZOHO_REDIRECT_URL / AUTHORIZE_ZOHO_PATH / AUTHORIZE_ZOHO_HOSTURL otorisasi
ZOHO_ORGANIZATION_IDWajib — ID organisasi Zoho
ZOHO_TAX_ID / ZOHO_CURRENCY_IDPajak & mata uang
ZOHO_ESTIMATE_TEMPLATE_ID / ZOHO_INVOICE_TEMPLATE_IDTemplate dokumen
ZOHO_PAYMENT_ACCOUNT_IDAkun pembayaran

Xendit

VariabelKeterangan
SECRET_KEY_XENDITSecret key API Xendit
CALLBACK_TOKEN_XENDITToken verifikasi callback (header x-callback-token)

Elasticsearch

VariabelContohKeterangan
ES_ENABLEtrueAktifkan integrasi ES
ES_PROTOCOLhttpProtokol
ES_HOST / ES_PORTHost & port
ES_AUTHKredensial auth
ES_CLEAN_LOG_INDEXdashboard-clean-logIndex log bersih
ES_RAW_LOG_INDEXdashboard-raw-logIndex log mentah

Lain-lain

VariabelContohKeterangan
PACKAGE_SIZE_MULTIPLIER1447489.4Multiplier 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.