Tampilan
Endpoint Billing & Domain
Legenda: auth = JWT, accounting = RBAC role, upload = file upload.
/api/v1/billings — routes/billingRoutes.js
| Method | Path | Handler | Middleware |
|---|---|---|---|
| GET | /summary-package | billings.summaryPackages | auth |
| GET | /details-package | billings.detailsServicePackages | auth |
| GET | /tax-billings/all | billings.listTaxInvoice | auth |
| GET | /packages/all | billings.allPackages | — |
| POST | /checkout | billings.checkout | auth |
| POST | /checkout-register | billings.checkoutRegister | — |
| GET | /info-package | billings.infoPackage | auth |
| GET | /invoices | billings.listInvoice | auth |
| GET | /current-payment | billings.currentPayment | auth |
| POST | /checkout-check | billings.checkBeforeCheckoutServicePackages | auth |
| POST | /enable-over-quota | billings.enableOverQuota | auth |
| GET | /info-over-quota | billings.infoOverQuota | auth |
| POST | /change-payment-method | billings.changePaymentMethod | auth |
| POST | /payment-confirmation | billings.paymentConfirmation | auth, upload |
Detail proses ada di Billing & Pembayaran.
/api/v1/admins/billings — routes/billingsAdminRoutes.js
| Method | Path | Handler | Middleware |
|---|---|---|---|
| GET | /info-package | billings.infoPackageCustomerAdmin | auth |
| GET | /all-invoices | admin.getAllInvoices | auth |
| GET | /all-invoices/export-csv | admin.exportGetAllInvoices | auth |
| GET | /all-tax-invoices | admin.getAllTaxInvoices | auth |
| GET | /all-tax-invoices/export-csv | admin.exportGetAllTaxInvoices | auth |
| GET | /invoices | admin.getCompanyInvoices | auth |
| GET | /invoices/export-csv | admin.exportCompanyInvoices | auth |
| GET | /untaxed-invoices | admin.listUnTaxedInvoice | auth |
| GET | /tax-invoices | admin.getCompanyTaxInvoices | auth |
| GET | /tax-invoices/export-csv | admin.exportCompanyTaxInvoices | auth |
| POST | /tax-invoice | admin.addTaxInvoice | auth, upload |
| POST | /tax-invoice/delete | admin.deleteTaxInvoice | auth |
| GET | /summary-invoice | admin.summaryCompanyInvoices | auth |
| POST | /tax-invoice/edit | admin.editTaxInvoice | auth, upload |
| GET | /report-bill | admin.reportsBill | auth |
| POST | /create-dummy-subs | billings.createDummySubs | auth |
| POST | /resend-billing-email | admin.resendBillingEmail | auth, accounting |
| GET | /zoho/banks | admin.listAllZohoBanks | auth, accounting |
| POST | /record-manual-payment | admin.recordManualPayment | auth, accounting |
| POST | /allow-next-overquota | admin.allowNextOverQuota | auth |
| GET | /list-payments-confirmation | admin.listAllCustomerPayments | auth |
| POST | /reject-payment-confirmation | admin.rejectPaymentConfirmation | auth |
| POST | /generate-invoice | admin.generateInvoice | auth |
| POST | /activate-service | admin.activateSubscription | auth |
| POST | /extend-invoice | admin.extendInvoice | auth |
/api/v1/domains — routes/domainRoutes.js
| Method | Path | Handler | Middleware |
|---|---|---|---|
| POST | /setup | domain.setUpDomain | auth |
| POST | /check | domain.checkDomain | auth |
| POST | /add-domain | domain.addNewDomain | auth |
| POST | /change-notification | domain.changeNotification | auth |
| POST | /activation | domain.activationDomain | auth |
| GET | /list-domain | domain.listDomain | auth |
| GET | /list-active-domain | domain.getActiveDomains | auth |
| GET | /check-existed | domain.getDomain | — |
| POST | /delete | domain.deleteDomain | auth |
| POST | /callback-activate/:domainName | domain.callbackActivedDomain | — |
/api/v1/zimbras — routes/zimbraRoutes.js
| Method | Path | Handler | Middleware |
|---|---|---|---|
| POST | /login | zimbra.loginAdminZimbra | — |
| POST | /modify | zimbra.modifyAccountZimbra | — |
| POST | /create/ | zimbra.createAccountZimbra | — |
| POST | /delete/ | zimbra.deleteAccountZimbra | — |
Route Zimbra tanpa auth
Endpoint /api/v1/zimbras/* tidak memakai middleware auth. Perlakukan sebagai internal/trusted-only dan batasi aksesnya di level jaringan/proxy. Lihat Known Issues.