list of Kafka schemas: https://github.com/SafiBank/SaFiMono/tree/main/common/schema/schemas/customers
note: mentioned producers/consumers belong to Customers' domain only
- Snapshots
- Events
- Commands
- ComapreOnboardingLivenessAgainstIdCard
- FetchAndStoreCallResult
- FetchAndStoreCustomerRiskWorkflowStatus
- RerunCustomerRiskWorkflow
- InitiateOSPReconciliation
- InitiateVKYCReconciliation
- InitiateUnfinishedCustomerOnboardings
- InvalidateUnfinishedOnboardings
- OnboardCustomer
- SendOtp
- PerformIdCardForgeryDetection
- ApplyDataChangesAfterCoolOffPeriod
- ApplyCustomerPhoneNumberChange
- ApplyCustomerEmailChange
Snapshots
CustomerDeduplicationSnapshot
topic: customers.customer-deduplication.snapshot.v1
trigger: deduplication engine computation finished (after customer application is submitted)
producer: customer-manager
CustomerLocation
topic: customers.customer-location.snapshot.v1
trigger: customer’s GPS location submitted
producer: customer-manager
CustomerSnapshot
topic: customers.customer.snapshot.v1
trigger: customer metadata changed, customer profile changed, residential address changed, preferences changed, additional information (KYC survey) changed
producer: customer-manager
CustomerSnapshot V2
topic: customers.customer.snapshot.v2
schema: CustomerSnapshotV2.avsc
trigger: customer metadata changed, customer profile changed, residential address changed, preferences changed, additional information (KYC survey) changed
producer: customer-manager
DeviceFingerprintSnapshot
topic: customers.device-fingerprint.snapshot.v1
trigger: customer’s device fingerprint is submitted
producer: customer-manager
FacialVerificationSnapshot
topic: customers.facial-verification.snapshot.v1
trigger: customer’s liveness result is submitted, customer’s face comparison against ID card finished, customer’s step-up authorization using face verification finished
producer: customer-manager
IdCardSnapshot
topic: customers.id-card.snapshot.v1
schema: https://github.com/SafiBank/SaFiMono/blob/main/common/schema/schemas/customers/IdCardSnapshotV1.avsc
trigger: customer’s ID card scans submitted, customer’s ID card forgery finished
producer: customer-manager
OspWorkflowSnapshot
topic: customers.osp-workflow.snapshot.v1
trigger: AdvanceAI OSP workflow processing finished
producer: customer-manager
Events
CustomerOnboarded
topic: customers.customer-onboarded.event.v1
trigger: customer’s onboarding finished
producer: customer-manager
CustomerStatusUpdated
topic: customers.customer-status_updated.event.v1
trigger: customer status updated
producer: customer-manager
CustomerStatusUpdated V2
topic: customers.customer-status_updated.event.v2
schema: CustomerStatusUpdatedEventV2.avsc
trigger: customer status updated
producer: customer-manager
CustomerAddressUpdated
topic: customers.customer-address-updated.event.v1
trigger: customer address updated
producer: customer-manager
CustomerProfileUpdated
topic: customers.customer-profile-updated.event.v1
trigger: customer profile updated (first name, middle name, last name, gender, date of birth, place of birth, nationality)
producer: customer-manager
PushNotificationAplicationResolved
topic: customers.push-notification-application-resolved.event.v1
trigger: AdvanceAI OSP Workflow response with ACCEPT result, AdvanceAI VKYC response with ACCEPT result
producer: customer-manager
consumer: SaFi app
PushNotificationVideoKYCAgentCallRequested
topic: customers.push-notification-vkyc-agent-call-requested.event.v1
trigger: VKYC agent initiated the call
producer: customer-manager
consumer: SaFi app
VideoKYCAgentCallRequested
topic: customers.vkyc-agent-call-requested.event.v1
trigger: AdvanceAI scheduled call initiated by VKYC agent
producer: advanceai-gateway
consumer: customer-manager
VideoKYCAgentCallExpired
topic: customers.vkyc-call-expired.event.v1
trigger: AdvanceAI scheduled activity (every PH midnight)
producer: advanceai-gateway
consumer: no consumer at all
VideoKYCAgentCallFinished
topic: customers.vkyc-call-finished.event.v1
trigger: AdvanceAI (un)scheduled call finished by VKYC agent
producer: advanceai-gateway
consumer: customer-manager
WorkflowCallbackReceived
topic: customers.workflow-callback-received.event.v1
trigger: AdvanceAI OSP workflow callback (update) received
producer: advanceai-gateway
consumer: customer-manager
Commands
ComapreOnboardingLivenessAgainstIdCard
topic: customers.compare-onboarding-liveness-against-idcard.command.v1
trigger: customer’s liveness result is submitted
producer: customer-manager
consumer: customer-manager
FetchAndStoreCallResult
topic: customers.fetch-and-store-call-result.command.v1
trigger: found unfinished AdvanceAI VKYC calls
producer: customer-manager
consumer: customer-manager
FetchAndStoreCustomerRiskWorkflowStatus
topic: customers.fetch-and-store-customer-risk-workflow-status.command.v1
trigger: found unfinished AdvanceAI OSP workflows
producer: customer-manager
consumer: customer-manager
RerunCustomerRiskWorkflow
topic: customers.rerun-customer-risk-workflow.command.v1
trigger: found unfinished AdvanceAI OSP workflows
producer: customer-manager
consumer: customer-manager
InitiateOSPReconciliation
topic: customers.initiate-osp-reconciliation.command.v1
trigger: scheduled activity (every 30 minutes)
producer: customer-manager
consumer: customer-manager
InitiateVKYCReconciliation
topic: customers.initiate-vkyc-reconciliation.command.v1
trigger: scheduled activity (every 30 minutes)
producer: customer-manager
consumer: customer-manager
InitiateUnfinishedCustomerOnboardings
topic: customers.invalidate-unfinished-onboardings.command.v1
trigger: scheduled activity (every UTC midnight)
producer: customer-manager
consumer: customer-manager
InvalidateUnfinishedOnboardings
topic: customers.invalidate-unfinished-customer-onboarding.command.v1
trigger: found customers in prospect status
producer: customer-manager
consumer: customer-manager
OnboardCustomer
topic: customers.onboard-customer.command.v1
trigger: AdvanceAI OSP Workflow response with ACCEPT result, AdvanceAI VKYC response with ACCEPT result
producer: customer-manager
consumer: customer-manager
SendOtp
topic: customers.send-otp.command.v1
schema: https://github.com/SafiBank/SaFiMono/blob/main/common/schema/schemas/customers/SendOtpCommandV1.avsc
trigger: customer requests sending otp or resending top
producer: customer-manager
consumer: customer-manager
PerformIdCardForgeryDetection
topic: customers.perform-idcard-forgery-detection.command.v1
trigger: customer’s ID card scans submitted
producer: customer-manager
consumer: customer-manager
ApplyDataChangesAfterCoolOffPeriod
topic: customers.apply-data-changes-after-cool-off-period.command.v1
schema: ApplyDataChangesAfterCoolOffPeriodCommandV1.avsc
trigger: scheduled activity (every 30 minutes)
producer: customer-manager
consumer: customer-manager
ApplyCustomerPhoneNumberChange
topic: customers.apply-customer-phone-number-change.command.v1
schema: ApplyCustomerPhoneNumberChangeCommandV1.avsc
trigger: Found phone number change requests in PENDING state after cooling off period
producer: customer-manager
consumer: customer-manager
ApplyCustomerEmailChange
topic: customers.apply-customer-email-change.command.v1
schema: ApplyCustomerEmailChangeCommandV1.avsc
trigger: Found email change requests in PENDING state after cooling off period
producer: customer-manager
consumer: customer-manager