Note these are reserved APIs for use by Healthcode internal products only. These APIs must not be consumed by external integrators.

Remittances

Remittance data can be retrieved in two parts: summary and detail. The remittance summary uses the PaymentReconciliation resource, whereas the remittance detail uses the ClaimResponse resource. The following APIs enable operations on these resources.

Search Remittance Summary

The Search Remittance Summary – API provides enhanced search capabilities through advanced filtering and sorting options to retrieve remittance summary information.

Endpoint

Must be looked up from the discovery document using search_remittance_summary_endpoint key.

Request

curl --request POST
	--url '{search_remittance_summary_endpoint}' 
	--header 'SU-SiteId: HC16190' 
	--header 'Content-Type: application/x-www-form-urlencoded' 
	--header 'Authorization: Bearer abCdE12...89mNopq0r' 
	--data-urlencode 'page=1' 
	--data-urlencode 'count=10' 
	--data-urlencode 'insurerIdentifier=slh' 
	--data-urlencode 'provider=P162345' 
	--data-urlencode 'invoiceNumber=INV069' 
	--data-urlencode 'patientName=Nelson' 
	--data-urlencode 'membershipNumber=REG004' 
	--data-urlencode 'dateCreated=2025-05-01_2025-05-03' 
	--data-urlencode 'datePaid=2025-01-01_2025-01-03' 
	--data-urlencode 'paymentAmount=ge1500.00' 
	--data-urlencode 'amountInvoiced=ge2000.00' 
	--data-urlencode 'paymentReference=PAY169991' 
	--data-urlencode 'hasShortFall=true' 
	--data-urlencode 'excludeExported=true' 
	--data-urlencode '_sort=providerName'

Where,

FieldTypeMandatory/ OptionalDescription
insurerIdentifierStringOInsurer/Payor identifier. Following are the supported insurers/payors and its identifiers:
Bupa = bup
Bupa Global = bui
AXA Health = ppp
Aviva = nuh
Vitality Health = slh
Cigna International = cin
Trust In Health = tih
WPA = wpa
Patientzone = pzo
providerStringOProvider’s code or name

Note
This parameter is available only if Advanced_Search_1_0 and Advanced_Filtering_And_Sorting_1_0 is enabled.
invoiceNumberStringOInvoice number

Note
This parameter is available only if Advanced_Search_1_0 is enabled.
patientNameStringOPatient name

Note
This parameter is available only if Advanced_Search_1_0 is enabled.
membershipNumberStringOMembership number

Note
This parameter is available only if Advanced_Search_1_0 is enabled.
dateCreatedStringODate created range

Note
This parameter is available only if Advanced_Search_1_0 and Advanced_Filtering_And_Sorting_1_0is enabled.
datePaidStringODate paid range

Note
This parameter is available only if Advanced_Search_1_0 and Advanced_Filtering_And_Sorting_1_0is enabled.
paymentAmountStringOPayment amount of remittance. Supports le (less than or equal to) and ge (greater than or equal) and eq (equal to).

Note
This parameter is available only if Advanced_Filtering_And_Sorting_1_0is enabled.
amountInvoicedStringOInvoiced amount of remittance. Supports le (less than or equal to) and ge (greater than or equal) and eq (equal to).

Note
This parameter is available only if Advanced_Search_1_0 is enabled.
insurerPaymentReferenceStringOInsurer payment reference

Note
This parameter is available only if Advanced_Search_1_0 and Advanced_Filtering_And_Sorting_1_0 is enabled.
hasShortFallBooleanOFilter remittances which includes shortfall

Note
This parameter is available only if Advanced_Search_1_0 and Advanced_Filtering_And_Sorting_1_0 is enabled.
excludeExportedBooleanOFilter exported remittances

Note
This parameter is available only if Advanced_Filtering_And_Sorting_1_0 is enabled.
_sortStringOSort results by created date. Use _sort=createdOn to sort results on created date in ascending order, or _sort=-createdOn for descending order
_sinceStringOLast updated date time of records
pageStringOPage index to be fetched {1,2,3..}
countStringOMaximum records in a page

Response

The API returns a Bundle of PaymentReconciliation resources based on the search filters.

