Lewati ke konten utama

Core API (merchant_core_api)

Port: 8080 | DB: db_kesles_merchant (IS core DB permanen) | Status: LIVE

Overview

Monolith Go yang menjadi "core-service" permanen. Tidak ada extraction terpisahdb_kesles_merchant adalah core DB final. Service ini bertanggung jawab atas merchant profile, registration, terminal management, dan PSP merchant lookup.

Domain yang Dikelola

  • Merchant profile & registration lifecycle
  • PSP merchant lookup (internal endpoints untuk payment-service + dashboard_api)
  • Terminal/device management
  • Fraud signal collection + behavioral baseline + ML feature vector (fraud.* schema)

Domain yang sudah diekstrak (tidak ada di core_api lagi):

  • Auth/KYC/IAM → auth_service (port 8081, mig 057 done 2026-05-30)
  • Sales orders → order_service (port 8083)
  • Partner referral → partner_service (port 8086, mig 071 done 2026-06-03)

New Internal Endpoints (Phase 3)

8 endpoint PSP merchant lookup (menggantikan psp.v_active_merchants view):

GET /internal/psp/merchants — list + filter
GET /internal/psp/merchants/search — search by phone/email/nmid
GET /internal/psp/merchants/by-nmid/{nmid} — resolve PSP webhook Flow A
GET /internal/psp/merchants/by-mid/{mid}
GET /internal/psp/merchants/by-code/{code}
GET /internal/psp/merchants/{id}
GET /internal/psp/merchants/{id}/devices
GET /internal/psp/merchant-devices/by-serial/{sn}

Juga:

  • GET /internal/merchants/by-nmid?nmid=X — dipakai payment-service
  • GET /internal/merchants/{id}/outlets — outlets + nmid/mid per-outlet; dipakai integration_api (PSP tester pilih outlet Default/Cabang)
  • GET /internal/users/{id}/active-merchant — resolve merchant dari JWT subject
  • POST /internal/merchant/status — dipakai payment-service saat nmid-status-changed

Deployment

  • Folder: merchant_core_api/
  • Binary: core-api
  • Systemd alias: core-api.service