Lifecycle orchestrator · for CRM vendors and platforms

Ravel runs the lifecycle, inside the law

Ravel runs the rental and sale lifecycles of Dutch residential housing, from the mandate to the end of the tenancy or the transfer at the notary. Each lifecycle is a set of process models and decision tables bound to the law that governs it, and every act is appended to a record that cannot be quietly edited.

  1. Host system
    Your CRM or platform
    keeps the client relationship and the data
  2. Orchestrator
    Ravel
    runs each step as a model and records every act
  3. Issuer
    Tacit
    decides, seals and signs, over a versioned contract
For CRM vendors and platforms

Alongside your system, or as the platform

Ravel is complete enough to be either, and neither is an upgrade on the other.

  • AlongsideRavel runs inside the CRM you already sell. Your system keeps the client relationship and the data; Ravel runs the lawful rental and sale lifecycles over it and hands back the record. Nothing migrates.
  • InsteadRavel becomes the platform itself: agencies run their rentals and sales on Ravel directly, with no second system beside it.
  • Coupled only through published contractsRavel reaches the issuer and the catalogue over versioned contracts, never by sharing code or a database.
  • The models you read are the models that runThe lifecycle is BPMN process models and DMN decision tables, openable in any conformant modeller.
Specifications Ravel uses
  • BPMN 2.0the lifecycle as process models
  • DMNthe rules as decision tables
  • RFC 9162a signed log that can only grow
  • ES256signatures, a published verification key
What Ravel runs

Two lifecycles, renting and selling

Rental

  1. Mandate
  2. Listing
  3. Candidates
  4. Viewings
  5. Selection
  6. Conclusion
  7. Relationship end

The landlord's mandate is signed on both legs before anything is marketed. The requirement a candidate must meet is published before anyone is judged against it, and when someone is held back, the requirement applied is recorded. The award needs a second pair of eyes, and ending the tenancy withdraws the marketing that started it.

mandate · round · viewing · award

Sale

  1. Mandate
  2. Offer
  3. Disclosure
  4. Registration
  5. Bids
  6. Award
  7. Transaction
  8. Notary

Every owner signs the selling mandate. The seller's disclosure is shared version by version, and each buyer's receipt is signed. Registration needs no buying agent, and the viewings are open to every candidate. The client checks on both parties are recorded before an award, every owner accepts it, and the notary receives the sale's sealed references.

mandate · disclosure · bid plan · deed
One home, two offers

A home can be on offer for rental and for sale at once. Each offer is its own round, with its own record.

How the lifecycle is governed

Compliance you can prove, not diligence you remember

An agent following a written procedure can depart from it. A lifecycle whose steps are decision tables cannot. Each rule below is one the software evaluates, not a practice it recommends.

  • Criteria before candidatesA rental round that has not published its criteria will not accept candidates.
  • No mandate, no marketingA property cannot be marketed until its mandate is signed and rests on the owner's sealed declaration.
  • Checks before an awardA sale cannot be awarded until the office's compliance member has recorded the client checks on both parties, and only the seller can accept the award.
  • Every gate is a person's actThe software sets the bounds; a person takes each decision within them, and nothing is decided by the software alone.
  • Rules with a validity windowA rule that has expired stops deciding, and a rule dated for a future change can be loaded and inspected before it takes effect.
For public institutions

A procedure whose order can be checked

For those who enforce the law

Every act in a rental or a sale is appended to a hash-chained record, so a later change is a new entry and never an edit of an old one. The public acts are also leaves in a signed log that can only grow, so the order of events can be checked without asking anyone for access.

The rules are decision tables that cite the law they encode, such as the Wet goed verhuurderschap for the rental procedure and the Civil Code and the Wwft for the sale.

regulators · supervisors · courts · municipalities

For those who make the law

A change in the law is loaded as a rule with the date it takes effect, and it applies from that date with no change at the agencies that use Ravel. A rental already under way follows the law as it stands at each step, while a credential already issued keeps the rulebook version that decided it.

Where a duty is not yet encoded, such as the rental deposit cap, Ravel states it, and the obligation stays with the agency.

parliament · ministries · advisory councils
Disclosure

Granted by the person, never taken

An agent can ask to see a candidate's verdict. Only the person who holds it can grant that, and the grant is recorded with what was asked for and why. Refusing is the candidate's word alone, and is never written on their behalf.

Granted by the holder
affords_target_rent: true

What an agent sees after a candidate grants disclosure of their verdict.

Privacy and security

A bounded key, separated offices

Ravel holds a signing key, so what that key can sign is limited by design rather than by procedure.

  • Ravel cannot sign a credentialIts key signs the audit record and the tokens that let the catalogue trust a session. A verdict is the issuer's alone.
  • Each office sees its ownOffices are separated in the database itself, with row-level security, not only in the application.
  • No person on the public logThe signed log records acts in a rental or a sale, never a person.
  • Consent is part of the recordWhat a person agreed to, and when, is recorded alongside the acts that rely on it.
Contact

Write to Ravel

For integration, partnership and technical questions. Your message is delivered by email and is not stored on this website.

Your email address is used only to reply. See the privacy notice.