Gateway Pembayaran HMCTS
HMCTS Payment Gateway adalah pembungkus kecil di sekitar layanan gov.uk pembayaran menambahkan beberapa otorisasi pengguna/layanan dasar, menegakkan struktur referensi pembayaran yang bermanfaat dan mengumpulkan data di beberapa akun gov.uk gaji yang akan memungkinkan pelaporan dan rekonsiliasi keuangan yang lebih baik.
Prasyarat integrasi
Untuk integrasi yang berhasil dengan gateway pembayaran HMCTS Anda akan memerlukan hal berikut:
- GOV.UK PEMBAYARAN API KUNCI . Sebelum Anda mulai, Anda harus mendapatkan akun gov.uk pembayaran yang khusus untuk Anda. Setelah selesai, Anda harus menggunakan konsol admin gov.uk untuk membuat kunci API Anda (-s) dan memberikannya kepada kami.
- Idam . Semua permintaan ke gateway pembayaran memerlukan token JWT pengguna yang valid untuk disahkan di header "Otorisasi". Pastikan aplikasi Anda terintegrasi dengan IDAM sebelum Anda mulai.
- Layanan-Auth-Provider . Semua permintaan ke gateway pembayaran memerlukan layanan JWT yang valid untuk disahkan di header "ServiceAuthorization". Pastikan aplikasi Anda terdaftar di Layanan-Auth-Provider-App dan Anda dapat memperoleh Token JWT Layanan.
Integrasi gotcha
- Status pembayaran basi . Baik gateway pembayaran HMCTS, maupun pemberitahuan pemberitahuan "Push" GOV.uk untuk pemberitahuan status pembayaran. Oleh karena itu, situasi di mana pengguna telah melakukan pembayaran tetapi pengalihannya kembali ke URL "pengembalian" gagal (misalnya karena koneksi internet yang terganggu), akan menyebabkan status pembayaran tidak tercermin dalam aplikasi Anda sampai Anda menanyakan statusnya lagi. Anda harus mempertimbangkan ini dan jika perlu menerapkan beberapa pekerjaan latar belakang untuk status pembayaran yang menyegarkan.
- Otorisasi akses . Pembayaran Gateway mengimplementasikan aturan otorisasi berbasis URL sederhana. Pengguna dengan ID 999, hanya akan diberikan akses ke URL/pengguna/999/pembayaran/*, permintaan apa pun kepada/pengguna/{Other_id}/pembayaran/* akan menghasilkan 403.
- Pengembalian uang . Meskipun, baik Gateway Pembayaran HMCT dan GOV.UK Pay Menerapkan titik akhir pengembalian dana, mereka tidak akan bekerja karena keterbatasan pengaturan keuangan MOJ & sistem back-office.
Bangunan
Proyek ini menggunakan Gradle sebagai alat build tetapi Anda belum menginstalnya secara lokal karena ada skrip pembungkus ./gradlew
.
Untuk Membangun Proyek Harap jalankan perintah berikut:
Tes
Proyek ini menggunakan testContainers untuk dukungan basis data. Docker harus dipasang pada mesin yang Anda jalankan dan lingkungan Docker harus memiliki lebih dari 2GB ruang disk gratis.
Pengguna Windows mungkin perlu mengaktifkan pengaturan ini pengguna Linux mungkin perlu menambahkan pengguna saat ini ke grup Docker:
$ sudo usermod -aG docker $USER
Untuk menjalankan semua tes unit, harap jalankan perintah berikut:
Titik akhir
- POST/USER/{UserId}/Pembayaran - Buat pembayaran
- Get/Users/{UserId}/Payments/{PaymentId} - Dapatkan pembayaran
- POST/USER/{UserId}/Payments/{PaymentId}/Batal - Batalkan Pembayaran
Silakan merujuk ke Swagger UI dan GOV.UK membayar lebih detail.
Tautan yang berguna
- https://gds-payments.gelato.io/docs/versions/1.0.0/resources/general
- https://github.com/hmcts/ccpay-reference-app
- https://github.com/hmcts/ccpay-reference-web
Cara Menghasilkan File YAML Liquibase
Liquibase digunakan untuk memperbarui perubahan database. Lakukan langkah -langkah berikut untuk membuat dan memperbarui file YAML baru.
- Model CD
- Jalankan Perintah $ MVN Liquibase: Diff
- Ini akan menghasilkan file YAML baru EG API/SRC/Main/Resources/DB/Changelog/DB.Changelog-0.0.5.YAML
- Tambahkan file ini ke pom.xml di bagian difchangelogfile di bawah konfigurasi
- Tambahkan file ini ke daftar file diff db.changelog-master.xml
Variabel Lingkungan
Variabel lingkungan berikut diperlukan:
-
APPINSIGHTS_INSTRUMENTATIONKEY
, kunci wawasan aplikasi untuk mengirim acara telemetri.