> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.rebateright.com.au/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.rebateright.com.au/_mcp/server.

# In-Patient Patient Claim — General

POST https://test-api.rebateright.com.au/Medicare/inpatientmedicalclaim/pc/general/v2
Content-Type: application/json

**How do I lodge an in-patient Patient Claim for general services?**

Use this endpoint when the patient keeps their right to the Medicare and health fund benefits, for services that need no referral or request.

Test environment only. Services Australia is certifying this service, and it reaches production once certified.

| You send                                                                                 | You get                                                                                    | Then                                                                                                                                                                                                                                            |
| ---------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| A Patient Claim (`PC`) for the medical services an admitted patient received in hospital | An acknowledgement: `status` `SUCCESS` and the claim's `correlationId`, with no assessment | [Status Report](/api-reference/medicare-claiming/in-patient-claims/status-report) says when the claim's report is ready, and [In-Patient Claim Report](/api-reference/medicare-claiming/in-patient-claims/in-patient-claim-report) retrieves it |

[Which claim type do I send?](/in-patient-claiming#which-claim-type-do-i-send) defines each claim type and who it pays. [In-patient claims (ECLIPSE)](/in-patient-claiming) sets out the rules the claim types share. A Patient Claim has its own rules for the patient's consent and the claim's report, set out in [Patient Claims](/in-patient-claiming#patient-claims).

## General services

Send services that need no referral or request, with `serviceTypeCode` set to `O`. Leave `referral`, `referralOverrideCode` and `selfDeemedCode` out of every medical event, or Medicare rejects the claim with `2030`.

Send each item to the endpoint for its specialty. Send specialist and diagnostic imaging services to [In-Patient Patient Claim — Specialist](/api-reference/medicare-claiming/in-patient-claims/in-patient-patient-claim-specialist), and pathology services to [In-Patient Patient Claim — Pathology](/api-reference/medicare-claiming/in-patient-claims/in-patient-patient-claim-pathology).

**Claim limits.** [Validations](/in-patient-claiming#validations) gives the limits for each claim type.

## Responses

| Response | Meaning                                                                                                                                                                |
| -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `200`    | Medicare has received the claim for processing, and `status` is `SUCCESS`.                                                                                             |
| `400`    | Medicare or RebateRight rejected the request, and nothing is lodged. The `400` response lists the codes and what to do.                                                |
| `503`    | RebateRight got no response from Medicare, so Medicare may or may not hold the claim. Follow [When a claim gets no response](/claiming#when-a-claim-gets-no-response). |

Reference: https://docs.rebateright.com.au/api-reference/medicare-claiming/in-patient-claims/in-patient-patient-claim-general

## Authentication

- `x-api-key` header (required) — API Key authentication via header
- `x-minor-id` header (required) — Your Minor ID is 3 uppercase letters followed by 5 digits, such as `MDE00000`. Send the Minor ID exactly as issued. A malformed value returns `400` with the text `The Minor ID is not valid.` on every endpoint.

## Servers

- `https://test-api.rebateright.com.au` (Test, default)
- `https://api.rebateright.com.au` (Production)

## Request

### Headers

- `x-minor-id` (string, required) — The Minor ID of the clinic you act for. See [Keys, Minor ID and environments](/keys-and-environments).

### Body (application/json)

This endpoint expects an ImcPcGeneralRequest.

- `claim` (ImcPcGeneralRequestClaim, required) — The in-patient claim. One claim covers one patient.
- `correlationId` (string, optional) — Your identifier for this claim, 33 characters: `urn:uuid:`, then the Minor ID you send in `x-minor-id`, then 16 letters or digits, as in `urn:uuid:MDE00000a1b2c3d4e5f6a7b8`. Send your own on every claim, and store it before you send. You request the claim's status and report by its transaction ID, which is this value without `urn:uuid:`. If you omit it, RebateRight generates one and returns it on the response. When to use a new value and when to reuse one is set out in [Correlation ID](/claiming#correlation-id).

## Response

### 200

Medicare has received the claim for processing.

- `status` (string, required) — `SUCCESS` means Medicare has received the claim for processing. It is not an assessment, and its report can still show the claim as rejected.
- `correlationId` (string, required) — The `correlationId` you sent, or the one RebateRight generated. Store it with the claim, because you request the claim's status and report by it.

## Errors

### 400 Bad Request Error

Medicare or RebateRight rejected the request. Nothing is lodged, so correct the claim and send it with a new `correlationId`. When the `400` comes from Medicare, the body is one of 2 JSON envelopes, and both carry `correlationId`: - **`serviceMessage`.** The claim broke one or more of Medicare's field or business rules. Each failed check has its own entry, and its `reason` names the field, the medical event and the service where they apply. - **Gateway (`DHSEIN`).** The request failed Medicare's schema check before its rules ran, such as a request with no `claim`. | Code | Cause | What to do | |---|---|---| | `9202` | A value has the wrong format, length or range. | Correct the named field. | | `2030` | A value breaks a rule that involves another field, the claim type or the endpoint. | Read the `reason`, which states the rule. | | `2025` | The claim has more than 16 medical events. | Split the claim. | | `2032` | A medical event has more than 14 services. | Split the medical event. | | `2033` | The Patient Claim has more than 16 services. | Split the claim. | | `9777` | Medicare has already received a claim with this `correlationId`. | If you resent a claim that got no response, Medicare received the first attempt. [Follow the claim to its outcome](/in-patient-claiming#follow-the-claim-to-its-outcome) with its original transaction ID. Otherwise, send the claim with a new `correlationId`. | | `3004` | Medicare had a system error. | Send the claim again with a new `correlationId`. If the error persists, call the Medicare eBusiness Service Centre on 1800 700 199. | Show each `reason` to your user exactly as Medicare returns it. Look up any other code in the [Services Australia return-code lookup](https://www.servicesaustralia.gov.au/look-up-medicare-online-and-eclipse-return-codes). When RebateRight rejects the request before it reaches Medicare, the body is plain text with no `correlationId`, such as `Request body is empty.` Check the content type before you parse the body.

- `PostMedicareInpatientmedicalclaimPcGeneralV2RequestBadRequestError`

## Types

### ImcPcGeneralRequestClaim

The in-patient claim. One claim covers one patient.

- `accountPaidInd` (enum, required) — Whether the account is paid in full. [Which claim type do I send?](/in-patient-claiming#which-claim-type-do-i-send) says how Medicare and the health fund pay in each case. | Code | Meaning | |---|---| | `Y` | Paid in full | | `N` | Not paid in full |
  - Allowed values: `Y`, `N`
- `accountReferenceId` (string, required) — Your reference for the patient's account, 1 to 9 letters or digits. Medicare includes it in every report for the claim.
- `claimTypeCode` (enum, required) — Must be `PC`. A value that does not match the endpoint is rejected with `2030`.
  - Allowed values: `PC`
- `facilityId` (string, required) — The 8-character provider number of the hospital facility where the patient was admitted: a 6-digit stem, a location digit, then a check character. [Integration test data](/test-data#hospital-fund-and-billing-ids) lists the IDs to use in the test environment.
- `submissionAuthorityInd` (enum, required) — Must be `Y`: the claimant has authorised the practice to submit this claim.
  - Allowed values: `Y`
- `patient` (ImcPcGeneralRequestClaimPatient, required) — The patient who received the services.
- `claimant` (ImcPcGeneralRequestClaimClaimant, required) — The person who claims the benefit: the patient, or another person who claims for them, such as a parent. When the patient is the claimant, send the patient's details here as well.
- `principalProvider` (ImcPcGeneralRequestClaimPrincipalProvider, required) — The provider the Medicare benefit is claimed for. This can be a different provider from the one who rendered the services, who goes in each medical event's `serviceProvider`.
- `accident` (ImcPcGeneralRequestClaimAccident, required) — Accident details for the claim.
- `serviceTypeCode` (enum, required) — Must be `O`, for general services. A value that does not match the endpoint is rejected with `2030`.
  - Allowed values: `O`
- `medicalEvent` (list of ImcPcGeneralMedicalEvent, required) — The medical events in this claim, up to 16. Each holds the services one servicing provider rendered, up to 14. A Patient Claim holds up to 16 services in total.
- `compensationClaimInd` (enum, optional) — Optional. Whether the services may be part of a compensation claim. | Code | Meaning | |---|---| | `Y` | May be part of a compensation claim | | `N` | Not part of a compensation claim |
  - Allowed values: `Y`, `N`
- `senderContact` (ImcPcGeneralRequestClaimSenderContact, optional) — Optional. The person at your practice to contact about this claim.

### ImcPcServiceMessageError

Medicare's `serviceMessage` envelope, returned when the claim breaks one or more of Medicare's field or business rules.

- `highestSeverity` (string, required) — The highest severity across the messages, such as `Error`.
- `serviceMessage` (list of ImcPcServiceMessageErrorServiceMessageItems, required) — One entry for each failed check.
- `correlationId` (string, required) — Echo of the request's `correlationId`.

### ImcPcGatewayError

Medicare's gateway (`DHSEIN`) envelope, returned when the request fails Medicare's schema check before its rules run, such as a request with no `claim`.

- `code` (integer, required) — Numeric gateway error code.
- `codeType` (string, required) — Gateway error category, such as `DHSEIN`.
- `message` (string, required) — What failed the schema check.
- `correlationId` (string, required) — Echo of the request's `correlationId`, or the one RebateRight generated.

### ImcPcGeneralRequestClaimPatient

The patient who received the services.

- `identity` (ImcPcGeneralRequestClaimPatientIdentity, required) — The patient's name, date of birth and sex.
- `medicare` (ImcPcGeneralRequestClaimPatientMedicare, required) — The patient's Medicare card.
- `healthFund` (ImcPcGeneralRequestClaimPatientHealthFund, required) — The patient's health fund membership.
- `alsoKnownAs` (ImcPcGeneralRequestClaimPatientAlsoKnownAs, optional) — Optional. The patient's name as the health fund holds it, when it differs from the name Medicare holds.

### ImcPcGeneralRequestClaimClaimant

The person who claims the benefit: the patient, or another person who claims for them, such as a parent. When the patient is the claimant, send the patient's details here as well.

- `identity` (ImcPcGeneralRequestClaimClaimantIdentity, required) — The claimant's name, date of birth and sex.
- `medicare` (ImcPcGeneralRequestClaimClaimantMedicare, required) — The claimant's Medicare card.
- `eftDetails` (ImcPcGeneralRequestClaimClaimantEftDetails, optional) — Optional. A bank account for this claim only, in place of the account the claimant registered with Medicare. Send it only when `accountPaidInd` is `Y`, with all 3 fields. Medicare declines temporary bank details for some claimants, with `9202` and a reason that starts "Temporary bank details cannot be used". Remove `eftDetails` and send the claim with a new `correlationId`.
- `residentialAddress` (ImcPcGeneralRequestClaimClaimantResidentialAddress, optional) — Optional. The claimant's residential address. When you send it, `addressLineOne`, `locality` and `postcode` are required.
- `contactDetails` (ImcPcGeneralRequestClaimClaimantContactDetails, optional) — Optional. The claimant's phone number.

### ImcPcGeneralRequestClaimPrincipalProvider

The provider the Medicare benefit is claimed for. This can be a different provider from the one who rendered the services, who goes in each medical event's `serviceProvider`.

- `providerNumber` (string, required) — Medicare-issued 8-character provider number: a 6-digit stem, a practice location character, then a check character.

### ImcPcGeneralRequestClaimAccident

Accident details for the claim.

- `accidentInd` (enum, required) — Whether the services resulted from an accident. | Code | Meaning | |---|---| | `Y` | The services resulted from an accident | | `N` | They did not, or it is not known |
  - Allowed values: `Y`, `N`

### ImcPcGeneralMedicalEvent

- `id` (string, required) — The medical event's number, 2 digits. The first is `01`, and each next one adds one, up to `16`.
- `serviceProvider` (ImcPcGeneralMedicalEventServiceProvider, required) — The practitioner who rendered the services in this medical event. It must be the same in every medical event of a Patient Claim.
- `service` (list of ImcPcGeneralService, required) — The services in this medical event, up to 14.
- `admissionDate` (date, optional) — Date the patient was admitted (`YYYY-MM-DD`). Must not be in the future or before the patient's date of birth. Required when you send `dischargeDate`.
- `dischargeDate` (date, optional) — Optional. Date the patient was discharged (`YYYY-MM-DD`). Must not be in the future or before `admissionDate`.
- `financialInterestDisclosureInd` (enum, optional) — Optional. Set to `Y` when the practitioner has disclosed any financial interest they hold in the products or services they recommended. | Code | Meaning | |---|---| | `Y` | Disclosed |
  - Allowed values: `Y`
- `ifcIssueCode` (enum, optional) — Optional. Informed financial consent: whether and how the patient was told the expected costs before the episode of care. | Code | Meaning | |---|---| | `V` | Given verbally | | `W` | Given in writing | | `N` | Not issued | | `X` | Not obtained |
  - Allowed values: `V`, `W`, `N`, `X`

### ImcPcGeneralRequestClaimSenderContact

Optional. The person at your practice to contact about this claim.

- `name` (string, optional) — The contact's name, 1 to 40 characters, with the same rules as the patient's `familyName`.
- `emailAddress` (string, optional) — Email address, 5 to 128 characters, with an `@` and no spaces.
- `phoneNumber` (string, optional) — Phone number, 8 to 19 characters. Digits, spaces and `( ) - +` are allowed, with no space at the start or end.

### ImcPcServiceMessageErrorServiceMessageItems

- `code` (string, required) — Medicare's 4-digit return code. The `400` description lists the common ones.
- `severity` (string, required) — Severity of this message, such as `Error`.
- `reason` (string, required) — What failed, with the value sent and, where they apply, the medical event and service. Show it to your user exactly as Medicare returns it.

### ImcPcGeneralRequestClaimPatientIdentity

The patient's name, date of birth and sex.

- `dateOfBirth` (date, required) — Date of birth (`YYYY-MM-DD`). Must not be in the future or more than 130 years ago.
- `familyName` (string, required) — Family name as Medicare holds it, 1 to 40 characters. Letters, digits, spaces, apostrophes and hyphens are allowed, with no space at the start or end, no double space and no space beside an apostrophe or hyphen. For a person with only one name, send it here.
- `givenName` (string, required) — Given name, with the same rules as `familyName`. For a person with only one name, send `Onlyname`.
- `sex` (enum, required) — Sex, as Services Australia codes it. | Code | Meaning | |---|---| | `1` | Male | | `2` | Female | | `3` | Another term | | `9` | Not stated |
  - Allowed values: `1`, `2`, `3`, `9`
- `secondInitial` (string, optional) — Optional. The initial of the second given name, one letter.

### ImcPcGeneralRequestClaimPatientMedicare

The patient's Medicare card.

- `memberNumber` (string, required) — The patient's 10-digit Medicare card number. The first 9 digits must pass the Medicare check-digit routine, and the 10th digit, the issue number, cannot be zero.
- `memberRefNumber` (string, required) — The patient's Individual Reference Number (IRN), the digit from 1 to 9 beside their name on the card.

### ImcPcGeneralRequestClaimPatientHealthFund

The patient's health fund membership.

- `memberNumber` (string, required) — The patient's health fund membership number, 1 to 19 letters or digits.
- `organisation` (string, required) — The patient's fund code, 3 capital letters. [Fund codes](/health-fund-checks#fund-codes) says where the codes come from.
- `memberRefNumber` (string, optional) — Optional. The patient's Universal Patient Identifier (UPI) on the health fund membership, 1 or 2 digits from `0` to `99`. Leading zeros are allowed.

### ImcPcGeneralRequestClaimPatientAlsoKnownAs

Optional. The patient's name as the health fund holds it, when it differs from the name Medicare holds.

- `familyName` (string, optional) — Family name, with the same rules as `identity.familyName`.
- `givenName` (string, optional) — Given name, with the same rules as `identity.givenName`.

### ImcPcGeneralRequestClaimClaimantIdentity

The claimant's name, date of birth and sex.

- `dateOfBirth` (date, required) — Date of birth (`YYYY-MM-DD`). Must not be in the future or more than 130 years ago. The claimant must be at least 14 years old.
- `familyName` (string, required) — Family name as Medicare holds it, 1 to 40 characters. Letters, digits, spaces, apostrophes and hyphens are allowed, with no space at the start or end, no double space and no space beside an apostrophe or hyphen. For a person with only one name, send it here.
- `givenName` (string, required) — Given name, with the same rules as `familyName`. For a person with only one name, send `Onlyname`.
- `secondInitial` (string, optional) — Optional. The initial of the second given name, one letter.
- `sex` (enum, optional) — Optional. Sex, as Services Australia codes it. | Code | Meaning | |---|---| | `1` | Male | | `2` | Female | | `3` | Another term | | `9` | Not stated |
  - Allowed values: `1`, `2`, `3`, `9`

### ImcPcGeneralRequestClaimClaimantMedicare

The claimant's Medicare card.

- `memberNumber` (string, required) — The claimant's 10-digit Medicare card number. The first 9 digits must pass the Medicare check-digit routine, and the 10th digit, the issue number, cannot be zero.
- `memberRefNumber` (string, required) — The claimant's Individual Reference Number (IRN), the digit from 1 to 9 beside their name on the card.

### ImcPcGeneralRequestClaimClaimantEftDetails

Optional. A bank account for this claim only, in place of the account the claimant registered with Medicare. Send it only when `accountPaidInd` is `Y`, with all 3 fields. Medicare declines temporary bank details for some claimants, with `9202` and a reason that starts "Temporary bank details cannot be used". Remove `eftDetails` and send the claim with a new `correlationId`.

- `accountName` (string, required) — Account name, 1 to 30 characters. Letters, digits, spaces and `' - & . , /` are allowed, with no space at the start or end.
- `accountNumber` (string, required) — Account number, 1 to 9 digits or capital letters.
- `bsbCode` (string, required) — The 6-digit BSB, with no hyphen. Medicare rejects a BSB it cannot pay into.

### ImcPcGeneralRequestClaimClaimantResidentialAddress

Optional. The claimant's residential address. When you send it, `addressLineOne`, `locality` and `postcode` are required.

- `addressLineOne` (string, required) — First address line, 1 to 40 characters. Letters, digits, spaces and `' - / , . : ;` are allowed, with no space at the start or end and no double space. A PO box is rejected.
- `locality` (string, required) — Suburb or town, 1 to 40 characters, with the same rules. Leave the state out: `WANGARATTA` is accepted and `Perth WA` is rejected.
- `postcode` (string, required) — The 4-digit postcode. `0000` is rejected.
- `addressLineTwo` (string, optional) — Optional. Second address line, with the same rules. Requires `addressLineOne`.

### ImcPcGeneralRequestClaimClaimantContactDetails

Optional. The claimant's phone number.

- `phoneNumber` (string, optional) — Phone number, 8 to 19 characters. Digits, spaces and `( ) - +` are allowed, with no space at the start or end.

### ImcPcGeneralMedicalEventServiceProvider

The practitioner who rendered the services in this medical event. It must be the same in every medical event of a Patient Claim.

- `providerNumber` (string, required) — Medicare-issued 8-character provider number: a 6-digit stem, a practice location character, then a check character.

### ImcPcGeneralService

Override and timing fields for general and specialist services.

- `id` (string, required) — The service's number, exactly 4 digits, such as `0001`. It must be unique across the claim, not only within the medical event.
- `chargeAmount` (string, required) — The fee charged for the service, in cents, as a string: `12000` is $120.00. The minimum is `100` ($1.00), and Services Australia currently accepts up to `999999` ($9,999.99).
- `dateOfService` (date, required) — Date the service was rendered (`YYYY-MM-DD`). Must not be in the future, and must be less than 2 years before Medicare receives the claim. It must also fall on or after `admissionDate` and the patient's date of birth, and on or before `dischargeDate`.
- `itemNumber` (string, required) — The MBS item number, from 1 to 99999. Leading zeros are accepted, spaces are not.
- `timeOfService` (string, optional) — Optional. Time the service was rendered, with seconds and an Australian UTC offset (`HH:mm:ss±HH:mm`), such as `14:30:00+11:00`. With `dateOfService`, it must not be in the future.
- `text` (string, optional) — Optional. Supporting information for the service, 1 to 50 characters. Letters, digits, spaces and `@ # $ % + = : ; , . -` are allowed, with no space at the start or end and no double space.
- `aftercareOverrideInd` (enum, optional) — Optional. Set to `Y` when the service is not part of normal aftercare.
  - Allowed values: `Y`
- `duplicateServiceOverrideInd` (enum, optional) — Optional. Set to `Y` when the service is not a duplicate, such as a repeat of the same item on the same day. Requires `timeOfService` or `text` on this service.
  - Allowed values: `Y`
- `multipleProcedureOverrideInd` (enum, optional) — Optional. Set to `Y` when Medicare's multiple procedure rule does not apply to the service. Requires `text` giving the reason, and cannot be sent with `numberOfPatientsSeen`.
  - Allowed values: `Y`
- `timeDuration` (string, optional) — Optional. Duration of the service in minutes, 3 digits from `001` to `999`, such as `045`. Used by the hyperbaric oxygen therapy items 13025 and 13030, and for more than one consultation on the same day. Cannot be sent with `numberOfPatientsSeen`.
- `restrictiveOverrideCode` (enum, optional) — Optional. Why a service that Medicare would treat as restricted by another service is claimed. | Code | Meaning | |---|---| | `SP` | Separate sites | | `NR` | Not related to the consultation | | `NC` | Not for comparison (bilateral) |
  - Allowed values: `SP`, `NR`, `NC`
- `numberOfPatientsSeen` (string, optional) — Optional. The number of patients seen, from 1 to 99, for a group attendance or a home, hospital or institution visit.

## Examples

**Request**

```json
{
  "claim": {
    "accountPaidInd": "Y",
    "accountReferenceId": "PCGEN01",
    "claimTypeCode": "PC",
    "facilityId": "9988770W",
    "submissionAuthorityInd": "Y",
    "patient": {
      "identity": {
        "dateOfBirth": "1986-12-18",
        "familyName": "FLETCHER",
        "givenName": "Edmond",
        "sex": "1"
      },
      "medicare": {
        "memberNumber": "4951525561",
        "memberRefNumber": "2"
      },
      "healthFund": {
        "memberNumber": "1234567",
        "organisation": "TST",
        "memberRefNumber": "1"
      }
    },
    "claimant": {
      "identity": {
        "dateOfBirth": "1986-12-18",
        "familyName": "FLETCHER",
        "givenName": "Edmond",
        "sex": "1"
      },
      "medicare": {
        "memberNumber": "4951525561",
        "memberRefNumber": "2"
      }
    },
    "principalProvider": {
      "providerNumber": "2447781L"
    },
    "accident": {
      "accidentInd": "N"
    },
    "serviceTypeCode": "O",
    "medicalEvent": [
      {
        "id": "01",
        "serviceProvider": {
          "providerNumber": "2447781L"
        },
        "service": [
          {
            "id": "0001",
            "chargeAmount": "12000",
            "dateOfService": "2026-10-20",
            "itemNumber": "30026"
          }
        ],
        "admissionDate": "2026-10-19"
      }
    ]
  },
  "correlationId": "urn:uuid:MDE00000IMCW20261021PCO1"
}
```

**Response**

```json
{
  "status": "SUCCESS",
  "correlationId": "urn:uuid:MDE00000IMCW20261021PCO1"
}
```

**SDK Code**

```python Wound Repair
import requests

url = "https://test-api.rebateright.com.au/Medicare/inpatientmedicalclaim/pc/general/v2"

payload = {
    "claim": {
        "accountPaidInd": "Y",
        "accountReferenceId": "PCGEN01",
        "claimTypeCode": "PC",
        "facilityId": "9988770W",
        "submissionAuthorityInd": "Y",
        "patient": {
            "identity": {
                "dateOfBirth": "1986-12-18",
                "familyName": "FLETCHER",
                "givenName": "Edmond",
                "sex": "1"
            },
            "medicare": {
                "memberNumber": "4951525561",
                "memberRefNumber": "2"
            },
            "healthFund": {
                "memberNumber": "1234567",
                "organisation": "TST",
                "memberRefNumber": "1"
            }
        },
        "claimant": {
            "identity": {
                "dateOfBirth": "1986-12-18",
                "familyName": "FLETCHER",
                "givenName": "Edmond",
                "sex": "1"
            },
            "medicare": {
                "memberNumber": "4951525561",
                "memberRefNumber": "2"
            }
        },
        "principalProvider": { "providerNumber": "2447781L" },
        "accident": { "accidentInd": "N" },
        "serviceTypeCode": "O",
        "medicalEvent": [
            {
                "id": "01",
                "serviceProvider": { "providerNumber": "2447781L" },
                "service": [
                    {
                        "id": "0001",
                        "chargeAmount": "12000",
                        "dateOfService": "2026-10-20",
                        "itemNumber": "30026"
                    }
                ],
                "admissionDate": "2026-10-19"
            }
        ]
    },
    "correlationId": "urn:uuid:MDE00000IMCW20261021PCO1"
}
headers = {
    "x-minor-id": "<minorId>",
    "x-api-key": "<apiKey>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.json())
```

```javascript Wound Repair
const url = 'https://test-api.rebateright.com.au/Medicare/inpatientmedicalclaim/pc/general/v2';
const options = {
  method: 'POST',
  headers: {
    'x-minor-id': '<minorId>',
    'x-api-key': '<apiKey>',
    'Content-Type': 'application/json'
  },
  body: '{"claim":{"accountPaidInd":"Y","accountReferenceId":"PCGEN01","claimTypeCode":"PC","facilityId":"9988770W","submissionAuthorityInd":"Y","patient":{"identity":{"dateOfBirth":"1986-12-18","familyName":"FLETCHER","givenName":"Edmond","sex":"1"},"medicare":{"memberNumber":"4951525561","memberRefNumber":"2"},"healthFund":{"memberNumber":"1234567","organisation":"TST","memberRefNumber":"1"}},"claimant":{"identity":{"dateOfBirth":"1986-12-18","familyName":"FLETCHER","givenName":"Edmond","sex":"1"},"medicare":{"memberNumber":"4951525561","memberRefNumber":"2"}},"principalProvider":{"providerNumber":"2447781L"},"accident":{"accidentInd":"N"},"serviceTypeCode":"O","medicalEvent":[{"id":"01","serviceProvider":{"providerNumber":"2447781L"},"service":[{"id":"0001","chargeAmount":"12000","dateOfService":"2026-10-20","itemNumber":"30026"}],"admissionDate":"2026-10-19"}]},"correlationId":"urn:uuid:MDE00000IMCW20261021PCO1"}'
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go Wound Repair
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io"
)

func main() {

	url := "https://test-api.rebateright.com.au/Medicare/inpatientmedicalclaim/pc/general/v2"

	payload := strings.NewReader("{\n  \"claim\": {\n    \"accountPaidInd\": \"Y\",\n    \"accountReferenceId\": \"PCGEN01\",\n    \"claimTypeCode\": \"PC\",\n    \"facilityId\": \"9988770W\",\n    \"submissionAuthorityInd\": \"Y\",\n    \"patient\": {\n      \"identity\": {\n        \"dateOfBirth\": \"1986-12-18\",\n        \"familyName\": \"FLETCHER\",\n        \"givenName\": \"Edmond\",\n        \"sex\": \"1\"\n      },\n      \"medicare\": {\n        \"memberNumber\": \"4951525561\",\n        \"memberRefNumber\": \"2\"\n      },\n      \"healthFund\": {\n        \"memberNumber\": \"1234567\",\n        \"organisation\": \"TST\",\n        \"memberRefNumber\": \"1\"\n      }\n    },\n    \"claimant\": {\n      \"identity\": {\n        \"dateOfBirth\": \"1986-12-18\",\n        \"familyName\": \"FLETCHER\",\n        \"givenName\": \"Edmond\",\n        \"sex\": \"1\"\n      },\n      \"medicare\": {\n        \"memberNumber\": \"4951525561\",\n        \"memberRefNumber\": \"2\"\n      }\n    },\n    \"principalProvider\": {\n      \"providerNumber\": \"2447781L\"\n    },\n    \"accident\": {\n      \"accidentInd\": \"N\"\n    },\n    \"serviceTypeCode\": \"O\",\n    \"medicalEvent\": [\n      {\n        \"id\": \"01\",\n        \"serviceProvider\": {\n          \"providerNumber\": \"2447781L\"\n        },\n        \"service\": [\n          {\n            \"id\": \"0001\",\n            \"chargeAmount\": \"12000\",\n            \"dateOfService\": \"2026-10-20\",\n            \"itemNumber\": \"30026\"\n          }\n        ],\n        \"admissionDate\": \"2026-10-19\"\n      }\n    ]\n  },\n  \"correlationId\": \"urn:uuid:MDE00000IMCW20261021PCO1\"\n}")

	req, _ := http.NewRequest("POST", url, payload)

	req.Header.Add("x-minor-id", "<minorId>")
	req.Header.Add("x-api-key", "<apiKey>")
	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 Wound Repair
require 'uri'
require 'net/http'

url = URI("https://test-api.rebateright.com.au/Medicare/inpatientmedicalclaim/pc/general/v2")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["x-minor-id"] = '<minorId>'
request["x-api-key"] = '<apiKey>'
request["Content-Type"] = 'application/json'
request.body = "{\n  \"claim\": {\n    \"accountPaidInd\": \"Y\",\n    \"accountReferenceId\": \"PCGEN01\",\n    \"claimTypeCode\": \"PC\",\n    \"facilityId\": \"9988770W\",\n    \"submissionAuthorityInd\": \"Y\",\n    \"patient\": {\n      \"identity\": {\n        \"dateOfBirth\": \"1986-12-18\",\n        \"familyName\": \"FLETCHER\",\n        \"givenName\": \"Edmond\",\n        \"sex\": \"1\"\n      },\n      \"medicare\": {\n        \"memberNumber\": \"4951525561\",\n        \"memberRefNumber\": \"2\"\n      },\n      \"healthFund\": {\n        \"memberNumber\": \"1234567\",\n        \"organisation\": \"TST\",\n        \"memberRefNumber\": \"1\"\n      }\n    },\n    \"claimant\": {\n      \"identity\": {\n        \"dateOfBirth\": \"1986-12-18\",\n        \"familyName\": \"FLETCHER\",\n        \"givenName\": \"Edmond\",\n        \"sex\": \"1\"\n      },\n      \"medicare\": {\n        \"memberNumber\": \"4951525561\",\n        \"memberRefNumber\": \"2\"\n      }\n    },\n    \"principalProvider\": {\n      \"providerNumber\": \"2447781L\"\n    },\n    \"accident\": {\n      \"accidentInd\": \"N\"\n    },\n    \"serviceTypeCode\": \"O\",\n    \"medicalEvent\": [\n      {\n        \"id\": \"01\",\n        \"serviceProvider\": {\n          \"providerNumber\": \"2447781L\"\n        },\n        \"service\": [\n          {\n            \"id\": \"0001\",\n            \"chargeAmount\": \"12000\",\n            \"dateOfService\": \"2026-10-20\",\n            \"itemNumber\": \"30026\"\n          }\n        ],\n        \"admissionDate\": \"2026-10-19\"\n      }\n    ]\n  },\n  \"correlationId\": \"urn:uuid:MDE00000IMCW20261021PCO1\"\n}"

response = http.request(request)
puts response.read_body
```

```java Wound Repair
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.post("https://test-api.rebateright.com.au/Medicare/inpatientmedicalclaim/pc/general/v2")
  .header("x-minor-id", "<minorId>")
  .header("x-api-key", "<apiKey>")
  .header("Content-Type", "application/json")
  .body("{\n  \"claim\": {\n    \"accountPaidInd\": \"Y\",\n    \"accountReferenceId\": \"PCGEN01\",\n    \"claimTypeCode\": \"PC\",\n    \"facilityId\": \"9988770W\",\n    \"submissionAuthorityInd\": \"Y\",\n    \"patient\": {\n      \"identity\": {\n        \"dateOfBirth\": \"1986-12-18\",\n        \"familyName\": \"FLETCHER\",\n        \"givenName\": \"Edmond\",\n        \"sex\": \"1\"\n      },\n      \"medicare\": {\n        \"memberNumber\": \"4951525561\",\n        \"memberRefNumber\": \"2\"\n      },\n      \"healthFund\": {\n        \"memberNumber\": \"1234567\",\n        \"organisation\": \"TST\",\n        \"memberRefNumber\": \"1\"\n      }\n    },\n    \"claimant\": {\n      \"identity\": {\n        \"dateOfBirth\": \"1986-12-18\",\n        \"familyName\": \"FLETCHER\",\n        \"givenName\": \"Edmond\",\n        \"sex\": \"1\"\n      },\n      \"medicare\": {\n        \"memberNumber\": \"4951525561\",\n        \"memberRefNumber\": \"2\"\n      }\n    },\n    \"principalProvider\": {\n      \"providerNumber\": \"2447781L\"\n    },\n    \"accident\": {\n      \"accidentInd\": \"N\"\n    },\n    \"serviceTypeCode\": \"O\",\n    \"medicalEvent\": [\n      {\n        \"id\": \"01\",\n        \"serviceProvider\": {\n          \"providerNumber\": \"2447781L\"\n        },\n        \"service\": [\n          {\n            \"id\": \"0001\",\n            \"chargeAmount\": \"12000\",\n            \"dateOfService\": \"2026-10-20\",\n            \"itemNumber\": \"30026\"\n          }\n        ],\n        \"admissionDate\": \"2026-10-19\"\n      }\n    ]\n  },\n  \"correlationId\": \"urn:uuid:MDE00000IMCW20261021PCO1\"\n}")
  .asString();
```

```php Wound Repair
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('POST', 'https://test-api.rebateright.com.au/Medicare/inpatientmedicalclaim/pc/general/v2', [
  'body' => '{
  "claim": {
    "accountPaidInd": "Y",
    "accountReferenceId": "PCGEN01",
    "claimTypeCode": "PC",
    "facilityId": "9988770W",
    "submissionAuthorityInd": "Y",
    "patient": {
      "identity": {
        "dateOfBirth": "1986-12-18",
        "familyName": "FLETCHER",
        "givenName": "Edmond",
        "sex": "1"
      },
      "medicare": {
        "memberNumber": "4951525561",
        "memberRefNumber": "2"
      },
      "healthFund": {
        "memberNumber": "1234567",
        "organisation": "TST",
        "memberRefNumber": "1"
      }
    },
    "claimant": {
      "identity": {
        "dateOfBirth": "1986-12-18",
        "familyName": "FLETCHER",
        "givenName": "Edmond",
        "sex": "1"
      },
      "medicare": {
        "memberNumber": "4951525561",
        "memberRefNumber": "2"
      }
    },
    "principalProvider": {
      "providerNumber": "2447781L"
    },
    "accident": {
      "accidentInd": "N"
    },
    "serviceTypeCode": "O",
    "medicalEvent": [
      {
        "id": "01",
        "serviceProvider": {
          "providerNumber": "2447781L"
        },
        "service": [
          {
            "id": "0001",
            "chargeAmount": "12000",
            "dateOfService": "2026-10-20",
            "itemNumber": "30026"
          }
        ],
        "admissionDate": "2026-10-19"
      }
    ]
  },
  "correlationId": "urn:uuid:MDE00000IMCW20261021PCO1"
}',
  'headers' => [
    'Content-Type' => 'application/json',
    'x-api-key' => '<apiKey>',
    'x-minor-id' => '<minorId>',
  ],
]);

echo $response->getBody();
```

```csharp Wound Repair
using RestSharp;

var client = new RestClient("https://test-api.rebateright.com.au/Medicare/inpatientmedicalclaim/pc/general/v2");
var request = new RestRequest(Method.POST);
request.AddHeader("x-minor-id", "<minorId>");
request.AddHeader("x-api-key", "<apiKey>");
request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json", "{\n  \"claim\": {\n    \"accountPaidInd\": \"Y\",\n    \"accountReferenceId\": \"PCGEN01\",\n    \"claimTypeCode\": \"PC\",\n    \"facilityId\": \"9988770W\",\n    \"submissionAuthorityInd\": \"Y\",\n    \"patient\": {\n      \"identity\": {\n        \"dateOfBirth\": \"1986-12-18\",\n        \"familyName\": \"FLETCHER\",\n        \"givenName\": \"Edmond\",\n        \"sex\": \"1\"\n      },\n      \"medicare\": {\n        \"memberNumber\": \"4951525561\",\n        \"memberRefNumber\": \"2\"\n      },\n      \"healthFund\": {\n        \"memberNumber\": \"1234567\",\n        \"organisation\": \"TST\",\n        \"memberRefNumber\": \"1\"\n      }\n    },\n    \"claimant\": {\n      \"identity\": {\n        \"dateOfBirth\": \"1986-12-18\",\n        \"familyName\": \"FLETCHER\",\n        \"givenName\": \"Edmond\",\n        \"sex\": \"1\"\n      },\n      \"medicare\": {\n        \"memberNumber\": \"4951525561\",\n        \"memberRefNumber\": \"2\"\n      }\n    },\n    \"principalProvider\": {\n      \"providerNumber\": \"2447781L\"\n    },\n    \"accident\": {\n      \"accidentInd\": \"N\"\n    },\n    \"serviceTypeCode\": \"O\",\n    \"medicalEvent\": [\n      {\n        \"id\": \"01\",\n        \"serviceProvider\": {\n          \"providerNumber\": \"2447781L\"\n        },\n        \"service\": [\n          {\n            \"id\": \"0001\",\n            \"chargeAmount\": \"12000\",\n            \"dateOfService\": \"2026-10-20\",\n            \"itemNumber\": \"30026\"\n          }\n        ],\n        \"admissionDate\": \"2026-10-19\"\n      }\n    ]\n  },\n  \"correlationId\": \"urn:uuid:MDE00000IMCW20261021PCO1\"\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
```

```swift Wound Repair
import Foundation

let headers = [
  "x-minor-id": "<minorId>",
  "x-api-key": "<apiKey>",
  "Content-Type": "application/json"
]
let parameters = [
  "claim": [
    "accountPaidInd": "Y",
    "accountReferenceId": "PCGEN01",
    "claimTypeCode": "PC",
    "facilityId": "9988770W",
    "submissionAuthorityInd": "Y",
    "patient": [
      "identity": [
        "dateOfBirth": "1986-12-18",
        "familyName": "FLETCHER",
        "givenName": "Edmond",
        "sex": "1"
      ],
      "medicare": [
        "memberNumber": "4951525561",
        "memberRefNumber": "2"
      ],
      "healthFund": [
        "memberNumber": "1234567",
        "organisation": "TST",
        "memberRefNumber": "1"
      ]
    ],
    "claimant": [
      "identity": [
        "dateOfBirth": "1986-12-18",
        "familyName": "FLETCHER",
        "givenName": "Edmond",
        "sex": "1"
      ],
      "medicare": [
        "memberNumber": "4951525561",
        "memberRefNumber": "2"
      ]
    ],
    "principalProvider": ["providerNumber": "2447781L"],
    "accident": ["accidentInd": "N"],
    "serviceTypeCode": "O",
    "medicalEvent": [
      [
        "id": "01",
        "serviceProvider": ["providerNumber": "2447781L"],
        "service": [
          [
            "id": "0001",
            "chargeAmount": "12000",
            "dateOfService": "2026-10-20",
            "itemNumber": "30026"
          ]
        ],
        "admissionDate": "2026-10-19"
      ]
    ]
  ],
  "correlationId": "urn:uuid:MDE00000IMCW20261021PCO1"
] as [String : Any]

let postData = JSONSerialization.data(withJSONObject: parameters, options: [])

let request = NSMutableURLRequest(url: NSURL(string: "https://test-api.rebateright.com.au/Medicare/inpatientmedicalclaim/pc/general/v2")! 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()
```