Tanda tangan yang dibayar rute untuk keluar setelah log masuk
Setelah sukses auth (manual atau auto-login), konsumsi apex-domain SP _ checkout _ plan cookie ditinggalkan oleh kamo- register dan mengarahkan pembeli ke brand...
Rencana dari mendaftar ke checkout
Ketika anggota mendaftar berasal dari CTA yang dibayar (? Rencana = pro = 124; bisnis), drop a apex-domain sp _ checkout _ plan cookie pada penyelesaian. kamo- ...
Kawat-auth rahasia dari * * *
ESigService kini memvalidasi X-Internall-Auth terhadap rahasia bersama yang sama APIService mempersembahkan * * * * * * * * * * * * * * * dari * * * rahasia k8)...
Bangun ulang untuk kamo- shared-library update (esign signaner email templates)
Ambil contoh Canonical yang baru esig.signer _ verification + esign.signer _ invite sehingga SeedForOrg dapat benih mereka pada pengiriman pertama.
Templat tanda tangan Canonical e- tanda (verifikasi + undangan)
Tambahkan dua platform-wide canonical contoh email yang mendidih lazily per org: - emsign.signer _ verification (step-up OTP: {{code}}, {name}) - emsign.signer ...
Register esign repositori untuk kacang pengiriman meter
EsignMeterSubMission Service membutuhkan EsignUgeels Repositori, tapi @ EnableJpaRepositories tidak memindai com.kamo.z.shared.esign.repos, sehingga konteks gag...
Tanda tangan penggunaan metering + konsumen-melayani checkout
# 4 meter: - EsignMeterSubMission Service (@ Scheduled Daily): kumpulkan APl- asal Menghapus Records per org + periode; pertama 40 / periode disertakan, sisanya...
Ekspose API _ SIGNATURE (lingkup kunci E-Signature API)
Tambahkan lingkup API E- Signature ke manajer tombol org API- sehingga staf dapat memberikan Perusahaan program akses e- sign. Penggunaan di luar yang disertaka...
Program publik e- tandai gateway API (lingkup API _ SIGNATURE)
Tambah / api / public / esign / * * to PublicAPiController: memvalidasi kunci org API, membutuhkan lingkup API _ SIGNATURE, rate- batas, dan ke depan ke ESigSer...
Internal programmatic amplop API (asal = API) untuk Bisnis
- EsignInternall Controller (/ api / esig / internal / *): X-Internall-Auth + X-Organs-Id Ditulis, dipanggil oleh APIService setelah itu memvalidasi kunci API _...
API _ SIGNATURE api- key scope + EsignGenericEnvelope.earth
Addititif, tidak ada benjolan versi: ApiKeyScopea.PI _ SIGNATURE - aktifkan aplikasi e- signature API (Business) - EsignGenericEnvelope.earth (EsignUAngeOrigin,...
Status send- for- signature + amplop dalam penyunting dokumen
Tambahkan tombol 'Kirim untuk tanda tangan' ke kepala penyunting template yang membuka dialog untuk mengirim dokumen ke penerima dan melacak status penandatanga...
Amplop generik buat / kirim mesin (sisi pengirim)
Tambahkan aplikasi internal API kamo- yang ditulis / api / esig / amplop untuk dikirim dokumen untuk tanda tangan, menggunakan kembali shared-lib yang sama enti...
Mesin API penandatanganan publik untuk sign.sign.pink
Implement the / api / esig / public / * signing API the kamo- signer app calls, mengubah sinyal hidup dari preview- stub menjadi backend bekerja. - validate (p...
Kembali ke ditambahkan-pada harga dengan Meter Billing
Stripe (> = 2025-03-31.basil) menolak penggunaan warisan _ type + kumpulan _ use model metered ('metered prises must be backed by meter'), so USAGE _ BASED add-...
Peron produk menjungkitkan dalam tab Organisasi
Permukaan platform-produk panggilan di mana itu milik-Platform Organisasi. Tambahkan Switch bergated per org (dinonaktifkan untuk Top-level org), dialog konfirm...
Kelola Organisasi. Adalah PlatformProduct dari Platform ÁOrgs
PlatformAccountSummary expose isPlatformProduct + Hassubscription Pasar; baru PUT * * * * * * * * * * * * * (Platform-admin) set flag dan invalidates anggota or...
Explisit Organzation.IsPlatformProduct sebagai sinyal hak-root
Ganti turunan 'memiliki sebuah pasar SUBSCRIPSI' heuristik dengan eksplisit, admin- set tanda kepemilikan. Produk platform (misalnya sign.pink) adalah label put...
Pilih pasar SUBSCRIPSI untuk penataan platform
KamoCRM memiliki beberapa pasar Jadi... restolveProductMarket harus memilih tipe SUBSCRIPTION- (platform untuk akses) pasar daripada yang pertama aktif. Keeps t...
Akar produksi = memiliki pasar SUBSCRIPSI, bukan pasar apapun
Seorang pelanggan org (misalnya BluEleven) memiliki pasar bisnis sendiri (RETAIL / MORTGAGE) untuk menjalankan perusahaannya sementara tersisa pelanggan platfor...
Anggota Scope berhak untuk akar produk, bukan KamoCRM
Layanan Entitlement sekarang menyelesaikan akar hak setiap anggota melalui Entitlement RootResolver (pasar terdekat - memiliki leluhur - atau -self) daripada be...
Resolve berhak oleh product-root org, bukan platform Top-level
Memperkenalkan Entitlement RootResver: pasar terdekat - memiliki leluhur-atau-diri dari org (akar produknya), jatuh kembali ke platform top-level. Ini departies...
Pertahankan daftar org pada daftar refetch latar belakang; panggilan sesi dedupe
/ jaringan kembali memecat fetchNetworks pada setiap sesi latar belakang menyegarkan dan menyembunyikan seluruh daftar pada setiap kesalahan pengambilan, sehing...
Tambahkan penerima amplop, nilai ruas, entitas status penerima
Periksa pada model in- progress esign: EsignEnvelopeRecipient (+ repo), Esigning FieldValue (+ repo), EsignRecipientStatus, dan pemutakhiran EjigsignerType. Add...
Tambah EsignUadgeRecord untuk penguraian penggunaan per-signature
Tambahan baru - hanya penggunaan entitas (mirror AiUgageRecord) dipancarkan di tanda-tangan Selesai. Hanya APl-earths tanda-tangan terhadap sebuah rencana yang ...
Revert sambungan email click penangan, mengisolasi penyebab
Pengguna melaporkan klik link email-preview masih tidak melakukan apa-apa DAN teks Seleksi tewas setengah diseret. Benar-klik dan melayang baik pekerjaan, sehin...
Pertahankan rasio aspek, jangan pernah peregangan bukan-persegi logo
Frame PNG / ICO dibuat dengan keep AspectRasio (salah), peregangan logo non-square menjadi persegi terdistorsi. Center- cocok dengan logo pada Kanvas persegi tr...
Regenerasi favicons pada labeling save; mengendus tipe logo sebenarnya
provisionUpdate (jalankan setiap gubahan-labelling save) write config / css / manifest tetapi tidak pernah diregenerasi favicon - mereka hanya diproduksi oleh p...
Benih globals.css dari template ketika folder org kurang itu
provisionUpdate (jalankan setiap menyimpan warna) menulis ulang css / globals.css org di tempat, tetapi objek yang hanya ada sekali penyediaan Penuh telah disal...
Tampilkan logo lengkap dengan ekstensi sebenarnya, bukan hardcode .svg
Tab branding dibangun logoFullUrl sebagai logo-full.svg di mount, mengabaikan org 's logoFullExt. Logo penuh diunggah sebagai png / jpg / etc. hidup di logo- pe...
Segarkan TLSStore setiap loop sehingga baru-dikeluarkan certs mendapatkan dilayani
update _ tls _ store () hanya dijalankan pada startup dan pada shared- storage impor, jadi cert segar dikeluarkan oleh cert-manager (HTTP-01) adalah Siap dengan...
Berikan redirect-only rute backend sehingga Traefik v3 memfungsikannya
Traefik v3 menonaktifkan Router Rute Ingressdengan layanan: [] ketika allowEmptyServices is off (as it is here), so the domain- agnostic HTTP - > HTTPS redirect...
Redirect semua host HTTP ke HTTPS + gate auto-cert ke domain org sebenarnya
Domain org gubahan (misalnya login.sign.pink) mengembalikan telanjang Traefik 's "laman 404 tidak ditemukan" melalui plain HTTP: satu-satunya port -80 redirect ...
Pre- benih sign.pink + www.sign.pink dalam STATIC _ DOMAINS
sign.pink adalah domain apex baru (consumer e- signature brand / white- label Kamo penyewa org). Pre-seed apex + www so a Let 's Encrypt cert ada sebelum lalu l...
Persist konversi _ error daripada gagal diam-diam
Baik template dan upload pipa konversi reguler menelan Docs konversi gagal (hanya login), meninggalkan adalah _ konversi = false tanpa direkam alasan - sehingga...
Full- lebar perusahaan menulis ulang dengan pratinjau hidup
LoanProductForm adalah kolom sempit tunggal (maxLebar: 880) dengan hardcode Inggris di mana-mana. Sekarang menggunakan pola perusahaan yang sama seperti halaman...
Tata letak dua kolom dengan panel pratinjau hidup
Halaman tawaran baru adalah kolom sempit tinggi di layar lebar - terbuang setengah viewport. Sekarang menggunakan CSS Grid dengan bentuk di sebelah kiri (5fr) d...
Desain ulang halaman baru-menawarkan sebagai dua kolom area kerja + live preview
Anda meminta real estate penuh, modern, dipoles - refactor terakhir menempatkan kolom tunggal dalam shell full- lebar, yang persis luas setengah dari... dari......
Halaman tawaran baru Polandia - negara kosong, lencana LOC, istilah gubahan
Tiga jeda UX yang ditawarkan setelah refactor sebelumnya: Keadaan kosong. Ketika pasar tidak memiliki Loan Products belum, dropdown digunakan untuk diam-diam m...
Ubah nama LoanRepositori Pecinta Pribadi
Spring Data JPA mewarisi nama kacang repositori dari antar muka nama kelas sederhana, bukan dari @ Repositori ("...) nilai kualifikasi, jadi Pemeriksaan sebelum...
Tambah / perdagangan / personal- pinjaman / entri baru + pasar semir-scoped menawarkan halaman
Aksi QuickActionsBar "New Loan Offer" menunjuk pada / commerce / personal- pinjaman / baru tetapi tidak ada halaman tersebut ada, sehingga Next.js diarahkan ke ...
Full-width company polish across 10 pages
Adopsi pola perusahaan modern (gradien header + remah roti + panah belakang + full-height flex shell + card-dikelompokkan isi pada abu-abu cahaya kanvas) diguna...
Trigger membangun kembali untuk mengambil nama baru entitas PersonalLoan
Gambar SecurityService di 761019b dibangun sebelum shared -lib d14dc54 (yang mengubah nama pribadi pinjaman entitas Pinjaman ke nama JPA "PersonalLoan" untuk me...
Expose PERSONAL _ LOANS in commerce- type & engagement pickers
Tambahkan PERSONAL _ LOANS ke daftar Commerce _ TYPES dan Engagement Type sehingga baru KAMOLOS personal- pinjaman pasar dapat dibuat dari pasar / baru dan Pasa...
Hindari tabrakan Loan / LoanRepositori dengan aplikasi hipotek
Layanan KamoInitializerService gagal boot karena dua kelas @ Entitas bernama 'Loan' dan dua kelas repositori bernama 'LoanRepositori' keduanya ingin mendaftarka...
T6 + T7 frontend polish + org laporan + auto-pay UI
Frontend polish (T6): - New lib / format.ts: lokal -aware pembantu Intl - format Mata uang / format Tanggal / format Tanggal / format PercentBps. Mengganti kode...
LoanChargeOffReasonCode (IRS 1099- C box 6) + audit search
- New LoanChargeOffReasonCode enum (A _ BANKRUPTCY.. H _ LAIN) per IRC 6050P - Kolom Loan.chargeOffReasonCode - * * * * * * * * * * * * * multi- filter @ Query ...
*
Digunakan oleh * * * * * * * * * * * * * * untuk mengaktifkan kembali ada yang ada PASSED plan daripada membuat baris duplikat bahwa anak yatim yang pause.
/api/los proxy HMAC-signs identity headers
When LOS_PROXY_HMAC_SECRET env var is set, the proxy now computes **************** secret) and sends X-Proxy-Signature + X-Proxy-Timestamp alongside the X-Org-I...
Kueri repo berpage + countByStatus untuk jalur panas
- LoanRepositori: countByStatus / countByOrganization AndStatus + Halaman < Loan > findByStatus (...) / * * * * * * * * * * * * * * * * * * * * * * * * * * * * ...