Last Updated: 2023/09/17
Implementasi Use Case Klaim dan Pembayaran
A. Pendahuluan
Implementasi use case ini akan difokuskan pada proses integrasi antara BPJS dengan SATUSEHAT. Proses klaim biaya kesehatan yang terintegrasi antara BPJS dan SATUSEHAT dapat dilakukan di fasilitas pelayanan kesehatan (fasyankes) yang telah terintegrasi dengan SATUSEHAT. Data klinis dan data pembayaran yang dikirimkan oleh fasyankes ke SATUSEHAT ini nantinya akan dijadikan dasar verifikasi BPJS.
Tahapan alur integrasi dan resource yang digunakan pada proses klaim BPJS dengan SATUSEHAT secara keseluruhan dapat dilihat pada gambar dibawah ini:
Gambar 1. Skema integrasi data klaim BPJS dengan SATUSEHAT
Implementasi proses klaim biaya perawatan pasien BPJS di fasilitas kesehatan secara umum dapat dikelompokkan menjadi 5 tahapan proses sebagai berikut:
- Prasyarat ketersediaan data kepesertaan BPJS
- Pengajuan Surat Eligibilitas Peserta (SEP)
- Pengiriman data klinis dan pembayaran pasien
- Pengajuan klaim biaya perawatan
- Verifikasi klaim biaya perawatan
Kelima tahapan proses integrasi ini melibatkan 3 organisasi pelaksana yang berbeda, yaitu fasyankes, BPJS, dan Pusjak (aplikasi E-Klaim), sehingga petunjuk cara implementasi yang akan dibahas di part selanjutnya akan dikategorikan berdasarkan:
B. Langkah-Langkah Pengiriman Data ke SATUSEHAT
Implementation of Claim and Payment (Health Financing) Use Case
A. Introduction
The implementation of this use case will focus on the integration process between BPJS and SATUSEHAT. The integrated health cost claim process between BPJS and SATUSEHAT can be carried out at health service facilities (fasyankes) that have been integrated with SATUSEHAT. Clinical data and payment data sent by fasyankes to SATUSEHAT will later be used as the basis for BPJS verification.
The stages of the integration flow and resources used in the BPJS claim process with SATUSEHAT as a whole can be seen in the image below:
Figure 1. BPJS claim data integration scheme with SATUSEHAT
The implementation of the BPJS patient care cost claim process in health facilities can generally be grouped into 5 process stages as follows:
- BPJS participant data availability prerequisites
- Participant Eligibility Letter (SEP) submission
- Sending of clinical data and patient payments
- Submission of care cost claims
- Verification of care cost claims
These five stages of the integration process involve 3 different implementing organizations, namely health facilities, BPJS, and Pusjak (application E-Claim), so that the implementation instructions that will be discussed in the next part will be categorized based on:
B. Data Submission Steps to SATUSEHAT
Last Updated: 2023/09/17
I. Fasyankes
Last Updated: 2023/09/17
Data klinis baik pada pasien rawat jalan maupun rawat inap akan selalu berisikan data kunjungan pasien yang disimpan dalam resource Encounter. Data-data kunjungan pasien yang direkam meliputi kapan pertemuan tersebut mulai dan selesai, siapa tenaga kesehatan yang melayani, siapa subjek dari pelayanannya, dan informasi pendukung lainnya. Encounter.id data kunjungan ini akan dilampirkan pada beberapa resource seperti data klaim BPJS (Claim), data pembayaran (ChargeItem), dan data pengajuan Surat Eligibilitas Peserta (CoverageEligibilityRequest).
Tahapan alur integrasi dan resource yang digunakan untuk proses klaim dapat dilihat pada gambar dibawah ini:
Gambar 3. Skema Pengajuan Klaim BPJS oleh Fasyankes
Step 1. Pengajuan Surat Eligibilitas Peserta (SEP)
Pasien yang ditanggung oleh BPJS Kesehatan yang datang berkunjung ke Rumah Sakit, baik pasien yang telah dirujuk dari faskes lain ataupun pasien yang masuk melalui jalur lain, akan mendapatkan Surat Eligibilitas Peserta atau yang sering disebut dengan SEP.
Pengajuan SEP dapat dilakukan oleh fasyankes dengan mengirimkan resource CoverageEligibilityRequest ke SATUSEHAT dengan format dibawah ini:
Pengajuan No. SEP BPJS
{
"resourceType": "CoverageEligibilityRequest",
"identifier": {
"period": {
"start": "2022-06-14",
"end": "2022-06-17"
}
},
"status": "active",
"priority": {
"coding": [
{
"code": "normal"
}
]
},
"purpose": [
"validation"
],
"patient": {
"reference": "Patient/100000030006"
},
"servicedDate": "2022-06-14",
"created": "2022-06-14",
"enterer": {
"reference": "Practitioner/N10000001"
},
"provider": {
"reference": "Organization/10085103"
},
"insurer": {
"reference": "Organization/10080028"
},
"facility": {
"reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480"
},
"supportingInfo": [
{
"sequence": 1,
"information": {
"reference": "QuestionnaireResponse/636bf55a-dd47-4235-8f65-3430b48ccf49"
}
}
],
"insurance": [
{
"focal": true,
"coverage": {
"reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d"
}
}
],
"item": [
{
"diagnosis": [
{
"diagnosisCodeableConcept": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-10",
"code": "I21.9",
"display": "Acute myocardial infarction, unspecified"
}
]
}
}
]
}
]
}
{
"resourceType": "CoverageEligibilityRequest",
"status": "active",
"priority": {
"coding": [
{
"code": "normal"
}
]
},
"purpose": [
"validation",
"benefits"
],
"patient": {
"reference": "Patient/{{PATIENT_IHS_NUMBER}}",
"display": "{{PATIENT_NAME}}"
},
"servicedDate": "{{SERVICE_DATE}}",
"created": "{{COVERAGEELIGIBILITYREQUEST_CREATED_DATETIME}}",
"enterer": {
"reference": "Practitioner/{{PRACTITIONER_IHS_NUMBER}}",
"display": "{{PRACTITIONER_NAME}}"
},
"provider": {
"reference": "Organization/{{PROVIDER_FACILITY_IHS_NUMBER}}",
"display": "{{PROVIDER_FACILITY_NAME}}"
},
"insurer": {
"reference": "Organization/{{INSURER_FACILITY_IHS_NUMBER}}",
"display": "{{INSURER_FACILITY_NAME}}"
},
"facility": {
"reference": "Location/{{COVERAGEELIGIBILITYREQUEST_LOCATION_ID}}",
"display": "{{COVERAGEELIGIBILITYREQUEST_LOCATION_NAME}}"
},
"insurance": [
{
"coverage": {
"reference": "Coverage/{{COVERAGE_ID}}"
}
}
],
"item": [
{
"category": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-10",
"code": "{{DIAGNOSIS_ICD_CODE}}",
"display": "{{DIAGNOSIS_ICD_DISPLAY}}"
}
]
}
}
]
}
Variabel
Deskripsi
PATIENT_IHS_NUMBER
SATUSEHAT ID Number untuk Pasien
PATIENT_NAME
Nama Pasien
SERVICE_DATE
Tanggal pelayanan kesehatan diberikan
COVERAGEELIGIBILITYREQUEST_CREATED_DATETIME
Tanggal dan waktu pengajuan SEP ini dilakukan (dibuat oleh sistem)
PRACTITIONER_IHS_NUMBER
SATUSEHAT ID untuk staff fasyankes yang mengajukan SEP
PRACTITIONER_NAME
Nama staff fasyankes yang mengajukan SEP
PROVIDER_FACILITY_IHS_NUMBER
SATUSEHAT ID untuk fasyankes yang mengajukan SEP
PROVIDER_FACILITY_NAME
Nama fasyankes yang mengajukan SEP
INSURER_FACILITY_IHS_NUMBER
SATUSEHAT ID untuk pihak verifikator SEP (Default: BPJS Kesehatan)
INSURER_FACILITY_NAME
Nama pihak verifikator SEP (Default: BPJS Kesehatan)
COVERAGEELIGIBILITYREQUEST_LOCATION_ID
ID lokasi fasyankes pengajuan SEP
COVERAGEELIGIBILITYREQUEST_LOCATION_NAME
Nama lokasi fasyankes pengajuan SEP
COVERAGE_ID
ID data Kepesertaan BPJS
DIAGNOSIS_ICD_CODE
Kode ICD-10 untuk diagnosa penyakit yang diderita pasien
DIAGNOSIS_ICD_DISPLAY
Deskripsi ICD-10 untuk diagnosa penyakit yang diderita pasien
CATATAN:
(*): Jenis data yang memiliki terminologi spesifik. Kamus terminologi bisa ditemukan pada tab "ValueSet"
[none]
Data Medis (Informasi Tambahan)
Pada proses pengajuan No. SEP, informasi pendukung yang berhubungan dengan layanan medis pasien juga perlu dilampirkan. Data medis yang dimaksud adalah:
1. Jenis Pelayanan: Termasuk jenis pelayanan rawat jalan atau rawat inap
2. Asal Rujukan: Berasal dari Fasilitas Kesehatan Tingkat 1 atau Fasilitas Kesehatan Tingkat 2
3. Tanggal Rujukan
4. Nomor Rujukan: Id
5. Pemberi pelayanan kesehatan (PPK) Rujukan: Fasyankes yang dirujuk
Informasi pendukung ini akan disimpan dalam resource QuestionnaireResponse.
Kolom CoverageEligibilityRequest.supportingInfo.information pada contoh diatas akan mereferensi ke QuestionnaireResponse.id.
{
"resourceType": "QuestionnaireResponse",
"questionnaire": "https://fhir.kemkes.go.id/Questionnaire/Q0006",
"status": "completed",
"subject": {
"reference": "Patient/100000030006",
"display": "Jane Smith"
},
"encounter": {
"reference": "Encounter/29e3e814-4c9b-4f24-a8cb-54ba597d746f"
},
"authored": "06/14/2022 03:00:00",
"author": {
"reference": "Practitioner/N10000001"
},
"source": {
"reference": "Patient/100000030006"
},
"item": [
{
"linkId": "1",
"text": "Jenis Pelayanan",
"answer": [
{
"valueCoding": {
"system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
"code": "IMP",
"display": "inpatient encounter"
}
}
]
},
{
"linkId": "2",
"text": "Rujukan",
"item": [
{
"linkId": "2.1",
"text": "Asal Rujukan",
"answer": [
{
"valueCoding": {
"system": "http://terminology.kemkes.go.id/CodeSystem/organization-type",
"code": "FKTP",
"display": "Fasilitas Kesehatan Tingkat 1"
}
}
]
},
{
"linkId": "2.2",
"text": "Tanggal Rujukan",
"answer": [
{
"valueDate": "2022-06-13"
}
]
},
{
"linkId": "2.3",
"text": "Nomor Rujukan",
"answer": [
{
"valueString": "5375162"
}
]
},
{
"linkId": "2.4",
"text": "PPK Rujukan",
"answer": [
{
"valueCoding": {
"system": "http://sys-ids.kemkes.go.id/organization/10000004",
"code": "10000004",
"display": "Puskesmas Sangat Waras"
}
}
]
}
]
},
{
"linkId": "3",
"text": "Catatan Peserta",
"answer": [
{
"valueString": "-"
}
]
},
{
"linkId": "4",
"text": "Poli",
"item": [
{
"linkId": "4.1",
"text": "Tujuan",
"answer": [
{
"valueCoding": {
"system": "http://terminology.kemkes.go.id/CodeSystem/organization-type",
"code": "P0000001",
"display": "Poli Jantung dan Pembuluh Darah"
}
}
]
},
{
"linkId": "4.2",
"text": "Eksekutif",
"answer": [
{
"valueBoolean": true
}
]
}
]
},
{
"linkId": "5",
"text": "CoB",
"answer": [
{
"valueBoolean": true
}
]
},
{
"linkId": "6",
"text": "Katarak",
"answer": [
{
"valueBoolean": true
}
]
},
{
"linkId": "7",
"text": "Jaminan Kecelakaan Lalu Lintas",
"answer": [
{
"valueBoolean": true
}
]
},
{
"linkId": "8",
"text": "Tanggal Kejadian Kecelakaan Lalu Lintas",
"answer": [
{
"valueDate": "2022-06-13"
}
]
},
{
"linkId": "9",
"text": "Keterangan Kecelakaan Lalu Lintas",
"answer": [
{
"valueString": "-"
}
]
},
{
"linkId": "10",
"text": "Suplesi",
"answer": [
{
"valueBoolean": true
}
]
},
{
"linkId": "11",
"text": "Nomor SEP Suplesi",
"answer": [
{
"valueString": "SUP03203340000002"
}
]
},
{
"linkId": "12",
"text": "Lokasi Kecelakaan",
"item": [
{
"linkId": "12.1",
"text": "Kode Provinsi",
"answer": [
{
"valueReference": {
"type": "Location/53d57761-a5e6-445a-ae09-e26e4a78418e"
}
}
]
},
{
"linkId": "12.2",
"text": "Kode Kabupaten",
"answer": [
{
"valueReference": {
"type": "Location/c2245bff-121e-4a92-89b5-a1363ea94f47"
}
}
]
},
{
"linkId": "12.3",
"text": "Kode Kecamatan",
"answer": [
{
"valueReference": {
"type": "Location/2c5304cc-de6b-4816-b976-2daa896d99d2"
}
}
]
}
]
},
{
"linkId": "13",
"text": "SKDP",
"item": [
{
"linkId": "13.1",
"text": "Nomor Surat Kontrol",
"answer": [
{
"valueString": "DS02/DPP16-2023"
}
]
},
{
"linkId": "13.2",
"text": "Kode DPJP",
"answer": [
{
"valueReference": {
"type": "Practitioner/N10000001"
}
}
]
}
]
}
]
}
#tba
#tba
[none]
Respon No. Surat Eligibilitas Pelayanan (SEP) BPJS
Setelah fasyankes mengirimkan data pengajuan SEP BPJS ke SATUSEHAT, sistem BPJS Kesehatan akan melakukan verifikasi terhadap resource CoverageEligibilityRequest secara real-time. SATUSEHAT otomatis akan mengirimkan respon dari data pengajuan SEP tersebut dalam resource CoverageEligibilityResponse.
Apabila hasil verifikasi berhasil, maka No. SEP akan tergenerate dan dilampirkan pada resource CoverageEligibilityResponse. Berhubung SEP merupakan syarat utama atau surat jaminan pasien bisa menggunakan fasilitas BPJS, oleh karena itu apabila hasil verifikasi gagal, maka No. SEP tidak akan terbentuk dan secara otomatis pasien tidak bisa menggunakan fasilitas BPJS. Status hasil verifikasi SEP bisa dilihat pada kolom CoverageEligibilityResponse.outcome.
{
"resourceType": "CoverageEligibilityResponse",
"identifier": {
"use": {
"system": "http://hl7.org/fhir/identifier-use",
"code": "official",
"display": "Official"
},
"system": "http://sys-ids.kemkes.go.id/jkn-claim-number",
"value": "0301R0011117V000008",
"type": {
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
"code": "NIIP",
"display": "National Insurance Payor Identifier (Payor)"
},
"period": {
"start": "2022-06-14",
"end": "2022-08-14"
}
},
"status": "active",
"purpose": [
"validation"
],
"patient": {
"reference": "Patient/100000030006"
},
"created": "2022-06-14",
"requestor": {
"reference": "Organization/10085103"
},
"request": {
"reference": "CoverageEligibilityRequest/484e6912-1a7f-493f-aac7-0ec80a97a5d1"
},
"outcome": "complete",
"disposition": "Peserta aktif",
"insurer": {
"reference": "Organization/10080028"
},
"insurance": [
{
"coverage": {
"reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d"
},
"inforce": true,
"item": [
{
"category": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/ex-benefitcategory",
"code": "30",
"display": "Health Benefit Plan Coverage"
}
]
}
}
]
}
]
}
{
"resourceType": "CoverageEligibilityResponse",
"status": "active",
"purpose": [
"validation",
"benefits"
],
"patient": {
"reference": "Patient/{{PATIENT_IHS_NUMBER}}",
"display": "{{PATIENT_NAME}}"
},
"servicedDate": "{{SERVICE_DATE}}",
"created": "{{COVERAGEELIGIBILITYRESPONSE_CREATED_DATETIME}}",
"request": {
"reference": "CoverageEligibilityRequest/{{COVERAGEELIGIBILITYREQUEST_ID}}"
},
"outcome": "{{HASIL_VERIFIKASI}}",
"insurer": {
"reference": "Organization/{{INSURER_FACILITY_IHS_NUMBER}}",
"display": "{{INSURER_FACILITY_NAME}}"
},
"insurance": [
{
"coverage": {
"reference": "Coverage/{{COVERAGE_ID}}"
},
"inforce": true,
"item": [
{
"category": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/ex-benefitcategory",
"code": "{{COVERAGE_CATEGORY_CODE}}",
"display": "{{COVERAGE_CATEGORY_DISPLAY}}"
}
]
},
"network": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/benefit-network",
"code": "in"
}
]
},
"unit": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/benefit-unit",
"code": "individual"
}
]
},
"term": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/benefit-term",
"code": "annual"
}
]
},
"benefit": [
{
"type": {
"coding": [
{
"code": "benefit"
}
]
},
"allowedMoney": {
"value": {{AMOUNT1_VALUE}},
"currency": "IDR"
}
},
{
"type": {
"coding": [
{
"code": "copay-maximum"
}
]
},
"allowedMoney": {
"value": {{AMOUNT2_VALUE}},
"currency": "IDR"
}
},
{
"type": {
"coding": [
{
"code": "copay-percent"
}
]
},
"allowedUnsignedInt": {{ AMOUNT1_PERCENTAGE}}
}
]
}
]
}
]
}
Variabel
Deskripsi
PATIENT_IHS_NUMBER
SATUSEHAT ID Number untuk Pasien
PATIENT_NAME
Nama Pasien
SERVICE_DATE
Estimasi tanggal pelayanan kesehatan diberikan
COVERAGEELIGIBILITYRESPONSE_CREATED_DATETIME
Tanggal dan waktu verifikasi SEP ini dilakukan (dibuat oleh sistem)
COVERAGEELIGIBILITYREQUEST_ID
ID CoverageEligibilityRequest data pengajuan SEP
INSURER_FACILITY_IHS_NUMBER
SATUSEHAT ID untuk pihak verifikator SEP (Default: BPJS Kesehatan)
INSURER_FACILITY_NAME
Nama pihak verifikator SEP (Default: BPJS Kesehatan)
COVERAGE_ID
ID data Kepesertaan BPJS
COVERAGE_CATEGORY_CODE
Kode kategori pelayanan kesehatan yang bisa diklaim oleh pasien BPJS
COVERAGE_CATEGORY_DISPLAY
Deskripsi kategori pelayanan kesehatan yang bisa diklaim oleh pasien BPJS
AMOUNT1_VALUE
Biaya maksimum yang diperbolehkan untuk klaim (dalam rupiah)
AMOUNT2_VALUE
Pembayaran per layanan (dalam rupiah)
AMOUNT1_PERCENTAGE
Persentase pembayaran per layanan
[none]
Step 2. Pengiriman Data Klinis dan Pembayaran oleh Fasyankes
Fasyankes yang sudah terintegrasi dengan SATUSEHAT akan mengirimkan data klinis dan pembayaran untuk pasien rawat jalan/ rawat inap ke SATUSEHAT. Data-data inilah yang nantinya akan digunakan oleh BPJS sebagai acuan dalam melakukan verifikasi klaim BPJS.
Data klinis baik pada pasien rawat jalan maupun rawat inap akan selalu berisikan data kunjungan pasien yang disimpan dalam resource Encounter. Data-data kunjungan pasien yang direkam meliputi kapan pertemuan tersebut mulai dan selesai, siapa tenaga kesehatan yang melayani, siapa subjek dari pelayanannya, dan informasi pendukung lainnya. Encounter.id data kunjungan ini akan dilampirkan pada beberapa resource seperti data klaim BPJS (Claim), data pembayaran (ChargeItem), dan data pengajuan Surat Eligibilitas Pasien (CoverageEligibilityRequest).
Pendaftaran Kunjungan Pasien Rawat Inap
{
"resourceType": "Encounter",
"identifier": [
{
"system": "http://sys-ids.kemkes.go.id/encounter/10085103",
"value": "10085103"
}
],
"status": "in-progress",
"class": {
"system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
"code": "IMP",
"display": "inpatient encounter"
},
"subject": {
"reference": "Patient/100000030006",
"display": "Jane Smith"
},
"participant": [
{
"type": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-ParticipationType",
"code": "ATND",
"display": "attender"
}
]
}
],
"individual": {
"reference": "Practitioner/N10000001",
"display": "Dokter Bronsig"
}
}
],
"period": {
"start": "06/14/2022 00:00:00"
},
"location": [
{
"location": {
"reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480",
"display": "Bed 2, Ruang 44, Bangsal Rawat Inap Kelas 2, Layanan Jantung, Lantai 2, Gedung Utama"
},
"extension": [
{
"url": "https://fhir.kemkes.go.id/r4/StructureDefinition/ServiceClass",
"extension": [
{
"url": "value",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/locationServiceClass",
"code": "2",
"display": "Kelas 2"
}
]
}
},
{
"url": "upgradeClassIndicator",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/locationUpgradeClass",
"code": "naik-kelas",
"display": "Kenaikan Kelas Perawatan"
}
]
}
}
]
}
]
}
],
"statusHistory": [
{
"status": "in-progress",
"period": {
"start": "06/14/2022 00:00:00"
}
}
],
"serviceProvider": {
"reference": "Organization/10085103"
}
}
#tba
#tba
[none]
CATATAN:
Proses pengiriman data pasien rawat jalan ke SATUSEHAT secara detail dapat dilihat dalam dokumen Playbook Resume Medis Rawat Jalan.
Referensi:
I. Healthcare Facility
Clinical data for both outpatients and inpatients will always contain patient visit data stored in the Encounter resource. Recorded patient visit data includes when the meeting started and ended, who the health worker was, who the subject of the service was, and other supporting information. Encounter.id visit data will be attached to several resources such as BPJS claim data (Claim), payment data (ChargeItem), and Participant Eligibility Letter submission data (CoverageEligibilityRequest).
The stages of the integration flow and resources used for the claim process can be seen in the image below:
Figure 3. BPJS Claim Submission Scheme by Health Facilities
Step 1. Send "Surat Eligibilitas Peserta (SEP)"
Patients covered by BPJS Kesehatan (Indonesia national health insurance) who visit the Hospital, whether patients who have been referred from other health facilities or patients who enter through other channels, will receive a "Surat Eligibilitas Peserta" or what is often referred to as SEP. SEP is an important document in the BPJS Health system that provides clarity about the eligibility and rights of participants to receive BPJS health services.
SEP data can be requested by health facilities by sending the CoverageEligibilityRequest resource to SATUSEHAT with the format below:
SEP BPJS Number Request
{
"resourceType": "CoverageEligibilityRequest",
"identifier": {
"period": {
"start": "2022-06-14",
"end": "2022-06-17"
}
},
"status": "active",
"priority": {
"coding": [
{
"code": "normal"
}
]
},
"purpose": [
"validation"
],
"patient": {
"reference": "Patient/100000030006"
},
"servicedDate": "2022-06-14",
"created": "2022-06-14",
"enterer": {
"reference": "Practitioner/N10000001"
},
"provider": {
"reference": "Organization/10085103"
},
"insurer": {
"reference": "Organization/10080028"
},
"facility": {
"reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480"
},
"supportingInfo": [
{
"sequence": 1,
"information": {
"reference": "QuestionnaireResponse/636bf55a-dd47-4235-8f65-3430b48ccf49"
}
}
],
"insurance": [
{
"focal": true,
"coverage": {
"reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d"
}
}
],
"item": [
{
"diagnosis": [
{
"diagnosisCodeableConcept": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-10",
"code": "I21.9",
"display": "Acute myocardial infarction, unspecified"
}
]
}
}
]
}
]
}
{
"resourceType": "CoverageEligibilityRequest",
"status": "active",
"priority": {
"coding": [
{
"code": "normal"
}
]
},
"purpose": [
"validation",
"benefits"
],
"patient": {
"reference": "Patient/{{PATIENT_IHS_NUMBER}}",
"display": "{{PATIENT_NAME}}"
},
"servicedDate": "{{SERVICE_DATE}}",
"created": "{{COVERAGEELIGIBILITYREQUEST_CREATED_DATETIME}}",
"enterer": {
"reference": "Practitioner/{{PRACTITIONER_IHS_NUMBER}}",
"display": "{{PRACTITIONER_NAME}}"
},
"provider": {
"reference": "Organization/{{PROVIDER_FACILITY_IHS_NUMBER}}",
"display": "{{PROVIDER_FACILITY_NAME}}"
},
"insurer": {
"reference": "Organization/{{INSURER_FACILITY_IHS_NUMBER}}",
"display": "{{INSURER_FACILITY_NAME}}"
},
"facility": {
"reference": "Location/{{COVERAGEELIGIBILITYREQUEST_LOCATION_ID}}",
"display": "{{COVERAGEELIGIBILITYREQUEST_LOCATION_NAME}}"
},
"insurance": [
{
"coverage": {
"reference": "Coverage/{{COVERAGE_ID}}"
}
}
],
"item": [
{
"category": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-10",
"code": "{{DIAGNOSIS_ICD_CODE}}",
"display": "{{DIAGNOSIS_ICD_DISPLAY}}"
}
]
}
}
]
}
Variable
Description
PATIENT_IHS_NUMBER
SATUSEHAT ID Number for Patient.
PATIENT_NAME
Patient Name.
SERVICE_DATE
Date healthcare service is given.
COVERAGEELIGIBILITYREQUEST_CREATED_DATETIME
Date and time the SEP submission was made (created by the system).
PRACTITIONER_IHS_NUMBER
SATUSEHAT ID for healthcare facility staff who submitted the SEP.
PRACTITIONER_NAME
Name of healthcare facility staff who submitted the SEP.
PROVIDER_FACILITY_IHS_NUMBER
SATUSEHAT ID for the healthcare facility submitting the SEP.
PROVIDER_FACILITY_NAME
Name of the healthcare facility submitting the SEP.
INSURER_FACILITY_IHS_NUMBER
SATUSEHAT ID for the SEP verifier (Default: BPJS Kesehatan).
INSURER_FACILITY_NAME
Name of the SEP verifier (Default: BPJS Kesehatan).
COVERAGEELIGIBILITYREQUEST_LOCATION_ID
ID of the healthcare facility location for the SEP submission.
COVERAGEELIGIBILITYREQUEST_LOCATION_NAME
Name of the healthcare facility location for the SEP submission.
COVERAGE_ID
BPJS Membership data ID.
DIAGNOSIS_ICD_CODE
ICD-10 code for the patient's disease diagnosis.
DIAGNOSIS_ICD_DISPLAY
ICD-10 description for the patient's disease diagnosis.
NOTES:
(*): Data types that have specific terminology. The terminology dictionary can be found on the "Value Set" tab.
[none]
Medical Data (Additional Information)
In the process of submitting No. SEP, supporting information related to the patient's medical services also needs to be attached. The medical data in question is:
1. Type of Service: Including the type of outpatient or inpatient services
2. Referral Origin: Originating from Level 1 Health Facilities or Level 2 Health Facilities
3. Referral Date
4. Referral Number: Id
5. Referral Health Service Provider (PPK): Referred Health Facilities
This supporting information will be stored in the QuestionnaireResponse resource.
The CoverageEligibilityRequest.supportingInfo.information column in the example above will refer to QuestionnaireResponse.id.
{
"resourceType": "QuestionnaireResponse",
"questionnaire": "https://fhir.kemkes.go.id/Questionnaire/Q0006",
"status": "completed",
"subject": {
"reference": "Patient/100000030006",
"display": "Jane Smith"
},
"encounter": {
"reference": "Encounter/29e3e814-4c9b-4f24-a8cb-54ba597d746f"
},
"authored": "06/14/2022 03:00:00",
"author": {
"reference": "Practitioner/N10000001"
},
"source": {
"reference": "Patient/100000030006"
},
"item": [
{
"linkId": "1",
"text": "Jenis Pelayanan",
"answer": [
{
"valueCoding": {
"system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
"code": "IMP",
"display": "inpatient encounter"
}
}
]
},
{
"linkId": "2",
"text": "Rujukan",
"item": [
{
"linkId": "2.1",
"text": "Asal Rujukan",
"answer": [
{
"valueCoding": {
"system": "http://terminology.kemkes.go.id/CodeSystem/organization-type",
"code": "FKTP",
"display": "Fasilitas Kesehatan Tingkat 1"
}
}
]
},
{
"linkId": "2.2",
"text": "Tanggal Rujukan",
"answer": [
{
"valueDate": "2022-06-13"
}
]
},
{
"linkId": "2.3",
"text": "Nomor Rujukan",
"answer": [
{
"valueString": "5375162"
}
]
},
{
"linkId": "2.4",
"text": "PPK Rujukan",
"answer": [
{
"valueCoding": {
"system": "http://sys-ids.kemkes.go.id/organization/10000004",
"code": "10000004",
"display": "Puskesmas Sangat Waras"
}
}
]
}
]
},
{
"linkId": "3",
"text": "Catatan Peserta",
"answer": [
{
"valueString": "-"
}
]
},
{
"linkId": "4",
"text": "Poli",
"item": [
{
"linkId": "4.1",
"text": "Tujuan",
"answer": [
{
"valueCoding": {
"system": "http://terminology.kemkes.go.id/CodeSystem/organization-type",
"code": "P0000001",
"display": "Poli Jantung dan Pembuluh Darah"
}
}
]
},
{
"linkId": "4.2",
"text": "Eksekutif",
"answer": [
{
"valueBoolean": true
}
]
}
]
},
{
"linkId": "5",
"text": "CoB",
"answer": [
{
"valueBoolean": true
}
]
},
{
"linkId": "6",
"text": "Katarak",
"answer": [
{
"valueBoolean": true
}
]
},
{
"linkId": "7",
"text": "Jaminan Kecelakaan Lalu Lintas",
"answer": [
{
"valueBoolean": true
}
]
},
{
"linkId": "8",
"text": "Tanggal Kejadian Kecelakaan Lalu Lintas",
"answer": [
{
"valueDate": "2022-06-13"
}
]
},
{
"linkId": "9",
"text": "Keterangan Kecelakaan Lalu Lintas",
"answer": [
{
"valueString": "-"
}
]
},
{
"linkId": "10",
"text": "Suplesi",
"answer": [
{
"valueBoolean": true
}
]
},
{
"linkId": "11",
"text": "Nomor SEP Suplesi",
"answer": [
{
"valueString": "SUP03203340000002"
}
]
},
{
"linkId": "12",
"text": "Lokasi Kecelakaan",
"item": [
{
"linkId": "12.1",
"text": "Kode Provinsi",
"answer": [
{
"valueReference": {
"type": "Location/53d57761-a5e6-445a-ae09-e26e4a78418e"
}
}
]
},
{
"linkId": "12.2",
"text": "Kode Kabupaten",
"answer": [
{
"valueReference": {
"type": "Location/c2245bff-121e-4a92-89b5-a1363ea94f47"
}
}
]
},
{
"linkId": "12.3",
"text": "Kode Kecamatan",
"answer": [
{
"valueReference": {
"type": "Location/2c5304cc-de6b-4816-b976-2daa896d99d2"
}
}
]
}
]
},
{
"linkId": "13",
"text": "SKDP",
"item": [
{
"linkId": "13.1",
"text": "Nomor Surat Kontrol",
"answer": [
{
"valueString": "DS02/DPP16-2023"
}
]
},
{
"linkId": "13.2",
"text": "Kode DPJP",
"answer": [
{
"valueReference": {
"type": "Practitioner/N10000001"
}
}
]
}
]
}
]
}
#tba
#tba
[none]
Response of BPJS Service Eligibility Letter (SEP) Number
After the health facility sends the BPJS SEP submission data to SATUSEHAT, the BPJS Kesehatan system will verify the CoverageEligibilityRequest resource in real-time. SATUSEHAT will automatically send a response from the SEP submission data in the CoverageEligibilityResponse resource.
If the verification results are successful, the SEP No. will be generated and attached to the CoverageEligibilityResponse resource. Since SEP is the main requirement or guarantee letter for patients to be able to use BPJS facilities, therefore if the verification results fail, the SEP No. will not be formed and the patient will automatically not be able to use BPJS facilities. The status of the SEP verification results can be seen in the CoverageEligibilityResponse.outcome column.
{
"resourceType": "CoverageEligibilityResponse",
"identifier": {
"use": {
"system": "http://hl7.org/fhir/identifier-use",
"code": "official",
"display": "Official"
},
"system": "http://sys-ids.kemkes.go.id/jkn-claim-number",
"value": "0301R0011117V000008",
"type": {
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
"code": "NIIP",
"display": "National Insurance Payor Identifier (Payor)"
},
"period": {
"start": "2022-06-14",
"end": "2022-08-14"
}
},
"status": "active",
"purpose": [
"validation"
],
"patient": {
"reference": "Patient/100000030006"
},
"created": "2022-06-14",
"requestor": {
"reference": "Organization/10085103"
},
"request": {
"reference": "CoverageEligibilityRequest/484e6912-1a7f-493f-aac7-0ec80a97a5d1"
},
"outcome": "complete",
"disposition": "Peserta aktif",
"insurer": {
"reference": "Organization/10080028"
},
"insurance": [
{
"coverage": {
"reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d"
},
"inforce": true,
"item": [
{
"category": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/ex-benefitcategory",
"code": "30",
"display": "Health Benefit Plan Coverage"
}
]
}
}
]
}
]
}
{
"resourceType": "CoverageEligibilityResponse",
"status": "active",
"purpose": [
"validation",
"benefits"
],
"patient": {
"reference": "Patient/{{PATIENT_IHS_NUMBER}}",
"display": "{{PATIENT_NAME}}"
},
"servicedDate": "{{SERVICE_DATE}}",
"created": "{{COVERAGEELIGIBILITYRESPONSE_CREATED_DATETIME}}",
"request": {
"reference": "CoverageEligibilityRequest/{{COVERAGEELIGIBILITYREQUEST_ID}}"
},
"outcome": "{{HASIL_VERIFIKASI}}",
"insurer": {
"reference": "Organization/{{INSURER_FACILITY_IHS_NUMBER}}",
"display": "{{INSURER_FACILITY_NAME}}"
},
"insurance": [
{
"coverage": {
"reference": "Coverage/{{COVERAGE_ID}}"
},
"inforce": true,
"item": [
{
"category": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/ex-benefitcategory",
"code": "{{COVERAGE_CATEGORY_CODE}}",
"display": "{{COVERAGE_CATEGORY_DISPLAY}}"
}
]
},
"network": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/benefit-network",
"code": "in"
}
]
},
"unit": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/benefit-unit",
"code": "individual"
}
]
},
"term": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/benefit-term",
"code": "annual"
}
]
},
"benefit": [
{
"type": {
"coding": [
{
"code": "benefit"
}
]
},
"allowedMoney": {
"value": {{AMOUNT1_VALUE}},
"currency": "IDR"
}
},
{
"type": {
"coding": [
{
"code": "copay-maximum"
}
]
},
"allowedMoney": {
"value": {{AMOUNT2_VALUE}},
"currency": "IDR"
}
},
{
"type": {
"coding": [
{
"code": "copay-percent"
}
]
},
"allowedUnsignedInt": {{ AMOUNT1_PERCENTAGE}}
}
]
}
]
}
]
}
| Variable | Description | | :------------------------------ | --------- | | PATIENT_IHS_NUMBER | SATUSEHAT ID Number for Patient | | PATIENT_NAME | Patient Name | | SERVICE_DATE | Estimated date healthcare service is given | | COVERAGEELIGIBILITYRESPONSE_CREATED_DATETIME | Date and time this SEP verification was done (created by the system) | | COVERAGEELIGIBILITYREQUEST_ID | SEP submission CoverageEligibilityRequest data ID | | INSURER_FACILITY_IHS_NUMBER | SATUSEHAT ID for the SEP verifier (Default: BPJS Kesehatan) | | INSURER_FACILITY_NAME | Name of the SEP verifier (Default: BPJS Kesehatan) | | COVERAGE_ID | BPJS Membership data ID | | COVERAGE_CATEGORY_CODE | Code of the healthcare service category that can be claimed by BPJS patients | | COVERAGE_CATEGORY_DISPLAY | Description of the healthcare service category that can be claimed by BPJS patients | | AMOUNT1_VALUE | Maximum cost allowed for claims (in rupiah) | | AMOUNT2_VALUE | Payment per service (in rupiah) | | AMOUNT1_PERCENTAGE | Percentage of payment per service |
[none]
Step 2. Clinical Data Submission and Payment by Health Facilities
Health facilities that have been integrated with SATUSEHAT will send clinical data and payments for outpatients/inpatients to SATUSEHAT. This data will later be used by BPJS as a reference in verifying BPJS claims.
Clinical data for both outpatients and inpatients will always contain patient visit data stored in the Encounter resource. Recorded patient visit data includes when the meeting started and ended, who the health worker was, who the subject of the service was, and other supporting information. Encounter.id visit data will be attached to several resources such as BPJS claim data (Claim), payment data (ChargeItem), and Patient Eligibility Letter submission data (CoverageEligibilityRequest).
Inpatient Visit Registration
{
"resourceType": "Encounter",
"identifier": [
{
"system": "http://sys-ids.kemkes.go.id/encounter/10085103",
"value": "10085103"
}
],
"status": "in-progress",
"class": {
"system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
"code": "IMP",
"display": "inpatient encounter"
},
"subject": {
"reference": "Patient/100000030006",
"display": "Jane Smith"
},
"participant": [
{
"type": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-ParticipationType",
"code": "ATND",
"display": "attender"
}
]
}
],
"individual": {
"reference": "Practitioner/N10000001",
"display": "Dokter Bronsig"
}
}
],
"period": {
"start": "06/14/2022 00:00:00"
},
"location": [
{
"location": {
"reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480",
"display": "Bed 2, Ruang 44, Bangsal Rawat Inap Kelas 2, Layanan Jantung, Lantai 2, Gedung Utama"
},
"extension": [
{
"url": "https://fhir.kemkes.go.id/r4/StructureDefinition/ServiceClass",
"extension": [
{
"url": "value",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/locationServiceClass",
"code": "2",
"display": "Kelas 2"
}
]
}
},
{
"url": "upgradeClassIndicator",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/locationUpgradeClass",
"code": "naik-kelas",
"display": "Kenaikan Kelas Perawatan"
}
]
}
}
]
}
]
}
],
"statusHistory": [
{
"status": "in-progress",
"period": {
"start": "06/14/2022 00:00:00"
}
}
],
"serviceProvider": {
"reference": "Organization/10085103"
}
}
#tba
#tba
[none]
NOTES:
The process of sending outpatient data to SATUSEHAT in detail can be seen in the document Playbook Outpatient Medical Record.
Reference:
Postman Klaim dan Pembayaran
Playbook Klaim dan Pembayaran (Fasyankes)
Postman Resume Medis Rawat Jalan SATUSEHAT
Last Updated: 2023/09/17
II. E-Klaim
Step 1. Konversi format data E-Klaim ke format FHIR
Sama seperti proses yang sudah berlangsung sebelumnya, pengajuan klaim oleh fasyankes tetap dilakukan melalui aplikasi E-Klaim. Aplikasi E-Klaim inilah yang nantinya akan melakukan konversi data klaim ke format FHIR (resource *Claim*) dan dikirimkan ke SATUSEHAT.
Resource *Claim* disini akan referensi ke data klinis seperti *Encounter*, *Observation*, dan data pendukung lainnya. Berhubung fasyankes diperbolehkan untuk melakukan pengajuan klaim terhadap beberapa kunjungan pasien secara sekaligus, maka dari itu 1 *Claim* (1 Nomor SEP) bisa mencakup lebih dari 1 data kunjungan pasien (resource *Encounter*).
Klaim BPJS INACBG
{
"resourceType": "Claim",
"id": "960151",
"meta": {
"profile": [
"https://fhir.kemkes.go.id/r4/StructureDefinition/Claim"
]
},
"identifier": [
{
"system": "http://sys-ids.kemkes.go.id/jkn-claim-batch-number",
"value": "96123451"
}
],
"status": "active",
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/claim-type",
"code": "institutional",
"display": "Institutional"
}
]
},
"use": "claim",
"patient": {
"reference": "Patient/100000030006"
},
"billablePeriod": {
"start": "2022-06-14",
"end": "2022-06-21"
},
"created": "2022-06-21",
"enterer": {
"identifier": {
"system": "https://fhir.kemkes.go.id/id/nik",
"value": "3657746633553535555"
},
"reference": "Practitioner/N10000001"
},
"insurer": {
"reference": "Organization/10080028"
},
"provider": {
"reference": "Organization/10085103"
},
"priority": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/processpriority",
"code": "normal",
"display": "Normal"
}
]
},
"payee": {
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/payeetype",
"code": "provider",
"display": "Provider"
}
]
},
"party": {
"reference": "Organization/10085103"
}
},
"facility": {
"reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480"
},
"supportingInfo": [
{
"sequence": 1,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "upgrade-class-indicator",
"display": "Indikator Naik Kelas"
}
]
},
"code": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/upgradeClassIndicator",
"code": "upgrade",
"display": "Ada Kenaikan Kelas"
}
]
}
},
{
"sequence": 2,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "upgrade-class-class"
}
]
},
"code": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/locationServiceClass",
"code": "2"
}
]
},
"timingPeriod": {
"start": "2022-06-14",
"end": "2022-06-21"
}
},
{
"sequence": 3,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "claim-text-encoded"
}
]
},
"valueAttachment": {
"contentType": "text/plain;base64",
"data": "REVNTyBWRVJTSU9OCUQJMwlBUAkxCTI0LzAxLzIwMjMJMjQvMDEvMjAyMwkyNC8wMS8yMDIzCTMwMDAJMQkxCVAwMS42CTk5LjAzCS0JLQlOb25lCU5vbmUJTm9uZQlOb25lCVAtOC0xNy1JCU5vbmUJTm9uZQlOb25lCU5vbmUJTm9uZQlOb25lCU5FT05BVEFMLCBCQkwgPiAyNDk5IEdSIFRBTlBBIFBST1NFRFVSIE1BWU9SIChSSU5HQU4pCTQ1NTk4MDAJMAkwCS0JMAktCTAJLQkwCS0JMAk0NTU5ODAwCTEwMDAwMAkwCTEJMQkwCTAJVEVTVCBCQVlJCTIwMDM5OQkwCTAJCURFTU8gVkVSU0lPTgkxMjIyMzMzNDQJMztKS04JMTExMDEwMTs5MDIyQzAxO0FETQk1LjcuMC4yMDIyMDkyNzEzMDMJNAk2NjgJMSMwIyMwIzAjMC4wIzIwMjMtMDEtMjMgMTc6MTM6MDMjMCMxMzoyOToyOSMxMzoyOToyOSMwMDowMDowMCN7ImNvX2luc2lkZW5zZV9pbmQiOiIwIn0jI3siY2FyYV9tYXN1ayI6ImVtZCIsInNpc3RvbGUiOiIxMTAiLCJkaWFzdG9sZSI6IjcwIiwidG90YWxfdGFyaWZfcnMiOiIxMDAwMDAiLCJiaWxsaW5nX2dyb3VwIjp7InByb2NlZHVyZV9hbXQiOiIxMDAwMDAiLCJzdXJnaWNhbF9hbXQiOiIwIiwiY29uc3VsX2FtdCI6IjAiLCJleHBlcnRfYW10IjoiMCIsIm51cnNpbmdfYW10IjoiMCIsImFuY2lsbGFyeV9hbXQiOiIwIiwiYmxvb2RfYW10IjoiMCIsImxhYm9yYXRvcnlfYW10IjoiMCIsInJhZGlvbG9neV9hbXQiOiIwIiwicmVoYWJfYW10IjoiMCIsInJvb21fYW10IjoiMCIsImludGVuc2l2ZV9hbXQiOiIwIiwiZHJ1Z19hbXQiOiIwIiwiZGV2aWNlX2FtdCI6IjAiLCJjb25zdW1hYmxlX2FtdCI6IjAiLCJkZXZpY2VfcmVudF9hbXQiOiIwIiwiZHJ1Z19jaHJvbmljX2FtdCI6IjAiLCJkcnVnX2NoZW1vX2FtdCI6IjAifSwic2VsaXNpaF9iaWF5YSI6eyJuaWxhaSI6IjAiLCJwZW1iYXlhciI6IiIsIm5haWtfa2VsYXMiOiIifSwidmVudGlsYXRvciI6eyJ1c2VfaW5kIjoiMSIsInN0YXJ0X2R0dG0iOiIyMDIzLTAxLTE5IDE3OjI2OjA4Iiwic3RvcF9kdHRtIjoiMjAyMy0wMS0yMCAxNzoyNjoyCg=="
}
},
{
"sequence": 4,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "unu-grouper-version"
}
]
},
"valueString": "4"
},
{
"sequence": 5,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "e-klaim-version"
}
]
},
"valueString": "5.8.3.202301311257"
}
],
"diagnosis": [
{
"sequence": 1,
"diagnosisCodeableConcept": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-10",
"code": "I21.9",
"display": "Acute myocardial infarction, unspecified"
}
]
},
"type": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/diagnosis-role",
"code": "billing",
"display": "Billing"
}
]
}
]
}
],
"procedure": [
{
"sequence": 1,
"procedureCodeableConcept": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-9-cm",
"code": "36.06",
"display": "Insertion of non-drug -eluting coronary artery stent(s)"
}
]
}
},
{
"sequence": 2,
"procedureCodeableConcept": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-9-cm",
"code": "00.66",
"display": "Parcutaneous transluminal coronary angioplasty (PTCA) or coronary atherectomy"
}
]
}
}
],
"insurance": [
{
"sequence": 1,
"focal": true,
"coverage": {
"reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d"
},
"identifier": {
"system": "http://sys-ids.kemkes.go.id/jkn-claim-number",
"value": "100R01V0010002"
}
}
],
"total": {
"value": 28868200,
"currency": "IDR"
},
"extension": [
{
"url": "https://fhir.kemkes.go.id/r4/StructureDefinition/Package",
"extension": [
{
"url": "tariffClass",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/tariffClass",
"code": "AP",
"display": "Tarif Kelas A Pemerintah"
}
]
}
},
{
"url": "basePackage",
"extension": [
{
"url": "code",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/inacbg-v5",
"code": "I-1-40-I",
"display": "PROSEDUR KARDIOVASKULAR PERKUTAN (RINGAN)"
}
]
}
},
{
"url": "value",
"valueInteger": 14434100
}
]
},
{
"url": "additionalPackage",
"extension": [
{
"url": "code",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/inacbg-special-cmg-v5",
"code": "YY-02-III",
"display": "PCI"
}
]
}
},
{
"url": "value",
"valueInteger": 14434100
}
]
}
]
}
]
}
#tba
#tba
[none]
II. E-Klaim
Step 1. Convert E-Claim data format to FHIR format
Similar to the previous process, claims submission by health facilities are still done through the E-Claim application. This E-Claim application will later convert claim data to FHIR format (resource *Claim*) and send it to SATUSEHAT.
The *Claim* resource here will refer to clinical data such as *Encounter*, *Observation*, and other supporting data. Since health facilities are allowed to submit claims for several patient visits at once, therefore 1 *Claim* (1 SEP Number) can cover more than 1 patient visit data (resource *Encounter*).
BPJS INACBG Claim
{
"resourceType": "Claim",
"id": "960151",
"meta": {
"profile": [
"https://fhir.kemkes.go.id/r4/StructureDefinition/Claim"
]
},
"identifier": [
{
"system": "http://sys-ids.kemkes.go.id/jkn-claim-batch-number",
"value": "96123451"
}
],
"status": "active",
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/claim-type",
"code": "institutional",
"display": "Institutional"
}
]
},
"use": "claim",
"patient": {
"reference": "Patient/100000030006"
},
"billablePeriod": {
"start": "2022-06-14",
"end": "2022-06-21"
},
"created": "2022-06-21",
"enterer": {
"identifier": {
"system": "https://fhir.kemkes.go.id/id/nik",
"value": "3657746633553535555"
},
"reference": "Practitioner/N10000001"
},
"insurer": {
"reference": "Organization/10080028"
},
"provider": {
"reference": "Organization/10085103"
},
"priority": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/processpriority",
"code": "normal",
"display": "Normal"
}
]
},
"payee": {
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/payeetype",
"code": "provider",
"display": "Provider"
}
]
},
"party": {
"reference": "Organization/10085103"
}
},
"facility": {
"reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480"
},
"supportingInfo": [
{
"sequence": 1,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "upgrade-class-indicator",
"display": "Indikator Naik Kelas"
}
]
},
"code": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/upgradeClassIndicator",
"code": "upgrade",
"display": "Ada Kenaikan Kelas"
}
]
}
},
{
"sequence": 2,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "upgrade-class-class"
}
]
},
"code": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/locationServiceClass",
"code": "2"
}
]
},
"timingPeriod": {
"start": "2022-06-14",
"end": "2022-06-21"
}
},
{
"sequence": 3,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "claim-text-encoded"
}
]
},
"valueAttachment": {
"contentType": "text/plain;base64",
"data": "REVNTyBWRVJTSU9OCUQJMwlBUAkxCTI0LzAxLzIwMjMJMjQvMDEvMjAyMwkyNC8wMS8yMDIzCTMwMDAJMQkxCVAwMS42CTk5LjAzCS0JLQlOb25lCU5vbmUJTm9uZQlOb25lCVAtOC0xNy1JCU5vbmUJTm9uZQlOb25lCU5vbmUJTm9uZQlOb25lCU5FT05BVEFMLCBCQkwgPiAyNDk5IEdSIFRBTlBBIFBST1NFRFVSIE1BWU9SIChSSU5HQU4pCTQ1NTk4MDAJMAkwCS0JMAktCTAJLQkwCS0JMAk0NTU5ODAwCTEwMDAwMAkwCTEJMQkwCTAJVEVTVCBCQVlJCTIwMDM5OQkwCTAJCURFTU8gVkVSU0lPTgkxMjIyMzMzNDQJMztKS04JMTExMDEwMTs5MDIyQzAxO0FETQk1LjcuMC4yMDIyMDkyNzEzMDMJNAk2NjgJMSMwIyMwIzAjMC4wIzIwMjMtMDEtMjMgMTc6MTM6MDMjMCMxMzoyOToyOSMxMzoyOToyOSMwMDowMDowMCN7ImNvX2luc2lkZW5zZV9pbmQiOiIwIn0jI3siY2FyYV9tYXN1ayI6ImVtZCIsInNpc3RvbGUiOiIxMTAiLCJkaWFzdG9sZSI6IjcwIiwidG90YWxfdGFyaWZfcnMiOiIxMDAwMDAiLCJiaWxsaW5nX2dyb3VwIjp7InByb2NlZHVyZV9hbXQiOiIxMDAwMDAiLCJzdXJnaWNhbF9hbXQiOiIwIiwiY29uc3VsX2FtdCI6IjAiLCJleHBlcnRfYW10IjoiMCIsIm51cnNpbmdfYW10IjoiMCIsImFuY2lsbGFyeV9hbXQiOiIwIiwiYmxvb2RfYW10IjoiMCIsImxhYm9yYXRvcnlfYW10IjoiMCIsInJhZGlvbG9neV9hbXQiOiIwIiwicmVoYWJfYW10IjoiMCIsInJvb21fYW10IjoiMCIsImludGVuc2l2ZV9hbXQiOiIwIiwiZHJ1Z19hbXQiOiIwIiwiZGV2aWNlX2FtdCI6IjAiLCJjb25zdW1hYmxlX2FtdCI6IjAiLCJkZXZpY2VfcmVudF9hbXQiOiIwIiwiZHJ1Z19jaHJvbmljX2FtdCI6IjAiLCJkcnVnX2NoZW1vX2FtdCI6IjAifSwic2VsaXNpaF9iaWF5YSI6eyJuaWxhaSI6IjAiLCJwZW1iYXlhciI6IiIsIm5haWtfa2VsYXMiOiIifSwidmVudGlsYXRvciI6eyJ1c2VfaW5kIjoiMSIsInN0YXJ0X2R0dG0iOiIyMDIzLTAxLTE5IDE3OjI2OjA4Iiwic3RvcF9kdHRtIjoiMjAyMy0wMS0yMCAxNzoyNjoyCg=="
}
},
{
"sequence": 4,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "unu-grouper-version"
}
]
},
"valueString": "4"
},
{
"sequence": 5,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "e-klaim-version"
}
]
},
"valueString": "5.8.3.202301311257"
}
],
"diagnosis": [
{
"sequence": 1,
"diagnosisCodeableConcept": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-10",
"code": "I21.9",
"display": "Acute myocardial infarction, unspecified"
}
]
},
"type": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/diagnosis-role",
"code": "billing",
"display": "Billing"
}
]
}
]
}
],
"procedure": [
{
"sequence": 1,
"procedureCodeableConcept": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-9-cm",
"code": "36.06",
"display": "Insertion of non-drug -eluting coronary artery stent(s)"
}
]
}
},
{
"sequence": 2,
"procedureCodeableConcept": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-9-cm",
"code": "00.66",
"display": "Parcutaneous transluminal coronary angioplasty (PTCA) or coronary atherectomy"
}
]
}
}
],
"insurance": [
{
"sequence": 1,
"focal": true,
"coverage": {
"reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d"
},
"identifier": {
"system": "http://sys-ids.kemkes.go.id/jkn-claim-number",
"value": "100R01V0010002"
}
}
],
"total": {
"value": 28868200,
"currency": "IDR"
},
"extension": [
{
"url": "https://fhir.kemkes.go.id/r4/StructureDefinition/Package",
"extension": [
{
"url": "tariffClass",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/tariffClass",
"code": "AP",
"display": "Tarif Kelas A Pemerintah"
}
]
}
},
{
"url": "basePackage",
"extension": [
{
"url": "code",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/inacbg-v5",
"code": "I-1-40-I",
"display": "PROSEDUR KARDIOVASKULAR PERKUTAN (RINGAN)"
}
]
}
},
{
"url": "value",
"valueInteger": 14434100
}
]
},
{
"url": "additionalPackage",
"extension": [
{
"url": "code",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/inacbg-special-cmg-v5",
"code": "YY-02-III",
"display": "PCI"
}
]
}
},
{
"url": "value",
"valueInteger": 14434100
}
]
}
]
}
]
}
#tba
#tba
[none]
Last Updated: 2023/09/17
III. BPJS
- Prasyarat ketersediaan data kepesertaan BPJS
Gambar 2. Skema penyediaan data kepesertaan BPJS
Agar fasyankes bisa melakukan pengiriman data pengajuan klaim BPJS, data Master Kepesertaan BPJS wajib disediakan terlebih dahulu di SATUSEHAT. Hal ini dikarenakan data kepesertaan BPJS akan dijadikan referensi saat data klaim BPJS dikirimkan ke SATUSEHAT. Data Master Kepesertaan BPJS bersumber dari existing sistem BPJS sehingga perlu adanya mekanisme sinkronisasi data antara sistem BPJS kesehatan dengan SATUSEHAT.
Master Kepesertaan BPJS pada SATUSEHAT akan disimpan menggunakan salah satu resource dalam FHIR yaitu Coverage. Proses penambahan data peserta baru BPJS dapat dilakukan melalui FHIR API dengan metode POST, sedangkan proses perubahan data peserta existing BPJS (termasuk proses menonaktifkan data peserta BPJS) akan menggunakan metode PUT. Untuk contoh pengiriman data atau payload dari pembaharuan data kepesertaan BPJS dapat dilihat dalam Postman Collection.
1.1. Pembuatan Organisasi BPJS Kesehatan
Langkah awal sebelum mendaftarkan data kepesertaan BPJS di SATUSEHAT adalah organisasi BPJS Kesehatan wajib didaftarkan terlebih dahulu di SATUSEHAT. Hal ini dikarenakan data kepesertaan BPJS akan mereferensi ke {facility-ihs-number} milik BPJS Kesehatan.
BPJS Kesehatan
{
"resourceType": "Organization",
"active": true,
"address": [
{
"city": "Jakarta",
"country": "ID",
"extension": [
{
"extension": [
{
"url": "province",
"valueCode": "10"
},
{
"url": "city",
"valueCode": "1010"
},
{
"url": "district",
"valueCode": "1010101"
},
{
"url": "village",
"valueCode": "1010101101"
}
],
"url": "https://fhir.kemkes.go.id/r4/StructureDefinition/administrativeCode"
}
],
"line": [
"Jalan Matraman Raya No. 94 A, Kecamatan Menteng, Jakarta Pusat, DKI Jakarta"
],
"postalCode": "10320",
"type": "both",
"use": "work"
}
],
"id": "a60f0623-80a0-4a97-a8c0-8bedb7844649",
"identifier": [
{
"system": "http://sys-ids.kemkes.go.id/organization/10080028",
"use": "official",
"value": "BPJS-K"
}
],
"meta": {
"lastUpdated": "2023-05-19T16:18:04.201716+00:00",
"versionId": "MTY4NDUxMzA4NDIwMTcxNjAwMA"
},
"name": "BPJS Kesehatan",
"partOf": {
"display": "BPJS Kesehatan",
"reference": "Organization/10080028"
},
"telecom": [
{
"system": "phone",
"value": "022-655 2331"
},
{
"system": "email",
"value": "wbs@bpjs-kesehatan.go.id"
},
{
"system": "fax",
"value": "022-655 2323"
}
],
"type": [
{
"coding": [
{
"code": "team",
"display": "Organizational team",
"system": "http://terminology.hl7.org/CodeSystem/organization-type"
}
]
}
]
}
#tba
#tba
[none]
1.2. Pencarian Data Pasien
Karena data pasien di dalam SATUSEHAT sudah terdaftar lebih dulu di *Master Patient Index* (MPI) Kementerian Kesehatan, sehingga registrasi data pasien baru tidak diperlukan.
Proses pencarian {patient-ihs-number} dari pasien dapat dilakukan melalui FHIR API dengan metode GET. Untuk metode pencarian data pasien di SATUSEHAT secara detail dapat dilihat dalam dokumen Petunjuk Teknis SATUSEHAT (Juknis SATSET).
1.3. Pembuatan Data Kepesertaan BPJS
Selanjutnya, data {facility-ihs-number} dan {patient-ihs-number} yang didapatkan dari step 1.1. dan step 1.2. akan dilampirkan pada resource Coverage seperti contoh dibawah ini:
Kepesertaan BPJS
{
"resourceType": "Coverage",
"status": "active",
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem v3-ActCode",
"code": "PUBLICPOL",
"display": "public healthcare"
}
]
},
"policyHolder": {
"reference": "Patient/100000030006"
},
"subscriber": {
"reference": "Patient/100000030006"
},
"subscriberId": "367400001111222",
"beneficiary": {
"reference": "Patient/100000030006"
},
"dependent": "0",
"relationship": {
"coding": [
{
"code": "self"
}
]
},
"period": {
"start": "2022-02-01",
"end": "2050-12-01"
},
"payor": [
{
"reference": "Organization/10080028"
}
],
"class": [
{
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/coverage-class",
"code": "group",
"display": "Group"
}
]
},
"value": "COV000009",
"name": "Pegawai Swasta"
},
{
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/coverage-class",
"code": "class",
"display": "Class"
}
]
},
"value": "3",
"name": "Kelas 3"
}
]
}
#tba
#tba
[none]
B. Verifikasi data klaim dari fasyankes
Gambar 4. Skema Verifikasi Klaim oleh BPJS Kesehatan
BPJS akan melakukan verifikasi data klaim fasyankes secara *monthly*. Data yang akan diverifikasi oleh tim BPJS adalah resource Claim yang dikirimkan oleh aplikasi E-Claim (step 2.4.). Data klinis dan pembayaran pada fasyankes (step 2.1.) juga akan digunakan dalam proses verifikasi ini.
Respons Klaim BPJS INACBG
{
"resourceType": "ClaimResponse",
"status": "active",
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/claim-type",
"code": "institutional"
}
]
},
"subType": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/ex-claimsubtype",
"code": "emergency"
}
]
},
"use": "claim",
"patient": {
"reference": "Patient/100000030006"
},
"created": "2022-06-22",
"insurer": {
"reference": "Organization/10080028"
},
"requestor": {
"reference": "Organization/10085103"
},
"request": {
"reference": "Claim/f53c953b-944a-49b2-a2bc-6ddcd23e7791"
},
"outcome": "complete",
"payeeType": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/payeetype",
"code": "provider"
}
]
},
"adjudication": [
{
"category": {
"coding": [
{
"system": "http://snomed.info/sct",
"code": "309010003",
"display": "Report payment claim status"
}
]
},
"reason": {
"coding": [
{
"system": "http://snomed.info/sct",
"code": "161040006",
"display": "Entitled to benefits"
}
]
},
"amount": {
"value": 28868200,
"currency": "IDR"
},
"value": 1
}
],
"total": [
{
"category": {
"coding": [
{
"code": "submitted"
}
]
},
"amount": {
"value": 28868200,
"currency": "IDR"
}
}
],
"payment": {
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/ex-paymenttype",
"code": "complete"
}
]
},
"date": "2022-06-22",
"amount": {
"value": 28868200,
"currency": "IDR"
}
}
}
#tba
#tba
[none]
III. BPJS
- Prerequisites of BPJS participant data
Figure 2. BPJS participant data registration work flow
BPJS (Badan Penyelenggara Jaminan Sosial) is Indonesia's national health insurance program. In order for healthcare facilities to submit claim data to BPJS, the Master Participant Data of BPJS must first be provided in SATUSEHAT. This is because the BPJS participant data will serve as a reference when the BPJS claim data is sent to SATUSEHAT. The Master Participant Data of BPJS is sourced from the existing BPJS system, so a data synchronization mechanism between the BPJS health system and SATUSEHAT is necessary.
The Master Participant Data of BPJS in SATUSEHAT will be stored using one of the resources in FHIR, namely Coverage. The process of adding new BPJS participant data can be done through the FHIR API using the POST method, while the process of modifying existing BPJS participant data (including the process of deactivating BPJS participant data) will use the PUT method. For examples of data submission or payload for updating BPJS participant data, please refer to the Postman Collection.
1.1. Create BPJS Organization Data
The first step before registering BPJS participant data at SATUSEHAT is that the BPJS Health organization must first be registered at SATUSEHAT. This is because BPJS participant data will refer to BPJS Health's {facility-ihs-number}.
BPJS Kesehatan
{
"resourceType": "Organization",
"active": true,
"address": [
{
"city": "Jakarta",
"country": "ID",
"extension": [
{
"extension": [
{
"url": "province",
"valueCode": "10"
},
{
"url": "city",
"valueCode": "1010"
},
{
"url": "district",
"valueCode": "1010101"
},
{
"url": "village",
"valueCode": "1010101101"
}
],
"url": "https://fhir.kemkes.go.id/r4/StructureDefinition/administrativeCode"
}
],
"line": [
"Jalan Matraman Raya No. 94 A, Kecamatan Menteng, Jakarta Pusat, DKI Jakarta"
],
"postalCode": "10320",
"type": "both",
"use": "work"
}
],
"id": "a60f0623-80a0-4a97-a8c0-8bedb7844649",
"identifier": [
{
"system": "http://sys-ids.kemkes.go.id/organization/10080028",
"use": "official",
"value": "BPJS-K"
}
],
"meta": {
"lastUpdated": "2023-05-19T16:18:04.201716+00:00",
"versionId": "MTY4NDUxMzA4NDIwMTcxNjAwMA"
},
"name": "BPJS Kesehatan",
"partOf": {
"display": "BPJS Kesehatan",
"reference": "Organization/10080028"
},
"telecom": [
{
"system": "phone",
"value": "022-655 2331"
},
{
"system": "email",
"value": "wbs@bpjs-kesehatan.go.id"
},
{
"system": "fax",
"value": "022-655 2323"
}
],
"type": [
{
"coding": [
{
"code": "team",
"display": "Organizational team",
"system": "http://terminology.hl7.org/CodeSystem/organization-type"
}
]
}
]
}
#tba
#tba
[none]
1.2. Search Patient Data
When sending health data through SATUSEHAT that includes patient-related data elements, information on the patient's {patient-ihs-number} is required. A patient's {patient-ihs-number} is obtained from the SATUSEHAT Master Patient Index (MPI) of the Ministry of Health. The MPI stores national-level patient demographic data, such as name, date of birth, address, official government-issued identification, and more. Once the {patient-ihs-number} is obtained, the ID can be stored in the internal systems of health facilities or non-health facility partners. The {patient-ihs-number} simplifies health service reporting related to patients because partners are not required to include personal data every time data is sent. The {patient-ihs-number} can also be used to comprehensively view the patient's personal data.
> `NOTES:`
> The process of searching for {patient-ihs-number} from a patient can be done via the FHIR API with the GET method. For detailed patient data search methods in SATUSEHAT, see _resource_ [`Patient`](https://satusehat.kemkes.go.id/platform/docs/id/fhir/resources/patient/#patient) and related MPI guidelines/playbooks can be seen in the document SATUSEHAT Master Patient Index.
1.3. Create BPJS Participant Data
Next, the {facility-ihs-number} and {patient-ihs-number} data obtained from step 1.1. and step 1.2. will be attached to the Coverage resource as in the example below:
BPJS Participant
{
"resourceType": "Coverage",
"status": "active",
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem v3-ActCode",
"code": "PUBLICPOL",
"display": "public healthcare"
}
]
},
"policyHolder": {
"reference": "Patient/100000030006"
},
"subscriber": {
"reference": "Patient/100000030006"
},
"subscriberId": "367400001111222",
"beneficiary": {
"reference": "Patient/100000030006"
},
"dependent": "0",
"relationship": {
"coding": [
{
"code": "self"
}
]
},
"period": {
"start": "2022-02-01",
"end": "2050-12-01"
},
"payor": [
{
"reference": "Organization/10080028"
}
],
"class": [
{
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/coverage-class",
"code": "group",
"display": "Group"
}
]
},
"value": "COV000009",
"name": "Pegawai Swasta"
},
{
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/coverage-class",
"code": "class",
"display": "Class"
}
]
},
"value": "3",
"name": "Kelas 3"
}
]
}
#tba
#tba
[none]
B. Verification of claim data from healthcare facilities
Gambar 4. Verification of claim data from healthcare facilities Workflow
BPJS will verify healthcare facility claim data *monthly*. The data that will be verified by the BPJS team is the Claim resource sent by the E-Claim application (step 2.4.). Clinical and payment data at health facilities (step 2.1.) will also be used in this verification process.
Respons from Klaim BPJS INACBG
{
"resourceType": "ClaimResponse",
"status": "active",
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/claim-type",
"code": "institutional"
}
]
},
"subType": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/ex-claimsubtype",
"code": "emergency"
}
]
},
"use": "claim",
"patient": {
"reference": "Patient/100000030006"
},
"created": "2022-06-22",
"insurer": {
"reference": "Organization/10080028"
},
"requestor": {
"reference": "Organization/10085103"
},
"request": {
"reference": "Claim/f53c953b-944a-49b2-a2bc-6ddcd23e7791"
},
"outcome": "complete",
"payeeType": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/payeetype",
"code": "provider"
}
]
},
"adjudication": [
{
"category": {
"coding": [
{
"system": "http://snomed.info/sct",
"code": "309010003",
"display": "Report payment claim status"
}
]
},
"reason": {
"coding": [
{
"system": "http://snomed.info/sct",
"code": "161040006",
"display": "Entitled to benefits"
}
]
},
"amount": {
"value": 28868200,
"currency": "IDR"
},
"value": 1
}
],
"total": [
{
"category": {
"coding": [
{
"code": "submitted"
}
]
},
"amount": {
"value": 28868200,
"currency": "IDR"
}
}
],
"payment": {
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/ex-paymenttype",
"code": "complete"
}
]
},
"date": "2022-06-22",
"amount": {
"value": 28868200,
"currency": "IDR"
}
}
}
#tba
#tba
[none]
Implementation of Claim and Payment (Health Financing) Use Case
A. Introduction
The implementation of this use case will focus on the integration process between BPJS and SATUSEHAT. The integrated health cost claim process between BPJS and SATUSEHAT can be carried out at health service facilities (fasyankes) that have been integrated with SATUSEHAT. Clinical data and payment data sent by fasyankes to SATUSEHAT will later be used as the basis for BPJS verification.
The stages of the integration flow and resources used in the BPJS claim process with SATUSEHAT as a whole can be seen in the image below:
Figure 1. BPJS claim data integration scheme with SATUSEHAT
The implementation of the BPJS patient care cost claim process in health facilities can generally be grouped into 5 process stages as follows:
- BPJS participant data availability prerequisites
- Participant Eligibility Letter (SEP) submission
- Sending of clinical data and patient payments
- Submission of care cost claims
- Verification of care cost claims
These five stages of the integration process involve 3 different implementing organizations, namely health facilities, BPJS, and Pusjak (application E-Claim), so that the implementation instructions that will be discussed in the next part will be categorized based on:
B. Data Submission Steps to SATUSEHAT
Last Updated: 2023/09/17
I. Fasyankes
Last Updated: 2023/09/17
Data klinis baik pada pasien rawat jalan maupun rawat inap akan selalu berisikan data kunjungan pasien yang disimpan dalam resource Encounter. Data-data kunjungan pasien yang direkam meliputi kapan pertemuan tersebut mulai dan selesai, siapa tenaga kesehatan yang melayani, siapa subjek dari pelayanannya, dan informasi pendukung lainnya. Encounter.id data kunjungan ini akan dilampirkan pada beberapa resource seperti data klaim BPJS (Claim), data pembayaran (ChargeItem), dan data pengajuan Surat Eligibilitas Peserta (CoverageEligibilityRequest).
Tahapan alur integrasi dan resource yang digunakan untuk proses klaim dapat dilihat pada gambar dibawah ini:
Gambar 3. Skema Pengajuan Klaim BPJS oleh Fasyankes
Step 1. Pengajuan Surat Eligibilitas Peserta (SEP)
Pasien yang ditanggung oleh BPJS Kesehatan yang datang berkunjung ke Rumah Sakit, baik pasien yang telah dirujuk dari faskes lain ataupun pasien yang masuk melalui jalur lain, akan mendapatkan Surat Eligibilitas Peserta atau yang sering disebut dengan SEP.
Pengajuan SEP dapat dilakukan oleh fasyankes dengan mengirimkan resource CoverageEligibilityRequest ke SATUSEHAT dengan format dibawah ini:
Pengajuan No. SEP BPJS
{
"resourceType": "CoverageEligibilityRequest",
"identifier": {
"period": {
"start": "2022-06-14",
"end": "2022-06-17"
}
},
"status": "active",
"priority": {
"coding": [
{
"code": "normal"
}
]
},
"purpose": [
"validation"
],
"patient": {
"reference": "Patient/100000030006"
},
"servicedDate": "2022-06-14",
"created": "2022-06-14",
"enterer": {
"reference": "Practitioner/N10000001"
},
"provider": {
"reference": "Organization/10085103"
},
"insurer": {
"reference": "Organization/10080028"
},
"facility": {
"reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480"
},
"supportingInfo": [
{
"sequence": 1,
"information": {
"reference": "QuestionnaireResponse/636bf55a-dd47-4235-8f65-3430b48ccf49"
}
}
],
"insurance": [
{
"focal": true,
"coverage": {
"reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d"
}
}
],
"item": [
{
"diagnosis": [
{
"diagnosisCodeableConcept": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-10",
"code": "I21.9",
"display": "Acute myocardial infarction, unspecified"
}
]
}
}
]
}
]
}
{
"resourceType": "CoverageEligibilityRequest",
"status": "active",
"priority": {
"coding": [
{
"code": "normal"
}
]
},
"purpose": [
"validation",
"benefits"
],
"patient": {
"reference": "Patient/{{PATIENT_IHS_NUMBER}}",
"display": "{{PATIENT_NAME}}"
},
"servicedDate": "{{SERVICE_DATE}}",
"created": "{{COVERAGEELIGIBILITYREQUEST_CREATED_DATETIME}}",
"enterer": {
"reference": "Practitioner/{{PRACTITIONER_IHS_NUMBER}}",
"display": "{{PRACTITIONER_NAME}}"
},
"provider": {
"reference": "Organization/{{PROVIDER_FACILITY_IHS_NUMBER}}",
"display": "{{PROVIDER_FACILITY_NAME}}"
},
"insurer": {
"reference": "Organization/{{INSURER_FACILITY_IHS_NUMBER}}",
"display": "{{INSURER_FACILITY_NAME}}"
},
"facility": {
"reference": "Location/{{COVERAGEELIGIBILITYREQUEST_LOCATION_ID}}",
"display": "{{COVERAGEELIGIBILITYREQUEST_LOCATION_NAME}}"
},
"insurance": [
{
"coverage": {
"reference": "Coverage/{{COVERAGE_ID}}"
}
}
],
"item": [
{
"category": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-10",
"code": "{{DIAGNOSIS_ICD_CODE}}",
"display": "{{DIAGNOSIS_ICD_DISPLAY}}"
}
]
}
}
]
}
Variabel
Deskripsi
PATIENT_IHS_NUMBER
SATUSEHAT ID Number untuk Pasien
PATIENT_NAME
Nama Pasien
SERVICE_DATE
Tanggal pelayanan kesehatan diberikan
COVERAGEELIGIBILITYREQUEST_CREATED_DATETIME
Tanggal dan waktu pengajuan SEP ini dilakukan (dibuat oleh sistem)
PRACTITIONER_IHS_NUMBER
SATUSEHAT ID untuk staff fasyankes yang mengajukan SEP
PRACTITIONER_NAME
Nama staff fasyankes yang mengajukan SEP
PROVIDER_FACILITY_IHS_NUMBER
SATUSEHAT ID untuk fasyankes yang mengajukan SEP
PROVIDER_FACILITY_NAME
Nama fasyankes yang mengajukan SEP
INSURER_FACILITY_IHS_NUMBER
SATUSEHAT ID untuk pihak verifikator SEP (Default: BPJS Kesehatan)
INSURER_FACILITY_NAME
Nama pihak verifikator SEP (Default: BPJS Kesehatan)
COVERAGEELIGIBILITYREQUEST_LOCATION_ID
ID lokasi fasyankes pengajuan SEP
COVERAGEELIGIBILITYREQUEST_LOCATION_NAME
Nama lokasi fasyankes pengajuan SEP
COVERAGE_ID
ID data Kepesertaan BPJS
DIAGNOSIS_ICD_CODE
Kode ICD-10 untuk diagnosa penyakit yang diderita pasien
DIAGNOSIS_ICD_DISPLAY
Deskripsi ICD-10 untuk diagnosa penyakit yang diderita pasien
CATATAN:
(*): Jenis data yang memiliki terminologi spesifik. Kamus terminologi bisa ditemukan pada tab "ValueSet"
[none]
Data Medis (Informasi Tambahan)
Pada proses pengajuan No. SEP, informasi pendukung yang berhubungan dengan layanan medis pasien juga perlu dilampirkan. Data medis yang dimaksud adalah:
1. Jenis Pelayanan: Termasuk jenis pelayanan rawat jalan atau rawat inap
2. Asal Rujukan: Berasal dari Fasilitas Kesehatan Tingkat 1 atau Fasilitas Kesehatan Tingkat 2
3. Tanggal Rujukan
4. Nomor Rujukan: Id
5. Pemberi pelayanan kesehatan (PPK) Rujukan: Fasyankes yang dirujuk
Informasi pendukung ini akan disimpan dalam resource QuestionnaireResponse.
Kolom CoverageEligibilityRequest.supportingInfo.information pada contoh diatas akan mereferensi ke QuestionnaireResponse.id.
{
"resourceType": "QuestionnaireResponse",
"questionnaire": "https://fhir.kemkes.go.id/Questionnaire/Q0006",
"status": "completed",
"subject": {
"reference": "Patient/100000030006",
"display": "Jane Smith"
},
"encounter": {
"reference": "Encounter/29e3e814-4c9b-4f24-a8cb-54ba597d746f"
},
"authored": "06/14/2022 03:00:00",
"author": {
"reference": "Practitioner/N10000001"
},
"source": {
"reference": "Patient/100000030006"
},
"item": [
{
"linkId": "1",
"text": "Jenis Pelayanan",
"answer": [
{
"valueCoding": {
"system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
"code": "IMP",
"display": "inpatient encounter"
}
}
]
},
{
"linkId": "2",
"text": "Rujukan",
"item": [
{
"linkId": "2.1",
"text": "Asal Rujukan",
"answer": [
{
"valueCoding": {
"system": "http://terminology.kemkes.go.id/CodeSystem/organization-type",
"code": "FKTP",
"display": "Fasilitas Kesehatan Tingkat 1"
}
}
]
},
{
"linkId": "2.2",
"text": "Tanggal Rujukan",
"answer": [
{
"valueDate": "2022-06-13"
}
]
},
{
"linkId": "2.3",
"text": "Nomor Rujukan",
"answer": [
{
"valueString": "5375162"
}
]
},
{
"linkId": "2.4",
"text": "PPK Rujukan",
"answer": [
{
"valueCoding": {
"system": "http://sys-ids.kemkes.go.id/organization/10000004",
"code": "10000004",
"display": "Puskesmas Sangat Waras"
}
}
]
}
]
},
{
"linkId": "3",
"text": "Catatan Peserta",
"answer": [
{
"valueString": "-"
}
]
},
{
"linkId": "4",
"text": "Poli",
"item": [
{
"linkId": "4.1",
"text": "Tujuan",
"answer": [
{
"valueCoding": {
"system": "http://terminology.kemkes.go.id/CodeSystem/organization-type",
"code": "P0000001",
"display": "Poli Jantung dan Pembuluh Darah"
}
}
]
},
{
"linkId": "4.2",
"text": "Eksekutif",
"answer": [
{
"valueBoolean": true
}
]
}
]
},
{
"linkId": "5",
"text": "CoB",
"answer": [
{
"valueBoolean": true
}
]
},
{
"linkId": "6",
"text": "Katarak",
"answer": [
{
"valueBoolean": true
}
]
},
{
"linkId": "7",
"text": "Jaminan Kecelakaan Lalu Lintas",
"answer": [
{
"valueBoolean": true
}
]
},
{
"linkId": "8",
"text": "Tanggal Kejadian Kecelakaan Lalu Lintas",
"answer": [
{
"valueDate": "2022-06-13"
}
]
},
{
"linkId": "9",
"text": "Keterangan Kecelakaan Lalu Lintas",
"answer": [
{
"valueString": "-"
}
]
},
{
"linkId": "10",
"text": "Suplesi",
"answer": [
{
"valueBoolean": true
}
]
},
{
"linkId": "11",
"text": "Nomor SEP Suplesi",
"answer": [
{
"valueString": "SUP03203340000002"
}
]
},
{
"linkId": "12",
"text": "Lokasi Kecelakaan",
"item": [
{
"linkId": "12.1",
"text": "Kode Provinsi",
"answer": [
{
"valueReference": {
"type": "Location/53d57761-a5e6-445a-ae09-e26e4a78418e"
}
}
]
},
{
"linkId": "12.2",
"text": "Kode Kabupaten",
"answer": [
{
"valueReference": {
"type": "Location/c2245bff-121e-4a92-89b5-a1363ea94f47"
}
}
]
},
{
"linkId": "12.3",
"text": "Kode Kecamatan",
"answer": [
{
"valueReference": {
"type": "Location/2c5304cc-de6b-4816-b976-2daa896d99d2"
}
}
]
}
]
},
{
"linkId": "13",
"text": "SKDP",
"item": [
{
"linkId": "13.1",
"text": "Nomor Surat Kontrol",
"answer": [
{
"valueString": "DS02/DPP16-2023"
}
]
},
{
"linkId": "13.2",
"text": "Kode DPJP",
"answer": [
{
"valueReference": {
"type": "Practitioner/N10000001"
}
}
]
}
]
}
]
}
#tba
#tba
[none]
Respon No. Surat Eligibilitas Pelayanan (SEP) BPJS
Setelah fasyankes mengirimkan data pengajuan SEP BPJS ke SATUSEHAT, sistem BPJS Kesehatan akan melakukan verifikasi terhadap resource CoverageEligibilityRequest secara real-time. SATUSEHAT otomatis akan mengirimkan respon dari data pengajuan SEP tersebut dalam resource CoverageEligibilityResponse.
Apabila hasil verifikasi berhasil, maka No. SEP akan tergenerate dan dilampirkan pada resource CoverageEligibilityResponse. Berhubung SEP merupakan syarat utama atau surat jaminan pasien bisa menggunakan fasilitas BPJS, oleh karena itu apabila hasil verifikasi gagal, maka No. SEP tidak akan terbentuk dan secara otomatis pasien tidak bisa menggunakan fasilitas BPJS. Status hasil verifikasi SEP bisa dilihat pada kolom CoverageEligibilityResponse.outcome.
{
"resourceType": "CoverageEligibilityResponse",
"identifier": {
"use": {
"system": "http://hl7.org/fhir/identifier-use",
"code": "official",
"display": "Official"
},
"system": "http://sys-ids.kemkes.go.id/jkn-claim-number",
"value": "0301R0011117V000008",
"type": {
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
"code": "NIIP",
"display": "National Insurance Payor Identifier (Payor)"
},
"period": {
"start": "2022-06-14",
"end": "2022-08-14"
}
},
"status": "active",
"purpose": [
"validation"
],
"patient": {
"reference": "Patient/100000030006"
},
"created": "2022-06-14",
"requestor": {
"reference": "Organization/10085103"
},
"request": {
"reference": "CoverageEligibilityRequest/484e6912-1a7f-493f-aac7-0ec80a97a5d1"
},
"outcome": "complete",
"disposition": "Peserta aktif",
"insurer": {
"reference": "Organization/10080028"
},
"insurance": [
{
"coverage": {
"reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d"
},
"inforce": true,
"item": [
{
"category": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/ex-benefitcategory",
"code": "30",
"display": "Health Benefit Plan Coverage"
}
]
}
}
]
}
]
}
{
"resourceType": "CoverageEligibilityResponse",
"status": "active",
"purpose": [
"validation",
"benefits"
],
"patient": {
"reference": "Patient/{{PATIENT_IHS_NUMBER}}",
"display": "{{PATIENT_NAME}}"
},
"servicedDate": "{{SERVICE_DATE}}",
"created": "{{COVERAGEELIGIBILITYRESPONSE_CREATED_DATETIME}}",
"request": {
"reference": "CoverageEligibilityRequest/{{COVERAGEELIGIBILITYREQUEST_ID}}"
},
"outcome": "{{HASIL_VERIFIKASI}}",
"insurer": {
"reference": "Organization/{{INSURER_FACILITY_IHS_NUMBER}}",
"display": "{{INSURER_FACILITY_NAME}}"
},
"insurance": [
{
"coverage": {
"reference": "Coverage/{{COVERAGE_ID}}"
},
"inforce": true,
"item": [
{
"category": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/ex-benefitcategory",
"code": "{{COVERAGE_CATEGORY_CODE}}",
"display": "{{COVERAGE_CATEGORY_DISPLAY}}"
}
]
},
"network": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/benefit-network",
"code": "in"
}
]
},
"unit": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/benefit-unit",
"code": "individual"
}
]
},
"term": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/benefit-term",
"code": "annual"
}
]
},
"benefit": [
{
"type": {
"coding": [
{
"code": "benefit"
}
]
},
"allowedMoney": {
"value": {{AMOUNT1_VALUE}},
"currency": "IDR"
}
},
{
"type": {
"coding": [
{
"code": "copay-maximum"
}
]
},
"allowedMoney": {
"value": {{AMOUNT2_VALUE}},
"currency": "IDR"
}
},
{
"type": {
"coding": [
{
"code": "copay-percent"
}
]
},
"allowedUnsignedInt": {{ AMOUNT1_PERCENTAGE}}
}
]
}
]
}
]
}
Variabel
Deskripsi
PATIENT_IHS_NUMBER
SATUSEHAT ID Number untuk Pasien
PATIENT_NAME
Nama Pasien
SERVICE_DATE
Estimasi tanggal pelayanan kesehatan diberikan
COVERAGEELIGIBILITYRESPONSE_CREATED_DATETIME
Tanggal dan waktu verifikasi SEP ini dilakukan (dibuat oleh sistem)
COVERAGEELIGIBILITYREQUEST_ID
ID CoverageEligibilityRequest data pengajuan SEP
INSURER_FACILITY_IHS_NUMBER
SATUSEHAT ID untuk pihak verifikator SEP (Default: BPJS Kesehatan)
INSURER_FACILITY_NAME
Nama pihak verifikator SEP (Default: BPJS Kesehatan)
COVERAGE_ID
ID data Kepesertaan BPJS
COVERAGE_CATEGORY_CODE
Kode kategori pelayanan kesehatan yang bisa diklaim oleh pasien BPJS
COVERAGE_CATEGORY_DISPLAY
Deskripsi kategori pelayanan kesehatan yang bisa diklaim oleh pasien BPJS
AMOUNT1_VALUE
Biaya maksimum yang diperbolehkan untuk klaim (dalam rupiah)
AMOUNT2_VALUE
Pembayaran per layanan (dalam rupiah)
AMOUNT1_PERCENTAGE
Persentase pembayaran per layanan
[none]
Step 2. Pengiriman Data Klinis dan Pembayaran oleh Fasyankes
Fasyankes yang sudah terintegrasi dengan SATUSEHAT akan mengirimkan data klinis dan pembayaran untuk pasien rawat jalan/ rawat inap ke SATUSEHAT. Data-data inilah yang nantinya akan digunakan oleh BPJS sebagai acuan dalam melakukan verifikasi klaim BPJS.
Data klinis baik pada pasien rawat jalan maupun rawat inap akan selalu berisikan data kunjungan pasien yang disimpan dalam resource Encounter. Data-data kunjungan pasien yang direkam meliputi kapan pertemuan tersebut mulai dan selesai, siapa tenaga kesehatan yang melayani, siapa subjek dari pelayanannya, dan informasi pendukung lainnya. Encounter.id data kunjungan ini akan dilampirkan pada beberapa resource seperti data klaim BPJS (Claim), data pembayaran (ChargeItem), dan data pengajuan Surat Eligibilitas Pasien (CoverageEligibilityRequest).
Pendaftaran Kunjungan Pasien Rawat Inap
{
"resourceType": "Encounter",
"identifier": [
{
"system": "http://sys-ids.kemkes.go.id/encounter/10085103",
"value": "10085103"
}
],
"status": "in-progress",
"class": {
"system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
"code": "IMP",
"display": "inpatient encounter"
},
"subject": {
"reference": "Patient/100000030006",
"display": "Jane Smith"
},
"participant": [
{
"type": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-ParticipationType",
"code": "ATND",
"display": "attender"
}
]
}
],
"individual": {
"reference": "Practitioner/N10000001",
"display": "Dokter Bronsig"
}
}
],
"period": {
"start": "06/14/2022 00:00:00"
},
"location": [
{
"location": {
"reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480",
"display": "Bed 2, Ruang 44, Bangsal Rawat Inap Kelas 2, Layanan Jantung, Lantai 2, Gedung Utama"
},
"extension": [
{
"url": "https://fhir.kemkes.go.id/r4/StructureDefinition/ServiceClass",
"extension": [
{
"url": "value",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/locationServiceClass",
"code": "2",
"display": "Kelas 2"
}
]
}
},
{
"url": "upgradeClassIndicator",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/locationUpgradeClass",
"code": "naik-kelas",
"display": "Kenaikan Kelas Perawatan"
}
]
}
}
]
}
]
}
],
"statusHistory": [
{
"status": "in-progress",
"period": {
"start": "06/14/2022 00:00:00"
}
}
],
"serviceProvider": {
"reference": "Organization/10085103"
}
}
#tba
#tba
[none]
CATATAN:
Proses pengiriman data pasien rawat jalan ke SATUSEHAT secara detail dapat dilihat dalam dokumen Playbook Resume Medis Rawat Jalan.
Referensi:
I. Healthcare Facility
Clinical data for both outpatients and inpatients will always contain patient visit data stored in the Encounter resource. Recorded patient visit data includes when the meeting started and ended, who the health worker was, who the subject of the service was, and other supporting information. Encounter.id visit data will be attached to several resources such as BPJS claim data (Claim), payment data (ChargeItem), and Participant Eligibility Letter submission data (CoverageEligibilityRequest).
The stages of the integration flow and resources used for the claim process can be seen in the image below:
Figure 3. BPJS Claim Submission Scheme by Health Facilities
Step 1. Send "Surat Eligibilitas Peserta (SEP)"
Patients covered by BPJS Kesehatan (Indonesia national health insurance) who visit the Hospital, whether patients who have been referred from other health facilities or patients who enter through other channels, will receive a "Surat Eligibilitas Peserta" or what is often referred to as SEP. SEP is an important document in the BPJS Health system that provides clarity about the eligibility and rights of participants to receive BPJS health services.
SEP data can be requested by health facilities by sending the CoverageEligibilityRequest resource to SATUSEHAT with the format below:
SEP BPJS Number Request
{
"resourceType": "CoverageEligibilityRequest",
"identifier": {
"period": {
"start": "2022-06-14",
"end": "2022-06-17"
}
},
"status": "active",
"priority": {
"coding": [
{
"code": "normal"
}
]
},
"purpose": [
"validation"
],
"patient": {
"reference": "Patient/100000030006"
},
"servicedDate": "2022-06-14",
"created": "2022-06-14",
"enterer": {
"reference": "Practitioner/N10000001"
},
"provider": {
"reference": "Organization/10085103"
},
"insurer": {
"reference": "Organization/10080028"
},
"facility": {
"reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480"
},
"supportingInfo": [
{
"sequence": 1,
"information": {
"reference": "QuestionnaireResponse/636bf55a-dd47-4235-8f65-3430b48ccf49"
}
}
],
"insurance": [
{
"focal": true,
"coverage": {
"reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d"
}
}
],
"item": [
{
"diagnosis": [
{
"diagnosisCodeableConcept": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-10",
"code": "I21.9",
"display": "Acute myocardial infarction, unspecified"
}
]
}
}
]
}
]
}
{
"resourceType": "CoverageEligibilityRequest",
"status": "active",
"priority": {
"coding": [
{
"code": "normal"
}
]
},
"purpose": [
"validation",
"benefits"
],
"patient": {
"reference": "Patient/{{PATIENT_IHS_NUMBER}}",
"display": "{{PATIENT_NAME}}"
},
"servicedDate": "{{SERVICE_DATE}}",
"created": "{{COVERAGEELIGIBILITYREQUEST_CREATED_DATETIME}}",
"enterer": {
"reference": "Practitioner/{{PRACTITIONER_IHS_NUMBER}}",
"display": "{{PRACTITIONER_NAME}}"
},
"provider": {
"reference": "Organization/{{PROVIDER_FACILITY_IHS_NUMBER}}",
"display": "{{PROVIDER_FACILITY_NAME}}"
},
"insurer": {
"reference": "Organization/{{INSURER_FACILITY_IHS_NUMBER}}",
"display": "{{INSURER_FACILITY_NAME}}"
},
"facility": {
"reference": "Location/{{COVERAGEELIGIBILITYREQUEST_LOCATION_ID}}",
"display": "{{COVERAGEELIGIBILITYREQUEST_LOCATION_NAME}}"
},
"insurance": [
{
"coverage": {
"reference": "Coverage/{{COVERAGE_ID}}"
}
}
],
"item": [
{
"category": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-10",
"code": "{{DIAGNOSIS_ICD_CODE}}",
"display": "{{DIAGNOSIS_ICD_DISPLAY}}"
}
]
}
}
]
}
Variable
Description
PATIENT_IHS_NUMBER
SATUSEHAT ID Number for Patient.
PATIENT_NAME
Patient Name.
SERVICE_DATE
Date healthcare service is given.
COVERAGEELIGIBILITYREQUEST_CREATED_DATETIME
Date and time the SEP submission was made (created by the system).
PRACTITIONER_IHS_NUMBER
SATUSEHAT ID for healthcare facility staff who submitted the SEP.
PRACTITIONER_NAME
Name of healthcare facility staff who submitted the SEP.
PROVIDER_FACILITY_IHS_NUMBER
SATUSEHAT ID for the healthcare facility submitting the SEP.
PROVIDER_FACILITY_NAME
Name of the healthcare facility submitting the SEP.
INSURER_FACILITY_IHS_NUMBER
SATUSEHAT ID for the SEP verifier (Default: BPJS Kesehatan).
INSURER_FACILITY_NAME
Name of the SEP verifier (Default: BPJS Kesehatan).
COVERAGEELIGIBILITYREQUEST_LOCATION_ID
ID of the healthcare facility location for the SEP submission.
COVERAGEELIGIBILITYREQUEST_LOCATION_NAME
Name of the healthcare facility location for the SEP submission.
COVERAGE_ID
BPJS Membership data ID.
DIAGNOSIS_ICD_CODE
ICD-10 code for the patient's disease diagnosis.
DIAGNOSIS_ICD_DISPLAY
ICD-10 description for the patient's disease diagnosis.
NOTES:
(*): Data types that have specific terminology. The terminology dictionary can be found on the "Value Set" tab.
[none]
Medical Data (Additional Information)
In the process of submitting No. SEP, supporting information related to the patient's medical services also needs to be attached. The medical data in question is:
1. Type of Service: Including the type of outpatient or inpatient services
2. Referral Origin: Originating from Level 1 Health Facilities or Level 2 Health Facilities
3. Referral Date
4. Referral Number: Id
5. Referral Health Service Provider (PPK): Referred Health Facilities
This supporting information will be stored in the QuestionnaireResponse resource.
The CoverageEligibilityRequest.supportingInfo.information column in the example above will refer to QuestionnaireResponse.id.
{
"resourceType": "QuestionnaireResponse",
"questionnaire": "https://fhir.kemkes.go.id/Questionnaire/Q0006",
"status": "completed",
"subject": {
"reference": "Patient/100000030006",
"display": "Jane Smith"
},
"encounter": {
"reference": "Encounter/29e3e814-4c9b-4f24-a8cb-54ba597d746f"
},
"authored": "06/14/2022 03:00:00",
"author": {
"reference": "Practitioner/N10000001"
},
"source": {
"reference": "Patient/100000030006"
},
"item": [
{
"linkId": "1",
"text": "Jenis Pelayanan",
"answer": [
{
"valueCoding": {
"system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
"code": "IMP",
"display": "inpatient encounter"
}
}
]
},
{
"linkId": "2",
"text": "Rujukan",
"item": [
{
"linkId": "2.1",
"text": "Asal Rujukan",
"answer": [
{
"valueCoding": {
"system": "http://terminology.kemkes.go.id/CodeSystem/organization-type",
"code": "FKTP",
"display": "Fasilitas Kesehatan Tingkat 1"
}
}
]
},
{
"linkId": "2.2",
"text": "Tanggal Rujukan",
"answer": [
{
"valueDate": "2022-06-13"
}
]
},
{
"linkId": "2.3",
"text": "Nomor Rujukan",
"answer": [
{
"valueString": "5375162"
}
]
},
{
"linkId": "2.4",
"text": "PPK Rujukan",
"answer": [
{
"valueCoding": {
"system": "http://sys-ids.kemkes.go.id/organization/10000004",
"code": "10000004",
"display": "Puskesmas Sangat Waras"
}
}
]
}
]
},
{
"linkId": "3",
"text": "Catatan Peserta",
"answer": [
{
"valueString": "-"
}
]
},
{
"linkId": "4",
"text": "Poli",
"item": [
{
"linkId": "4.1",
"text": "Tujuan",
"answer": [
{
"valueCoding": {
"system": "http://terminology.kemkes.go.id/CodeSystem/organization-type",
"code": "P0000001",
"display": "Poli Jantung dan Pembuluh Darah"
}
}
]
},
{
"linkId": "4.2",
"text": "Eksekutif",
"answer": [
{
"valueBoolean": true
}
]
}
]
},
{
"linkId": "5",
"text": "CoB",
"answer": [
{
"valueBoolean": true
}
]
},
{
"linkId": "6",
"text": "Katarak",
"answer": [
{
"valueBoolean": true
}
]
},
{
"linkId": "7",
"text": "Jaminan Kecelakaan Lalu Lintas",
"answer": [
{
"valueBoolean": true
}
]
},
{
"linkId": "8",
"text": "Tanggal Kejadian Kecelakaan Lalu Lintas",
"answer": [
{
"valueDate": "2022-06-13"
}
]
},
{
"linkId": "9",
"text": "Keterangan Kecelakaan Lalu Lintas",
"answer": [
{
"valueString": "-"
}
]
},
{
"linkId": "10",
"text": "Suplesi",
"answer": [
{
"valueBoolean": true
}
]
},
{
"linkId": "11",
"text": "Nomor SEP Suplesi",
"answer": [
{
"valueString": "SUP03203340000002"
}
]
},
{
"linkId": "12",
"text": "Lokasi Kecelakaan",
"item": [
{
"linkId": "12.1",
"text": "Kode Provinsi",
"answer": [
{
"valueReference": {
"type": "Location/53d57761-a5e6-445a-ae09-e26e4a78418e"
}
}
]
},
{
"linkId": "12.2",
"text": "Kode Kabupaten",
"answer": [
{
"valueReference": {
"type": "Location/c2245bff-121e-4a92-89b5-a1363ea94f47"
}
}
]
},
{
"linkId": "12.3",
"text": "Kode Kecamatan",
"answer": [
{
"valueReference": {
"type": "Location/2c5304cc-de6b-4816-b976-2daa896d99d2"
}
}
]
}
]
},
{
"linkId": "13",
"text": "SKDP",
"item": [
{
"linkId": "13.1",
"text": "Nomor Surat Kontrol",
"answer": [
{
"valueString": "DS02/DPP16-2023"
}
]
},
{
"linkId": "13.2",
"text": "Kode DPJP",
"answer": [
{
"valueReference": {
"type": "Practitioner/N10000001"
}
}
]
}
]
}
]
}
#tba
#tba
[none]
Response of BPJS Service Eligibility Letter (SEP) Number
After the health facility sends the BPJS SEP submission data to SATUSEHAT, the BPJS Kesehatan system will verify the CoverageEligibilityRequest resource in real-time. SATUSEHAT will automatically send a response from the SEP submission data in the CoverageEligibilityResponse resource.
If the verification results are successful, the SEP No. will be generated and attached to the CoverageEligibilityResponse resource. Since SEP is the main requirement or guarantee letter for patients to be able to use BPJS facilities, therefore if the verification results fail, the SEP No. will not be formed and the patient will automatically not be able to use BPJS facilities. The status of the SEP verification results can be seen in the CoverageEligibilityResponse.outcome column.
{
"resourceType": "CoverageEligibilityResponse",
"identifier": {
"use": {
"system": "http://hl7.org/fhir/identifier-use",
"code": "official",
"display": "Official"
},
"system": "http://sys-ids.kemkes.go.id/jkn-claim-number",
"value": "0301R0011117V000008",
"type": {
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
"code": "NIIP",
"display": "National Insurance Payor Identifier (Payor)"
},
"period": {
"start": "2022-06-14",
"end": "2022-08-14"
}
},
"status": "active",
"purpose": [
"validation"
],
"patient": {
"reference": "Patient/100000030006"
},
"created": "2022-06-14",
"requestor": {
"reference": "Organization/10085103"
},
"request": {
"reference": "CoverageEligibilityRequest/484e6912-1a7f-493f-aac7-0ec80a97a5d1"
},
"outcome": "complete",
"disposition": "Peserta aktif",
"insurer": {
"reference": "Organization/10080028"
},
"insurance": [
{
"coverage": {
"reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d"
},
"inforce": true,
"item": [
{
"category": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/ex-benefitcategory",
"code": "30",
"display": "Health Benefit Plan Coverage"
}
]
}
}
]
}
]
}
{
"resourceType": "CoverageEligibilityResponse",
"status": "active",
"purpose": [
"validation",
"benefits"
],
"patient": {
"reference": "Patient/{{PATIENT_IHS_NUMBER}}",
"display": "{{PATIENT_NAME}}"
},
"servicedDate": "{{SERVICE_DATE}}",
"created": "{{COVERAGEELIGIBILITYRESPONSE_CREATED_DATETIME}}",
"request": {
"reference": "CoverageEligibilityRequest/{{COVERAGEELIGIBILITYREQUEST_ID}}"
},
"outcome": "{{HASIL_VERIFIKASI}}",
"insurer": {
"reference": "Organization/{{INSURER_FACILITY_IHS_NUMBER}}",
"display": "{{INSURER_FACILITY_NAME}}"
},
"insurance": [
{
"coverage": {
"reference": "Coverage/{{COVERAGE_ID}}"
},
"inforce": true,
"item": [
{
"category": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/ex-benefitcategory",
"code": "{{COVERAGE_CATEGORY_CODE}}",
"display": "{{COVERAGE_CATEGORY_DISPLAY}}"
}
]
},
"network": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/benefit-network",
"code": "in"
}
]
},
"unit": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/benefit-unit",
"code": "individual"
}
]
},
"term": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/benefit-term",
"code": "annual"
}
]
},
"benefit": [
{
"type": {
"coding": [
{
"code": "benefit"
}
]
},
"allowedMoney": {
"value": {{AMOUNT1_VALUE}},
"currency": "IDR"
}
},
{
"type": {
"coding": [
{
"code": "copay-maximum"
}
]
},
"allowedMoney": {
"value": {{AMOUNT2_VALUE}},
"currency": "IDR"
}
},
{
"type": {
"coding": [
{
"code": "copay-percent"
}
]
},
"allowedUnsignedInt": {{ AMOUNT1_PERCENTAGE}}
}
]
}
]
}
]
}
| Variable | Description | | :------------------------------ | --------- | | PATIENT_IHS_NUMBER | SATUSEHAT ID Number for Patient | | PATIENT_NAME | Patient Name | | SERVICE_DATE | Estimated date healthcare service is given | | COVERAGEELIGIBILITYRESPONSE_CREATED_DATETIME | Date and time this SEP verification was done (created by the system) | | COVERAGEELIGIBILITYREQUEST_ID | SEP submission CoverageEligibilityRequest data ID | | INSURER_FACILITY_IHS_NUMBER | SATUSEHAT ID for the SEP verifier (Default: BPJS Kesehatan) | | INSURER_FACILITY_NAME | Name of the SEP verifier (Default: BPJS Kesehatan) | | COVERAGE_ID | BPJS Membership data ID | | COVERAGE_CATEGORY_CODE | Code of the healthcare service category that can be claimed by BPJS patients | | COVERAGE_CATEGORY_DISPLAY | Description of the healthcare service category that can be claimed by BPJS patients | | AMOUNT1_VALUE | Maximum cost allowed for claims (in rupiah) | | AMOUNT2_VALUE | Payment per service (in rupiah) | | AMOUNT1_PERCENTAGE | Percentage of payment per service |
[none]
Step 2. Clinical Data Submission and Payment by Health Facilities
Health facilities that have been integrated with SATUSEHAT will send clinical data and payments for outpatients/inpatients to SATUSEHAT. This data will later be used by BPJS as a reference in verifying BPJS claims.
Clinical data for both outpatients and inpatients will always contain patient visit data stored in the Encounter resource. Recorded patient visit data includes when the meeting started and ended, who the health worker was, who the subject of the service was, and other supporting information. Encounter.id visit data will be attached to several resources such as BPJS claim data (Claim), payment data (ChargeItem), and Patient Eligibility Letter submission data (CoverageEligibilityRequest).
Inpatient Visit Registration
{
"resourceType": "Encounter",
"identifier": [
{
"system": "http://sys-ids.kemkes.go.id/encounter/10085103",
"value": "10085103"
}
],
"status": "in-progress",
"class": {
"system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
"code": "IMP",
"display": "inpatient encounter"
},
"subject": {
"reference": "Patient/100000030006",
"display": "Jane Smith"
},
"participant": [
{
"type": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-ParticipationType",
"code": "ATND",
"display": "attender"
}
]
}
],
"individual": {
"reference": "Practitioner/N10000001",
"display": "Dokter Bronsig"
}
}
],
"period": {
"start": "06/14/2022 00:00:00"
},
"location": [
{
"location": {
"reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480",
"display": "Bed 2, Ruang 44, Bangsal Rawat Inap Kelas 2, Layanan Jantung, Lantai 2, Gedung Utama"
},
"extension": [
{
"url": "https://fhir.kemkes.go.id/r4/StructureDefinition/ServiceClass",
"extension": [
{
"url": "value",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/locationServiceClass",
"code": "2",
"display": "Kelas 2"
}
]
}
},
{
"url": "upgradeClassIndicator",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/locationUpgradeClass",
"code": "naik-kelas",
"display": "Kenaikan Kelas Perawatan"
}
]
}
}
]
}
]
}
],
"statusHistory": [
{
"status": "in-progress",
"period": {
"start": "06/14/2022 00:00:00"
}
}
],
"serviceProvider": {
"reference": "Organization/10085103"
}
}
#tba
#tba
[none]
NOTES:
The process of sending outpatient data to SATUSEHAT in detail can be seen in the document Playbook Outpatient Medical Record.
Reference:
Postman Klaim dan Pembayaran
Playbook Klaim dan Pembayaran (Fasyankes)
Postman Resume Medis Rawat Jalan SATUSEHAT
Last Updated: 2023/09/17
II. E-Klaim
Step 1. Konversi format data E-Klaim ke format FHIR
Sama seperti proses yang sudah berlangsung sebelumnya, pengajuan klaim oleh fasyankes tetap dilakukan melalui aplikasi E-Klaim. Aplikasi E-Klaim inilah yang nantinya akan melakukan konversi data klaim ke format FHIR (resource *Claim*) dan dikirimkan ke SATUSEHAT.
Resource *Claim* disini akan referensi ke data klinis seperti *Encounter*, *Observation*, dan data pendukung lainnya. Berhubung fasyankes diperbolehkan untuk melakukan pengajuan klaim terhadap beberapa kunjungan pasien secara sekaligus, maka dari itu 1 *Claim* (1 Nomor SEP) bisa mencakup lebih dari 1 data kunjungan pasien (resource *Encounter*).
Klaim BPJS INACBG
{
"resourceType": "Claim",
"id": "960151",
"meta": {
"profile": [
"https://fhir.kemkes.go.id/r4/StructureDefinition/Claim"
]
},
"identifier": [
{
"system": "http://sys-ids.kemkes.go.id/jkn-claim-batch-number",
"value": "96123451"
}
],
"status": "active",
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/claim-type",
"code": "institutional",
"display": "Institutional"
}
]
},
"use": "claim",
"patient": {
"reference": "Patient/100000030006"
},
"billablePeriod": {
"start": "2022-06-14",
"end": "2022-06-21"
},
"created": "2022-06-21",
"enterer": {
"identifier": {
"system": "https://fhir.kemkes.go.id/id/nik",
"value": "3657746633553535555"
},
"reference": "Practitioner/N10000001"
},
"insurer": {
"reference": "Organization/10080028"
},
"provider": {
"reference": "Organization/10085103"
},
"priority": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/processpriority",
"code": "normal",
"display": "Normal"
}
]
},
"payee": {
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/payeetype",
"code": "provider",
"display": "Provider"
}
]
},
"party": {
"reference": "Organization/10085103"
}
},
"facility": {
"reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480"
},
"supportingInfo": [
{
"sequence": 1,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "upgrade-class-indicator",
"display": "Indikator Naik Kelas"
}
]
},
"code": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/upgradeClassIndicator",
"code": "upgrade",
"display": "Ada Kenaikan Kelas"
}
]
}
},
{
"sequence": 2,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "upgrade-class-class"
}
]
},
"code": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/locationServiceClass",
"code": "2"
}
]
},
"timingPeriod": {
"start": "2022-06-14",
"end": "2022-06-21"
}
},
{
"sequence": 3,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "claim-text-encoded"
}
]
},
"valueAttachment": {
"contentType": "text/plain;base64",
"data": "REVNTyBWRVJTSU9OCUQJMwlBUAkxCTI0LzAxLzIwMjMJMjQvMDEvMjAyMwkyNC8wMS8yMDIzCTMwMDAJMQkxCVAwMS42CTk5LjAzCS0JLQlOb25lCU5vbmUJTm9uZQlOb25lCVAtOC0xNy1JCU5vbmUJTm9uZQlOb25lCU5vbmUJTm9uZQlOb25lCU5FT05BVEFMLCBCQkwgPiAyNDk5IEdSIFRBTlBBIFBST1NFRFVSIE1BWU9SIChSSU5HQU4pCTQ1NTk4MDAJMAkwCS0JMAktCTAJLQkwCS0JMAk0NTU5ODAwCTEwMDAwMAkwCTEJMQkwCTAJVEVTVCBCQVlJCTIwMDM5OQkwCTAJCURFTU8gVkVSU0lPTgkxMjIyMzMzNDQJMztKS04JMTExMDEwMTs5MDIyQzAxO0FETQk1LjcuMC4yMDIyMDkyNzEzMDMJNAk2NjgJMSMwIyMwIzAjMC4wIzIwMjMtMDEtMjMgMTc6MTM6MDMjMCMxMzoyOToyOSMxMzoyOToyOSMwMDowMDowMCN7ImNvX2luc2lkZW5zZV9pbmQiOiIwIn0jI3siY2FyYV9tYXN1ayI6ImVtZCIsInNpc3RvbGUiOiIxMTAiLCJkaWFzdG9sZSI6IjcwIiwidG90YWxfdGFyaWZfcnMiOiIxMDAwMDAiLCJiaWxsaW5nX2dyb3VwIjp7InByb2NlZHVyZV9hbXQiOiIxMDAwMDAiLCJzdXJnaWNhbF9hbXQiOiIwIiwiY29uc3VsX2FtdCI6IjAiLCJleHBlcnRfYW10IjoiMCIsIm51cnNpbmdfYW10IjoiMCIsImFuY2lsbGFyeV9hbXQiOiIwIiwiYmxvb2RfYW10IjoiMCIsImxhYm9yYXRvcnlfYW10IjoiMCIsInJhZGlvbG9neV9hbXQiOiIwIiwicmVoYWJfYW10IjoiMCIsInJvb21fYW10IjoiMCIsImludGVuc2l2ZV9hbXQiOiIwIiwiZHJ1Z19hbXQiOiIwIiwiZGV2aWNlX2FtdCI6IjAiLCJjb25zdW1hYmxlX2FtdCI6IjAiLCJkZXZpY2VfcmVudF9hbXQiOiIwIiwiZHJ1Z19jaHJvbmljX2FtdCI6IjAiLCJkcnVnX2NoZW1vX2FtdCI6IjAifSwic2VsaXNpaF9iaWF5YSI6eyJuaWxhaSI6IjAiLCJwZW1iYXlhciI6IiIsIm5haWtfa2VsYXMiOiIifSwidmVudGlsYXRvciI6eyJ1c2VfaW5kIjoiMSIsInN0YXJ0X2R0dG0iOiIyMDIzLTAxLTE5IDE3OjI2OjA4Iiwic3RvcF9kdHRtIjoiMjAyMy0wMS0yMCAxNzoyNjoyCg=="
}
},
{
"sequence": 4,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "unu-grouper-version"
}
]
},
"valueString": "4"
},
{
"sequence": 5,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "e-klaim-version"
}
]
},
"valueString": "5.8.3.202301311257"
}
],
"diagnosis": [
{
"sequence": 1,
"diagnosisCodeableConcept": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-10",
"code": "I21.9",
"display": "Acute myocardial infarction, unspecified"
}
]
},
"type": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/diagnosis-role",
"code": "billing",
"display": "Billing"
}
]
}
]
}
],
"procedure": [
{
"sequence": 1,
"procedureCodeableConcept": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-9-cm",
"code": "36.06",
"display": "Insertion of non-drug -eluting coronary artery stent(s)"
}
]
}
},
{
"sequence": 2,
"procedureCodeableConcept": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-9-cm",
"code": "00.66",
"display": "Parcutaneous transluminal coronary angioplasty (PTCA) or coronary atherectomy"
}
]
}
}
],
"insurance": [
{
"sequence": 1,
"focal": true,
"coverage": {
"reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d"
},
"identifier": {
"system": "http://sys-ids.kemkes.go.id/jkn-claim-number",
"value": "100R01V0010002"
}
}
],
"total": {
"value": 28868200,
"currency": "IDR"
},
"extension": [
{
"url": "https://fhir.kemkes.go.id/r4/StructureDefinition/Package",
"extension": [
{
"url": "tariffClass",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/tariffClass",
"code": "AP",
"display": "Tarif Kelas A Pemerintah"
}
]
}
},
{
"url": "basePackage",
"extension": [
{
"url": "code",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/inacbg-v5",
"code": "I-1-40-I",
"display": "PROSEDUR KARDIOVASKULAR PERKUTAN (RINGAN)"
}
]
}
},
{
"url": "value",
"valueInteger": 14434100
}
]
},
{
"url": "additionalPackage",
"extension": [
{
"url": "code",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/inacbg-special-cmg-v5",
"code": "YY-02-III",
"display": "PCI"
}
]
}
},
{
"url": "value",
"valueInteger": 14434100
}
]
}
]
}
]
}
#tba
#tba
[none]
II. E-Klaim
Step 1. Convert E-Claim data format to FHIR format
Similar to the previous process, claims submission by health facilities are still done through the E-Claim application. This E-Claim application will later convert claim data to FHIR format (resource *Claim*) and send it to SATUSEHAT.
The *Claim* resource here will refer to clinical data such as *Encounter*, *Observation*, and other supporting data. Since health facilities are allowed to submit claims for several patient visits at once, therefore 1 *Claim* (1 SEP Number) can cover more than 1 patient visit data (resource *Encounter*).
BPJS INACBG Claim
{
"resourceType": "Claim",
"id": "960151",
"meta": {
"profile": [
"https://fhir.kemkes.go.id/r4/StructureDefinition/Claim"
]
},
"identifier": [
{
"system": "http://sys-ids.kemkes.go.id/jkn-claim-batch-number",
"value": "96123451"
}
],
"status": "active",
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/claim-type",
"code": "institutional",
"display": "Institutional"
}
]
},
"use": "claim",
"patient": {
"reference": "Patient/100000030006"
},
"billablePeriod": {
"start": "2022-06-14",
"end": "2022-06-21"
},
"created": "2022-06-21",
"enterer": {
"identifier": {
"system": "https://fhir.kemkes.go.id/id/nik",
"value": "3657746633553535555"
},
"reference": "Practitioner/N10000001"
},
"insurer": {
"reference": "Organization/10080028"
},
"provider": {
"reference": "Organization/10085103"
},
"priority": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/processpriority",
"code": "normal",
"display": "Normal"
}
]
},
"payee": {
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/payeetype",
"code": "provider",
"display": "Provider"
}
]
},
"party": {
"reference": "Organization/10085103"
}
},
"facility": {
"reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480"
},
"supportingInfo": [
{
"sequence": 1,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "upgrade-class-indicator",
"display": "Indikator Naik Kelas"
}
]
},
"code": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/upgradeClassIndicator",
"code": "upgrade",
"display": "Ada Kenaikan Kelas"
}
]
}
},
{
"sequence": 2,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "upgrade-class-class"
}
]
},
"code": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/locationServiceClass",
"code": "2"
}
]
},
"timingPeriod": {
"start": "2022-06-14",
"end": "2022-06-21"
}
},
{
"sequence": 3,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "claim-text-encoded"
}
]
},
"valueAttachment": {
"contentType": "text/plain;base64",
"data": "REVNTyBWRVJTSU9OCUQJMwlBUAkxCTI0LzAxLzIwMjMJMjQvMDEvMjAyMwkyNC8wMS8yMDIzCTMwMDAJMQkxCVAwMS42CTk5LjAzCS0JLQlOb25lCU5vbmUJTm9uZQlOb25lCVAtOC0xNy1JCU5vbmUJTm9uZQlOb25lCU5vbmUJTm9uZQlOb25lCU5FT05BVEFMLCBCQkwgPiAyNDk5IEdSIFRBTlBBIFBST1NFRFVSIE1BWU9SIChSSU5HQU4pCTQ1NTk4MDAJMAkwCS0JMAktCTAJLQkwCS0JMAk0NTU5ODAwCTEwMDAwMAkwCTEJMQkwCTAJVEVTVCBCQVlJCTIwMDM5OQkwCTAJCURFTU8gVkVSU0lPTgkxMjIyMzMzNDQJMztKS04JMTExMDEwMTs5MDIyQzAxO0FETQk1LjcuMC4yMDIyMDkyNzEzMDMJNAk2NjgJMSMwIyMwIzAjMC4wIzIwMjMtMDEtMjMgMTc6MTM6MDMjMCMxMzoyOToyOSMxMzoyOToyOSMwMDowMDowMCN7ImNvX2luc2lkZW5zZV9pbmQiOiIwIn0jI3siY2FyYV9tYXN1ayI6ImVtZCIsInNpc3RvbGUiOiIxMTAiLCJkaWFzdG9sZSI6IjcwIiwidG90YWxfdGFyaWZfcnMiOiIxMDAwMDAiLCJiaWxsaW5nX2dyb3VwIjp7InByb2NlZHVyZV9hbXQiOiIxMDAwMDAiLCJzdXJnaWNhbF9hbXQiOiIwIiwiY29uc3VsX2FtdCI6IjAiLCJleHBlcnRfYW10IjoiMCIsIm51cnNpbmdfYW10IjoiMCIsImFuY2lsbGFyeV9hbXQiOiIwIiwiYmxvb2RfYW10IjoiMCIsImxhYm9yYXRvcnlfYW10IjoiMCIsInJhZGlvbG9neV9hbXQiOiIwIiwicmVoYWJfYW10IjoiMCIsInJvb21fYW10IjoiMCIsImludGVuc2l2ZV9hbXQiOiIwIiwiZHJ1Z19hbXQiOiIwIiwiZGV2aWNlX2FtdCI6IjAiLCJjb25zdW1hYmxlX2FtdCI6IjAiLCJkZXZpY2VfcmVudF9hbXQiOiIwIiwiZHJ1Z19jaHJvbmljX2FtdCI6IjAiLCJkcnVnX2NoZW1vX2FtdCI6IjAifSwic2VsaXNpaF9iaWF5YSI6eyJuaWxhaSI6IjAiLCJwZW1iYXlhciI6IiIsIm5haWtfa2VsYXMiOiIifSwidmVudGlsYXRvciI6eyJ1c2VfaW5kIjoiMSIsInN0YXJ0X2R0dG0iOiIyMDIzLTAxLTE5IDE3OjI2OjA4Iiwic3RvcF9kdHRtIjoiMjAyMy0wMS0yMCAxNzoyNjoyCg=="
}
},
{
"sequence": 4,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "unu-grouper-version"
}
]
},
"valueString": "4"
},
{
"sequence": 5,
"category": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory",
"code": "e-klaim-version"
}
]
},
"valueString": "5.8.3.202301311257"
}
],
"diagnosis": [
{
"sequence": 1,
"diagnosisCodeableConcept": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-10",
"code": "I21.9",
"display": "Acute myocardial infarction, unspecified"
}
]
},
"type": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/diagnosis-role",
"code": "billing",
"display": "Billing"
}
]
}
]
}
],
"procedure": [
{
"sequence": 1,
"procedureCodeableConcept": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-9-cm",
"code": "36.06",
"display": "Insertion of non-drug -eluting coronary artery stent(s)"
}
]
}
},
{
"sequence": 2,
"procedureCodeableConcept": {
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-9-cm",
"code": "00.66",
"display": "Parcutaneous transluminal coronary angioplasty (PTCA) or coronary atherectomy"
}
]
}
}
],
"insurance": [
{
"sequence": 1,
"focal": true,
"coverage": {
"reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d"
},
"identifier": {
"system": "http://sys-ids.kemkes.go.id/jkn-claim-number",
"value": "100R01V0010002"
}
}
],
"total": {
"value": 28868200,
"currency": "IDR"
},
"extension": [
{
"url": "https://fhir.kemkes.go.id/r4/StructureDefinition/Package",
"extension": [
{
"url": "tariffClass",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/tariffClass",
"code": "AP",
"display": "Tarif Kelas A Pemerintah"
}
]
}
},
{
"url": "basePackage",
"extension": [
{
"url": "code",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/inacbg-v5",
"code": "I-1-40-I",
"display": "PROSEDUR KARDIOVASKULAR PERKUTAN (RINGAN)"
}
]
}
},
{
"url": "value",
"valueInteger": 14434100
}
]
},
{
"url": "additionalPackage",
"extension": [
{
"url": "code",
"valueCodeableConcept": {
"coding": [
{
"system": "http://terminology.kemkes.go.id/CodeSystem/inacbg-special-cmg-v5",
"code": "YY-02-III",
"display": "PCI"
}
]
}
},
{
"url": "value",
"valueInteger": 14434100
}
]
}
]
}
]
}
#tba
#tba
[none]
Last Updated: 2023/09/17
III. BPJS
- Prasyarat ketersediaan data kepesertaan BPJS
Gambar 2. Skema penyediaan data kepesertaan BPJS
Agar fasyankes bisa melakukan pengiriman data pengajuan klaim BPJS, data Master Kepesertaan BPJS wajib disediakan terlebih dahulu di SATUSEHAT. Hal ini dikarenakan data kepesertaan BPJS akan dijadikan referensi saat data klaim BPJS dikirimkan ke SATUSEHAT. Data Master Kepesertaan BPJS bersumber dari existing sistem BPJS sehingga perlu adanya mekanisme sinkronisasi data antara sistem BPJS kesehatan dengan SATUSEHAT.
Master Kepesertaan BPJS pada SATUSEHAT akan disimpan menggunakan salah satu resource dalam FHIR yaitu Coverage. Proses penambahan data peserta baru BPJS dapat dilakukan melalui FHIR API dengan metode POST, sedangkan proses perubahan data peserta existing BPJS (termasuk proses menonaktifkan data peserta BPJS) akan menggunakan metode PUT. Untuk contoh pengiriman data atau payload dari pembaharuan data kepesertaan BPJS dapat dilihat dalam Postman Collection.
1.1. Pembuatan Organisasi BPJS Kesehatan
Langkah awal sebelum mendaftarkan data kepesertaan BPJS di SATUSEHAT adalah organisasi BPJS Kesehatan wajib didaftarkan terlebih dahulu di SATUSEHAT. Hal ini dikarenakan data kepesertaan BPJS akan mereferensi ke {facility-ihs-number} milik BPJS Kesehatan.
BPJS Kesehatan
{
"resourceType": "Organization",
"active": true,
"address": [
{
"city": "Jakarta",
"country": "ID",
"extension": [
{
"extension": [
{
"url": "province",
"valueCode": "10"
},
{
"url": "city",
"valueCode": "1010"
},
{
"url": "district",
"valueCode": "1010101"
},
{
"url": "village",
"valueCode": "1010101101"
}
],
"url": "https://fhir.kemkes.go.id/r4/StructureDefinition/administrativeCode"
}
],
"line": [
"Jalan Matraman Raya No. 94 A, Kecamatan Menteng, Jakarta Pusat, DKI Jakarta"
],
"postalCode": "10320",
"type": "both",
"use": "work"
}
],
"id": "a60f0623-80a0-4a97-a8c0-8bedb7844649",
"identifier": [
{
"system": "http://sys-ids.kemkes.go.id/organization/10080028",
"use": "official",
"value": "BPJS-K"
}
],
"meta": {
"lastUpdated": "2023-05-19T16:18:04.201716+00:00",
"versionId": "MTY4NDUxMzA4NDIwMTcxNjAwMA"
},
"name": "BPJS Kesehatan",
"partOf": {
"display": "BPJS Kesehatan",
"reference": "Organization/10080028"
},
"telecom": [
{
"system": "phone",
"value": "022-655 2331"
},
{
"system": "email",
"value": "wbs@bpjs-kesehatan.go.id"
},
{
"system": "fax",
"value": "022-655 2323"
}
],
"type": [
{
"coding": [
{
"code": "team",
"display": "Organizational team",
"system": "http://terminology.hl7.org/CodeSystem/organization-type"
}
]
}
]
}
#tba
#tba
[none]
1.2. Pencarian Data Pasien
Karena data pasien di dalam SATUSEHAT sudah terdaftar lebih dulu di *Master Patient Index* (MPI) Kementerian Kesehatan, sehingga registrasi data pasien baru tidak diperlukan.
Proses pencarian {patient-ihs-number} dari pasien dapat dilakukan melalui FHIR API dengan metode GET. Untuk metode pencarian data pasien di SATUSEHAT secara detail dapat dilihat dalam dokumen Petunjuk Teknis SATUSEHAT (Juknis SATSET).
1.3. Pembuatan Data Kepesertaan BPJS
Selanjutnya, data {facility-ihs-number} dan {patient-ihs-number} yang didapatkan dari step 1.1. dan step 1.2. akan dilampirkan pada resource Coverage seperti contoh dibawah ini:
Kepesertaan BPJS
{
"resourceType": "Coverage",
"status": "active",
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem v3-ActCode",
"code": "PUBLICPOL",
"display": "public healthcare"
}
]
},
"policyHolder": {
"reference": "Patient/100000030006"
},
"subscriber": {
"reference": "Patient/100000030006"
},
"subscriberId": "367400001111222",
"beneficiary": {
"reference": "Patient/100000030006"
},
"dependent": "0",
"relationship": {
"coding": [
{
"code": "self"
}
]
},
"period": {
"start": "2022-02-01",
"end": "2050-12-01"
},
"payor": [
{
"reference": "Organization/10080028"
}
],
"class": [
{
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/coverage-class",
"code": "group",
"display": "Group"
}
]
},
"value": "COV000009",
"name": "Pegawai Swasta"
},
{
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/coverage-class",
"code": "class",
"display": "Class"
}
]
},
"value": "3",
"name": "Kelas 3"
}
]
}
#tba
#tba
[none]
B. Verifikasi data klaim dari fasyankes
Gambar 4. Skema Verifikasi Klaim oleh BPJS Kesehatan
BPJS akan melakukan verifikasi data klaim fasyankes secara *monthly*. Data yang akan diverifikasi oleh tim BPJS adalah resource Claim yang dikirimkan oleh aplikasi E-Claim (step 2.4.). Data klinis dan pembayaran pada fasyankes (step 2.1.) juga akan digunakan dalam proses verifikasi ini.
Respons Klaim BPJS INACBG
{
"resourceType": "ClaimResponse",
"status": "active",
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/claim-type",
"code": "institutional"
}
]
},
"subType": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/ex-claimsubtype",
"code": "emergency"
}
]
},
"use": "claim",
"patient": {
"reference": "Patient/100000030006"
},
"created": "2022-06-22",
"insurer": {
"reference": "Organization/10080028"
},
"requestor": {
"reference": "Organization/10085103"
},
"request": {
"reference": "Claim/f53c953b-944a-49b2-a2bc-6ddcd23e7791"
},
"outcome": "complete",
"payeeType": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/payeetype",
"code": "provider"
}
]
},
"adjudication": [
{
"category": {
"coding": [
{
"system": "http://snomed.info/sct",
"code": "309010003",
"display": "Report payment claim status"
}
]
},
"reason": {
"coding": [
{
"system": "http://snomed.info/sct",
"code": "161040006",
"display": "Entitled to benefits"
}
]
},
"amount": {
"value": 28868200,
"currency": "IDR"
},
"value": 1
}
],
"total": [
{
"category": {
"coding": [
{
"code": "submitted"
}
]
},
"amount": {
"value": 28868200,
"currency": "IDR"
}
}
],
"payment": {
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/ex-paymenttype",
"code": "complete"
}
]
},
"date": "2022-06-22",
"amount": {
"value": 28868200,
"currency": "IDR"
}
}
}
#tba
#tba
[none]
III. BPJS
- Prerequisites of BPJS participant data
Figure 2. BPJS participant data registration work flow
BPJS (Badan Penyelenggara Jaminan Sosial) is Indonesia's national health insurance program. In order for healthcare facilities to submit claim data to BPJS, the Master Participant Data of BPJS must first be provided in SATUSEHAT. This is because the BPJS participant data will serve as a reference when the BPJS claim data is sent to SATUSEHAT. The Master Participant Data of BPJS is sourced from the existing BPJS system, so a data synchronization mechanism between the BPJS health system and SATUSEHAT is necessary.
The Master Participant Data of BPJS in SATUSEHAT will be stored using one of the resources in FHIR, namely Coverage. The process of adding new BPJS participant data can be done through the FHIR API using the POST method, while the process of modifying existing BPJS participant data (including the process of deactivating BPJS participant data) will use the PUT method. For examples of data submission or payload for updating BPJS participant data, please refer to the Postman Collection.
1.1. Create BPJS Organization Data
The first step before registering BPJS participant data at SATUSEHAT is that the BPJS Health organization must first be registered at SATUSEHAT. This is because BPJS participant data will refer to BPJS Health's {facility-ihs-number}.
BPJS Kesehatan
{
"resourceType": "Organization",
"active": true,
"address": [
{
"city": "Jakarta",
"country": "ID",
"extension": [
{
"extension": [
{
"url": "province",
"valueCode": "10"
},
{
"url": "city",
"valueCode": "1010"
},
{
"url": "district",
"valueCode": "1010101"
},
{
"url": "village",
"valueCode": "1010101101"
}
],
"url": "https://fhir.kemkes.go.id/r4/StructureDefinition/administrativeCode"
}
],
"line": [
"Jalan Matraman Raya No. 94 A, Kecamatan Menteng, Jakarta Pusat, DKI Jakarta"
],
"postalCode": "10320",
"type": "both",
"use": "work"
}
],
"id": "a60f0623-80a0-4a97-a8c0-8bedb7844649",
"identifier": [
{
"system": "http://sys-ids.kemkes.go.id/organization/10080028",
"use": "official",
"value": "BPJS-K"
}
],
"meta": {
"lastUpdated": "2023-05-19T16:18:04.201716+00:00",
"versionId": "MTY4NDUxMzA4NDIwMTcxNjAwMA"
},
"name": "BPJS Kesehatan",
"partOf": {
"display": "BPJS Kesehatan",
"reference": "Organization/10080028"
},
"telecom": [
{
"system": "phone",
"value": "022-655 2331"
},
{
"system": "email",
"value": "wbs@bpjs-kesehatan.go.id"
},
{
"system": "fax",
"value": "022-655 2323"
}
],
"type": [
{
"coding": [
{
"code": "team",
"display": "Organizational team",
"system": "http://terminology.hl7.org/CodeSystem/organization-type"
}
]
}
]
}
#tba
#tba
[none]
1.2. Search Patient Data
When sending health data through SATUSEHAT that includes patient-related data elements, information on the patient's {patient-ihs-number} is required. A patient's {patient-ihs-number} is obtained from the SATUSEHAT Master Patient Index (MPI) of the Ministry of Health. The MPI stores national-level patient demographic data, such as name, date of birth, address, official government-issued identification, and more. Once the {patient-ihs-number} is obtained, the ID can be stored in the internal systems of health facilities or non-health facility partners. The {patient-ihs-number} simplifies health service reporting related to patients because partners are not required to include personal data every time data is sent. The {patient-ihs-number} can also be used to comprehensively view the patient's personal data.
> `NOTES:`
> The process of searching for {patient-ihs-number} from a patient can be done via the FHIR API with the GET method. For detailed patient data search methods in SATUSEHAT, see _resource_ [`Patient`](https://satusehat.kemkes.go.id/platform/docs/id/fhir/resources/patient/#patient) and related MPI guidelines/playbooks can be seen in the document SATUSEHAT Master Patient Index.
1.3. Create BPJS Participant Data
Next, the {facility-ihs-number} and {patient-ihs-number} data obtained from step 1.1. and step 1.2. will be attached to the Coverage resource as in the example below:
BPJS Participant
{
"resourceType": "Coverage",
"status": "active",
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem v3-ActCode",
"code": "PUBLICPOL",
"display": "public healthcare"
}
]
},
"policyHolder": {
"reference": "Patient/100000030006"
},
"subscriber": {
"reference": "Patient/100000030006"
},
"subscriberId": "367400001111222",
"beneficiary": {
"reference": "Patient/100000030006"
},
"dependent": "0",
"relationship": {
"coding": [
{
"code": "self"
}
]
},
"period": {
"start": "2022-02-01",
"end": "2050-12-01"
},
"payor": [
{
"reference": "Organization/10080028"
}
],
"class": [
{
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/coverage-class",
"code": "group",
"display": "Group"
}
]
},
"value": "COV000009",
"name": "Pegawai Swasta"
},
{
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/coverage-class",
"code": "class",
"display": "Class"
}
]
},
"value": "3",
"name": "Kelas 3"
}
]
}
#tba
#tba
[none]
B. Verification of claim data from healthcare facilities
Gambar 4. Verification of claim data from healthcare facilities Workflow
BPJS will verify healthcare facility claim data *monthly*. The data that will be verified by the BPJS team is the Claim resource sent by the E-Claim application (step 2.4.). Clinical and payment data at health facilities (step 2.1.) will also be used in this verification process.
Respons from Klaim BPJS INACBG
{
"resourceType": "ClaimResponse",
"status": "active",
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/claim-type",
"code": "institutional"
}
]
},
"subType": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/ex-claimsubtype",
"code": "emergency"
}
]
},
"use": "claim",
"patient": {
"reference": "Patient/100000030006"
},
"created": "2022-06-22",
"insurer": {
"reference": "Organization/10080028"
},
"requestor": {
"reference": "Organization/10085103"
},
"request": {
"reference": "Claim/f53c953b-944a-49b2-a2bc-6ddcd23e7791"
},
"outcome": "complete",
"payeeType": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/payeetype",
"code": "provider"
}
]
},
"adjudication": [
{
"category": {
"coding": [
{
"system": "http://snomed.info/sct",
"code": "309010003",
"display": "Report payment claim status"
}
]
},
"reason": {
"coding": [
{
"system": "http://snomed.info/sct",
"code": "161040006",
"display": "Entitled to benefits"
}
]
},
"amount": {
"value": 28868200,
"currency": "IDR"
},
"value": 1
}
],
"total": [
{
"category": {
"coding": [
{
"code": "submitted"
}
]
},
"amount": {
"value": 28868200,
"currency": "IDR"
}
}
],
"payment": {
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/ex-paymenttype",
"code": "complete"
}
]
},
"date": "2022-06-22",
"amount": {
"value": 28868200,
"currency": "IDR"
}
}
}
#tba
#tba
[none]
Last Updated: 2023/09/17
I. Fasyankes
Last Updated: 2023/09/17
Data klinis baik pada pasien rawat jalan maupun rawat inap akan selalu berisikan data kunjungan pasien yang disimpan dalam resource Encounter. Data-data kunjungan pasien yang direkam meliputi kapan pertemuan tersebut mulai dan selesai, siapa tenaga kesehatan yang melayani, siapa subjek dari pelayanannya, dan informasi pendukung lainnya. Encounter.id data kunjungan ini akan dilampirkan pada beberapa resource seperti data klaim BPJS (Claim), data pembayaran (ChargeItem), dan data pengajuan Surat Eligibilitas Peserta (CoverageEligibilityRequest).
Tahapan alur integrasi dan resource yang digunakan untuk proses klaim dapat dilihat pada gambar dibawah ini:
Gambar 3. Skema Pengajuan Klaim BPJS oleh Fasyankes
Step 1. Pengajuan Surat Eligibilitas Peserta (SEP)
Pasien yang ditanggung oleh BPJS Kesehatan yang datang berkunjung ke Rumah Sakit, baik pasien yang telah dirujuk dari faskes lain ataupun pasien yang masuk melalui jalur lain, akan mendapatkan Surat Eligibilitas Peserta atau yang sering disebut dengan SEP.
Pengajuan SEP dapat dilakukan oleh fasyankes dengan mengirimkan resource CoverageEligibilityRequest ke SATUSEHAT dengan format dibawah ini:
Pengajuan No. SEP BPJS
{ "resourceType": "CoverageEligibilityRequest", "identifier": { "period": { "start": "2022-06-14", "end": "2022-06-17" } }, "status": "active", "priority": { "coding": [ { "code": "normal" } ] }, "purpose": [ "validation" ], "patient": { "reference": "Patient/100000030006" }, "servicedDate": "2022-06-14", "created": "2022-06-14", "enterer": { "reference": "Practitioner/N10000001" }, "provider": { "reference": "Organization/10085103" }, "insurer": { "reference": "Organization/10080028" }, "facility": { "reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480" }, "supportingInfo": [ { "sequence": 1, "information": { "reference": "QuestionnaireResponse/636bf55a-dd47-4235-8f65-3430b48ccf49" } } ], "insurance": [ { "focal": true, "coverage": { "reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d" } } ], "item": [ { "diagnosis": [ { "diagnosisCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/sid/icd-10", "code": "I21.9", "display": "Acute myocardial infarction, unspecified" } ] } } ] } ] }
{ "resourceType": "CoverageEligibilityRequest", "status": "active", "priority": { "coding": [ { "code": "normal" } ] }, "purpose": [ "validation", "benefits" ], "patient": { "reference": "Patient/{{PATIENT_IHS_NUMBER}}", "display": "{{PATIENT_NAME}}" }, "servicedDate": "{{SERVICE_DATE}}", "created": "{{COVERAGEELIGIBILITYREQUEST_CREATED_DATETIME}}", "enterer": { "reference": "Practitioner/{{PRACTITIONER_IHS_NUMBER}}", "display": "{{PRACTITIONER_NAME}}" }, "provider": { "reference": "Organization/{{PROVIDER_FACILITY_IHS_NUMBER}}", "display": "{{PROVIDER_FACILITY_NAME}}" }, "insurer": { "reference": "Organization/{{INSURER_FACILITY_IHS_NUMBER}}", "display": "{{INSURER_FACILITY_NAME}}" }, "facility": { "reference": "Location/{{COVERAGEELIGIBILITYREQUEST_LOCATION_ID}}", "display": "{{COVERAGEELIGIBILITYREQUEST_LOCATION_NAME}}" }, "insurance": [ { "coverage": { "reference": "Coverage/{{COVERAGE_ID}}" } } ], "item": [ { "category": { "coding": [ { "system": "http://hl7.org/fhir/sid/icd-10", "code": "{{DIAGNOSIS_ICD_CODE}}", "display": "{{DIAGNOSIS_ICD_DISPLAY}}" } ] } } ] }
Variabel | Deskripsi |
---|---|
PATIENT_IHS_NUMBER | SATUSEHAT ID Number untuk Pasien |
PATIENT_NAME | Nama Pasien |
SERVICE_DATE | Tanggal pelayanan kesehatan diberikan |
COVERAGEELIGIBILITYREQUEST_CREATED_DATETIME | Tanggal dan waktu pengajuan SEP ini dilakukan (dibuat oleh sistem) |
PRACTITIONER_IHS_NUMBER | SATUSEHAT ID untuk staff fasyankes yang mengajukan SEP |
PRACTITIONER_NAME | Nama staff fasyankes yang mengajukan SEP |
PROVIDER_FACILITY_IHS_NUMBER | SATUSEHAT ID untuk fasyankes yang mengajukan SEP |
PROVIDER_FACILITY_NAME | Nama fasyankes yang mengajukan SEP |
INSURER_FACILITY_IHS_NUMBER | SATUSEHAT ID untuk pihak verifikator SEP (Default: BPJS Kesehatan) |
INSURER_FACILITY_NAME | Nama pihak verifikator SEP (Default: BPJS Kesehatan) |
COVERAGEELIGIBILITYREQUEST_LOCATION_ID | ID lokasi fasyankes pengajuan SEP |
COVERAGEELIGIBILITYREQUEST_LOCATION_NAME | Nama lokasi fasyankes pengajuan SEP |
COVERAGE_ID | ID data Kepesertaan BPJS |
DIAGNOSIS_ICD_CODE | Kode ICD-10 untuk diagnosa penyakit yang diderita pasien |
DIAGNOSIS_ICD_DISPLAY | Deskripsi ICD-10 untuk diagnosa penyakit yang diderita pasien |
CATATAN:
(*): Jenis data yang memiliki terminologi spesifik. Kamus terminologi bisa ditemukan pada tab "ValueSet"
Data Medis (Informasi Tambahan)
Pada proses pengajuan No. SEP, informasi pendukung yang berhubungan dengan layanan medis pasien juga perlu dilampirkan. Data medis yang dimaksud adalah: 1. Jenis Pelayanan: Termasuk jenis pelayanan rawat jalan atau rawat inap 2. Asal Rujukan: Berasal dari Fasilitas Kesehatan Tingkat 1 atau Fasilitas Kesehatan Tingkat 2 3. Tanggal Rujukan 4. Nomor Rujukan: Id 5. Pemberi pelayanan kesehatan (PPK) Rujukan: Fasyankes yang dirujukInformasi pendukung ini akan disimpan dalam resource QuestionnaireResponse. Kolom CoverageEligibilityRequest.supportingInfo.information pada contoh diatas akan mereferensi ke QuestionnaireResponse.id.
{ "resourceType": "QuestionnaireResponse", "questionnaire": "https://fhir.kemkes.go.id/Questionnaire/Q0006", "status": "completed", "subject": { "reference": "Patient/100000030006", "display": "Jane Smith" }, "encounter": { "reference": "Encounter/29e3e814-4c9b-4f24-a8cb-54ba597d746f" }, "authored": "06/14/2022 03:00:00", "author": { "reference": "Practitioner/N10000001" }, "source": { "reference": "Patient/100000030006" }, "item": [ { "linkId": "1", "text": "Jenis Pelayanan", "answer": [ { "valueCoding": { "system": "http://terminology.hl7.org/CodeSystem/v3-ActCode", "code": "IMP", "display": "inpatient encounter" } } ] }, { "linkId": "2", "text": "Rujukan", "item": [ { "linkId": "2.1", "text": "Asal Rujukan", "answer": [ { "valueCoding": { "system": "http://terminology.kemkes.go.id/CodeSystem/organization-type", "code": "FKTP", "display": "Fasilitas Kesehatan Tingkat 1" } } ] }, { "linkId": "2.2", "text": "Tanggal Rujukan", "answer": [ { "valueDate": "2022-06-13" } ] }, { "linkId": "2.3", "text": "Nomor Rujukan", "answer": [ { "valueString": "5375162" } ] }, { "linkId": "2.4", "text": "PPK Rujukan", "answer": [ { "valueCoding": { "system": "http://sys-ids.kemkes.go.id/organization/10000004", "code": "10000004", "display": "Puskesmas Sangat Waras" } } ] } ] }, { "linkId": "3", "text": "Catatan Peserta", "answer": [ { "valueString": "-" } ] }, { "linkId": "4", "text": "Poli", "item": [ { "linkId": "4.1", "text": "Tujuan", "answer": [ { "valueCoding": { "system": "http://terminology.kemkes.go.id/CodeSystem/organization-type", "code": "P0000001", "display": "Poli Jantung dan Pembuluh Darah" } } ] }, { "linkId": "4.2", "text": "Eksekutif", "answer": [ { "valueBoolean": true } ] } ] }, { "linkId": "5", "text": "CoB", "answer": [ { "valueBoolean": true } ] }, { "linkId": "6", "text": "Katarak", "answer": [ { "valueBoolean": true } ] }, { "linkId": "7", "text": "Jaminan Kecelakaan Lalu Lintas", "answer": [ { "valueBoolean": true } ] }, { "linkId": "8", "text": "Tanggal Kejadian Kecelakaan Lalu Lintas", "answer": [ { "valueDate": "2022-06-13" } ] }, { "linkId": "9", "text": "Keterangan Kecelakaan Lalu Lintas", "answer": [ { "valueString": "-" } ] }, { "linkId": "10", "text": "Suplesi", "answer": [ { "valueBoolean": true } ] }, { "linkId": "11", "text": "Nomor SEP Suplesi", "answer": [ { "valueString": "SUP03203340000002" } ] }, { "linkId": "12", "text": "Lokasi Kecelakaan", "item": [ { "linkId": "12.1", "text": "Kode Provinsi", "answer": [ { "valueReference": { "type": "Location/53d57761-a5e6-445a-ae09-e26e4a78418e" } } ] }, { "linkId": "12.2", "text": "Kode Kabupaten", "answer": [ { "valueReference": { "type": "Location/c2245bff-121e-4a92-89b5-a1363ea94f47" } } ] }, { "linkId": "12.3", "text": "Kode Kecamatan", "answer": [ { "valueReference": { "type": "Location/2c5304cc-de6b-4816-b976-2daa896d99d2" } } ] } ] }, { "linkId": "13", "text": "SKDP", "item": [ { "linkId": "13.1", "text": "Nomor Surat Kontrol", "answer": [ { "valueString": "DS02/DPP16-2023" } ] }, { "linkId": "13.2", "text": "Kode DPJP", "answer": [ { "valueReference": { "type": "Practitioner/N10000001" } } ] } ] } ] }
Respon No. Surat Eligibilitas Pelayanan (SEP) BPJS
Setelah fasyankes mengirimkan data pengajuan SEP BPJS ke SATUSEHAT, sistem BPJS Kesehatan akan melakukan verifikasi terhadap resource CoverageEligibilityRequest secara real-time. SATUSEHAT otomatis akan mengirimkan respon dari data pengajuan SEP tersebut dalam resource CoverageEligibilityResponse. Apabila hasil verifikasi berhasil, maka No. SEP akan tergenerate dan dilampirkan pada resource CoverageEligibilityResponse. Berhubung SEP merupakan syarat utama atau surat jaminan pasien bisa menggunakan fasilitas BPJS, oleh karena itu apabila hasil verifikasi gagal, maka No. SEP tidak akan terbentuk dan secara otomatis pasien tidak bisa menggunakan fasilitas BPJS. Status hasil verifikasi SEP bisa dilihat pada kolom CoverageEligibilityResponse.outcome.{ "resourceType": "CoverageEligibilityResponse", "identifier": { "use": { "system": "http://hl7.org/fhir/identifier-use", "code": "official", "display": "Official" }, "system": "http://sys-ids.kemkes.go.id/jkn-claim-number", "value": "0301R0011117V000008", "type": { "system": "http://terminology.hl7.org/CodeSystem/v2-0203", "code": "NIIP", "display": "National Insurance Payor Identifier (Payor)" }, "period": { "start": "2022-06-14", "end": "2022-08-14" } }, "status": "active", "purpose": [ "validation" ], "patient": { "reference": "Patient/100000030006" }, "created": "2022-06-14", "requestor": { "reference": "Organization/10085103" }, "request": { "reference": "CoverageEligibilityRequest/484e6912-1a7f-493f-aac7-0ec80a97a5d1" }, "outcome": "complete", "disposition": "Peserta aktif", "insurer": { "reference": "Organization/10080028" }, "insurance": [ { "coverage": { "reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d" }, "inforce": true, "item": [ { "category": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/ex-benefitcategory", "code": "30", "display": "Health Benefit Plan Coverage" } ] } } ] } ] }
{ "resourceType": "CoverageEligibilityResponse", "status": "active", "purpose": [ "validation", "benefits" ], "patient": { "reference": "Patient/{{PATIENT_IHS_NUMBER}}", "display": "{{PATIENT_NAME}}" }, "servicedDate": "{{SERVICE_DATE}}", "created": "{{COVERAGEELIGIBILITYRESPONSE_CREATED_DATETIME}}", "request": { "reference": "CoverageEligibilityRequest/{{COVERAGEELIGIBILITYREQUEST_ID}}" }, "outcome": "{{HASIL_VERIFIKASI}}", "insurer": { "reference": "Organization/{{INSURER_FACILITY_IHS_NUMBER}}", "display": "{{INSURER_FACILITY_NAME}}" }, "insurance": [ { "coverage": { "reference": "Coverage/{{COVERAGE_ID}}" }, "inforce": true, "item": [ { "category": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/ex-benefitcategory", "code": "{{COVERAGE_CATEGORY_CODE}}", "display": "{{COVERAGE_CATEGORY_DISPLAY}}" } ] }, "network": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/benefit-network", "code": "in" } ] }, "unit": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/benefit-unit", "code": "individual" } ] }, "term": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/benefit-term", "code": "annual" } ] }, "benefit": [ { "type": { "coding": [ { "code": "benefit" } ] }, "allowedMoney": { "value": {{AMOUNT1_VALUE}}, "currency": "IDR" } }, { "type": { "coding": [ { "code": "copay-maximum" } ] }, "allowedMoney": { "value": {{AMOUNT2_VALUE}}, "currency": "IDR" } }, { "type": { "coding": [ { "code": "copay-percent" } ] }, "allowedUnsignedInt": {{ AMOUNT1_PERCENTAGE}} } ] } ] } ] }
Variabel | Deskripsi |
---|---|
PATIENT_IHS_NUMBER | SATUSEHAT ID Number untuk Pasien |
PATIENT_NAME | Nama Pasien |
SERVICE_DATE | Estimasi tanggal pelayanan kesehatan diberikan |
COVERAGEELIGIBILITYRESPONSE_CREATED_DATETIME | Tanggal dan waktu verifikasi SEP ini dilakukan (dibuat oleh sistem) |
COVERAGEELIGIBILITYREQUEST_ID | ID CoverageEligibilityRequest data pengajuan SEP |
INSURER_FACILITY_IHS_NUMBER | SATUSEHAT ID untuk pihak verifikator SEP (Default: BPJS Kesehatan) |
INSURER_FACILITY_NAME | Nama pihak verifikator SEP (Default: BPJS Kesehatan) |
COVERAGE_ID | ID data Kepesertaan BPJS |
COVERAGE_CATEGORY_CODE | Kode kategori pelayanan kesehatan yang bisa diklaim oleh pasien BPJS |
COVERAGE_CATEGORY_DISPLAY | Deskripsi kategori pelayanan kesehatan yang bisa diklaim oleh pasien BPJS |
AMOUNT1_VALUE | Biaya maksimum yang diperbolehkan untuk klaim (dalam rupiah) |
AMOUNT2_VALUE | Pembayaran per layanan (dalam rupiah) |
AMOUNT1_PERCENTAGE | Persentase pembayaran per layanan |
Step 2. Pengiriman Data Klinis dan Pembayaran oleh Fasyankes
Fasyankes yang sudah terintegrasi dengan SATUSEHAT akan mengirimkan data klinis dan pembayaran untuk pasien rawat jalan/ rawat inap ke SATUSEHAT. Data-data inilah yang nantinya akan digunakan oleh BPJS sebagai acuan dalam melakukan verifikasi klaim BPJS.
Data klinis baik pada pasien rawat jalan maupun rawat inap akan selalu berisikan data kunjungan pasien yang disimpan dalam resource Encounter. Data-data kunjungan pasien yang direkam meliputi kapan pertemuan tersebut mulai dan selesai, siapa tenaga kesehatan yang melayani, siapa subjek dari pelayanannya, dan informasi pendukung lainnya. Encounter.id data kunjungan ini akan dilampirkan pada beberapa resource seperti data klaim BPJS (Claim), data pembayaran (ChargeItem), dan data pengajuan Surat Eligibilitas Pasien (CoverageEligibilityRequest).
Pendaftaran Kunjungan Pasien Rawat Inap
{ "resourceType": "Encounter", "identifier": [ { "system": "http://sys-ids.kemkes.go.id/encounter/10085103", "value": "10085103" } ], "status": "in-progress", "class": { "system": "http://terminology.hl7.org/CodeSystem/v3-ActCode", "code": "IMP", "display": "inpatient encounter" }, "subject": { "reference": "Patient/100000030006", "display": "Jane Smith" }, "participant": [ { "type": [ { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/v3-ParticipationType", "code": "ATND", "display": "attender" } ] } ], "individual": { "reference": "Practitioner/N10000001", "display": "Dokter Bronsig" } } ], "period": { "start": "06/14/2022 00:00:00" }, "location": [ { "location": { "reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480", "display": "Bed 2, Ruang 44, Bangsal Rawat Inap Kelas 2, Layanan Jantung, Lantai 2, Gedung Utama" }, "extension": [ { "url": "https://fhir.kemkes.go.id/r4/StructureDefinition/ServiceClass", "extension": [ { "url": "value", "valueCodeableConcept": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/locationServiceClass", "code": "2", "display": "Kelas 2" } ] } }, { "url": "upgradeClassIndicator", "valueCodeableConcept": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/locationUpgradeClass", "code": "naik-kelas", "display": "Kenaikan Kelas Perawatan" } ] } } ] } ] } ], "statusHistory": [ { "status": "in-progress", "period": { "start": "06/14/2022 00:00:00" } } ], "serviceProvider": { "reference": "Organization/10085103" } }
CATATAN:
Proses pengiriman data pasien rawat jalan ke SATUSEHAT secara detail dapat dilihat dalam dokumen Playbook Resume Medis Rawat Jalan.
Referensi:
I. Healthcare Facility
Clinical data for both outpatients and inpatients will always contain patient visit data stored in the Encounter resource. Recorded patient visit data includes when the meeting started and ended, who the health worker was, who the subject of the service was, and other supporting information. Encounter.id visit data will be attached to several resources such as BPJS claim data (Claim), payment data (ChargeItem), and Participant Eligibility Letter submission data (CoverageEligibilityRequest).
The stages of the integration flow and resources used for the claim process can be seen in the image below:
Figure 3. BPJS Claim Submission Scheme by Health Facilities
Step 1. Send "Surat Eligibilitas Peserta (SEP)"
Patients covered by BPJS Kesehatan (Indonesia national health insurance) who visit the Hospital, whether patients who have been referred from other health facilities or patients who enter through other channels, will receive a "Surat Eligibilitas Peserta" or what is often referred to as SEP. SEP is an important document in the BPJS Health system that provides clarity about the eligibility and rights of participants to receive BPJS health services.
SEP data can be requested by health facilities by sending the CoverageEligibilityRequest resource to SATUSEHAT with the format below:
SEP BPJS Number Request
{ "resourceType": "CoverageEligibilityRequest", "identifier": { "period": { "start": "2022-06-14", "end": "2022-06-17" } }, "status": "active", "priority": { "coding": [ { "code": "normal" } ] }, "purpose": [ "validation" ], "patient": { "reference": "Patient/100000030006" }, "servicedDate": "2022-06-14", "created": "2022-06-14", "enterer": { "reference": "Practitioner/N10000001" }, "provider": { "reference": "Organization/10085103" }, "insurer": { "reference": "Organization/10080028" }, "facility": { "reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480" }, "supportingInfo": [ { "sequence": 1, "information": { "reference": "QuestionnaireResponse/636bf55a-dd47-4235-8f65-3430b48ccf49" } } ], "insurance": [ { "focal": true, "coverage": { "reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d" } } ], "item": [ { "diagnosis": [ { "diagnosisCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/sid/icd-10", "code": "I21.9", "display": "Acute myocardial infarction, unspecified" } ] } } ] } ] }
{ "resourceType": "CoverageEligibilityRequest", "status": "active", "priority": { "coding": [ { "code": "normal" } ] }, "purpose": [ "validation", "benefits" ], "patient": { "reference": "Patient/{{PATIENT_IHS_NUMBER}}", "display": "{{PATIENT_NAME}}" }, "servicedDate": "{{SERVICE_DATE}}", "created": "{{COVERAGEELIGIBILITYREQUEST_CREATED_DATETIME}}", "enterer": { "reference": "Practitioner/{{PRACTITIONER_IHS_NUMBER}}", "display": "{{PRACTITIONER_NAME}}" }, "provider": { "reference": "Organization/{{PROVIDER_FACILITY_IHS_NUMBER}}", "display": "{{PROVIDER_FACILITY_NAME}}" }, "insurer": { "reference": "Organization/{{INSURER_FACILITY_IHS_NUMBER}}", "display": "{{INSURER_FACILITY_NAME}}" }, "facility": { "reference": "Location/{{COVERAGEELIGIBILITYREQUEST_LOCATION_ID}}", "display": "{{COVERAGEELIGIBILITYREQUEST_LOCATION_NAME}}" }, "insurance": [ { "coverage": { "reference": "Coverage/{{COVERAGE_ID}}" } } ], "item": [ { "category": { "coding": [ { "system": "http://hl7.org/fhir/sid/icd-10", "code": "{{DIAGNOSIS_ICD_CODE}}", "display": "{{DIAGNOSIS_ICD_DISPLAY}}" } ] } } ] }
Variable | Description |
---|---|
PATIENT_IHS_NUMBER | SATUSEHAT ID Number for Patient. |
PATIENT_NAME | Patient Name. |
SERVICE_DATE | Date healthcare service is given. |
COVERAGEELIGIBILITYREQUEST_CREATED_DATETIME | Date and time the SEP submission was made (created by the system). |
PRACTITIONER_IHS_NUMBER | SATUSEHAT ID for healthcare facility staff who submitted the SEP. |
PRACTITIONER_NAME | Name of healthcare facility staff who submitted the SEP. |
PROVIDER_FACILITY_IHS_NUMBER | SATUSEHAT ID for the healthcare facility submitting the SEP. |
PROVIDER_FACILITY_NAME | Name of the healthcare facility submitting the SEP. |
INSURER_FACILITY_IHS_NUMBER | SATUSEHAT ID for the SEP verifier (Default: BPJS Kesehatan). |
INSURER_FACILITY_NAME | Name of the SEP verifier (Default: BPJS Kesehatan). |
COVERAGEELIGIBILITYREQUEST_LOCATION_ID | ID of the healthcare facility location for the SEP submission. |
COVERAGEELIGIBILITYREQUEST_LOCATION_NAME | Name of the healthcare facility location for the SEP submission. |
COVERAGE_ID | BPJS Membership data ID. |
DIAGNOSIS_ICD_CODE | ICD-10 code for the patient's disease diagnosis. |
DIAGNOSIS_ICD_DISPLAY | ICD-10 description for the patient's disease diagnosis. |
NOTES:
(*): Data types that have specific terminology. The terminology dictionary can be found on the "Value Set" tab.
Medical Data (Additional Information)
In the process of submitting No. SEP, supporting information related to the patient's medical services also needs to be attached. The medical data in question is: 1. Type of Service: Including the type of outpatient or inpatient services 2. Referral Origin: Originating from Level 1 Health Facilities or Level 2 Health Facilities 3. Referral Date 4. Referral Number: Id 5. Referral Health Service Provider (PPK): Referred Health FacilitiesThis supporting information will be stored in the QuestionnaireResponse resource. The CoverageEligibilityRequest.supportingInfo.information column in the example above will refer to QuestionnaireResponse.id.
{ "resourceType": "QuestionnaireResponse", "questionnaire": "https://fhir.kemkes.go.id/Questionnaire/Q0006", "status": "completed", "subject": { "reference": "Patient/100000030006", "display": "Jane Smith" }, "encounter": { "reference": "Encounter/29e3e814-4c9b-4f24-a8cb-54ba597d746f" }, "authored": "06/14/2022 03:00:00", "author": { "reference": "Practitioner/N10000001" }, "source": { "reference": "Patient/100000030006" }, "item": [ { "linkId": "1", "text": "Jenis Pelayanan", "answer": [ { "valueCoding": { "system": "http://terminology.hl7.org/CodeSystem/v3-ActCode", "code": "IMP", "display": "inpatient encounter" } } ] }, { "linkId": "2", "text": "Rujukan", "item": [ { "linkId": "2.1", "text": "Asal Rujukan", "answer": [ { "valueCoding": { "system": "http://terminology.kemkes.go.id/CodeSystem/organization-type", "code": "FKTP", "display": "Fasilitas Kesehatan Tingkat 1" } } ] }, { "linkId": "2.2", "text": "Tanggal Rujukan", "answer": [ { "valueDate": "2022-06-13" } ] }, { "linkId": "2.3", "text": "Nomor Rujukan", "answer": [ { "valueString": "5375162" } ] }, { "linkId": "2.4", "text": "PPK Rujukan", "answer": [ { "valueCoding": { "system": "http://sys-ids.kemkes.go.id/organization/10000004", "code": "10000004", "display": "Puskesmas Sangat Waras" } } ] } ] }, { "linkId": "3", "text": "Catatan Peserta", "answer": [ { "valueString": "-" } ] }, { "linkId": "4", "text": "Poli", "item": [ { "linkId": "4.1", "text": "Tujuan", "answer": [ { "valueCoding": { "system": "http://terminology.kemkes.go.id/CodeSystem/organization-type", "code": "P0000001", "display": "Poli Jantung dan Pembuluh Darah" } } ] }, { "linkId": "4.2", "text": "Eksekutif", "answer": [ { "valueBoolean": true } ] } ] }, { "linkId": "5", "text": "CoB", "answer": [ { "valueBoolean": true } ] }, { "linkId": "6", "text": "Katarak", "answer": [ { "valueBoolean": true } ] }, { "linkId": "7", "text": "Jaminan Kecelakaan Lalu Lintas", "answer": [ { "valueBoolean": true } ] }, { "linkId": "8", "text": "Tanggal Kejadian Kecelakaan Lalu Lintas", "answer": [ { "valueDate": "2022-06-13" } ] }, { "linkId": "9", "text": "Keterangan Kecelakaan Lalu Lintas", "answer": [ { "valueString": "-" } ] }, { "linkId": "10", "text": "Suplesi", "answer": [ { "valueBoolean": true } ] }, { "linkId": "11", "text": "Nomor SEP Suplesi", "answer": [ { "valueString": "SUP03203340000002" } ] }, { "linkId": "12", "text": "Lokasi Kecelakaan", "item": [ { "linkId": "12.1", "text": "Kode Provinsi", "answer": [ { "valueReference": { "type": "Location/53d57761-a5e6-445a-ae09-e26e4a78418e" } } ] }, { "linkId": "12.2", "text": "Kode Kabupaten", "answer": [ { "valueReference": { "type": "Location/c2245bff-121e-4a92-89b5-a1363ea94f47" } } ] }, { "linkId": "12.3", "text": "Kode Kecamatan", "answer": [ { "valueReference": { "type": "Location/2c5304cc-de6b-4816-b976-2daa896d99d2" } } ] } ] }, { "linkId": "13", "text": "SKDP", "item": [ { "linkId": "13.1", "text": "Nomor Surat Kontrol", "answer": [ { "valueString": "DS02/DPP16-2023" } ] }, { "linkId": "13.2", "text": "Kode DPJP", "answer": [ { "valueReference": { "type": "Practitioner/N10000001" } } ] } ] } ] }
Response of BPJS Service Eligibility Letter (SEP) Number
After the health facility sends the BPJS SEP submission data to SATUSEHAT, the BPJS Kesehatan system will verify the CoverageEligibilityRequest resource in real-time. SATUSEHAT will automatically send a response from the SEP submission data in the CoverageEligibilityResponse resource. If the verification results are successful, the SEP No. will be generated and attached to the CoverageEligibilityResponse resource. Since SEP is the main requirement or guarantee letter for patients to be able to use BPJS facilities, therefore if the verification results fail, the SEP No. will not be formed and the patient will automatically not be able to use BPJS facilities. The status of the SEP verification results can be seen in the CoverageEligibilityResponse.outcome column.{ "resourceType": "CoverageEligibilityResponse", "identifier": { "use": { "system": "http://hl7.org/fhir/identifier-use", "code": "official", "display": "Official" }, "system": "http://sys-ids.kemkes.go.id/jkn-claim-number", "value": "0301R0011117V000008", "type": { "system": "http://terminology.hl7.org/CodeSystem/v2-0203", "code": "NIIP", "display": "National Insurance Payor Identifier (Payor)" }, "period": { "start": "2022-06-14", "end": "2022-08-14" } }, "status": "active", "purpose": [ "validation" ], "patient": { "reference": "Patient/100000030006" }, "created": "2022-06-14", "requestor": { "reference": "Organization/10085103" }, "request": { "reference": "CoverageEligibilityRequest/484e6912-1a7f-493f-aac7-0ec80a97a5d1" }, "outcome": "complete", "disposition": "Peserta aktif", "insurer": { "reference": "Organization/10080028" }, "insurance": [ { "coverage": { "reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d" }, "inforce": true, "item": [ { "category": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/ex-benefitcategory", "code": "30", "display": "Health Benefit Plan Coverage" } ] } } ] } ] }
{ "resourceType": "CoverageEligibilityResponse", "status": "active", "purpose": [ "validation", "benefits" ], "patient": { "reference": "Patient/{{PATIENT_IHS_NUMBER}}", "display": "{{PATIENT_NAME}}" }, "servicedDate": "{{SERVICE_DATE}}", "created": "{{COVERAGEELIGIBILITYRESPONSE_CREATED_DATETIME}}", "request": { "reference": "CoverageEligibilityRequest/{{COVERAGEELIGIBILITYREQUEST_ID}}" }, "outcome": "{{HASIL_VERIFIKASI}}", "insurer": { "reference": "Organization/{{INSURER_FACILITY_IHS_NUMBER}}", "display": "{{INSURER_FACILITY_NAME}}" }, "insurance": [ { "coverage": { "reference": "Coverage/{{COVERAGE_ID}}" }, "inforce": true, "item": [ { "category": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/ex-benefitcategory", "code": "{{COVERAGE_CATEGORY_CODE}}", "display": "{{COVERAGE_CATEGORY_DISPLAY}}" } ] }, "network": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/benefit-network", "code": "in" } ] }, "unit": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/benefit-unit", "code": "individual" } ] }, "term": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/benefit-term", "code": "annual" } ] }, "benefit": [ { "type": { "coding": [ { "code": "benefit" } ] }, "allowedMoney": { "value": {{AMOUNT1_VALUE}}, "currency": "IDR" } }, { "type": { "coding": [ { "code": "copay-maximum" } ] }, "allowedMoney": { "value": {{AMOUNT2_VALUE}}, "currency": "IDR" } }, { "type": { "coding": [ { "code": "copay-percent" } ] }, "allowedUnsignedInt": {{ AMOUNT1_PERCENTAGE}} } ] } ] } ] }
| Variable | Description | | :------------------------------ | --------- | | PATIENT_IHS_NUMBER | SATUSEHAT ID Number for Patient | | PATIENT_NAME | Patient Name | | SERVICE_DATE | Estimated date healthcare service is given | | COVERAGEELIGIBILITYRESPONSE_CREATED_DATETIME | Date and time this SEP verification was done (created by the system) | | COVERAGEELIGIBILITYREQUEST_ID | SEP submission CoverageEligibilityRequest data ID | | INSURER_FACILITY_IHS_NUMBER | SATUSEHAT ID for the SEP verifier (Default: BPJS Kesehatan) | | INSURER_FACILITY_NAME | Name of the SEP verifier (Default: BPJS Kesehatan) | | COVERAGE_ID | BPJS Membership data ID | | COVERAGE_CATEGORY_CODE | Code of the healthcare service category that can be claimed by BPJS patients | | COVERAGE_CATEGORY_DISPLAY | Description of the healthcare service category that can be claimed by BPJS patients | | AMOUNT1_VALUE | Maximum cost allowed for claims (in rupiah) | | AMOUNT2_VALUE | Payment per service (in rupiah) | | AMOUNT1_PERCENTAGE | Percentage of payment per service |
Step 2. Clinical Data Submission and Payment by Health Facilities
Health facilities that have been integrated with SATUSEHAT will send clinical data and payments for outpatients/inpatients to SATUSEHAT. This data will later be used by BPJS as a reference in verifying BPJS claims.
Clinical data for both outpatients and inpatients will always contain patient visit data stored in the Encounter resource. Recorded patient visit data includes when the meeting started and ended, who the health worker was, who the subject of the service was, and other supporting information. Encounter.id visit data will be attached to several resources such as BPJS claim data (Claim), payment data (ChargeItem), and Patient Eligibility Letter submission data (CoverageEligibilityRequest).
Inpatient Visit Registration
{ "resourceType": "Encounter", "identifier": [ { "system": "http://sys-ids.kemkes.go.id/encounter/10085103", "value": "10085103" } ], "status": "in-progress", "class": { "system": "http://terminology.hl7.org/CodeSystem/v3-ActCode", "code": "IMP", "display": "inpatient encounter" }, "subject": { "reference": "Patient/100000030006", "display": "Jane Smith" }, "participant": [ { "type": [ { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/v3-ParticipationType", "code": "ATND", "display": "attender" } ] } ], "individual": { "reference": "Practitioner/N10000001", "display": "Dokter Bronsig" } } ], "period": { "start": "06/14/2022 00:00:00" }, "location": [ { "location": { "reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480", "display": "Bed 2, Ruang 44, Bangsal Rawat Inap Kelas 2, Layanan Jantung, Lantai 2, Gedung Utama" }, "extension": [ { "url": "https://fhir.kemkes.go.id/r4/StructureDefinition/ServiceClass", "extension": [ { "url": "value", "valueCodeableConcept": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/locationServiceClass", "code": "2", "display": "Kelas 2" } ] } }, { "url": "upgradeClassIndicator", "valueCodeableConcept": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/locationUpgradeClass", "code": "naik-kelas", "display": "Kenaikan Kelas Perawatan" } ] } } ] } ] } ], "statusHistory": [ { "status": "in-progress", "period": { "start": "06/14/2022 00:00:00" } } ], "serviceProvider": { "reference": "Organization/10085103" } }
NOTES:
The process of sending outpatient data to SATUSEHAT in detail can be seen in the document Playbook Outpatient Medical Record.
Reference:
Postman Klaim dan Pembayaran | Playbook Klaim dan Pembayaran (Fasyankes) | Postman Resume Medis Rawat Jalan SATUSEHAT |
Last Updated: 2023/09/17
II. E-Klaim
Step 1. Konversi format data E-Klaim ke format FHIR
Sama seperti proses yang sudah berlangsung sebelumnya, pengajuan klaim oleh fasyankes tetap dilakukan melalui aplikasi E-Klaim. Aplikasi E-Klaim inilah yang nantinya akan melakukan konversi data klaim ke format FHIR (resource *Claim*) dan dikirimkan ke SATUSEHAT.
Resource *Claim* disini akan referensi ke data klinis seperti *Encounter*, *Observation*, dan data pendukung lainnya. Berhubung fasyankes diperbolehkan untuk melakukan pengajuan klaim terhadap beberapa kunjungan pasien secara sekaligus, maka dari itu 1 *Claim* (1 Nomor SEP) bisa mencakup lebih dari 1 data kunjungan pasien (resource *Encounter*).
Klaim BPJS INACBG
{ "resourceType": "Claim", "id": "960151", "meta": { "profile": [ "https://fhir.kemkes.go.id/r4/StructureDefinition/Claim" ] }, "identifier": [ { "system": "http://sys-ids.kemkes.go.id/jkn-claim-batch-number", "value": "96123451" } ], "status": "active", "type": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/claim-type", "code": "institutional", "display": "Institutional" } ] }, "use": "claim", "patient": { "reference": "Patient/100000030006" }, "billablePeriod": { "start": "2022-06-14", "end": "2022-06-21" }, "created": "2022-06-21", "enterer": { "identifier": { "system": "https://fhir.kemkes.go.id/id/nik", "value": "3657746633553535555" }, "reference": "Practitioner/N10000001" }, "insurer": { "reference": "Organization/10080028" }, "provider": { "reference": "Organization/10085103" }, "priority": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/processpriority", "code": "normal", "display": "Normal" } ] }, "payee": { "type": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/payeetype", "code": "provider", "display": "Provider" } ] }, "party": { "reference": "Organization/10085103" } }, "facility": { "reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480" }, "supportingInfo": [ { "sequence": 1, "category": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory", "code": "upgrade-class-indicator", "display": "Indikator Naik Kelas" } ] }, "code": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/upgradeClassIndicator", "code": "upgrade", "display": "Ada Kenaikan Kelas" } ] } }, { "sequence": 2, "category": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory", "code": "upgrade-class-class" } ] }, "code": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/locationServiceClass", "code": "2" } ] }, "timingPeriod": { "start": "2022-06-14", "end": "2022-06-21" } }, { "sequence": 3, "category": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory", "code": "claim-text-encoded" } ] }, "valueAttachment": { "contentType": "text/plain;base64", "data": "REVNTyBWRVJTSU9OCUQJMwlBUAkxCTI0LzAxLzIwMjMJMjQvMDEvMjAyMwkyNC8wMS8yMDIzCTMwMDAJMQkxCVAwMS42CTk5LjAzCS0JLQlOb25lCU5vbmUJTm9uZQlOb25lCVAtOC0xNy1JCU5vbmUJTm9uZQlOb25lCU5vbmUJTm9uZQlOb25lCU5FT05BVEFMLCBCQkwgPiAyNDk5IEdSIFRBTlBBIFBST1NFRFVSIE1BWU9SIChSSU5HQU4pCTQ1NTk4MDAJMAkwCS0JMAktCTAJLQkwCS0JMAk0NTU5ODAwCTEwMDAwMAkwCTEJMQkwCTAJVEVTVCBCQVlJCTIwMDM5OQkwCTAJCURFTU8gVkVSU0lPTgkxMjIyMzMzNDQJMztKS04JMTExMDEwMTs5MDIyQzAxO0FETQk1LjcuMC4yMDIyMDkyNzEzMDMJNAk2NjgJMSMwIyMwIzAjMC4wIzIwMjMtMDEtMjMgMTc6MTM6MDMjMCMxMzoyOToyOSMxMzoyOToyOSMwMDowMDowMCN7ImNvX2luc2lkZW5zZV9pbmQiOiIwIn0jI3siY2FyYV9tYXN1ayI6ImVtZCIsInNpc3RvbGUiOiIxMTAiLCJkaWFzdG9sZSI6IjcwIiwidG90YWxfdGFyaWZfcnMiOiIxMDAwMDAiLCJiaWxsaW5nX2dyb3VwIjp7InByb2NlZHVyZV9hbXQiOiIxMDAwMDAiLCJzdXJnaWNhbF9hbXQiOiIwIiwiY29uc3VsX2FtdCI6IjAiLCJleHBlcnRfYW10IjoiMCIsIm51cnNpbmdfYW10IjoiMCIsImFuY2lsbGFyeV9hbXQiOiIwIiwiYmxvb2RfYW10IjoiMCIsImxhYm9yYXRvcnlfYW10IjoiMCIsInJhZGlvbG9neV9hbXQiOiIwIiwicmVoYWJfYW10IjoiMCIsInJvb21fYW10IjoiMCIsImludGVuc2l2ZV9hbXQiOiIwIiwiZHJ1Z19hbXQiOiIwIiwiZGV2aWNlX2FtdCI6IjAiLCJjb25zdW1hYmxlX2FtdCI6IjAiLCJkZXZpY2VfcmVudF9hbXQiOiIwIiwiZHJ1Z19jaHJvbmljX2FtdCI6IjAiLCJkcnVnX2NoZW1vX2FtdCI6IjAifSwic2VsaXNpaF9iaWF5YSI6eyJuaWxhaSI6IjAiLCJwZW1iYXlhciI6IiIsIm5haWtfa2VsYXMiOiIifSwidmVudGlsYXRvciI6eyJ1c2VfaW5kIjoiMSIsInN0YXJ0X2R0dG0iOiIyMDIzLTAxLTE5IDE3OjI2OjA4Iiwic3RvcF9kdHRtIjoiMjAyMy0wMS0yMCAxNzoyNjoyCg==" } }, { "sequence": 4, "category": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory", "code": "unu-grouper-version" } ] }, "valueString": "4" }, { "sequence": 5, "category": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory", "code": "e-klaim-version" } ] }, "valueString": "5.8.3.202301311257" } ], "diagnosis": [ { "sequence": 1, "diagnosisCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/sid/icd-10", "code": "I21.9", "display": "Acute myocardial infarction, unspecified" } ] }, "type": [ { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/diagnosis-role", "code": "billing", "display": "Billing" } ] } ] } ], "procedure": [ { "sequence": 1, "procedureCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/sid/icd-9-cm", "code": "36.06", "display": "Insertion of non-drug -eluting coronary artery stent(s)" } ] } }, { "sequence": 2, "procedureCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/sid/icd-9-cm", "code": "00.66", "display": "Parcutaneous transluminal coronary angioplasty (PTCA) or coronary atherectomy" } ] } } ], "insurance": [ { "sequence": 1, "focal": true, "coverage": { "reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d" }, "identifier": { "system": "http://sys-ids.kemkes.go.id/jkn-claim-number", "value": "100R01V0010002" } } ], "total": { "value": 28868200, "currency": "IDR" }, "extension": [ { "url": "https://fhir.kemkes.go.id/r4/StructureDefinition/Package", "extension": [ { "url": "tariffClass", "valueCodeableConcept": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/tariffClass", "code": "AP", "display": "Tarif Kelas A Pemerintah" } ] } }, { "url": "basePackage", "extension": [ { "url": "code", "valueCodeableConcept": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/inacbg-v5", "code": "I-1-40-I", "display": "PROSEDUR KARDIOVASKULAR PERKUTAN (RINGAN)" } ] } }, { "url": "value", "valueInteger": 14434100 } ] }, { "url": "additionalPackage", "extension": [ { "url": "code", "valueCodeableConcept": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/inacbg-special-cmg-v5", "code": "YY-02-III", "display": "PCI" } ] } }, { "url": "value", "valueInteger": 14434100 } ] } ] } ] }
II. E-Klaim
Step 1. Convert E-Claim data format to FHIR format
Similar to the previous process, claims submission by health facilities are still done through the E-Claim application. This E-Claim application will later convert claim data to FHIR format (resource *Claim*) and send it to SATUSEHAT.
The *Claim* resource here will refer to clinical data such as *Encounter*, *Observation*, and other supporting data. Since health facilities are allowed to submit claims for several patient visits at once, therefore 1 *Claim* (1 SEP Number) can cover more than 1 patient visit data (resource *Encounter*).
BPJS INACBG Claim
{ "resourceType": "Claim", "id": "960151", "meta": { "profile": [ "https://fhir.kemkes.go.id/r4/StructureDefinition/Claim" ] }, "identifier": [ { "system": "http://sys-ids.kemkes.go.id/jkn-claim-batch-number", "value": "96123451" } ], "status": "active", "type": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/claim-type", "code": "institutional", "display": "Institutional" } ] }, "use": "claim", "patient": { "reference": "Patient/100000030006" }, "billablePeriod": { "start": "2022-06-14", "end": "2022-06-21" }, "created": "2022-06-21", "enterer": { "identifier": { "system": "https://fhir.kemkes.go.id/id/nik", "value": "3657746633553535555" }, "reference": "Practitioner/N10000001" }, "insurer": { "reference": "Organization/10080028" }, "provider": { "reference": "Organization/10085103" }, "priority": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/processpriority", "code": "normal", "display": "Normal" } ] }, "payee": { "type": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/payeetype", "code": "provider", "display": "Provider" } ] }, "party": { "reference": "Organization/10085103" } }, "facility": { "reference": "Location/ec3e8a16-437b-4eba-b8f6-ce93c13ac480" }, "supportingInfo": [ { "sequence": 1, "category": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory", "code": "upgrade-class-indicator", "display": "Indikator Naik Kelas" } ] }, "code": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/upgradeClassIndicator", "code": "upgrade", "display": "Ada Kenaikan Kelas" } ] } }, { "sequence": 2, "category": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory", "code": "upgrade-class-class" } ] }, "code": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/locationServiceClass", "code": "2" } ] }, "timingPeriod": { "start": "2022-06-14", "end": "2022-06-21" } }, { "sequence": 3, "category": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory", "code": "claim-text-encoded" } ] }, "valueAttachment": { "contentType": "text/plain;base64", "data": "REVNTyBWRVJTSU9OCUQJMwlBUAkxCTI0LzAxLzIwMjMJMjQvMDEvMjAyMwkyNC8wMS8yMDIzCTMwMDAJMQkxCVAwMS42CTk5LjAzCS0JLQlOb25lCU5vbmUJTm9uZQlOb25lCVAtOC0xNy1JCU5vbmUJTm9uZQlOb25lCU5vbmUJTm9uZQlOb25lCU5FT05BVEFMLCBCQkwgPiAyNDk5IEdSIFRBTlBBIFBST1NFRFVSIE1BWU9SIChSSU5HQU4pCTQ1NTk4MDAJMAkwCS0JMAktCTAJLQkwCS0JMAk0NTU5ODAwCTEwMDAwMAkwCTEJMQkwCTAJVEVTVCBCQVlJCTIwMDM5OQkwCTAJCURFTU8gVkVSU0lPTgkxMjIyMzMzNDQJMztKS04JMTExMDEwMTs5MDIyQzAxO0FETQk1LjcuMC4yMDIyMDkyNzEzMDMJNAk2NjgJMSMwIyMwIzAjMC4wIzIwMjMtMDEtMjMgMTc6MTM6MDMjMCMxMzoyOToyOSMxMzoyOToyOSMwMDowMDowMCN7ImNvX2luc2lkZW5zZV9pbmQiOiIwIn0jI3siY2FyYV9tYXN1ayI6ImVtZCIsInNpc3RvbGUiOiIxMTAiLCJkaWFzdG9sZSI6IjcwIiwidG90YWxfdGFyaWZfcnMiOiIxMDAwMDAiLCJiaWxsaW5nX2dyb3VwIjp7InByb2NlZHVyZV9hbXQiOiIxMDAwMDAiLCJzdXJnaWNhbF9hbXQiOiIwIiwiY29uc3VsX2FtdCI6IjAiLCJleHBlcnRfYW10IjoiMCIsIm51cnNpbmdfYW10IjoiMCIsImFuY2lsbGFyeV9hbXQiOiIwIiwiYmxvb2RfYW10IjoiMCIsImxhYm9yYXRvcnlfYW10IjoiMCIsInJhZGlvbG9neV9hbXQiOiIwIiwicmVoYWJfYW10IjoiMCIsInJvb21fYW10IjoiMCIsImludGVuc2l2ZV9hbXQiOiIwIiwiZHJ1Z19hbXQiOiIwIiwiZGV2aWNlX2FtdCI6IjAiLCJjb25zdW1hYmxlX2FtdCI6IjAiLCJkZXZpY2VfcmVudF9hbXQiOiIwIiwiZHJ1Z19jaHJvbmljX2FtdCI6IjAiLCJkcnVnX2NoZW1vX2FtdCI6IjAifSwic2VsaXNpaF9iaWF5YSI6eyJuaWxhaSI6IjAiLCJwZW1iYXlhciI6IiIsIm5haWtfa2VsYXMiOiIifSwidmVudGlsYXRvciI6eyJ1c2VfaW5kIjoiMSIsInN0YXJ0X2R0dG0iOiIyMDIzLTAxLTE5IDE3OjI2OjA4Iiwic3RvcF9kdHRtIjoiMjAyMy0wMS0yMCAxNzoyNjoyCg==" } }, { "sequence": 4, "category": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory", "code": "unu-grouper-version" } ] }, "valueString": "4" }, { "sequence": 5, "category": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/claiminformationcategory", "code": "e-klaim-version" } ] }, "valueString": "5.8.3.202301311257" } ], "diagnosis": [ { "sequence": 1, "diagnosisCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/sid/icd-10", "code": "I21.9", "display": "Acute myocardial infarction, unspecified" } ] }, "type": [ { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/diagnosis-role", "code": "billing", "display": "Billing" } ] } ] } ], "procedure": [ { "sequence": 1, "procedureCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/sid/icd-9-cm", "code": "36.06", "display": "Insertion of non-drug -eluting coronary artery stent(s)" } ] } }, { "sequence": 2, "procedureCodeableConcept": { "coding": [ { "system": "http://hl7.org/fhir/sid/icd-9-cm", "code": "00.66", "display": "Parcutaneous transluminal coronary angioplasty (PTCA) or coronary atherectomy" } ] } } ], "insurance": [ { "sequence": 1, "focal": true, "coverage": { "reference": "Coverage/acc4c2ac-5b2b-4002-a278-a1ce4559802d" }, "identifier": { "system": "http://sys-ids.kemkes.go.id/jkn-claim-number", "value": "100R01V0010002" } } ], "total": { "value": 28868200, "currency": "IDR" }, "extension": [ { "url": "https://fhir.kemkes.go.id/r4/StructureDefinition/Package", "extension": [ { "url": "tariffClass", "valueCodeableConcept": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/tariffClass", "code": "AP", "display": "Tarif Kelas A Pemerintah" } ] } }, { "url": "basePackage", "extension": [ { "url": "code", "valueCodeableConcept": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/inacbg-v5", "code": "I-1-40-I", "display": "PROSEDUR KARDIOVASKULAR PERKUTAN (RINGAN)" } ] } }, { "url": "value", "valueInteger": 14434100 } ] }, { "url": "additionalPackage", "extension": [ { "url": "code", "valueCodeableConcept": { "coding": [ { "system": "http://terminology.kemkes.go.id/CodeSystem/inacbg-special-cmg-v5", "code": "YY-02-III", "display": "PCI" } ] } }, { "url": "value", "valueInteger": 14434100 } ] } ] } ] }
Last Updated: 2023/09/17
III. BPJS
- Prasyarat ketersediaan data kepesertaan BPJS

Gambar 2. Skema penyediaan data kepesertaan BPJS
Agar fasyankes bisa melakukan pengiriman data pengajuan klaim BPJS, data Master Kepesertaan BPJS wajib disediakan terlebih dahulu di SATUSEHAT. Hal ini dikarenakan data kepesertaan BPJS akan dijadikan referensi saat data klaim BPJS dikirimkan ke SATUSEHAT. Data Master Kepesertaan BPJS bersumber dari existing sistem BPJS sehingga perlu adanya mekanisme sinkronisasi data antara sistem BPJS kesehatan dengan SATUSEHAT.
Master Kepesertaan BPJS pada SATUSEHAT akan disimpan menggunakan salah satu resource dalam FHIR yaitu Coverage. Proses penambahan data peserta baru BPJS dapat dilakukan melalui FHIR API dengan metode POST, sedangkan proses perubahan data peserta existing BPJS (termasuk proses menonaktifkan data peserta BPJS) akan menggunakan metode PUT. Untuk contoh pengiriman data atau payload dari pembaharuan data kepesertaan BPJS dapat dilihat dalam Postman Collection.
1.1. Pembuatan Organisasi BPJS Kesehatan
BPJS Kesehatan
{ "resourceType": "Organization", "active": true, "address": [ { "city": "Jakarta", "country": "ID", "extension": [ { "extension": [ { "url": "province", "valueCode": "10" }, { "url": "city", "valueCode": "1010" }, { "url": "district", "valueCode": "1010101" }, { "url": "village", "valueCode": "1010101101" } ], "url": "https://fhir.kemkes.go.id/r4/StructureDefinition/administrativeCode" } ], "line": [ "Jalan Matraman Raya No. 94 A, Kecamatan Menteng, Jakarta Pusat, DKI Jakarta" ], "postalCode": "10320", "type": "both", "use": "work" } ], "id": "a60f0623-80a0-4a97-a8c0-8bedb7844649", "identifier": [ { "system": "http://sys-ids.kemkes.go.id/organization/10080028", "use": "official", "value": "BPJS-K" } ], "meta": { "lastUpdated": "2023-05-19T16:18:04.201716+00:00", "versionId": "MTY4NDUxMzA4NDIwMTcxNjAwMA" }, "name": "BPJS Kesehatan", "partOf": { "display": "BPJS Kesehatan", "reference": "Organization/10080028" }, "telecom": [ { "system": "phone", "value": "022-655 2331" }, { "system": "email", "value": "wbs@bpjs-kesehatan.go.id" }, { "system": "fax", "value": "022-655 2323" } ], "type": [ { "coding": [ { "code": "team", "display": "Organizational team", "system": "http://terminology.hl7.org/CodeSystem/organization-type" } ] } ] }
1.2. Pencarian Data Pasien
Karena data pasien di dalam SATUSEHAT sudah terdaftar lebih dulu di *Master Patient Index* (MPI) Kementerian Kesehatan, sehingga registrasi data pasien baru tidak diperlukan.
Proses pencarian {patient-ihs-number} dari pasien dapat dilakukan melalui FHIR API dengan metode GET. Untuk metode pencarian data pasien di SATUSEHAT secara detail dapat dilihat dalam dokumen Petunjuk Teknis SATUSEHAT (Juknis SATSET).
1.3. Pembuatan Data Kepesertaan BPJS
Kepesertaan BPJS
{ "resourceType": "Coverage", "status": "active", "type": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem v3-ActCode", "code": "PUBLICPOL", "display": "public healthcare" } ] }, "policyHolder": { "reference": "Patient/100000030006" }, "subscriber": { "reference": "Patient/100000030006" }, "subscriberId": "367400001111222", "beneficiary": { "reference": "Patient/100000030006" }, "dependent": "0", "relationship": { "coding": [ { "code": "self" } ] }, "period": { "start": "2022-02-01", "end": "2050-12-01" }, "payor": [ { "reference": "Organization/10080028" } ], "class": [ { "type": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/coverage-class", "code": "group", "display": "Group" } ] }, "value": "COV000009", "name": "Pegawai Swasta" }, { "type": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/coverage-class", "code": "class", "display": "Class" } ] }, "value": "3", "name": "Kelas 3" } ] }
B. Verifikasi data klaim dari fasyankes
Gambar 4. Skema Verifikasi Klaim oleh BPJS Kesehatan
BPJS akan melakukan verifikasi data klaim fasyankes secara *monthly*. Data yang akan diverifikasi oleh tim BPJS adalah resource Claim yang dikirimkan oleh aplikasi E-Claim (step 2.4.). Data klinis dan pembayaran pada fasyankes (step 2.1.) juga akan digunakan dalam proses verifikasi ini.
Respons Klaim BPJS INACBG
{ "resourceType": "ClaimResponse", "status": "active", "type": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/claim-type", "code": "institutional" } ] }, "subType": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/ex-claimsubtype", "code": "emergency" } ] }, "use": "claim", "patient": { "reference": "Patient/100000030006" }, "created": "2022-06-22", "insurer": { "reference": "Organization/10080028" }, "requestor": { "reference": "Organization/10085103" }, "request": { "reference": "Claim/f53c953b-944a-49b2-a2bc-6ddcd23e7791" }, "outcome": "complete", "payeeType": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/payeetype", "code": "provider" } ] }, "adjudication": [ { "category": { "coding": [ { "system": "http://snomed.info/sct", "code": "309010003", "display": "Report payment claim status" } ] }, "reason": { "coding": [ { "system": "http://snomed.info/sct", "code": "161040006", "display": "Entitled to benefits" } ] }, "amount": { "value": 28868200, "currency": "IDR" }, "value": 1 } ], "total": [ { "category": { "coding": [ { "code": "submitted" } ] }, "amount": { "value": 28868200, "currency": "IDR" } } ], "payment": { "type": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/ex-paymenttype", "code": "complete" } ] }, "date": "2022-06-22", "amount": { "value": 28868200, "currency": "IDR" } } }
III. BPJS
- Prerequisites of BPJS participant data

Figure 2. BPJS participant data registration work flow
BPJS (Badan Penyelenggara Jaminan Sosial) is Indonesia's national health insurance program. In order for healthcare facilities to submit claim data to BPJS, the Master Participant Data of BPJS must first be provided in SATUSEHAT. This is because the BPJS participant data will serve as a reference when the BPJS claim data is sent to SATUSEHAT. The Master Participant Data of BPJS is sourced from the existing BPJS system, so a data synchronization mechanism between the BPJS health system and SATUSEHAT is necessary.
The Master Participant Data of BPJS in SATUSEHAT will be stored using one of the resources in FHIR, namely Coverage. The process of adding new BPJS participant data can be done through the FHIR API using the POST method, while the process of modifying existing BPJS participant data (including the process of deactivating BPJS participant data) will use the PUT method. For examples of data submission or payload for updating BPJS participant data, please refer to the Postman Collection.
1.1. Create BPJS Organization Data
BPJS Kesehatan
{ "resourceType": "Organization", "active": true, "address": [ { "city": "Jakarta", "country": "ID", "extension": [ { "extension": [ { "url": "province", "valueCode": "10" }, { "url": "city", "valueCode": "1010" }, { "url": "district", "valueCode": "1010101" }, { "url": "village", "valueCode": "1010101101" } ], "url": "https://fhir.kemkes.go.id/r4/StructureDefinition/administrativeCode" } ], "line": [ "Jalan Matraman Raya No. 94 A, Kecamatan Menteng, Jakarta Pusat, DKI Jakarta" ], "postalCode": "10320", "type": "both", "use": "work" } ], "id": "a60f0623-80a0-4a97-a8c0-8bedb7844649", "identifier": [ { "system": "http://sys-ids.kemkes.go.id/organization/10080028", "use": "official", "value": "BPJS-K" } ], "meta": { "lastUpdated": "2023-05-19T16:18:04.201716+00:00", "versionId": "MTY4NDUxMzA4NDIwMTcxNjAwMA" }, "name": "BPJS Kesehatan", "partOf": { "display": "BPJS Kesehatan", "reference": "Organization/10080028" }, "telecom": [ { "system": "phone", "value": "022-655 2331" }, { "system": "email", "value": "wbs@bpjs-kesehatan.go.id" }, { "system": "fax", "value": "022-655 2323" } ], "type": [ { "coding": [ { "code": "team", "display": "Organizational team", "system": "http://terminology.hl7.org/CodeSystem/organization-type" } ] } ] }
1.2. Search Patient Data
> `NOTES:` > The process of searching for {patient-ihs-number} from a patient can be done via the FHIR API with the GET method. For detailed patient data search methods in SATUSEHAT, see _resource_ [`Patient`](https://satusehat.kemkes.go.id/platform/docs/id/fhir/resources/patient/#patient) and related MPI guidelines/playbooks can be seen in the document SATUSEHAT Master Patient Index.
1.3. Create BPJS Participant Data
BPJS Participant
{ "resourceType": "Coverage", "status": "active", "type": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem v3-ActCode", "code": "PUBLICPOL", "display": "public healthcare" } ] }, "policyHolder": { "reference": "Patient/100000030006" }, "subscriber": { "reference": "Patient/100000030006" }, "subscriberId": "367400001111222", "beneficiary": { "reference": "Patient/100000030006" }, "dependent": "0", "relationship": { "coding": [ { "code": "self" } ] }, "period": { "start": "2022-02-01", "end": "2050-12-01" }, "payor": [ { "reference": "Organization/10080028" } ], "class": [ { "type": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/coverage-class", "code": "group", "display": "Group" } ] }, "value": "COV000009", "name": "Pegawai Swasta" }, { "type": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/coverage-class", "code": "class", "display": "Class" } ] }, "value": "3", "name": "Kelas 3" } ] }
B. Verification of claim data from healthcare facilities
Gambar 4. Verification of claim data from healthcare facilities Workflow
BPJS will verify healthcare facility claim data *monthly*. The data that will be verified by the BPJS team is the Claim resource sent by the E-Claim application (step 2.4.). Clinical and payment data at health facilities (step 2.1.) will also be used in this verification process.
Respons from Klaim BPJS INACBG
{ "resourceType": "ClaimResponse", "status": "active", "type": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/claim-type", "code": "institutional" } ] }, "subType": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/ex-claimsubtype", "code": "emergency" } ] }, "use": "claim", "patient": { "reference": "Patient/100000030006" }, "created": "2022-06-22", "insurer": { "reference": "Organization/10080028" }, "requestor": { "reference": "Organization/10085103" }, "request": { "reference": "Claim/f53c953b-944a-49b2-a2bc-6ddcd23e7791" }, "outcome": "complete", "payeeType": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/payeetype", "code": "provider" } ] }, "adjudication": [ { "category": { "coding": [ { "system": "http://snomed.info/sct", "code": "309010003", "display": "Report payment claim status" } ] }, "reason": { "coding": [ { "system": "http://snomed.info/sct", "code": "161040006", "display": "Entitled to benefits" } ] }, "amount": { "value": 28868200, "currency": "IDR" }, "value": 1 } ], "total": [ { "category": { "coding": [ { "code": "submitted" } ] }, "amount": { "value": 28868200, "currency": "IDR" } } ], "payment": { "type": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/ex-paymenttype", "code": "complete" } ] }, "date": "2022-06-22", "amount": { "value": 28868200, "currency": "IDR" } } }