The tenancy contract is generated from the record, signed by lessor and tenant, and kept with the Ejari number and certificate on the same unit. A contract signed on paper elsewhere can be uploaded instead, and from then on the uploaded file is the contract.

Onboarding ends in a generated tenancy contract: the parties, the unit, the lease dates, the rent, the deposit and the payment frequency come from the record rather than from a template somebody filled in by hand. Addendum clauses are configured once in settings and carried onto each contract.

The lessor signs on the contract preview with a drawn signature, and the tenant signs from their own portal on a phone. Each signature stamps its own timestamp, and the tenant's signature status moves from pending to signed. Placement on the page is calibrated once in settings, so signatures land where they belong on every contract afterwards.

Registration happens with the authority, outside this product. The certificate and the Ejari number are stored on the contract they belong to — uploaded, replaced or removed from the contract's own card, and opened through a signed link that expires. Removing the file deliberately leaves the number behind, because the number is the record and the file is a copy of it.

A renewal opens pre-filled from the current contract, writes a new one carrying the previous contract's id, and marks the old contract expired rather than overwriting it. The new contract starts with its Ejari status pending and its tenant signature pending, because both are genuinely outstanding again.

No. Registration stays with the authority. What lives here is the Ejari number and the certificate, stored on the contract beside the tenancy agreement, so the whole file sits with the unit.
The demo opens instantly, in the role this workflow belongs to, on sample data. There is no account to create and no form in front of it.