{
    "resourceType": "Bundle",
    "meta": {
        "tag": [
            {
                "code": "page",
                "display": "1"
            },
            {
                "code": "count",
                "display": "10"
            },
            {
                "code": "maxCount",
                "display": "1"
            }
        ]
    },
    "type": "collection",
    "total": 1,
    "entry": [
        {
            "resource": {
                "resourceType": "PaymentReconciliation",
                "id": "RS69991",
                "contained": [
                    {
                        "resourceType": "Organization",
                        "id": "1",
                        "identifier": [
                            {
                                "system": "https://ref.api.healthcode.co.uk/providerIdentifier",
                                "value": "P162345"
                            }
                        ],
                        "name": "James Hospitals"
                    },
                    {
                        "resourceType": "Organization",
                        "id": "2",
                        "identifier": [
                            {
                                "system": "https://ref.api.healthcode.co.uk/insurerIdentifier",
                                "value": "slh"
                            }
                        ],
                        "name": "Vitality Health"
                    }
                ],
                "extension": [
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/totalInvoices",
                        "valueInteger": 5
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/isExported",
                        "valueBoolean": true
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/paymentMethod",
                        "valueString": "Cheque"
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/sortCode",
                        "valueString": "69991"
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/accountNumber",
                        "valueString": "699913210"
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/processedDate",
                        "valueDate": "2025-01-02"
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/amountDue",
                        "valueMoney": {
                            "value": 125.46
                        }
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/broughtForwarded",
                        "valueMoney": {
                            "value": 0
                        }
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/carriedForwarded",
                        "valueMoney": {
                            "value": 0
                        }
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/totalInvoiced",
                        "valueMoney": {
                            "value": 2096.73
                        }
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/totalShortfall",
                        "valueMoney": {
                            "value": 125.46
                        }
                    }
                ],
                "created": "2025-02-05T10:00:00+00:00",
                "requestor": {
                    "reference": "#1"
                },
                "paymentIssuer": {
                    "reference": "#2"
                },
                "paymentAmount": {
                    "value": 1971.27
                },
                "paymentDate": "2025-01-02T00:00:00+00:00",
                "paymentIdentifier": {
                    "system": "https://clearing.api.healthcode.co.uk/paymentReference",
                    "value": "PAY169991"
                }
            }
        }
    ]
}

Where,

NameTypeCard.DescriptionFHIR Field
Remittance Summary IDId1-1Remittance Summary IDPaymentReconciliation.id
ProviderReference (Organization)1-1Provider identifier and namePaymentReconciliation.requestor
InsurerReference (Organization)1-1Insurer identifier and namePaymentReconciliation.paymentIssuer
Payment ReferenceIdentifier1-1The reference of the payment as presented to the bank for a transfer, or the cheque number if the method of payment is chequePaymentReconciliation.paymentIdentifier
Date CreatedDateTime1-1The date when the remittances was loaded into Healthcode systemPaymentReconciliation.created
Payment DateDate1-1The date of the payment which for BACS payments represents the date that the payment is actually due to be credited to the recipient’s bank accountPaymentReconciliation.paymentDate
Amount PaidMoney1-1The actual amount credited to the provider’s bank account or forwarded as a chequePaymentReconciliation.paymentAmount
Payment MethodString0-1This indicates how the payment is made and the allowed values are Cheque or BACSPaymentReconciliation.extension.valueString – paymentMethod
Sort CodeString0-1This is provider’s bank sort code and will be included if payment method is BACSPaymentReconciliation.extension.valueString – sortCode
Account NumberString0-1This is provider’s bank account number and will be included if payment method is BACSPaymentReconciliation.extension.valueString – accountNumber
Processed DateDate1-1The processing date when the remittance was created on the insurer’s/payor’s systemPaymentReconciliation.extension.valueDate – processedDate
Amount DueMoney0-1The total due amountPaymentReconciliation.extension.valueMoney – amountDue
Brought ForwardMoney0-1It contains amount due to the provider or outstanding from the provider from the previous payment periodPaymentReconciliation.extension.valueMoney – broughtForward
Carried ForwardMoney0-1The net total of the amount brought forward from the previous payment period, plus the amount due to be paid in this payment period less the amount actually being paidPaymentReconciliation.extension.valueMoney – carriedForward
Total InvoicedMoney1-1Total invoicedPaymentReconciliation.extension.valueMoney – totalInvoiced
Total ShortfallMoney0-1Total shortfallPaymentReconciliation.extension.valueMoney – totalShortfall
Total InvoicesInteger1-1Total number of invoicesPaymentReconciliation.extension.valueInteger – totalInvoices
Is ExportedBoolean1-1Indicates weather the remittance was exported or notPaymentReconciliation.extension.valueBoolean – isExported

