> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.rebateright.com.au/api-reference/medicare-eligibility/eligibility-report-pdf/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.rebateright.com.au/_mcp/server. # Eligibility Report (PDF) POST https://api.rebateright.com.au/EligibilityDisclaimer Content-Type: application/json This endpoint produces it: the Online Eligibility Check report as a PDF, in the layout and wording Services Australia prescribes. Generates the PDF you hand the patient after an eligibility check: the printable **Online Eligibility Check (OEC) Report** — header, patient details, per-service rebate estimate, and the mandated disclaimer and privacy notice wording. Quote only — not for claiming. **Handing the patient a printed report is optional.** A written estimate is encouraged informed-financial-consent practice, not an obligation. When you do hand one over, Services Australia prescribes this layout and wording — which is what this endpoint produces. ## How it works The live check happens in [Eligibility Check](/api-reference/medicare-eligibility/eligibility-check): run it first, then feed the per-item figures it returned (`ItemScheduleFee`, `Benefit`, an explanation code) and the overall `Reason` into this request. This endpoint makes no Medicare call of its own — it formats the result you already hold into the approved report. ## Request body The shape mirrors `/CalculateRebate` so the same payload can drive both calls with small additions. Identical field names are reused (PascalCase) for patient and service fields. Three per-item fields (`ItemScheduleFee`, `Benefit`, `MedicareExplanationCode`) are echoed from the `/CalculateRebate` response, and two root fields (`AccountReferenceId`, `Reason`) are specific to the disclaimer. Only `MedicareItems` (with at least one item) and each item's `ItemNumber` are required. Missing optional fields render as blank cells on the PDF. ## Location on the report The **Location ID** printed on the report is taken from the **`x-minor-id`** request header (the same header as other RebateRight endpoints), not from the JSON body. ## Response On success the response body is **`application/pdf`**. The download is offered as **`MedicareEligibilityCheckReport.pdf`**. ## Errors Validation failures return **HTTP 400** with a **plain-text** message describing the problem (not a JSON error envelope). Reference: https://docs.rebateright.com.au/api-reference/medicare-eligibility/eligibility-report-pdf ## Authentication - `x-api-key` header (required) — API Key authentication via header - `x-minor-id` header (required) — Your Minor ID is three uppercase letters followed by five digits, such as `MDE00001`. Send the Minor ID exactly as issued. A malformed value gets a 400 with "The Minor ID is not valid." on every endpoint. ## Servers - `https://api.rebateright.com.au` (Production, default) - `https://test-api.rebateright.com.au` (Test) ## Request ### Body (application/json) This endpoint expects an object. - `DateOfService` (date, optional) — Date of service printed against every row on the report. ISO date `YYYY-MM-DD`. - `PatientFamilyName` (string, optional) — Patient family name as it appears on the Medicare card. Printed in the patient-details section of the report. - `PatientGivenName` (string, optional) — Patient first given name as it appears on the Medicare card. Printed in the patient-details section of the report. - `PatientMedicareNumber` (string, optional) — Patient's 10-digit Medicare card number. - `PatientMedicareRefNumber` (string, optional) — Individual Reference Number (IRN) from the patient's Medicare card. - `AccountReferenceId` (string, optional) — Caller-supplied reference identifying this OECW quote (e.g. invoice or visit id). - `Reason` (string, optional) — Outcome text printed under **Outcome / Fund Explanation Text**. Typically the `Reason` returned by `/CalculateRebate`. - `MedicareItems` (list of EligibilityDisclaimerPostRequestBodyContentApplicationJsonSchemaMedicareItemsItems, optional) ## Response ### 200 PDF document — Online Eligibility Check (OEC) Report (`MedicareEligibilityCheckReport.pdf`). - File download. ## Types ### EligibilityDisclaimerPostRequestBodyContentApplicationJsonSchemaMedicareItemsItems - `ItemNumber` (string, required) — MBS item number. - `ChargeAmount` (string, optional) — Amount charged to the patient as a decimal string (e.g. `100.00`). - `ItemScheduleFee` (string, optional) — Schedule fee for the item as returned by `/CalculateRebate` (`ItemScheduleFee`). - `Benefit` (string, optional) — Medicare benefit amount as returned by `/CalculateRebate` (`Benefit`). - `MedicareExplanationCode` (string, optional) — Medicare explanation code for the item (shown in the Medicare Explanation Code column). ## Examples **Request** ```json { "DateOfService": "2026-04-21", "PatientFamilyName": "FLETCHER", "PatientGivenName": "Edmond", "PatientMedicareNumber": "4951525561", "PatientMedicareRefNumber": "2", "AccountReferenceId": "INV-2026-0417", "Reason": "The patient information matches Medicare's records.", "MedicareItems": [ { "ItemNumber": "23", "ChargeAmount": "100.00", "ItemScheduleFee": "42.85", "Benefit": "42.85", "MedicareExplanationCode": "0" }, { "ItemNumber": "3", "ChargeAmount": "25.00", "ItemScheduleFee": "20.05", "Benefit": "20.05", "MedicareExplanationCode": "0" } ] } ``` **SDK Code** ```python Success import requests url = "https://api.rebateright.com.au/EligibilityDisclaimer" payload = { "DateOfService": "2026-04-21", "PatientFamilyName": "FLETCHER", "PatientGivenName": "Edmond", "PatientMedicareNumber": "4951525561", "PatientMedicareRefNumber": "2", "AccountReferenceId": "INV-2026-0417", "Reason": "The patient information matches Medicare's records.", "MedicareItems": [ { "ItemNumber": "23", "ChargeAmount": "100.00", "ItemScheduleFee": "42.85", "Benefit": "42.85", "MedicareExplanationCode": "0" }, { "ItemNumber": "3", "ChargeAmount": "25.00", "ItemScheduleFee": "20.05", "Benefit": "20.05", "MedicareExplanationCode": "0" } ] } headers = { "x-api-key": "", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.json()) ``` ```javascript Success const url = 'https://api.rebateright.com.au/EligibilityDisclaimer'; const options = { method: 'POST', headers: {'x-api-key': '', 'Content-Type': 'application/json'}, body: '{"DateOfService":"2026-04-21","PatientFamilyName":"FLETCHER","PatientGivenName":"Edmond","PatientMedicareNumber":"4951525561","PatientMedicareRefNumber":"2","AccountReferenceId":"INV-2026-0417","Reason":"The patient information matches Medicare\'s records.","MedicareItems":[{"ItemNumber":"23","ChargeAmount":"100.00","ItemScheduleFee":"42.85","Benefit":"42.85","MedicareExplanationCode":"0"},{"ItemNumber":"3","ChargeAmount":"25.00","ItemScheduleFee":"20.05","Benefit":"20.05","MedicareExplanationCode":"0"}]}' }; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go Success package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.rebateright.com.au/EligibilityDisclaimer" payload := strings.NewReader("{\n \"DateOfService\": \"2026-04-21\",\n \"PatientFamilyName\": \"FLETCHER\",\n \"PatientGivenName\": \"Edmond\",\n \"PatientMedicareNumber\": \"4951525561\",\n \"PatientMedicareRefNumber\": \"2\",\n \"AccountReferenceId\": \"INV-2026-0417\",\n \"Reason\": \"The patient information matches Medicare's records.\",\n \"MedicareItems\": [\n {\n \"ItemNumber\": \"23\",\n \"ChargeAmount\": \"100.00\",\n \"ItemScheduleFee\": \"42.85\",\n \"Benefit\": \"42.85\",\n \"MedicareExplanationCode\": \"0\"\n },\n {\n \"ItemNumber\": \"3\",\n \"ChargeAmount\": \"25.00\",\n \"ItemScheduleFee\": \"20.05\",\n \"Benefit\": \"20.05\",\n \"MedicareExplanationCode\": \"0\"\n }\n ]\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("x-api-key", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby Success require 'uri' require 'net/http' url = URI("https://api.rebateright.com.au/EligibilityDisclaimer") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["x-api-key"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"DateOfService\": \"2026-04-21\",\n \"PatientFamilyName\": \"FLETCHER\",\n \"PatientGivenName\": \"Edmond\",\n \"PatientMedicareNumber\": \"4951525561\",\n \"PatientMedicareRefNumber\": \"2\",\n \"AccountReferenceId\": \"INV-2026-0417\",\n \"Reason\": \"The patient information matches Medicare's records.\",\n \"MedicareItems\": [\n {\n \"ItemNumber\": \"23\",\n \"ChargeAmount\": \"100.00\",\n \"ItemScheduleFee\": \"42.85\",\n \"Benefit\": \"42.85\",\n \"MedicareExplanationCode\": \"0\"\n },\n {\n \"ItemNumber\": \"3\",\n \"ChargeAmount\": \"25.00\",\n \"ItemScheduleFee\": \"20.05\",\n \"Benefit\": \"20.05\",\n \"MedicareExplanationCode\": \"0\"\n }\n ]\n}" response = http.request(request) puts response.read_body ``` ```java Success import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.post("https://api.rebateright.com.au/EligibilityDisclaimer") .header("x-api-key", "") .header("Content-Type", "application/json") .body("{\n \"DateOfService\": \"2026-04-21\",\n \"PatientFamilyName\": \"FLETCHER\",\n \"PatientGivenName\": \"Edmond\",\n \"PatientMedicareNumber\": \"4951525561\",\n \"PatientMedicareRefNumber\": \"2\",\n \"AccountReferenceId\": \"INV-2026-0417\",\n \"Reason\": \"The patient information matches Medicare's records.\",\n \"MedicareItems\": [\n {\n \"ItemNumber\": \"23\",\n \"ChargeAmount\": \"100.00\",\n \"ItemScheduleFee\": \"42.85\",\n \"Benefit\": \"42.85\",\n \"MedicareExplanationCode\": \"0\"\n },\n {\n \"ItemNumber\": \"3\",\n \"ChargeAmount\": \"25.00\",\n \"ItemScheduleFee\": \"20.05\",\n \"Benefit\": \"20.05\",\n \"MedicareExplanationCode\": \"0\"\n }\n ]\n}") .asString(); ``` ```php Success request('POST', 'https://api.rebateright.com.au/EligibilityDisclaimer', [ 'body' => '{ "DateOfService": "2026-04-21", "PatientFamilyName": "FLETCHER", "PatientGivenName": "Edmond", "PatientMedicareNumber": "4951525561", "PatientMedicareRefNumber": "2", "AccountReferenceId": "INV-2026-0417", "Reason": "The patient information matches Medicare\'s records.", "MedicareItems": [ { "ItemNumber": "23", "ChargeAmount": "100.00", "ItemScheduleFee": "42.85", "Benefit": "42.85", "MedicareExplanationCode": "0" }, { "ItemNumber": "3", "ChargeAmount": "25.00", "ItemScheduleFee": "20.05", "Benefit": "20.05", "MedicareExplanationCode": "0" } ] }', 'headers' => [ 'Content-Type' => 'application/json', 'x-api-key' => '', ], ]); echo $response->getBody(); ``` ```csharp Success using RestSharp; var client = new RestClient("https://api.rebateright.com.au/EligibilityDisclaimer"); var request = new RestRequest(Method.POST); request.AddHeader("x-api-key", ""); request.AddHeader("Content-Type", "application/json"); request.AddParameter("application/json", "{\n \"DateOfService\": \"2026-04-21\",\n \"PatientFamilyName\": \"FLETCHER\",\n \"PatientGivenName\": \"Edmond\",\n \"PatientMedicareNumber\": \"4951525561\",\n \"PatientMedicareRefNumber\": \"2\",\n \"AccountReferenceId\": \"INV-2026-0417\",\n \"Reason\": \"The patient information matches Medicare's records.\",\n \"MedicareItems\": [\n {\n \"ItemNumber\": \"23\",\n \"ChargeAmount\": \"100.00\",\n \"ItemScheduleFee\": \"42.85\",\n \"Benefit\": \"42.85\",\n \"MedicareExplanationCode\": \"0\"\n },\n {\n \"ItemNumber\": \"3\",\n \"ChargeAmount\": \"25.00\",\n \"ItemScheduleFee\": \"20.05\",\n \"Benefit\": \"20.05\",\n \"MedicareExplanationCode\": \"0\"\n }\n ]\n}", ParameterType.RequestBody); IRestResponse response = client.Execute(request); ``` ```swift Success import Foundation let headers = [ "x-api-key": "", "Content-Type": "application/json" ] let parameters = [ "DateOfService": "2026-04-21", "PatientFamilyName": "FLETCHER", "PatientGivenName": "Edmond", "PatientMedicareNumber": "4951525561", "PatientMedicareRefNumber": "2", "AccountReferenceId": "INV-2026-0417", "Reason": "The patient information matches Medicare's records.", "MedicareItems": [ [ "ItemNumber": "23", "ChargeAmount": "100.00", "ItemScheduleFee": "42.85", "Benefit": "42.85", "MedicareExplanationCode": "0" ], [ "ItemNumber": "3", "ChargeAmount": "25.00", "ItemScheduleFee": "20.05", "Benefit": "20.05", "MedicareExplanationCode": "0" ] ] ] as [String : Any] let postData = JSONSerialization.data(withJSONObject: parameters, options: []) let request = NSMutableURLRequest(url: NSURL(string: "https://api.rebateright.com.au/EligibilityDisclaimer")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "POST" request.allHTTPHeaderFields = headers request.httpBody = postData as Data let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ```