Medicare Claims #
Medicare claims are used when there is an out of pocket expense.
Workflow
When a Medicare Claim is submitted the response can be:
MEDICARE_ASSESSED which indicates that the claim will be accepted and processed overnight. Fetch the claim status to see details of the rebatable amount on each item, and the total benefit to be paid. Note that some items may have been rejected so it is important to review each item in the response.
MEDICARE_REJECTED which indicates that the entire claim was rejected, no benefit payable. Fetch the claim status to see additional information about the reasons for rejection.
MEDICARE_PENDABLE which indicates the some items on the claim require attention. The reasons must be displayed to the end user, who has the option to confirm the details and submit the claim without alteration, or to amend the claim and resubmit as a new claim. The API calls are different in each case, see below for examples. Note that although the call to send PENDABLE to PENDED is a PUT, you cannot edit the claim other than to add the “submitClaim” property.
MEDICARE_PENDED When a confirmation call is made for a MEDICARE_PENDABLE claim its status changes to MEDICARE_PENDED
Payment of rebates
If you indicate in the claim that the account was paid in full then the rebate will go to the claimant’s nominated account, usually by EFT the next day.
If the account wasn’t paid in full then Medicare will post a ‘Pay Doctor Via Claimant’ (PDVC) cheque to the claimant, who is responsible for forwarding the cheque to the practitioner. Should they neglect to send the cheque, the ‘90-day pay doctor cheque scheme’ kicks in for eligible health professionals. Medicare cancels the PDVC cheque and pays the Medicare benefit by EFT to the provider’s nominated account. See this page for more details.
POST
- Submit a Medicare claim - Fully paid by patient
#
This claim has flags.accountPaid
set to “Y” indicating it has been fully paid prior to submission. Payment will go to the claimant’s nominated account.
Fetch the claim status using the claimId
from the response.
Note: claims can only get a status of MEDICARE_ASSESSED if it is unique, once it has been sent to once it will return MEDICARE_PENDABLE instead. To attempt to get a unique result try using different dates of service or items.
{{base_url}}/{{version}}/claims?location={{location_id}}
Headers
Header | Value |
---|---|
Accept | application/json |
Content-Type | application/json |
Authorization | Bearer {{oauth_token}} |
Body
{
"type": "Medicare",
"flags": {
"accountPaid": "Y",
"serviceType": "O"
},
"items": [
{
"chargeAmount": "40.95",
"date": "{{today-1}}",
"itemNumber": "00023"
},
{
"chargeAmount": "40.95",
"date": "{{today}}",
"itemNumber": "00023"
}
],
"location": {
"name": "ROOMS",
"type": "R"
},
"patient": {
"dateOfBirth": "1982-10-24",
"gender": "F",
"medicare": {
"number": "4951306731",
"ref": "1"
},
"name": {
"family": "SIMKINS",
"first": "TALIA"
}
},
"provider": {
"servicing": "2433411Y"
}
}
Params
Param | value |
---|---|
location | {{location_id}} |
Request Body:
{
"client_id": "{{client_id}}",
"client_secret": "{{client_secret}}",
"grant_type": "client_credentials"
}
Example Request:
curl --location 'https://sandbox.claiming.com.au/v2/claims?location=25' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer ' \
--data '{
"type": "Medicare",
"flags": {
"accountPaid": "Y",
"serviceType": "O"
},
"items": [
{
"chargeAmount": "40.95",
"date": "{{today-1}}",
"itemNumber": "00023"
},
{
"chargeAmount": "40.95",
"date": "{{today}}",
"itemNumber": "00023"
}
],
"location": {
"name": "ROOMS",
"type": "R"
},
"patient": {
"dateOfBirth": "1982-10-24",
"gender": "F",
"medicare": {
"number": "4951306731",
"ref": "1"
},
"name": {
"family": "SIMKINS",
"first": "TALIA"
}
},
"provider": {
"servicing": "2433411Y"
}
}'
Example Response:
Body:
{
"claimId": 180054,
"medicareClaimId": "SAP0000009062021125919",
"message": "Will be paid to the patient or claimant's account",
"status": "MEDICARE_ASSESSED",
"transactionId": "SAP00000368bWAkeTecwJ2Is"
}
Headers:
Header | Value |
---|---|
Server | nginx/1.19.3 |
Date | Tue, 08 Jun 2021 04:49:28 GMT |
Content-Type | application/json |
Content-Length | 205 |
Connection | keep-alive |
Access-Control-Allow-Origin | * |
Access-Control-Allow-Methods | GET, POST, OPTIONS |
GET
- Check the status of an ASSESSED claim
#
The response shows the benefit payable for each item including any Medicare Safety Net adjustments to the rebate; and assessment notes if any.
You should now fetch the payment record with paymentId
{{base_url}}/{{version}}/claims/{{claim_id}}?location={{location_id}}
Headers
Header | Value |
---|---|
Accept | application/json |
Content-Type | application/json |
Authorization | Bearer {{oauth_token}} |
Params
Param | value |
---|---|
location | {{location_id}} |
Example Request:
curl --location 'https://sandbox.claiming.com.au/v2/claims/123?location=25' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer '
Example Response:
Body:
{
"type": "Medicare",
"flags": {
"accountPaid": false,
"serviceType": "O"
},
"location": {
"name": "ROOMS",
"provider": "9988770W",
"type": "R"
},
"patient": {
"dateOfBirth": "1982-10-24",
"gender": "F",
"medicare": {
"number": "4951306731",
"ref": "1"
},
"name": {
"family": "SIMKINS",
"first": "TALIA"
}
},
"provider": {
"servicing": "2433411Y"
},
"items": [
{
"chargeAmount": 40.95,
"date": "2020-01-04",
"itemNumber": "00023",
"MedicareVoucherId": "01",
"MedicareServiceId": "0001",
"assessmentNotes": [
{
"assessor": "Medicare",
"code": "ASSESSED"
}
],
"benefit": [
{
"assessor": "Medicare",
"benefitPaid": 38.2
}
]
}
],
"claimId": 179758,
"transactionId": "SAP00000PJqZv9fylzoJZp50",
"medicareClaimId": "SAP0000006062021111944",
"timeReceived": 1622942384,
"medicareError": 0,
"assessmentNotes": [],
"paymentId": 14951,
"status": "COMPLETE"
}
Headers:
Header | Value |
---|---|
Server | nginx/1.19.3 |
Date | Tue, 08 Jun 2021 04:49:28 GMT |
Content-Type | application/json |
Content-Length | 183 |
Connection | keep-alive |
Access-Control-Allow-Origin | * |
Access-Control-Allow-Methods | GET, POST, OPTIONS |
GET
- Fetch the payment for an ASSESSED claim
#
The payment response will have the total rebate benefit payable for the Medicare claim (sum of the item rebates in the claim object).
Because the claim was marked as Fully Paid, the rebate will go directly to the claimant.
NOTE: in the case of Medicare claims, this payment is indicative only, The claim may processed overnight with the EFT payment made to the claimant the following day.
{{base_url}}/{{version}}/payments/{{payment_id}}?location={{location_id}}
Headers
Header | Value |
---|---|
Accept | application/json |
Content-Type | application/json |
Authorization | Bearer {{oauth_token}} |
Params
Param | value |
---|---|
location | {{location_id}} |
Example Request:
curl --location 'https://sandbox.claiming.com.au/v2/payments/321?location=25' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer '
Example Response:
Body:
{
"paymentId": 14951,
"runNumber": "",
"date": "2021-06-06",
"amount": 38.2,
"claims": [
{
"medicareIdentifier": "SAP0000006062021111944",
"claimId": 0,
"amount": 38.2
}
],
"bank": {
"bsb": "",
"accountNumber": "",
"accountName": ""
},
"payerName": "Medicare Australia",
"remittanceAdviceId": "",
"eraTransactionId": "PCI-2021-06-06-IMIbZKvTovAnY8g4YNRDHPBe"
}
Headers:
Header | Value |
---|---|
Server | nginx/1.19.3 |
Date | Tue, 08 Jun 2021 04:49:28 GMT |
Content-Type | application/json |
Content-Length | 183 |
Connection | keep-alive |
Access-Control-Allow-Origin | * |
Access-Control-Allow-Methods | GET, POST, OPTIONS |
DELETE
- Same Day Delete of an ASSESSED Medicare claim
#
Same Day Delete (SDDW) is a function used to delete a Medicare Patient Claim (PCI) that was transmitted earlier on the same day. The delete request can only be used with a PCI claim that was successfully processed i.e. the claim status is MEDICARE_ASSESSED and as the name suggests, can only be used on the same day as the original claim.
The URL of the DELETE request contains the API claim_id
of the original request, and the body must contain one of the following as a reasonCode
.
- 001 - Incorrect Patient Selection
- 002 - Incorrect Provider Details
- 003 - Incorrect Date of Service
- 004 - Incorrect Item Number Claimed
- 005 - Omitted Text on Original Claim
- 006 - Incorrect Payment Type (i.e. Paid / Unpaid)
- 007 – Other
{{base_url}}/{{version}}/claims/{{claim_id}}?location={{location_id}}
Headers
Header | Value |
---|---|
Content-Type | application/json |
Authorization | Bearer {{oauth_token}} |
Params
Param | value |
---|---|
location | {{location_id}} |
Body
{
"reasonCode": "001"
}
Example Request:
curl --location --request DELETE 'https://sandbox.claiming.com.au/v2/claims/123?location=25' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer ' \
--data '{
"reasonCode": "001"
}'
Example Response:
Body:
{
"status": "OK",
"message": "Claim has been successfully deleted"
}
Headers:
Header | Value |
---|---|
Server | nginx/1.19.3 |
Date | Tue, 08 Jun 2021 04:49:28 GMT |
Content-Type | application/json |
Content-Length | 183 |
Connection | keep-alive |
Access-Control-Allow-Origin | * |
Access-Control-Allow-Methods | GET, POST, OPTIONS |
GET
- Check the status of a DELETED claim
#
If you get an OK on the Same Day Delete request there’s no need to further check its status. For clarity, a deleted PCI claim has a
status
of CANCELLED and a note
of SDD.
{{base_url}}/{{version}}/claims/{{claim_id}}?location={{location_id}}
Headers
Header | Value |
---|---|
Accept | application/json |
Content-Type | application/json |
Authorization | Bearer {{oauth_token}} |
Params
Param | value |
---|---|
location | {{location_id}} |
Example Request:
curl --location 'https://sandbox.claiming.com.au/v2/claims/123?location=25' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer '
Example Response:
Body:
{
"type": "Medicare",
"flags": {
"accountPaid": true,
"serviceType": "O"
},
"location": {
"name": "ROOMS",
"type": "R"
},
"patient": {
"dateOfBirth": "1982-10-24",
"gender": "F",
"medicare": {
"number": "4951306731",
"ref": "1"
},
"name": {
"family": "SIMKINS",
"first": "TALIA"
}
},
"provider": {
"servicing": "2433411Y"
},
"items": [
{
"chargeAmount": 40.95,
"date": "2021-09-30",
"itemNumber": "00023",
"MedicareVoucherId": "01",
"MedicareServiceId": "0001"
},
{
"chargeAmount": 40.95,
"date": "2021-10-01",
"itemNumber": "00023",
"MedicareVoucherId": "02",
"MedicareServiceId": "0002"
}
],
"sddReasonCode": "001",
"claimId": 186130,
"transactionId": "SAP00000zz9WcBfGspeqJoNT",
"medicareClaimId": "SAP0000001102021142048",
"timeReceived": 1633062047,
"medicareError": 0,
"note": "SDD",
"status": "CANCELLED"
}
Headers:
Header | Value |
---|---|
Server | nginx/1.19.3 |
Date | Tue, 08 Jun 2021 04:49:28 GMT |
Content-Type | application/json |
Content-Length | 183 |
Connection | keep-alive |
Access-Control-Allow-Origin | * |
Access-Control-Allow-Methods | GET, POST, OPTIONS |
POST
- Submit a Medicare claim (Has errors)
#
When a Medicare claim returns a status of MEDICARE_PENDABLE it indicates that one or more items on the claim needs to be reviewed by the end user.
Fetch the claim status using the claimId
for the details.
{{base_url}}/{{version}}/claims?location={{location_id}}
Headers
Header | Value |
---|---|
Accept | application/json |
Content-Type | application/json |
Authorization | Bearer {{oauth_token}} |
Params
Param | value |
---|---|
location | {{location_id}} |
Body
{
"type": "Medicare",
"flags": {
"accountPaid": "N",
"serviceType": "O"
},
"items": [
{
"chargeAmount": "40.95",
"date": "{{today}}",
"itemNumber": "00023"
}
],
"location": {
"name": "St Elsewhere's Hospital",
"provider": "9988770W",
"type": "H"
},
"patient": {
"dateOfBirth": "1982-10-24",
"gender": "F",
"medicare": {
"number": "4951306731",
"ref": "1"
},
"name": {
"family": "SIMKINS",
"first": "TALIA"
}
},
"provider": {
"servicing": "2433411Y"
}
}
Example Request:
curl --location 'https://sandbox.claiming.com.au/v2/claims?location=25' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer ' \
--data '{
"type": "Medicare",
"flags": {
"accountPaid": "N",
"serviceType": "O"
},
"items": [
{
"chargeAmount": "40.95",
"date": "2020-01-04",
"itemNumber": "00023"
}
],
"location": {
"name": "St Elsewhere'\''s Hospital",
"provider": "9988770W",
"type": "H"
},
"patient": {
"dateOfBirth": "1982-10-24",
"gender": "F",
"medicare": {
"number": "4951306731",
"ref": "1"
},
"name": {
"family": "SIMKINS",
"first": "TALIA"
}
},
"provider": {
"servicing": "2433411Y"
}
}'
Example Response:
Body:
{
"claimId": 170404,
"medicareClaimId": "SAP0000029102020102041",
"message": "One or more items on the claim needs review before it can be submitted, see individual items for details.",
"status": "MEDICARE_PENDABLE",
"transactionId": "SAP0000060e8G9ax7z0QlrdK"
}
Headers:
Header | Value |
---|---|
Server | nginx/1.19.3 |
Date | Tue, 08 Jun 2021 04:49:28 GMT |
Content-Type | application/json |
Content-Length | 183 |
Connection | keep-alive |
Access-Control-Allow-Origin | * |
Access-Control-Allow-Methods | GET, POST, OPTIONS |
GET
- Check the status of the claim
#
In this case the error code 9613 indicates that the service claimed cannot be performed in hospital. (Item 23 is for a service performed in consulting rooms, and the claim indicated it was an in-hospital service). The user should not proceed with this claim, it should be abandoned and they should submit an amended claim with the correct details.
NOTE: no action is required to abandon a Medicare claim. After 1 hour it automatically becomes inactive. You can check the status of an abandoned Medicare claim at any point in the future, but it can no longer be submitted.
{{base_url}}/{{version}}/claims/{{claim_id}}?location={{location_id}}
Headers
Header | Value |
---|---|
Accept | application/json |
Content-Type | application/json |
Authorization | Bearer {{oauth_token}} |
Params
Param | value |
---|---|
location | {{location_id}} |
Example Request:
curl --location 'https://sandbox.claiming.com.au/v2/claims/123?location=25' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer '
Example Response:
Body:
{
"type": "Medicare",
"flags": {
"accountPaid": false,
"serviceType": "O"
},
"location": {
"name": "St Elsewhere's Hospital",
"provider": "9988770W",
"type": "H"
},
"patient": {
"dateOfBirth": "1982-10-24",
"gender": "F",
"medicare": {
"number": "4951306731",
"ref": "1"
},
"name": {
"family": "SIMKINS",
"first": "TALIA"
}
},
"provider": {
"servicing": "2433411Y"
},
"items": [
{
"chargeAmount": 40.95,
"date": "2020-01-04",
"itemNumber": "00023",
"MedicareVoucherId": "01",
"MedicareServiceId": "0001",
"assessmentNotes": [
{
"assessor": "Medicare",
"code": "ACCEPTABLE_ERROR"
},
{
"assessor": "Medicare",
"code": "9613",
"note": "This service cannot be performed in hospital."
}
],
"benefit": []
}
],
"claimId": 179757,
"transactionId": "SAP00000A8TyyKaELkQfnUj2",
"medicareClaimId": "SAP0000006062021110432",
"timeReceived": 1622941471,
"medicareError": 0,
"assessmentNotes": [],
"status": "MEDICARE_PENDABLE"
}
Headers:
Header | Value |
---|---|
Server | nginx/1.19.3 |
Date | Tue, 08 Jun 2021 04:49:28 GMT |
Content-Type | application/json |
Content-Length | 183 |
Connection | keep-alive |
Access-Control-Allow-Origin | * |
Access-Control-Allow-Methods | GET, POST, OPTIONS |
POST
- Submit a Medicare claim (MEDICARE_ASSESSED)
#
With the corrected details for an out-of-hospital service, the claim is immediately assessed (“status”: “MEDICARE_ASSESSED”).
Fetch the claim status using the claimId
for the rebate details.
{{base_url}}/{{version}}/claims?location={{location_id}}
Headers
Header | Value |
---|---|
Accept | application/json |
Content-Type | application/json |
Authorization | Bearer {{oauth_token}} |
Params
Param | value |
---|---|
location | {{location_id}} |
Body
{
"type": "Medicare",
"flags": {
"accountPaid": "N",
"serviceType": "O"
},
"items": [
{
"chargeAmount": "40.95",
"date": "{{yesterday}}",
"itemNumber": "00023"
}
],
"location": {
"name": "ROOMS",
"type": "R"
},
"patient": {
"dateOfBirth": "1982-10-24",
"gender": "F",
"medicare": {
"number": "4951306731",
"ref": "1"
},
"name": {
"family": "SIMKINS",
"first": "TALIA"
}
},
"provider": {
"servicing": "2433411Y"
}
}
Example Request:
curl --location 'https://sandbox.claiming.com.au/v2/claims?location=25' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer ' \
--data '{
"type": "Medicare",
"flags": {
"accountPaid": "N",
"serviceType": "O"
},
"items": [
{
"chargeAmount": "40.95",
"date": "{{yesterday}}",
"itemNumber": "00023"
}
],
"location": {
"name": "ROOMS",
"type": "R"
},
"patient": {
"dateOfBirth": "1982-10-24",
"gender": "F",
"medicare": {
"number": "4951306731",
"ref": "1"
},
"name": {
"family": "SIMKINS",
"first": "TALIA"
}
},
"provider": {
"servicing": "2433411Y"
}
}'
Example Response:
Body:
{
"claimId": 179775,
"medicareClaimId": "SAP0000006062021130609",
"message": "Will be paid via a 'Pay Doctor Via Claimant (PDVC)' cheque sent to the claimant's address",
"status": "MEDICARE_ASSESSED",
"transactionId": "SAP00000tm5OjdfDGoibtOOc"
}
Headers:
Header | Value |
---|---|
Server | nginx/1.19.3 |
Date | Tue, 08 Jun 2021 04:49:28 GMT |
Content-Type | application/json |
Content-Length | 183 |
Connection | keep-alive |
Access-Control-Allow-Origin | * |
Access-Control-Allow-Methods | GET, POST, OPTIONS |
GET
- Check the status of an ASSESSED claim
#
The response shows the benefit payable for each item including any Medicare Safety Net adjustments to the rebate; and assessment notes if any.
You should now fetch the payment record with paymentId
{{base_url}}/{{version}}/claims/{{claim_id}}?location={{location_id}}
Headers
Header | Value |
---|---|
Accept | application/json |
Content-Type | application/json |
Authorization | Bearer {{oauth_token}} |
Params
Param | value |
---|---|
location | {{location_id}} |
Example Request:
curl --location 'https://sandbox.claiming.com.au/v2/claims/123?location=25' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer '
Example Response:
Body:
{
"type": "Medicare",
"flags": {
"accountPaid": false,
"serviceType": "O"
},
"location": {
"name": "St Elsewhere's Hospital",
"provider": "9988770W",
"type": "H"
},
"patient": {
"dateOfBirth": "1982-10-24",
"gender": "F",
"medicare": {
"number": "4951306731",
"ref": "1"
},
"name": {
"family": "SIMKINS",
"first": "TALIA"
}
},
"provider": {
"servicing": "2433411Y"
},
"items": [
{
"chargeAmount": 40.95,
"date": "2020-01-04",
"itemNumber": "00023",
"MedicareVoucherId": "01",
"MedicareServiceId": "0001",
"assessmentNotes": [
{
"assessor": "Medicare",
"code": "ACCEPTABLE_ERROR"
},
{
"assessor": "Medicare",
"code": "9613",
"note": "This service cannot be performed in hospital."
}
],
"benefit": []
}
],
"claimId": 179757,
"transactionId": "SAP00000A8TyyKaELkQfnUj2",
"medicareClaimId": "SAP0000006062021110432",
"timeReceived": 1622941471,
"medicareError": 0,
"assessmentNotes": [],
"status": "MEDICARE_PENDABLE"
}
Headers:
Header | Value |
---|---|
Server | nginx/1.19.3 |
Date | Tue, 08 Jun 2021 04:49:28 GMT |
Content-Type | application/json |
Content-Length | 183 |
Connection | keep-alive |
Access-Control-Allow-Origin | * |
Access-Control-Allow-Methods | GET, POST, OPTIONS |
GET
- Fetch the payment for an ASSESSED claim
#
The payment response will have the total rebate benefit payable for the Medicare claim (sum of the item rebates in the claim object).
NOTE: in the case of Medicare claims, this payment is indicative only, The claim will processed overnight at which time actual payment will be made to the claimant (for a fully paid account) or with a PDVC cheque as described above.
{{base_url}}/{{version}}/payments/{{payment_id}}?location={{location_id}}
Headers
Header | Value |
---|---|
Accept | application/json |
Content-Type | application/json |
Authorization | Bearer {{oauth_token}} |
Params
Param | value |
---|---|
location | {{location_id}} |
Example Request:
curl --location 'https://sandbox.claiming.com.au/v2/payments/321?location=25' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer '
Example Response:
Body:
{
"paymentId": 14951,
"runNumber": "",
"date": "2021-06-06",
"amount": 38.2,
"claims": [
{
"medicareIdentifier": "SAP0000006062021111944",
"claimId": 0,
"amount": 38.2
}
],
"bank": {
"bsb": "",
"accountNumber": "",
"accountName": ""
},
"payerName": "Medicare Australia",
"remittanceAdviceId": "",
"eraTransactionId": "PCI-2021-06-06-IMIbZKvTovAnY8g4YNRDHPBe"
}
Headers:
Header | Value |
---|---|
Server | nginx/1.19.3 |
Date | Tue, 08 Jun 2021 04:49:28 GMT |
Content-Type | application/json |
Content-Length | 183 |
Connection | keep-alive |
Access-Control-Allow-Origin | * |
Access-Control-Allow-Methods | GET, POST, OPTIONS |
POST
- Submit a Medicare claim (PENDABLE)
#
This claim comes back with the status of MEDICARE_PENDABLE but in this case the provider wants to submit it for assessing without changes, due to the duplicate on the day.
{{base_url}}/{{version}}/claims?location={{location_id}}
Headers
Header | Value |
---|---|
Content-Type | application/json |
Authorization | Bearer {{oauth_token}} |
Params
Param | value |
---|---|
location | {{location_id}} |
Body
{
"type": "Medicare",
"flags": {
"serviceType": "O",
"accountPaid": "N"
},
"patient": {
"dateOfBirth": "1951-04-24",
"medicare": {
"number": "5950969521",
"ref": 1
},
"gender": "F",
"name": {
"first": "Jamee",
"family": "Post"
}
},
"claimant": {
"dateOfBirth": "1951-04-24",
"medicare": {
"number": "5950969521",
"ref": 1
},
"gender": "F",
"name": {
"first": "Jamee",
"family": "Post"
},
"phone": "0414141414"
},
"provider": {
"servicing": "2433411Y"
},
"items": [
{
"chargeAmount": "66.20",
"date": "{{today-2}}",
"itemNumber": "160"
},
{
"chargeAmount": "66.20",
"date": "{{today-2}}",
"itemNumber": "160",
"duplicateServiceOverride": "Y",
"serviceText": "Patient returned for a second consultation"
}
],
"location": {
"type": "R"
}
}
Example Request:
curl --location 'https://sandbox.claiming.com.au/v2/claim?location=25' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer ' \
--data '{
"type": "Medicare",
"flags": {
"serviceType": "O",
"accountPaid": "N"
},
"patient": {
"dateOfBirth": "1951-04-24",
"medicare": {
"number": "5950969521",
"ref": 1
},
"gender": "F",
"name": {
"first": "Jamee",
"family": "Post"
}
},
"claimant": {
"dateOfBirth": "1951-04-24",
"medicare": {
"number": "5950969521",
"ref": 1
},
"gender": "F",
"name": {
"first": "Jamee",
"family": "Post"
},
"phone": "0414141414"
},
"provider": {
"servicing": "2433411Y"
},
"items": [
{
"chargeAmount": "66.20",
"date": "{{today-1}}",
"itemNumber": "160"
},
{
"chargeAmount": "66.20",
"date": "{{today-1}}",
"itemNumber": "160",
"duplicateServiceOverride": "Y",
"serviceText": "Patient returned for a second consultation"
}
],
"location": {
"type": "R"
}
}'
Example Response:
Body:
{
"claimId": 179765,
"medicareClaimId": "SAP0000006062021123751",
"message": "One or more items on the claim needs review before it can be submitted, see individual items for details.",
"status": "MEDICARE_PENDABLE",
"transactionId": "SAP00000EYP15iUvfL4Lyfcr"
}
Headers:
Header | Value |
---|---|
Server | nginx/1.19.3 |
Date | Tue, 08 Jun 2021 04:49:28 GMT |
Content-Type | application/json |
Content-Length | 183 |
Connection | keep-alive |
Access-Control-Allow-Origin | * |
Access-Control-Allow-Methods | GET, POST, OPTIONS |
GET
- Check the status of a PENDABLE claim
#
In this case the response indicates that there’s a restrictive condition. The end user can now be given the option to submit the claim for assessment by an operator. You do this using the PUT claim endpoint.
{{base_url}}/{{version}}/claims/{{claim_id}}?location={{location_id}}
Headers
Header | Value |
---|---|
Accept | application/json |
Content-Type | application/json |
Authorization | Bearer {{oauth_token}} |
Params
Param | value |
---|---|
location | {{location_id}} |
Example Request:
curl --location 'https://sandbox.claiming.com.au/v2/claims/123?location=25' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer '
Example Response:
Body:
{
"type": "Medicare",
"flags": {
"serviceType": "O",
"accountPaid": false
},
"patient": {
"dateOfBirth": "1951-04-24",
"medicare": {
"number": "5950969521",
"ref": "1"
},
"gender": "F",
"name": {
"first": "Jamee",
"family": "Post"
}
},
"claimant": {
"dateOfBirth": "1951-04-24",
"medicare": {
"number": "5950969521",
"ref": "1"
},
"gender": "F",
"name": {
"first": "Jamee",
"family": "Post"
},
"phone": "0414141414"
},
"provider": {
"servicing": "2433411Y"
},
"location": {
"type": "R"
},
"items": [
{
"chargeAmount": 66.2,
"date": "2021-06-04",
"itemNumber": "160",
"MedicareVoucherId": "01",
"MedicareServiceId": "0001",
"assessmentNotes": [
{
"assessor": "Medicare",
"code": "ACCEPTABLE_ERROR"
},
{
"assessor": "Medicare",
"code": "9641",
"note": "A restrictive condition exists."
}
],
"benefit": []
},
{
"chargeAmount": 66.2,
"date": "2021-06-04",
"itemNumber": "160",
"duplicateServiceOverride": true,
"serviceText": "Patient returned for a second consultation",
"MedicareVoucherId": "01",
"MedicareServiceId": "0002",
"assessmentNotes": [
{
"assessor": "Medicare",
"code": "ACCEPTABLE_ERROR"
},
{
"assessor": "Medicare",
"code": "9641",
"note": "A restrictive condition exists."
}
],
"benefit": []
}
],
"claimId": 179766,
"transactionId": "SAP00000d8lzqLH09aASl6Ct",
"medicareClaimId": "SAP0000006062021124029",
"timeReceived": 1622947228,
"medicareError": 0,
"assessmentNotes": [],
"status": "MEDICARE_PENDABLE"
}
Headers:
Header | Value |
---|---|
Server | nginx/1.19.3 |
Date | Tue, 08 Jun 2021 04:49:28 GMT |
Content-Type | application/json |
Content-Length | 183 |
Connection | keep-alive |
Access-Control-Allow-Origin | * |
Access-Control-Allow-Methods | GET, POST, OPTIONS |
PUT
- Send PENDABLE claim to Operator
#
Using the PUT claim endpoint with the ‘claimId’ from the Medicare claim will move the claim from MEDICARE_PENDABLE to MEDICARE_PENDED
NOTE: Although this is a PUT call, any changes you make to the claim will be ignored, all you can do is add the “submitClaim”: 1 property. Any changes beyond that mean a new claim needs to be made.
NOTE: Because this claim has to be assessed by a human operator, there will be no further processing or payment reporting available from Medicare.
{{base_url}}/{{version}}/claims/{{claim_id}}?location={{location_id}}
Headers
Header | Value |
---|---|
Content-Type | application/json |
Authorization | Bearer {{oauth_token}} |
Params
Param | value |
---|---|
location | {{location_id}} |
Body
{"submitClaim": 1}
Example Request:
curl --location --request PUT 'https://sandbox.claiming.com.au/v2/claims/123?location=25' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer ' \
--data '{"submitClaim": 1}'
Example Response:
Body:
{
"type": "Medicare",
"flags": {
"serviceType": "O",
"accountPaid": false
},
"patient": {
"dateOfBirth": "1951-04-24",
"medicare": {
"number": "5950969521",
"ref": "1"
},
"gender": "F",
"name": {
"first": "Jamee",
"family": "Post"
}
},
"claimant": {
"dateOfBirth": "1951-04-24",
"medicare": {
"number": "5950969521",
"ref": "1"
},
"gender": "F",
"name": {
"first": "Jamee",
"family": "Post"
},
"phone": "0414141414"
},
"provider": {
"servicing": "2433411Y"
},
"location": {
"type": "R"
},
"items": [
{
"chargeAmount": 66.2,
"date": "2021-06-04",
"itemNumber": "160",
"MedicareVoucherId": "01",
"MedicareServiceId": "0001",
"assessmentNotes": [
{
"assessor": "Medicare",
"code": "ACCEPTABLE_ERROR"
},
{
"assessor": "Medicare",
"code": "9641",
"note": "A restrictive condition exists."
}
],
"benefit": []
},
{
"chargeAmount": 66.2,
"date": "2021-06-04",
"itemNumber": "160",
"duplicateServiceOverride": true,
"serviceText": "Patient returned for a second consultation",
"MedicareVoucherId": "01",
"MedicareServiceId": "0002",
"assessmentNotes": [
{
"assessor": "Medicare",
"code": "ACCEPTABLE_ERROR"
},
{
"assessor": "Medicare",
"code": "9641",
"note": "A restrictive condition exists."
}
],
"benefit": []
}
],
"claimId": 179766,
"transactionId": "SAP00000d8lzqLH09aASl6Ct",
"medicareClaimId": "SAP0000006062021124029",
"timeReceived": 1622947228,
"medicareError": 0,
"assessmentNotes": [],
"status": "MEDICARE_PENDED"
}
Headers:
Header | Value |
---|---|
Server | nginx/1.19.3 |
Date | Tue, 08 Jun 2021 04:49:28 GMT |
Content-Type | application/json |
Content-Length | 183 |
Connection | keep-alive |
Access-Control-Allow-Origin | * |
Access-Control-Allow-Methods | GET, POST, OPTIONS |
PUT
- Send PENDABLE claim to Operator - EXPIRED
#
The PUT command must be used within 60 minutes of the original claim submission to convert it from MEDICARE_PENDABLE to MEDICARE_PENDED. Check the response to confirm that this restriction has not been exceeded. After 60 minutes the original claim will have expired at Medicare and a new claim is required.
{{base_url}}/{{version}}/claims/{{claim_id}}?location={{location_id}}
Headers
Header | Value |
---|---|
Content-Type | application/json |
Authorization | Bearer {{oauth_token}} |
Params
Param | value |
---|---|
location | {{location_id}} |
Body
{"submitClaim": 1}
Example Request:
curl --location --request PUT 'https://sandbox.claiming.com.au/v2/claims/123?location=25' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer ' \
--data '{"submitClaim": 1}'
Example Response:
Body:
{
"status": "INVALID",
"message": "Pendable claims must be sent to Medicare within an hour of the original request"
}
Headers:
Header | Value |
---|---|
Server | nginx/1.19.3 |
Date | Tue, 08 Jun 2021 04:49:28 GMT |
Content-Type | application/json |
Content-Length | 183 |
Connection | keep-alive |
Access-Control-Allow-Origin | * |
Access-Control-Allow-Methods | GET, POST, OPTIONS |
POST
- Submit a Medicare claim (MEDICARE_REJECTED)
#
When a Medicare Claim responds with a status of MEDICARE_REJECTED, fetch the claim status and look in the assessment notes for an explanation.
Rejected claims need to be abandoned, and a new claim with amended information must be submitted.
{{base_url}}/{{version}}/claims?location={{location_id}}
Headers
Header | Value |
---|---|
Content-Type | application/json |
Authorization | Bearer {{oauth_token}} |
Params
Param | value |
---|---|
location | {{location_id}} |
Body
{
"type": "Medicare",
"flags": {
"serviceType": "P",
"certifiedInd": "Y",
"accountPaid": "N"
},
"patient": {
"dateOfBirth": "1951-04-24",
"medicare": {
"number": "5950969521",
"ref": 1
},
"gender": "F",
"name": {
"first": "Jamee",
"family": "Post"
}
},
"provider": {
"servicing": "2433421X"
},
"items": [
{
"chargeAmount": "19.05",
"date": "{{today-1}}",
"itemNumber": "65137",
"SCPId": "00001",
"serviceText": "Some Text"
}
],
"referral": {
"date": "{{today-2}}",
"referralType": "P",
"provider": "2054781W"
}
}
Example Request:
curl --location 'https://sandbox.claiming.com.au/v2/claims?location=25' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer ' \
--data '{
"type": "Medicare",
"flags": {
"serviceType": "P",
"certifiedInd": "Y",
"accountPaid": "N"
},
"patient": {
"dateOfBirth": "1951-04-24",
"medicare": {
"number": "5950969521",
"ref": 1
},
"gender": "F",
"name": {
"first": "Jamee",
"family": "Post"
}
},
"provider": {
"servicing": "2433421X"
},
"items": [
{
"chargeAmount": "19.05",
"date": "{{today-1}}",
"itemNumber": "65137",
"SCPId": "00001",
"serviceText": "Some Text"
}
],
"referral": {
"date": "{{today-2}}",
"referralType": "P",
"provider": "2054781W"
}
}'
Example Response:
Body:
{
"claimId": 179774,
"medicareClaimId": "SAP0000006062021125211",
"message": "The claim was rejected, see individual items for details.",
"status": "MEDICARE_REJECTED",
"transactionId": "SAP00000ciqdmc8Oa35RSCzf"
}
Headers:
Header | Value |
---|---|
Server | nginx/1.19.3 |
Date | Tue, 08 Jun 2021 04:49:28 GMT |
Content-Type | application/json |
Content-Length | 183 |
Connection | keep-alive |
Access-Control-Allow-Origin | * |
Access-Control-Allow-Methods | GET, POST, OPTIONS |
GET
- Check the status of a REJECTED claim
#
In this case the error code 9613 indicates that the service claimed cannot be performed in hospital. (Item 23 is for a service performed in consulting rooms, and the claim indicated it was an in-hospital service). The user should not proceed with this claim, it should be abandoned and they should submit an amended claim with the correct details.
NOTE: no action is required to abandon a Medicare claim. After 1 hour it automatically becomes inactive. You can check the status of an abandoned Medicare claim at any point in the future, but it can no longer be submitted.
{{base_url}}/{{version}}/claims/{{claim_id}}?location={{location_id}}
Headers
Header | Value |
---|---|
Accept | application/json |
Content-Type | application/json |
Authorization | Bearer {{oauth_token}} |
Params
Param | value |
---|---|
location | {{location_id}} |
Example Request:
curl --location 'https://sandbox.claiming.com.au/v2/claims/123?location=25' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer '
Example Response:
Body:
{
"type": "Medicare",
"flags": {
"serviceType": "P",
"certifiedInd": "Y",
"accountPaid": false
},
"patient": {
"dateOfBirth": "1951-04-24",
"medicare": {
"number": "5950969521",
"ref": "1"
},
"gender": "F",
"name": {
"first": "Jamee",
"family": "Post"
}
},
"provider": {
"servicing": "2433421X"
},
"referral": {
"date": "2021-06-04",
"referralType": "P",
"provider": "2054781W"
},
"items": [
{
"chargeAmount": 19.05,
"date": "2021-06-05",
"itemNumber": "65137",
"SCPId": "00001",
"serviceText": "Some Text",
"MedicareVoucherId": "01",
"MedicareServiceId": "0001",
"assessmentNotes": [
{
"assessor": "Medicare",
"code": "UNACCEPTABLE_ERROR"
},
{
"assessor": "Medicare",
"code": "9635",
"note": "Check Servicing Provider. May not be able to provide the service for this item at date of service."
}
],
"benefit": []
}
],
"claimId": 179774,
"transactionId": "SAP00000ciqdmc8Oa35RSCzf",
"medicareClaimId": "SAP0000006062021125211",
"timeReceived": 1622947931,
"medicareError": 0,
"assessmentNotes": [],
"status": "MEDICARE_REJECTED"
}
Headers:
Header | Value |
---|---|
Server | nginx/1.19.3 |
Date | Tue, 08 Jun 2021 04:49:28 GMT |
Content-Type | application/json |
Content-Length | 183 |
Connection | keep-alive |
Access-Control-Allow-Origin | * |
Access-Control-Allow-Methods | GET, POST, OPTIONS |
POST
Submit a Medicare claim with Claimant details
#
Where the claimant is not the patient e.g. where the patient is a child, add claimant details to the request.
{{base_url}}/{{version}}/claim?location={{location_id}}
Headers
Header | Value |
---|---|
Content-Type | application/json |
Authorization | Bearer {{oauth_token}} |
Params
Param | value |
---|---|
location | {{location_id}} |
Body
{
"_TestCase": "Submit a Medicare claim with Claimant details",
"type": "Medicare",
"flags": {
"serviceType": "O",
"accountPaid": "N"
},
"patient": {
"dateOfBirth": "2009-04-05",
"medicare": {
"number": "6951141701",
"ref": 4
},
"gender": "F",
"name": {
"first": "Belinda",
"family": "BATES"
}
},
"claimant": {
"dateOfBirth": "1975-05-26",
"medicare": {
"number": "6951141701",
"ref": 1
},
"gender": "M",
"name": {
"first": "Feredinand",
"family": "BATES"
},
"phone": "0414141414"
},
"provider": {
"servicing": "2433411Y"
},
"items": [
{
"chargeAmount": "66.20",
"date": "{{today-2}}",
"itemNumber": "160"
}
],
"location": {
"type": "R"
}
}
Example Request:
curl --location 'https://sandbox.claiming.com.au/v2/claim?location=25' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer ' \
--data '{
"_TestCase": "Submit a Medicare claim with Claimant details",
"type": "Medicare",
"flags": {
"serviceType": "O",
"accountPaid": "N"
},
"patient": {
"dateOfBirth": "2009-04-05",
"medicare": {
"number": "6951141701",
"ref": 4
},
"gender": "F",
"name": {
"first": "Belinda",
"family": "BATES"
}
},
"claimant": {
"dateOfBirth": "1975-05-26",
"medicare": {
"number": "6951141701",
"ref": 1
},
"gender": "M",
"name": {
"first": "Feredinand",
"family": "BATES"
},
"phone": "0414141414"
},
"provider": {
"servicing": "2433411Y"
},
"items": [
{
"chargeAmount": "66.20",
"date": "{{today-2}}",
"itemNumber": "160"
}
],
"location": {
"type": "R"
}
}'
Example Response:
Body:
{
"claimId": 187501,
"medicareClaimId": "SAP0000022102021080418",
"message": "Will be paid via a 'Pay Doctor Via Claimant (PDVC)' cheque sent to the claimant's address",
"status": "MEDICARE_ASSESSED",
"transactionId": "SAP00000xNBGf1bLv7UCiFZc"
}
Headers:
Header | Value |
---|---|
Server | nginx/1.19.3 |
Date | Tue, 08 Jun 2021 04:49:28 GMT |
Content-Type | application/json |
Content-Length | 183 |
Connection | keep-alive |
Access-Control-Allow-Origin | * |
Access-Control-Allow-Methods | GET, POST, OPTIONS |