Initial commit: Financial Crime domain exemplar
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
# Temenos Payment
|
||||
|
||||
Temenos Payment is the operational source for payment initiation and execution records. It emits high-volume transaction changes used for financial crime monitoring and downstream payment analytics.
|
||||
|
||||
## Metadata
|
||||
|
||||
```yaml
|
||||
id: temenos-payment
|
||||
owner: payments.platform@bank.com
|
||||
steward: data.governance@bank.com
|
||||
|
||||
change_model: real-time-cdc
|
||||
change_events:
|
||||
- Payment Initiated
|
||||
- Payment Executed
|
||||
- Payment Reversed
|
||||
- Payment Rejected
|
||||
|
||||
update_frequency: real-time
|
||||
data_quality_tier: 1
|
||||
status: Production
|
||||
version: "1.0.0"
|
||||
|
||||
tags:
|
||||
- Payments
|
||||
- Core Banking
|
||||
- Financial Crime
|
||||
```
|
||||
|
||||
## [Financial Crime](../../domain.md) Feeds
|
||||
|
||||
Canonical Entity | Transform File | Attributes Contributed | Change Model
|
||||
--- | --- | --- | ---
|
||||
[Transaction](../../entities/transaction.md#transaction) | [table_payment_event](transforms/table_payment_event.md) | Transaction Identifier, Amount, Currency, Execution Timestamp, Status | real-time-cdc
|
||||
[Account](../../entities/account.md#account) | [table_account_ref](transforms/table_account_ref.md) | Account Identifier, Account Status, Product Identifier | real-time-cdc
|
||||
[Payment Initiator](../../entities/payment_initiator.md#payment-initiator) | [table_initiation](transforms/table_initiation.md) | Initiator Role Identifier, Initiation Channel | event-driven
|
||||
[Payer](../../entities/payer.md#payer) | [table_payment_parties](transforms/table_payment_parties.md) | Payer Role Identifier | event-driven
|
||||
[Payee](../../entities/payee.md#payee) | [table_payment_parties](transforms/table_payment_parties.md) | Payee Role Identifier | event-driven
|
||||
@@ -0,0 +1,25 @@
|
||||
# [Temenos Payment](../source.md)
|
||||
|
||||
## AccountRef
|
||||
|
||||
Pos | Column Name | Data Type | Max Len | Precision | Scale | Nulls | Comment | Destination
|
||||
--- | --- | --- | --- | --- | --- | --- | --- | ---
|
||||
1 | AccountNumber | Text | 34 | | | no | Account reference number | Account.Account Identifier
|
||||
2 | AccountState | Text | 20 | | | yes | Lifecycle/account servicing state | [Map Account Status](#map-account-status)
|
||||
3 | ProductCode | Text | 30 | | | yes | Linked product code | Account.Product Identifier
|
||||
|
||||
### Map Account Status
|
||||
|
||||
Maps account servicing status from Temenos account state.
|
||||
|
||||
```yaml
|
||||
type: conditional
|
||||
target: Account · Account Status
|
||||
source:
|
||||
field: AccountRef.AccountState
|
||||
cases:
|
||||
Active: "AccountState == 'ACTIVE'"
|
||||
Frozen: "AccountState == 'FROZEN'"
|
||||
Closed: "AccountState == 'CLOSED'"
|
||||
fallback: Active
|
||||
```
|
||||
@@ -0,0 +1,25 @@
|
||||
# [Temenos Payment](../source.md)
|
||||
|
||||
## Initiation
|
||||
|
||||
Pos | Column Name | Data Type | Max Len | Precision | Scale | Nulls | Comment | Destination
|
||||
--- | --- | --- | --- | --- | --- | --- | --- | ---
|
||||
1 | ActorRoleId | Text | 64 | | | no | Role identifier that initiated payment | Payment Initiator.Initiator Role Identifier
|
||||
2 | ChannelCode | Text | 20 | | | yes | Channel where initiation occurred | [Map Initiation Channel](#map-initiation-channel)
|
||||
|
||||
### Map Initiation Channel
|
||||
|
||||
Maps channel used to initiate payment to canonical channel.
|
||||
|
||||
```yaml
|
||||
type: conditional
|
||||
target: Payment Initiator · Initiation Channel
|
||||
source:
|
||||
field: Initiation.ChannelCode
|
||||
cases:
|
||||
Branch: "ChannelCode == 'BRANCH'"
|
||||
Mobile: "ChannelCode == 'MOBILE'"
|
||||
Internet Banking: "ChannelCode == 'ONLINE'"
|
||||
API: "ChannelCode == 'API'"
|
||||
fallback: API
|
||||
```
|
||||
@@ -0,0 +1,28 @@
|
||||
# [Temenos Payment](../source.md)
|
||||
|
||||
## PaymentEvent
|
||||
|
||||
Pos | Column Name | Data Type | Max Len | Precision | Scale | Nulls | Comment | Destination
|
||||
--- | --- | --- | --- | --- | --- | --- | --- | ---
|
||||
1 | PaymentId | Text | 64 | | | no | Unique payment event identifier | Transaction.Transaction Identifier
|
||||
2 | SettlementAmount | Decimal | | 18 | 4 | no | Settled payment amount | Transaction.Amount
|
||||
3 | SettlementCurrency | Text | 3 | | | no | ISO currency code | Transaction.Currency
|
||||
4 | ExecutionDateTime | DateTime | | | | yes | Timestamp at execution | Transaction.Execution Timestamp
|
||||
5 | PaymentStatus | Text | 20 | | | yes | Payment lifecycle status | [Map Status](#map-status)
|
||||
|
||||
### Map Status
|
||||
|
||||
Maps payment state into canonical transaction status.
|
||||
|
||||
```yaml
|
||||
type: conditional
|
||||
target: Transaction · Status
|
||||
source:
|
||||
field: PaymentEvent.PaymentStatus
|
||||
cases:
|
||||
Pending: "PaymentStatus == 'PENDING'"
|
||||
Completed: "PaymentStatus == 'EXECUTED'"
|
||||
Reversed: "PaymentStatus == 'REVERSED'"
|
||||
Rejected: "PaymentStatus == 'REJECTED'"
|
||||
fallback: Pending
|
||||
```
|
||||
@@ -0,0 +1,8 @@
|
||||
# [Temenos Payment](../source.md)
|
||||
|
||||
## PaymentParties
|
||||
|
||||
Pos | Column Name | Data Type | Max Len | Precision | Scale | Nulls | Comment | Destination
|
||||
--- | --- | --- | --- | --- | --- | --- | --- | ---
|
||||
1 | DebtorRoleId | Text | 64 | | | no | Debtor role identifier in payment context | Payer.Payer Role Identifier
|
||||
2 | CreditorRoleId | Text | 64 | | | no | Creditor role identifier in payment context | Payee.Payee Role Identifier
|
||||
Reference in New Issue
Block a user