```plantuml
@startuml
actor "admin" as actor1
boundary "dashboard samsat" as web_samsat
boundary "menu verifikasi dokumen" as dokumen
boundary "view detail dokumen user" as dokumen_user
control "module verifikasi dokumen" as module_verifikasi
entity "dokumen pendaftaran" as dokumen_entity
entity "arsip" as arsip
entity "mutasi" as mutasi
database "db_samsat" as db
collections "tb_pendaftaran" as tb_pendaftaran
collections "tb_arsip_balik_nama" as tb_arsip_balik_nama
collections "tb_mutasi" as tb_mutasi
actor1 -> web_samsat : visit website
actor1 -> web_samsat : /login [POST]
web_samsat -> dokumen : /verifikasi-dokumen [GET]
dokumen -> dokumen_user : /detail-dokumen/{reqId} [GET]
dokumen_user -> dokumen_user
note left
admin check data user
dengan
dokumen pendukung
end note
alt data tidak sesuai
dokumen_user -> module_verifikasi : send status reject request
module_verifikasi -> dokumen_entity : to model dokumen pendaftaran
module_verifikasi -> db : <<update status pendaftaran>>
db -> tb_pendaftaran : update
db -> module_verifikasi : return data
module_verifikasi -> dokumen : return response and send notif "pengajuan ditolak karna data tidak sesuai" to user
note left
send notif
to
whatsapp or dashboard user
end note
end
dokumen_user -> module_verifikasi : send status approved request
module_verifikasi -> dokumen_entity : to model dokumen pendaftaran
module_verifikasi -> arsip : to model arsip
module_verifikasi -> mutasi : to model mutasi
module_verifikasi -> db : <<update status pendaftaran>>
db -> tb_pendaftaran : update
module_verifikasi -> db : <<insert arsip balik nama>>
db -> tb_arsip_balik_nama : insert
module_verifikasi -> db : <<insert mutasi user>>
db -> tb_mutasi : insert
db -> module_verifikasi : return data
module_verifikasi -> dokumen_user : return response success and send notif "pengajuan diterima" to user
note left
send notif
to
whatsapp or dashboard user
end note
@enduml
```