SAP FSCM Credit Management Analytics data model
Kimball warehouse for SAP FSCM Credit Management: a periodic exposure-snapshot fact (UKM_ITEM aggregated per business partner, credit segment, and snapshot date) carrying credit limit, exposure liability categories, available credit, utilization percentage, overdue amount, and credit score for utilization-vs-limit and overdue trending; plus an event-grain credit-decision fact for individual credit checks and blocked/released documents with degenerate sales-document and credit-check identifiers. Conformed dimensions include an SCD2 business partner (UKMBP_CMS) preserving as-was risk class and credit group, credit segment, credit control area, risk class (UKM_LIMIT_RULES), company code, and date.
SAP Financial Supply Chain Management Credit Management (FIN-FSCM-CR) analytics migrated from S/4HANA / FSCM into Snowflake. Credit master data lives on the business partner (UKMBP_CMS, UKMBP_CMS_SGM) and credit exposure line items in UKM_ITEM — the modern source that replaced the legacy SD info structures S066/S067. Models a periodic exposure-snapshot fact at business partner × credit segment × snapshot date grain for utilization-vs-limit, overdue, and risk-class distribution reporting, plus an event-grain credit-decision fact for credit checks and blocked/released documents, over conformed business partner (SCD2), credit segment, credit control area, risk class, company code, and date dimensions. It is a Kimball dimensional model: fact tables at a declared grain surrounded by conformed dimensions, ready for BI tools and a semantic layer.
- 8
- tables
- 80
- columns
- 11
- relationships
- 2
- PII columns
Opening the template creates a project with the ERD, platform-native DDL, a dbt project and documentation already generated (recommended platform: Snowflake). Edit it in plain English or on the canvas, then ship it to any supported warehouse.
Subject areas
Design decisions
Periodic exposure-snapshot fact at partner × segment × date grain
FSCM tracks credit exposure as UKM_ITEM liability categories that change continuously; a periodic snapshot aggregating UKM_ITEM per business partner and credit segment each snapshot date gives stable, semi-additive balances for utilization-vs-limit, available-credit, and overdue trending without re-deriving exposure from transactions.
Separate event-grain credit-decision fact
Credit checks and blocked/released documents are discrete events with their own measures (document value, exposure/limit/available at check) and a different grain than the daily balance snapshot; a transaction fact with degenerate sales-document and credit-check identifiers keeps blocked-order and decision analysis clean and additive.
SCD2 business partner for as-was risk class and credit group
FSCM credit master attributes (risk class, credit group, credit limits) are re-rated over time; type-2 history on the business partner preserves the as-was risk-class and group assignment required for comparable, SOX-auditable credit-risk trend reporting.
Dedicated risk-class and credit-segment dimensions
Risk-class score bands (UKM_LIMIT_RULES) and credit segments (UKMBP_CMS_SGM) are reused conformed across both facts; modelling them as their own dimensions enables risk-class distribution and per-segment limit reporting without duplicating score-band logic.
UKM_ITEM as the exposure source over legacy S066/S067
FSCM consolidates credit exposure into UKM_ITEM, superseding the legacy SD info structures S066/S067; sourcing the snapshot from UKM_ITEM captures all liability categories (open order, delivery, billing, receivable) in one consistent, segment-aware exposure model.
Tables in the SAP FSCM Credit Management Analytics model
Every table with its grain, columns, types and keys. PK marks a primary key, BK a business key and PII a column classified as personal data, which gets a masking strategy by default.
Fact tables (2)
fct_credit_exposure_snapshot
Grain: one row per business partner per credit segment per snapshot date (UKM_ITEM aggregated)
Periodic snapshot fact — UKM_ITEM exposure aggregated for utilization-vs-limit trending.
| Column | Type | Keys |
|---|---|---|
| credit_exposure_key | bigint | PK |
| snapshot_date_key | bigint | |
| business_partner_key | bigint | |
| credit_segment_key | bigint | |
| credit_control_area_key | bigint | |
| risk_class_key | bigint | |
| company_code_key | bigint | |
| credit_limit | decimal | |
| total_exposure | decimal | |
| open_order_exposure | decimal | |
| open_delivery_exposure | decimal | |
| open_billing_exposure | decimal | |
| open_receivable_exposure | decimal | |
| available_credit | decimal | |
| exposure_utilization_pct | decimal | |
| overdue_amount | decimal | |
| oldest_open_item_days | integer | |
| credit_score | integer | |
| currency | varchar | |
| is_over_limit | boolean | |
| is_blocked | boolean | |
| is_payment_block | boolean |
fct_credit_decision
Grain: one row per FSCM credit check / blocked-document event
Event-grain fact — individual credit checks and blocked/released documents.
| Column | Type | Keys |
|---|---|---|
| credit_decision_key | bigint | PK |
| decision_date_key | bigint | |
| business_partner_key | bigint | |
| credit_segment_key | bigint | |
| risk_class_key | bigint | |
| company_code_key | bigint | |
| sales_document | varchar | |
| credit_check_id | varchar | |
| document_value | decimal | |
| exposure_at_check | decimal | |
| limit_at_check | decimal | |
| available_at_check | decimal | |
| currency | varchar | |
| check_result | varchar | |
| block_reason | varchar | |
| check_type | varchar | |
| released_by | varchar | PII |
| is_auto_released | boolean |
Dimension tables (6)
dim_date
Grain: one row per calendar day
| Column | Type | Keys |
|---|---|---|
| date_key | bigint | PK |
| full_date | date | BK |
| day_of_month | smallint | |
| month_number | smallint | |
| month_name | varchar | |
| quarter | smallint | |
| year | smallint | |
| is_period_end | boolean |
dim_business_partner
Grain: one row per business partner per SCD2 version (FSCM credit account UKMBP_CMS)
SCD type 2
| Column | Type | Keys |
|---|---|---|
| business_partner_key | bigint | PK |
| partner_number | varchar | BK |
| partner_name | varchar | PII |
| country | varchar | |
| region | varchar | |
| industry | varchar | |
| customer_group | varchar | |
| credit_group | varchar | |
| is_active | boolean |
dim_credit_segment
Grain: one row per FSCM credit segment (UKM_ITEM segment / UKMBP_CMS_SGM)
| Column | Type | Keys |
|---|---|---|
| credit_segment_key | bigint | PK |
| credit_segment | varchar | BK |
| description | varchar | |
| segment_currency | varchar | |
| default_credit_limit | decimal | |
| is_default_segment | boolean |
dim_credit_control_area
Grain: one row per credit control area mapped to FSCM credit segments
| Column | Type | Keys |
|---|---|---|
| credit_control_area_key | bigint | PK |
| credit_control_area | varchar | BK |
| description | varchar | |
| currency | varchar | |
| risk_category | varchar |
dim_risk_class
Grain: one row per FSCM credit risk class / score band (UKM_LIMIT_RULES)
| Column | Type | Keys |
|---|---|---|
| risk_class_key | bigint | PK |
| risk_class | varchar | BK |
| description | varchar | |
| score_range_low | smallint | |
| score_range_high | smallint | |
| check_rule | varchar | |
| is_high_risk | boolean |
dim_company_code
Grain: one row per SAP company code
| Column | Type | Keys |
|---|---|---|
| company_code_key | bigint | PK |
| company_code | varchar | BK |
| company_name | varchar | |
| country | varchar | |
| currency | varchar |
Relationships
Each relationship is a foreign key on the first table referencing the second.
- fct_credit_exposure_snapshot.snapshot_date_key → dim_date (many-to-one)
- fct_credit_exposure_snapshot.business_partner_key → dim_business_partner (many-to-one)
- fct_credit_exposure_snapshot.credit_segment_key → dim_credit_segment (many-to-one)
- fct_credit_exposure_snapshot.credit_control_area_key → dim_credit_control_area (many-to-one)
- fct_credit_exposure_snapshot.risk_class_key → dim_risk_class (many-to-one)
- fct_credit_exposure_snapshot.company_code_key → dim_company_code (many-to-one)
- fct_credit_decision.decision_date_key → dim_date (many-to-one)
- fct_credit_decision.business_partner_key → dim_business_partner (many-to-one)
- fct_credit_decision.credit_segment_key → dim_credit_segment (many-to-one)
- fct_credit_decision.risk_class_key → dim_risk_class (many-to-one)
- fct_credit_decision.company_code_key → dim_company_code (many-to-one)
Related templates
All templates →From requirements to AI-ready context, in one platform.
Describe your business in a conversation, start from a template or connect your own database. Your first model is ready in minutes.
