- Lengkapi nama aplikasi, identitas perusahaan, logo/favikon, alamat, zona waktu Asia/Jakarta, mata uang, pajak, dan identitas dokumen.
- Buat role dan permission sesuai fungsi kerja. Aktifkan 2FA dan tentukan apakah opsional atau wajib per kebijakan.
- Siapkan perusahaan, divisi, jabatan, rekening, NPWP/NITKU, customer, vendor/supplier, layanan, shift, dan perangkat RFID yang dibutuhkan.
- Konfigurasikan SMTP, sender/reply-to, template email, PDF, payment provider, serta worker/cron sebelum go-live.
Mulai dari tujuan kerja, bukan dari menebak menu.
Setiap panduan menunjukkan role, flow, langkah penting, dan output yang seharusnya tersedia. Bila output belum ada, jangan paksa lanjut ke tahap berikutnya.
- Pastikan customer tidak terduplikasi dan PIC memiliki kontak yang dapat digunakan untuk email transaksi.
- Catat kebutuhan dan aktivitas penting agar quotation/proyek berikutnya memakai konteks yang sama.
- Gunakan layanan dari master aktif agar perubahan data sumber dapat dikontrol dan tidak mengambil record lama yang tidak relevan.
- Buat quotation dari customer dan layanan yang benar. Sistem menjaga nomor quotation tetap unik ketika dokumen diedit.
- Pilih Full Payment, DP, atau termin. Persentase dan nominal harus berasal dari grand total transaksi.
- Setelah quotation disetujui, buat invoice dari sumber yang sama agar item, pajak, diskon, dan identitas perusahaan konsisten.
- Konfirmasi pembayaran hanya boleh mengubah status setelah nominal, referensi, scope, dan metode tervalidasi.
- Mulai proyek dari transaksi yang sah agar kode proyek dan Tracking ID dibentuk dari record yang benar.
- Assign anggota tim yang benar; task dan work report ditulis dari detail proyek agar nama tim tidak jatuh ke user default.
- Publikasikan progres dan foto yang memang boleh dilihat customer. Total progress keseluruhan tidak boleh melampaui 100%.
- Saat selesai, terbitkan BAST/hasil akhir dan pertahankan Tracking ID agar riwayat tetap dapat dilihat tanpa login.
- Lengkapi divisi, jabatan, rekening, RFID, pola shift, gaji pokok, dan status user karyawan.
- Gunakan preset non-shift, 2 shift, 3 shift, atau custom termasuk jadwal yang melewati tengah malam.
- RFID dan input web harus menulis ke sumber attendance yang sama; auto checkout diberi penanda sumber otomatis.
- Izin, sakit, cuti, lembur, dan reimburse mengikuti pengajuan → review → approve/reject sebelum menjadi komponen payroll.
- Pilih periode dan pastikan attendance/leave/overtime yang relevan sudah final.
- Periksa komponen penghasilan dan potongan sebelum finalisasi. Hindari perubahan sumber setelah payroll ditandai final.
- Saat dibayar, mutasi keuangan mengikuti rekening yang dipilih dan slip PDF disimpan sebagai dokumen resmi.
- Verifikasi NPWP/NITKU, status PKP, KPP, PIC, penandatangan, dan sertifikat sebelum transaksi pajak dicatat.
- Catat register PPN/PPh, Faktur, e-Bupot, SPT, kode billing, periode, status, dan dokumen pendukung.
- One Gate System menyiapkan kontrol internal; pelaporan resmi tetap dilakukan melalui Coretax DJP oleh pihak berwenang.
- Setiap mutasi harus menunjuk sumber transaksi dan rekening perusahaan yang benar.
- Cash In tidak boleh melampaui nilai transaksi sumber. Cash Out mengikuti payroll, vendor, reimburse, debt, atau kebutuhan umum yang sah.
- Gunakan rekonsiliasi untuk membandingkan status transaksi, settlement provider, dan saldo yang terbentuk dari ledger.
- Master vendor memuat identitas legal, pajak, rekening, termin, kategori, dan dokumen pendukung.
- Rules PO menentukan batas nominal, minimal pembanding, kontrak, budget check, receiving, dan kewajiban approval.
- Finance membayar setelah PO, receiving, dan invoice vendor cocok atau discrepancy telah diselesaikan.
- Invoice, quotation, BAST, PO, payroll, laporan progres, dan konfirmasi memakai template transaksi yang konsisten.
- PDF resmi disimpan sebagai file fisik dan metadata arsip sebelum worker email mengirim lampiran yang sama.
- Jika generator gagal, email wajib lampiran tidak boleh dianggap berhasil; failure dicatat dan dapat di-retry.
- company_id=0 hanya untuk Agent/YTech billing. Gateway tenant harus memakai credential dan rekening settlement milik perusahaan tenant terkait.
- Midtrans dan Duitku menggunakan hosted checkout/provider flow. Visa/Mastercard harus melalui tokenization/hosted checkout; sistem tidak menyimpan PAN penuh, CVV, PIN, atau OTP.
- Direct Bank/Debit memerlukan kontrak API bank/acquirer, HTTPS endpoint, signing/API key, callback secret, channel, dan settlement account.
- Status paid hanya diterima setelah signature, nominal, external reference, scope, rekening tujuan, dan idempotency tervalidasi di server.
- Pilih proses dan sector workflow yang ingin dikontrol, lalu tentukan urutan step serta role/user approver.
- Tambahkan nominal threshold, kondisi, SLA, delegation, dan jalur revisi bila dibutuhkan.
- Uji dengan user non-Super Admin untuk memastikan mereka dapat menyetujui sesuai kewenangan tetapi tidak dapat mengubah definisi workflow.
- Akun publik tidak langsung aktif. Data identitas dan kebutuhan harus direview terlebih dahulu.
- Approval menentukan tenant, role, entitlement, dan status akses. Penolakan menyimpan alasan yang layak dikomunikasikan.
- Email konfirmasi mengikuti hasil review agar pengguna mengetahui next step tanpa membuka detail internal.
- Gunakan monitoring untuk menelusuri siapa, kapan, IP/perangkat, halaman, dan transaksi yang terlibat.
- Email center menampilkan status antrean, retry, attachment, dan failure reason tanpa menampilkan secret.
- Reviewer/Tester dapat memeriksa data sesuai kebijakan tetapi tidak mengubah pengaturan yang dibatasi.
- Ceritakan tujuan dengan bahasa biasa; Yura menormalisasi bentuk singkat seperti gmn, brp, yg, udh, blm, klo, tpi, knp, projek, tagihan, dan penawaran.
- Untuk rekomendasi paket/workflow/implementasi, Yura melakukan discovery singkat 1–3 pertanyaan sebelum rekomendasi final. Pertanyaan faktual seperti harga tetap dijawab langsung.
- Untuk error, Yura mengarahkan pemeriksaan data/status → role/permission → dependency → PDF/email/payment → log → support.
- Gunakan jumlah user, modul wajib, finance/payroll/procurement/payment, workflow, API/audit, storage, dan deployment sebagai dasar pilihan.
- Rekomendasi tidak otomatis mendorong paket tertinggi. Trial 30 hari digunakan untuk menguji entitlement nyata sebelum aktivasi bila tersedia.
- Kebutuhan custom module/workflow, dedicated integration, custom limit, atau deployment khusus diarahkan ke Custom setelah discovery.
Setup payment dimulai dari scope dan settlement.
V17 memisahkan billing pusat YTech dari gateway tenant. Semua provider mengikuti prinsip fail-closed: bila konfigurasi belum siap, halaman menampilkan Maintenance—bukan Whoops dan bukan checkout setengah aktif.
YTech company_id=0 atau tenant yang benar. Tidak ada fallback credential lintas tenant.
Pilih rekening aktif pada scope yang sama sebelum provider diaktifkan.
Secret disimpan terenkripsi dan tidak ditampilkan kembali setelah disimpan.
Server memvalidasi signature, nominal, reference, destination, scope, dan idempotency.
Midtrans
- Environment: Sandbox → Production
- Settlement account wajib
- Client Key + Server Key
- Channel aktif sesuai merchant
- Webhook:
/api/payment/webhook/midtrans
Duitku
- Merchant Code
- API Key + Project/Client Key
- Settlement account wajib
- Payment method diperiksa dari merchant project
- Webhook:
/api/payment/webhook/duitku
Direct Bank / Debit
- API Base URL HTTPS
- Checkout Path + Status Path
- Signing/API Key + Callback Secret
- Bank/Acquirer Code + Channel
- Webhook:
/api/payment/webhook/direct_bank
Tampilan ini benar bila rekening tujuan, credential, channel, endpoint, atau callback belum lengkap. Lengkapi konfigurasi lalu jalankan readiness test; jangan mengganti dengan credential global yang bukan milik scope tersebut.
Tutorial operasional yang langsung bisa diikuti.
Tutorial ini menggabungkan urutan menu, validasi, dan hasil yang harus terlihat agar proses tidak berhenti di tengah.
Go-Live Checklist Pertama
Urutan yang disarankan agar operator tidak memulai transaksi ketika fondasi belum siap.
- Login sebagai Super Admin dan selesaikan identitas aplikasi/perusahaan.
- Buat role/permission dan aktifkan kebijakan 2FA.
- Lengkapi rekening, customer, vendor, layanan, shift, karyawan, dan data pajak.
- Tes SMTP + PDF menggunakan transaksi dummy internal.
- Tes quotation → invoice → payment → project → BAST dan satu workflow approval.
- Backup database lalu catat konfigurasi production yang telah diverifikasi.
Setup Payment Gateway Sampai Siap Production
Gunakan Payment Control Center. Jangan mulai dari checkout; mulai dari scope, settlement, credential, channel, lalu callback.
- Pilih scope: YTech Global/Agent Billing (company_id=0) atau perusahaan tenant tertentu.
- Pilih provider Midtrans Snap, Duitku POP, atau Direct Bank/Debit.
- Tentukan environment Sandbox/Testing terlebih dahulu dan pilih rekening settlement yang aktif pada scope yang sama.
- Isi Merchant Code/ID bila diperlukan, lalu simpan Client/Project Key, Server/API/Signing Key, dan Callback Secret pada area credential terenkripsi.
- Untuk Direct Bank isi API Base URL HTTPS, Checkout Path, Status Path, Bank/Acquirer Code, channel, dan maintenance message.
- Aktifkan channel yang memang tersedia, jalankan tombol Periksa/Test, lalu lakukan transaksi sandbox end-to-end.
- Arahkan callback provider ke /api/payment/webhook/{provider}; status paid harus dibuktikan oleh callback/status server, bukan return URL browser.
- Setelah UAT berhasil, baru ubah ke Production dan ulangi readiness check. Jika konfigurasi tidak lengkap, biarkan Maintenance mode aktif.
Setup SMTP, PDF & Email Automation
Email dianggap siap bila lampiran resmi sudah terbentuk dan retry dapat ditelusuri.
- Isi host, port, encryption, username/password, sender no-reply, dan reply-to pada pengaturan aplikasi.
- Simpan template untuk registrasi, approval/rejection, quotation, invoice, payment, project progress, reset password, dan payroll.
- Generate PDF transaksi dan pastikan file dapat dibuka sebelum menguji email.
- Kirim email test, cek Email Center/queue, attachment verification, sent status, serta failure reason.
- Aktifkan worker/cron dan uji retry dengan satu failure yang disengaja pada environment testing.
Membuat Approval Workflow yang Aman
Mulai dari trigger dan output bisnis, bukan dari jumlah step.
- Pilih proses yang membutuhkan kontrol: quotation, PO, payroll, reimbursement, atau proses custom yang terhubung.
- Definisikan trigger, approver, threshold nominal, kondisi, SLA, delegation, dan jalur reject/revisi.
- Pastikan role approver memiliki permission melakukan keputusan tetapi tidak mengubah workflow definition.
- Uji approve, reject, timeout/SLA, dan audit trail sebelum workflow menjadi default sektor.
Kalau proses gagal, cek dari sumber masalah yang paling aman.
Jangan langsung mengubah database atau credential. Gunakan urutan validasi data/status → akses → dependency → log → recovery.
01Dokumentasi tidak bisa dibuka
Buka /documentation/status. Jika status OK tetapi halaman gagal, cek cache PHP/opcache dan file view/CSS deployment. Dokumentasi V19.0.0 memiliki fail-safe view sehingga generic Whoops tidak boleh muncul.
02Dropdown layanan masih menampilkan data lama
Pastikan record layanan aktif yang benar digunakan, tidak ada cache option lama, dan form mengambil master terbaru. Coba hard reload lalu cek source ID yang tersimpan pada quotation/invoice.
03Edit quotation menolak nomor unique
Saat edit, validasi unique harus mengabaikan record quotation yang sedang diedit. Jangan membuat nomor baru kecuali reissue memang diminta.
04SMTP gagal / email tidak terkirim
Periksa host/port/encryption, credential, sender domain, writable queue, worker/cron, dan Email Center. Untuk email wajib PDF, cek PDF sudah tersimpan sebelum queue dijalankan.
05PDF tidak terlampir
Cek generated document/archive, permission folder writable, dan generator view. Sistem harus membuat ulang dari transaksi sumber bila arsip resmi belum tersedia.
06Payment tampil Maintenance
Ini perilaku aman. Lengkapi scope, settlement, credential, channel, endpoint HTTPS/callback bila diperlukan, kemudian jalankan readiness test. Jangan menonaktifkan fail-closed dengan fallback credential lain.
07Callback masuk tetapi invoice belum paid
Periksa external ID/order ID, nominal, provider, company scope, rekening tujuan, signature/callback token, dan idempotency. Return URL browser bukan bukti pembayaran.
08RFID tidak mengirim absensi
Cek device online, endpoint/API key perangkat bila dipakai, konektivitas jaringan, mapping RFID ke karyawan, jam server Asia/Jakarta, dan log request terakhir. Restart perangkat hanya setelah mapping diperiksa.
09Animasi berhenti di Windows/browser tertentu
Lakukan hard refresh, pastikan public-experience-v16.js termuat, dan cek reduced-motion browser/OS. V19 menggunakan visibility/pageshow recovery agar animasi dapat restart setelah tab kembali aktif.
Tidak tahu nama modul? Ceritakan hasil yang Anda inginkan.
Yura memahami input formal maupun informal, singkatan dan typo ringan. Untuk rekomendasi paket atau workflow, Yura melakukan Q&A singkat dulu agar tidak langsung mendorong solusi yang terlalu besar.
Pertanyaan yang sering muncul sebelum go-live.
Apakah ID/EN hanya mengubah navbar?
Tidak. V19.0.0 menggunakan bahasa publik yang sama untuk navbar, halaman, footer, chart/demo dinamis, dan Yura. Pergantian bahasa memuat ulang halaman dengan parameter lang agar seluruh surface konsisten.
Apakah Yura langsung merekomendasikan paket?
Tidak untuk kebutuhan yang membutuhkan keputusan. Yura melakukan Q&A singkat lebih dulu mengenai jumlah user, modul wajib, integrasi, workflow, payment/audit, dan deployment. Pertanyaan harga faktual tetap dijawab langsung.
Apa perbedaan Agent/YTech Payment dan Tenant Payment?
Agent/YTech Payment memakai scope pusat company_id=0 untuk billing subscription/lisensi kepada tenant. Tenant Payment menerima pembayaran transaksi bisnis perusahaan tenant dengan credential dan settlement milik tenant tersebut.
Apakah data kartu disimpan One Gate System?
Tidak. Kartu Visa/Mastercard diarahkan melalui hosted checkout/tokenization provider/acquirer. PIN, OTP, CVV, dan raw card data tidak disimpan aplikasi.
Apakah dokumentasi membutuhkan login?
Tidak. Documentation Center bersifat publik dan memiliki fail-safe agar panduan inti tetap dapat dibuka meskipun dependency opsional sedang bermasalah.