Provisioning, sub-second instead of phone calls.
Your HBYS posts to Medonay, the rule engine decides per-item coverage and patient share in milliseconds, the insurer is notified asynchronously.
- Sub-second decision
- HMAC-signed webhooks
- KVKK compliant
POST /v1/provision/request312 msDecision written to the audit trail with its rule_trace.
- Decision production (p95, server-side)
- <100 ms
- What the phone call costs today
- 15-20 min
- Decisions carrying an audit trace
- 100%
- Cost of integrating a new vendor
- 1 file
Decision production (p95, server-side)
What the phone call costs today
Decisions carrying an audit trace
Cost of integrating a new vendor
The flow
How it works
One HTTP call; Medonay handles the rest.
HBYS submits the request
Hospital system POSTs /v1/provision/request with the patient + line items. X-API-Key authenticates the call.
Rule engine decides
Policy scope, waiting period, annual limit, sub-limit and provider-specific rules apply in priority order. Every decision is preserved in rule_trace.
Both sides are notified
The hospital gets the synchronous response in milliseconds. The insurer receives an async webhook (HMAC-signed, retried).
Product
Why Medonay
B2B SaaS, multi-tenant, KVKK-compliant.
Adapter pattern
Each HBYS vendor and insurer has its own adapter file. New integration = new file + DB row; engine code never changes. Mock adapters are production-shaped so first-day partner go-live is possible.
Sub-second decision engine
Rule DSL is declarative: when/all/any + eq/in/between operators. No loops, no external IO. Same (request, policy) → same decision; engine_version is stamped on every row.
KVKK and PII minimization
National ID is SHA-256 hash + last 4 digits. Patient health data never leaks cross-org. Your installation runs in Turkiye and the data does not leave it, with an explicit data-processing notice.
Audit + rule_trace
Every state change is recorded in audit_log. Every adjudication writes its rule_trace JSONB: which rule, which coverage, which limit, in what order. Regulator-ready.
Multi-tenant by default
Every business table carries organization_id. Every read / write filters by org_id at the repo layer. IDOR tests are mandatory; cross-tenant access returns 404 (no existence leak).
Durable webhook delivery
Insurer notifications go through outbound_webhook_deliveries. HMAC-SHA256 signed, exponential backoff (60s → 12h), dead_letter after max retries. Admin replay panel for manual retry.
Comparison
Provisioning by phone, provisioning with Medonay
The same job, two completely different cost structures.
Today: the phone
- Staff dial the insurer, wait in the queue and read every line item out loud.
- The patient waits 15-20 minutes at the cashier.
- Verbal relay errors turn into monthly line-item discrepancies.
- The decision leaves no record, so a dispute has nothing to point at.
With Medonay: one HTTP call
- One button inside the HBYS screen, no operator queue.
- The synchronous response comes back in under a second.
- Per-item insurer and patient share are computed server-side.
- Every decision is stored with its rule_trace and audit row.
Frequently asked questions
What integration, compliance and operations teams ask first.
Our HBYS vendor has no public API. Can we still connect?
Yes. No HBYS vendor in Turkey publishes public REST documentation; integration always runs through an NDA, PDF docs and a VPN test environment. That is exactly why Medonay is built on the adapter pattern: one file normalises the vendor's own payload and the engine never changes.
Does the insurer have to integrate as well?
No. If the insurer does not want to expose an API, the member list is bulk-imported into the panel as CSV; plans, coverages and rules are defined in the panel, and decisions come out of the same engine. Wiring their API later is simply one more adapter file.
Do we need to start an IT project to begin?
No. Hospital staff can enter a request straight into the Medonay panel: nothing to install, no integration, no vendor to wait for. The web form takes the place of the phone call and the same engine answers. The HBYS integration follows later, when you are ready.
How long does a decision take?
Decision production measures under 100 milliseconds p95 in production, against the in-platform adapter, from the moment the request is recorded to the moment the decision is stamped. When a decision requires a live query into a payer's own system, end-to-end time is dominated by how fast that system answers; the design target for the synchronous path is under three seconds.
Does an approval spend the member's annual limit?
No. An approval reserves the payer's share rather than spending it. The hospital then closes it as utilized if the care was delivered or void if it was not, and if neither is reported the reservation expires on its own after a configurable window (72 hours by default) and the amount returns to the available limit. Reserved money is not available to a second approval, so the same limit cannot be granted twice.
What if the patient holds more than one valid policy?
Medonay never picks one. It returns the candidate policies (payer, policy number, start date), the desk asks the patient which one to use today, and the same request continues with that choice. A corporate group policy and a personal one can genuinely be valid at the same time, and making no money-affecting decision on a silent assumption is a deliberate design choice.
We do not want every decision automated. Can we keep a human approval step?
Yes. With review mode on, approvals do not take effect immediately: they land in a review queue for the payer's own staff, and nothing is reserved against the limit until a person approves. It is a per-payer setting, so one payer can run fully automatic while another keeps a human in the loop.
What happens when a decision is disputed later?
Every decision is stored with its engine version, the input request and a full rule_trace. Which coverage, which rule and which limit fired can be read back step by step. The insurer can also cancel or correct a decision afterwards through an inbound webhook.
Where is the national ID number stored?
Nowhere in the clear. It is hashed with SHA-256 and a pepper at the adapter boundary; the database holds only the hash plus the last four digits for display. Plaintext never reaches logs, the audit trail or API responses.
Our competitor may be on the same platform. Is our data safe?
Every row carries an organization id and every read and write is scoped by it in the data layer, not on the screen. An attempt to reach another tenant's record returns not-found rather than forbidden, so the existence of a record elsewhere cannot even be inferred. This isolation is tested per endpoint. If you need stronger separation than a shared database, a dedicated deployment with its own database is an option.
Can Medonay staff see our patient data?
The cross-tenant views a platform administrator uses for support show patient identity masked, so routine support work sees commercial shape rather than identity. Revealing the identity behind a single decision is a separate, explicit action requiring a purpose from a closed list plus a reference, and it writes its own audit record. Every cross-tenant read writes an audit row as well.
Where is the data hosted?
What you receive as a customer is a dedicated installation carrying your data and nobody else's, running on our hosting provider's infrastructure in Turkiye: application, database and backups all stay in the country. Personal data does not leave it, so article 9 of the KVKK is not engaged for that installation and no standard contract has to be notified to the Board. The sub-processor list is short: the hosting provider, plus an email relay if one is configured, which can be your own SMTP server. This site is the exception: medonay.com is our own demonstration environment, running in Google Cloud europe-west1 (Belgium) and on Vercel, so a demo account's data is processed there.
Are you ISO 27001 certified?
No. At this stage there is no ISO 27001 certification, no SOC 2 report, no independent penetration test and no cyber liability policy, and none of them is claimed. Our data processing agreement lists only measures that are actually implemented. If your procurement process requires a certification, the right answer is a roadmap date rather than a claim.
How does pricing work?
There are three line items: setup, monthly maintenance per contracted insurer, and a per-provisioning fee. No packages, no volume tiers. Both recurring lines start at the first real provisioning; nothing is billed before that. Two inputs decide the quote: your monthly provisioning volume, and how many HBYS and insurer integrations you need.
Let's run a 30-minute demo.
Model your own policy plan in a sandbox, watch a sample provisioning flow end-to-end.