← Semua artikel

Healthcare IT ·

Integrasi SIMRS ke SATUSEHAT: Gambaran Teknis untuk Tim IT Rumah Sakit

Alur integrasi SIMRS ke platform SATUSEHAT Kemenkes dari sisi teknis: akses API, autentikasi OAuth2, standar FHIR R4, pemetaan data master, dan jebakan yang sering terjadi.

Sejak Permenkes No. 24 Tahun 2022 tentang Rekam Medis, fasilitas pelayanan kesehatan wajib menyelenggarakan rekam medis elektronik dan terhubung dengan platform SATUSEHAT milik Kementerian Kesehatan. Untuk tim IT rumah sakit, artinya SIMRS harus bisa mengirim data klinis ke SATUSEHAT secara terstruktur.

Artikel ini merangkum gambaran teknisnya — bukan pengganti dokumentasi resmi, tetapi peta supaya tim tahu apa yang perlu disiapkan.

1. Pahami standarnya: HL7 FHIR R4

SATUSEHAT memakai HL7 FHIR Release 4 sebagai standar model data dan API. Data dikirim sebagai resource FHIR dalam format JSON, misalnya:

  • Patient dan Practitioner — identitas pasien dan tenaga kesehatan
  • Organization dan Location — fasilitas kesehatan dan unit/ruangannya
  • Encounter — kunjungan pasien
  • Condition — diagnosis (dengan kode ICD-10)
  • Observation — hasil pemeriksaan, misalnya tanda vital

Bagi developer yang terbiasa dengan tabel relasional, pola pikirnya bergeser: setiap resource saling mereferensikan (misalnya Encounter merujuk ke Patient, Practitioner, dan Location), sehingga urutan pengiriman data penting.

2. Ajukan akses dan dapatkan kredensial

Akses API tidak bisa langsung dipakai. Fasilitas kesehatan perlu mengajukan akses dan diverifikasi oleh Kemenkes. Setelah disetujui, fasilitas mendapat client ID dan client secret.

Beberapa hal penting:

  • Satu pasang client ID/secret terikat pada satu Organization ID. Mengirim data untuk Organization ID lain dengan kredensial yang sama akan ditolak.
  • Kredensial bersifat rahasia — simpan di environment variable atau secret manager, jangan di-commit ke repository.
  • Tersedia lingkungan sandbox untuk pengujian sebelum masuk production.

3. Autentikasi dengan OAuth2 client credentials

SATUSEHAT memakai OAuth2 dengan grant type client_credentials — autentikasi server-to-server tanpa login pengguna. SIMRS menukar client ID dan secret menjadi access token, lalu menyertakan token itu di setiap request API berikutnya.

Praktik yang disarankan:

  • Simpan dan pakai ulang token selama masih berlaku, jangan meminta token baru di setiap request.
  • Perbarui token secara otomatis ketika kedaluwarsa atau ketika API membalas error autentikasi.

4. Rapikan data master lebih dulu

Masalah integrasi paling sering justru bukan di kode, melainkan di data:

  • NIK pasien dan tenaga kesehatan yang kosong atau salah membuat pencarian identitas di SATUSEHAT gagal.
  • Lokasi/unit di SIMRS perlu dipetakan ke resource Location.
  • Kode terminologi (misalnya ICD-10 untuk diagnosis) harus valid, bukan teks bebas.

Menyiapkan tabel pemetaan (mapping) antara ID internal SIMRS dan ID di SATUSEHAT akan menghemat banyak waktu debugging.

5. Desain pengiriman yang tahan gagal

Jaringan bisa putus dan API bisa sibuk. Pola yang terbukti membantu:

  • Antrean (queue): kirim data secara asinkron, jangan membuat petugas pendaftaran menunggu respons SATUSEHAT.
  • Retry dengan jeda untuk error sementara.
  • Log setiap request dan respons (tanpa membocorkan data sensitif) supaya kegagalan bisa ditelusuri.
  • Dashboard status pengiriman untuk tim IT: berapa yang sukses, gagal, dan perlu diperbaiki manual.

Ringkasan

  1. Pahami resource FHIR R4 yang relevan.
  2. Ajukan akses, simpan kredensial dengan aman, uji di sandbox.
  3. Implementasikan OAuth2 client credentials dengan token yang dipakai ulang.
  4. Bereskan data master (NIK, lokasi, kode) sebelum mengirim data klinis.
  5. Kirim secara asinkron dengan retry, log, dan monitoring.

Referensi

  • #SATUSEHAT
  • #FHIR
  • #SIMRS
  • #RME