Error handling

HTTP CodeError CodeDescription
400MSG_MISSING_MANDATORY_PARAMMissing mandatory parameter
422MSG_PARAM_INVALIDParameter content is invalid
400MSG_PARAM_EMPTYParameter is null/empty
422MSG_INVALID_FORMATInvalid format

Search Remittance Detail

The Search Remittance Detail – Advanced API provides enhanced search capabilities through advanced filtering and sorting options to retrieve detailed remittance information such as patient details, invoice details and payment details.

Endpoint

Must be looked up from the discovery document using search_remittance_detail_endpoint key.

Request

curl --request POST
	--url '{search_remittance_detail_endpoint}/{remittance_summary_id}' 
	--header 'SU-SiteId: HC16190' 
	--header 'Content-Type: application/x-www-form-urlencoded' 
	--data-urlencode 'page=1' 
	--data-urlencode 'count=10' 
	--data-urlencode '_sort=invoiceTotal' 
	--data-urlencode 'invoiceNumber=INV069' 
	--data-urlencode 'patientName=Nelson' 
	--data-urlencode 'membershipNumber=REG004' 
	--data-urlencode 'invoiceDate=2024-11-01_2024-11-05' 
	--data-urlencode 'hospitalNumber=REF004' 
	--data-urlencode 'insurerBillNumber=PC004' 
	--data-urlencode 'invoiceTotal=ge200.00' 
	--data-urlencode 'hasShortFall=true'
       

Where,

FieldTypeMandatory/ OptionalDescription
remittanceSummaryIdStringMRemittance Summary ID
invoiceNumberStringOInvoice number

Note
This parameter is available only if Advanced_Filtering_And_Sorting_1_0 is enabled.
patientNameStringOPatient name

Note
This parameter is available only if Advanced_Filtering_And_Sorting_1_0 is enabled.
membershipNumberStringOMembership number

Note
This parameter is available only if Advanced_Filtering_And_Sorting_1_0 is enabled.
invoiceDateStringOInvoice date range

Note
This parameter is available only if Advanced_Filtering_And_Sorting_1_0 is enabled.
hospitalNumberStringOHospital number

Note
This parameter is available only if Advanced_Filtering_And_Sorting_1_0 is enabled.
insurerBillNumberStringOInsurer bill number

Note
This parameter is available only if Advanced_Filtering_And_Sorting_1_0 is enabled.
invoiceTotalStringOInvoice total. Supports le (less than or equal to) and ge (greater than or equal) and eq (equal to).

Note
This parameter is available only if Advanced_Filtering_And_Sorting_1_0 is enabled.
hasShortFallBooleanOFilter remittances which includes shortfall
_sortStringOSort results by created date. Use _sort=createdOn to sort results on created date in ascending order, or _sort=-createdOn for descending order
_sinceStringOLast updated date time of records
pageStringOPage index to be fetched {1,2,3..}
countStringOMaximum records in a page

Response

The API returns a Bundle of ClaimResponse resources based on the search filters.

