The rent

Rent detection: written, exercised, and deliberately closed.

A complete banking flow has already been carried through to the end on our side. Matching works. It remains closed because our credentials are those of the aggregator’s sandbox — and a demo transfer settled for real would end up in your income tax return.

Coming soon

The matching is written and the adapter is up to date. What is missing lies elsewhere: our credentials are those of the aggregator’s sandbox. As long as that is the case, the code deliberately refuses to settle an instalment — a demo transfer would end up in your tax return. In the meantime, on the Pro plan, a CSV, OFX or CAMT statement downloaded from your bank is matched against the instalments, line by line, after your approval.

A rent marked “received” by mistake cannot be corrected in a tax return.

When an instalment is settled, Pilot does not just write “paid” in a table: it creates an income entry. That entry then flows into the summary of your rental income, into the export that goes to your accountant, and into the yield calculation you use to decide whether to keep or sell. So approximate matching does not produce an approximate display: it produces declared income that was never received, or invisible arrears. That is why we would rather have you tick the box yourself for a few seconds a month than switch on an automatic process whose source we cannot yet guarantee.

  • Matching is written, and it has run on a real banking journey
  • Our credentials are sandbox ones: the code then refuses to settle
  • In the meantime, payment is confirmed in one click, on a single screen
  • Nothing else in the rent chain waits for the bank: everything else runs on its own

In practice.

  1. The payment schedule exists before the bank

    Pilot generates the instalments for each tenancy and extends them automatically as the end of the term approaches. So matching does not have to guess what was expected: it has an amount, a date and a tenant in front of it.

  2. You confirm the payment, today

    A single screen lists what is expected this month, across all tenancies, with the amount and the tenant. One click settles the instalment and triggers what follows — the rent receipt goes out, the delay stops being counted.

  3. Late payment is detected without the bank

    A daily check runs across all tenancies and moves whatever has not been confirmed to late, then to unpaid. So detecting late payments does not depend on the bank connector, contrary to what you might think.

  4. What matching will add

    When it opens: the transfers received will be matched against the expected instalments, with a tolerance of a few cents and a window of dates around the due date. A single plausible candidate ⇒ a proposal to settle. Several ⇒ a queue of suggestions that you validate. Never an automatic settlement on an ambiguous match.

  5. What remains to be done, and it is not code

    Production credentials with the aggregator, and checking that a transaction notification actually arrives. We have learnt not to trust an interface that declares itself healthy: a channel can go silent while showing every sign of good health.

What it changes

No other building block is waiting on the bank

Rent notice, receipt, daily arrears check, graduated reminders, rent review, service charge reconciliation: all of this already runs without a bank connection. Detection will add convenience, not a foundation.

The refusal is written in the code, not in an intention

This is not a team instruction: the environment module refuses to declare itself in production on test credentials, and the asymmetry is deliberate. Erring towards “closed” is annoying; erring towards “open” manufactures fictitious income in a tax return.

You know precisely what is blocking

Not “in development”, not “coming soon”: keys and a channel check. It is information that lets you decide whether to wait or to carry on ticking boxes.

The law, and the pitfalls

Rental income is taxable in the year it is actually COLLECTED, not the year in which the rent was due.

art. 12 and art. 29 of the French General Tax Code

December rent received in January belongs to the following tax year. So matching that settled an instalment on its due date rather than on the date of the bank transaction would shift income from one year to the next — across a whole tax return, the error is not cosmetic.

Access to payment account information requires the account holder’s explicit consent, and such access is reserved for registered providers.

Directive (EU) 2015/2366 (PSD2), transposed in art. L. 314-1 et seq. of the French Monetary and Financial Code

That is why the connection goes through an approved aggregator and not through a form where you would type your bank credentials. Any service that asks you directly for your bank login takes you outside the framework — and outside your bank’s guarantee if something goes wrong.

Payment data may only be collected for a specified purpose and limited to what is necessary for that purpose.

art. 5.1.b and 5.1.c of Regulation (EU) 2016/679 (GDPR)

A connector that sucks in all your transactions to find rent payments collects massively beyond what is necessary. The purpose here is narrow — matching expected amounts — and it is that purpose that must limit what is read and what is kept.

What Pilot refuses to do

  • We will not settle an instalment on an ambiguous match

    Two tenants on the same rent, a transfer with a vague reference, a partial payment: in these cases matching proposes and does not conclude. A wrong automatic settlement wipes out a real arrear, which is exactly the opposite of the service intended.

  • We will not declare “production” on test keys

    The measurable signal is the credentials prefix, and the more cautious of the two available signals always wins. A demonstration account presenting itself as a real account would bring fictitious transfers into your accounts.

  • We will not announce a date

    We announced one for this very capability, based on a technical assessment that turned out to be out of date a week later. Since then, we describe the status and the blocker, and we let you judge.

Availability

Included from the Pro tier.

  • 7-day trial at launch, card required
  • No commitment

Frequently asked questions

Can I connect my bank to Pilot today?

No. The flow exists and has been completed with our aggregator’s demo bank, but our credentials are sandbox credentials and the code refuses to settle an instalment in that mode. So you confirm your payments in one click, on the “Payments” screen — or you upload a statement.

Can I import a bank statement in the meantime?

Yes, on the Pro plan. Upload the statement downloaded from your bank, in CSV, OFX or CAMT.053 format: Pilot suggests matching each line with an expected instalment and filing it under a category, and nothing is saved until you have approved it. An uploaded statement comes from your real bank: it settles instalments just as the connection would, with the same effects on receipts and the 2044.

Does arrears tracking depend on the bank?

No, and that is the important point: a daily check moves any unconfirmed instalment to late, then to unpaid, with no bank connection at all. The graduated reminders rely on this check. Detecting transfers will remove one step; it will not add the monitoring.

How long does manual confirmation take?

A screen lists what is expected in the month, across all tenancies, and each line is settled with one click. We will not give you a figure in minutes: we have not measured any real completion time, and inventing one would be easy but false.

Why not open the connection in read-only mode, without settling?

It is technically possible and we have thought about it. But a screen that displays transactions without ever concluding anything mainly creates a second source of truth alongside the payment schedule — and the product’s experience is that two sources that do not talk to each other end up contradicting each other in front of the user.

Do my bank credentials go through Morya?

No. Authentication takes place with the approved aggregator, which is the only one to see your login details — that is the framework imposed by PSD2. We receive transactions, never credentials.

Right next to it.

Content reviewed on 2026-10-07.

Get started

Add your first property.

At launch: a 7-day trial on your real properties, card required.