Calculate Rebate

View as Markdown
Runs a single, combined **patient verification** and **per-item rebate calculation** for up to 50 MBS items. Behind the scenes this call orchestrates three services: - **Medicare Patient Verification** — confirms patient identity against Medicare in real time. - **Medicare Eligibility Checks** — consults Medicare directly for the checks only Medicare can answer, such as frequency-of-service limits, maximum claim caps, and prior-claim history for the item. - **RebateRight Rules Engine** — applies the MBS rules layer (age / sex restrictions, referrer specialty, coning, in-hospital vs out-of-hospital, and more) and returns a clear, plain-language reason you can show to staff or patients — no MBS expertise required. ## 📑 Response shape Everything you need is in two fields: - **`PatientVerification`** — always present. Describes the Medicare patient-verification outcome. `Verified` is **tri-state**: `true` (details match Medicare), `false` (mismatch or accepted with corrections), `null` (check did not run — typically because the request failed RebateRight-side validation). When Medicare corrects a detail (name, DOB, card number, etc.) the corrected value is echoed on the matching `Correct…` field. - **`Rebates`** — one entry per submitted item, in request order. `IsEligible` is **tri-state**: `true` (eligible), `false` (not eligible), `null` (cannot determine — usually a missing dependency like `ReferrerProviderNumber`). The top-level **`Reason`** field is retained for backward compatibility and can be ignored by new integrations. Every `Reason` string is prefixed with **`[RebateRight]`** (rules-engine output) and/or **`[Medicare]`** (passthrough from Medicare) so integrators can attribute each sentence to its source. ## 💰 Amounts are dollar strings `Benefit` and `ItemScheduleFee` are returned as **decimal strings in dollars** (for example `"20.05"`) — **not** cents. This is distinct from RebateRight's Bulk Bill reports, which report amounts in cents. ## 📏 Request limits Up to **50 items** per request, grouped into up to **16 medical events** (via `MedicalEventId`) with up to **14 items per event**.

Authentication

x-api-keystring
API Key authentication via header
x-minor-idstring
API Key authentication via header

Request

This endpoint expects an object.
InHospitalTreatmentbooleanRequired

Whether the service is provided to an in-hospital patient. Drives the in-hospital vs out-of-hospital rebate percentage and several MBS restriction rules.

PatientDateOfBirthdateRequired

Patient date of birth (YYYY-MM-DD). Cannot be a future date or more than 130 years in the past.

PatientFamilyNamestringRequired
Patient family name as it appears on the Medicare card.
PatientGivenNamestringRequired
Patient first given name as it appears on the Medicare card.
PatientSexenumRequired
Patient sex (Services Australia coding). | Code | Meaning | |---|---| | `1` | Male | | `2` | Female | | `3` | Other | | `9` | Not stated / inadequately described |
Allowed values:
PatientMedicareNumberstringRequired

Patient’s 10-digit Medicare card number.

PatientMedicareRefNumberstringRequired

Individual Reference Number (IRN) from the patient’s Medicare card — a single digit identifying the family member.

ServicingProviderNumberstringRequired
Provider number of the health professional who performs the service.
PrincipalProviderNumberstringRequired

Provider number of the practice / principal provider the service is billed under. Often the same as ServicingProviderNumber.

MedicareItemslist of objectsRequired

MBS items to evaluate. Up to 50 items total, grouped into up to 16 medical events (via MedicalEventId) with up to 14 items per event.

DateOfServicedateOptional

Date the service was / will be performed (YYYY-MM-DD). Defaults to today when omitted. Cannot be in the future or more than 2 years in the past.

BulkBilledbooleanOptional

Optional. Indicates the service will be bulk-billed. Used only by rules that differ between bulk-bill and non-bulk-bill scenarios.

ReferrerProviderNumberstringOptional

Referring provider’s Medicare provider number. Required when any requested item has a referrer restriction; omit it and the affected items will come back with a null IsEligible and a Reason explaining that the referrer could not be validated.

Response

OK
PatientVerificationobject

Medicare patient-verification outcome. Always present.

Rebateslist of objects

One entry per submitted item, in the same order as MedicareItems. Empty when the request failed RebateRight-side validation.

Reasonstring

Top-level summary reason. Retained for backward compatibility and can be ignored by new integrations — all information is available in PatientVerification and Rebates.