{
    "resourceType": "Bundle",
    "meta": {
        "tag": [
            {
                "code": "page",
                "display": "1"
            },
            {
                "code": "count",
                "display": "10"
            },
            {
                "code": "maxCount",
                "display": "1"
            }
        ]
    },
    "type": "collection",
    "total": 1,
    "entry": [
        {
            "resource": {
                "resourceType": "ClaimResponse",
                "id": "RD69994",
                "contained": [
                    {
                        "resourceType": "Patient",
                        "id": "1",
                        "identifier": [
                            {
                                "system": "https://clearing.api.healthcode.co.uk/membershipNumber",
                                "value": "REG004"
                            }
                        ],
                        "name": [
                            {
                                "family": "Nick",
                                "given": [
                                    "Nelson",
                                    "A"
                                ],
                                "prefix": [
                                    "Mr."
                                ]
                            }
                        ]
                    }
                ],
                "extension": [
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/invoiceNumber",
                        "valueString": "INV069"
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/invoiceDate",
                        "valueDate": "2024-11-04"
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/paidAmount",
                        "valueMoney": {
                            "value": 190.00
                        }
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/invoiceTotal",
                        "valueMoney": {
                            "value": 250.00
                        }
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/previousPaidAmount",
                        "valueMoney": {
                            "value": 0.00
                        }
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/shortAmount",
                        "valueMoney": {
                            "value": 60.00
                        }
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/collectionService",
                        "valueString": "None"
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/dateCompleted",
                        "valueDate": "2025-02-10"
                    },
                    {
                        "url": "https://clearing.api.healthcode.co.uk/extension/createdOn",
                        "valueDateTime": "2025-02-01T10:00:00+00:00"
                    }
                ],
                "identifier": [
                    {
                        "system": "https://clearing.api.healthcode.co.uk/insurerBillNumber",
                        "value": "PC004"
                    },
                    {
                        "system": "https://clearing.api.healthcode.co.uk/hospitalNumber",
                        "value": "REF004"
                    },
                    {
                        "system": "https://clearing.api.healthcode.co.uk/chClaimNo",
                        "value": "CH001"
                    }
                ],
                "patient": {
                    "reference": "#1"
                },
                "item": [
                    {
                        "adjudication": [
                            {
                                "extension": [
                                    {
                                        "url": "https://clearing.api.healthcode.co.uk/extension/liabilityType",
                                        "valueString": "Patient Liability"
                                    }
                                ],
                                "category": {
                                    "coding": [
                                        {
                                            "system": "https://clearing.api.healthcode.co.uk/adjudication",
                                            "code": "deductible"
                                        }
                                    ]
                                },
                                "reason": {
                                    "text": "Member Excess"
                                },
                                "amount": {
                                    "value": 30.00
                                }
                            }
                        ]
                    },
                    {
                        "adjudication": [
                            {
                                "extension": [
                                    {
                                        "url": "https://clearing.api.healthcode.co.uk/extension/liabilityType",
                                        "valueString": "Provider Liability"
                                    }
                                ],
                                "category": {
                                    "coding": [
                                        {
                                            "system": "https://clearing.api.healthcode.co.uk/adjudication",
                                            "code": "deductible"
                                        }
                                    ]
                                },
                                "reason": {
                                    "text": "Charge Exceeds Agreed Tariff"
                                },
                                "amount": {
                                    "value": 30.00
                                }
                            }
                        ]
                    }
                ]
            }
        }
    ]
}

Where,

NameTypeCard.DescriptionFHIR Field
Remittance Summary IDId1-1Remittance Summary IDClaimResponse.id
Membership NumberIdentifier1-1Membership numberClaimResponse.contained.Patient.identifier
Patient NameHumanName0-1Patient nameClaimResponse.contained.Patient.name
Invoice NumberString1-1The provider’s invoice numberClaimResponse.extension.valueString – invoiceNumber
Invoice DateDate1-1Invoice dateClaimResponse.extension.valueDate – invoiceDate
Invoice TotalMoney1-1Invoice totalClaimResponse.extension.valueMoney – invoiceTotal
Paid AmountMoney1-1The amount actually remitted to the providerClaimResponse.extension.valueMoney – paidAmount
Previous Paid AmountMoney0-1The amount previously paidClaimResponse.extension.valueMoney – previousPaidAmount
Short AmountMoney0-1The short amount indicates the difference between the total value of the claim, any previously paid amount and the amount remittedClaimResponse.extension.valueMoney – shortAmount
Shortfall ReasonBackboneElement0-*The shortfall liability type, reason and amount detailsClaimResponse.item
Collection ServiceString0-1Collection serviceClaimResponse.extension.valueString – collectionService
Date CompletedDate1-1Date completedClaimResponse.extension.valueDate – dateCompleted
Created OnDateTime1-1Created onClaimResponse.extension.valueDateTime – createdOn
Insurer Bill NumberString1-1Insurer bill numberClaimResponse.extension.valueString – insurerBillNumber
Hospital NumberString1-1Hospital numberClaimResponse.extension.valueString – hospitalNumber
CH Claim NumberString0-1The internal reference used at Healthcode to link a particular Remittance to the original ClaimClaimResponse.extension.valueString – chClaimNo

Error handling

HTTP CodeError CodeDescription
400MSG_PARAM_EMPTYParameter is null/empty
422MSG_PARAM_INVALIDParameter content is invalid
400MSG_MISSING_MANDATORY_PARAMMissing mandatory parameter
422MSG_INVALID_FORMATInvalid format