Skip to content

Commit cef4a4c

Browse files
docfix/Add various Berlin Group related props into Glossary
1 parent f8dd979 commit cef4a4c

1 file changed

Lines changed: 152 additions & 0 deletions

File tree

obp-api/src/main/scala/code/api/util/Glossary.scala

Lines changed: 152 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3165,6 +3165,158 @@ object Glossary extends MdcLoggable {
31653165
""")
31663166

31673167

3168+
glossaryItems += GlossaryItem(
3169+
title = "Berlin Group Transaction and Consent Lifecycle",
3170+
description =
3171+
s"""
3172+
|OBP provides background schedulers that automatically manage the lifecycle of Berlin Group transactions and consents.
3173+
|
3174+
|## Outdated Transactions
3175+
|
3176+
|Berlin Group payment transactions with status "received" (RCVD) that remain unprocessed beyond a configured time threshold are automatically rejected by a background scheduler task.
3177+
|
3178+
|* `berlin_group_outdated_transactions_time_in_seconds` - Time in seconds after which a "received" transaction is considered outdated. Default: **300** (5 minutes).
3179+
|* `berlin_group_outdated_transactions_interval_in_seconds` - How often (in seconds) the scheduler checks for outdated transactions. Must be set to a value greater than 0 to enable the task. **Not set by default** (task is disabled).
3180+
|
3181+
|Example:
3182+
|
3183+
| # Reject transactions stuck in "received" status for more than 5 minutes, checking every 60 seconds
3184+
| berlin_group_outdated_transactions_time_in_seconds = 300
3185+
| berlin_group_outdated_transactions_interval_in_seconds = 60
3186+
|
3187+
|## Outdated Consents
3188+
|
3189+
|Berlin Group consents with status "received" that remain unfinished (e.g. the PSU never completed the SCA flow) beyond a configured time threshold are automatically rejected.
3190+
|
3191+
|* `berlin_group_outdated_consents_time_in_seconds` - Time in seconds after which an unfinished consent is considered outdated. Default: **300** (5 minutes).
3192+
|* `berlin_group_outdated_consents_interval_in_seconds` - How often (in seconds) the scheduler checks for outdated consents. Must be set to a value greater than 0 to enable the task. **Not set by default** (task is disabled).
3193+
|
3194+
|Example:
3195+
|
3196+
| # Reject consents stuck in "received" status for more than 5 minutes, checking every 60 seconds
3197+
| berlin_group_outdated_consents_time_in_seconds = 300
3198+
| berlin_group_outdated_consents_interval_in_seconds = 60
3199+
|
3200+
|## Expired Consents
3201+
|
3202+
|Berlin Group consents with status "valid" whose `validUntil` date has passed are automatically transitioned to "expired" status.
3203+
|
3204+
|* `berlin_group_expired_consents_interval_in_seconds` - How often (in seconds) the scheduler checks for expired consents. Must be set to a value greater than 0 to enable the task. **Not set by default** (task is disabled).
3205+
|
3206+
|Example:
3207+
|
3208+
| # Check for expired consents every 120 seconds
3209+
| berlin_group_expired_consents_interval_in_seconds = 120
3210+
|
3211+
""")
3212+
3213+
3214+
glossaryItems += GlossaryItem(
3215+
title = "Berlin Group URL and Path Configuration",
3216+
description =
3217+
s"""
3218+
|OBP allows customization of the URL paths used for Berlin Group (NextGenPSD2) API endpoints.
3219+
|
3220+
|## Canonical Path
3221+
|
3222+
|* `berlin_group_version_1_canonical_path` - Overrides the version segment of the Berlin Group v1 URL path. By default, the built-in path is `v1.3` (i.e. endpoints are served at `/berlin-group/v1.3/...`). Setting this property changes the version segment.
3223+
|
3224+
|Example:
3225+
|
3226+
| # Serve Berlin Group endpoints at /berlin-group/v1.3.12/...
3227+
| berlin_group_version_1_canonical_path = v1.3.12
3228+
|
3229+
|## Alias Path
3230+
|
3231+
|* `berlin_group_v1_3_alias_path` - Defines an alternative URL prefix under which Berlin Group v1.3 endpoints are also available. The format must be `xxx/yyy`. When set, all Berlin Group v1.3 endpoints are duplicated under this alternative path.
3232+
|
3233+
|Example:
3234+
|
3235+
| # Also serve Berlin Group endpoints at /0.6/v1/...
3236+
| berlin_group_v1_3_alias_path = 0.6/v1
3237+
|
3238+
""")
3239+
3240+
3241+
glossaryItems += GlossaryItem(
3242+
title = "Berlin Group Response Formatting",
3243+
description =
3244+
s"""
3245+
|OBP provides several configuration options to control how Berlin Group API responses are formatted.
3246+
|
3247+
|## Account Name Visibility
3248+
|
3249+
|* `BG_v1312_show_account_name` - Boolean flag that controls whether the `name` field is included in Berlin Group account responses (at `/berlin-group/v1.3/accounts` and `/berlin-group/v1.3/accounts/{accountId}`). Default: **true**.
3250+
|
3251+
|Some implementations may require omitting the account name for privacy or compliance reasons.
3252+
|
3253+
|Example:
3254+
|
3255+
| # Hide account names in Berlin Group responses
3256+
| BG_v1312_show_account_name = false
3257+
|
3258+
|## Amount Sign Removal
3259+
|
3260+
|* `BG_remove_sign_of_amounts` - Boolean flag that controls whether the sign (positive/negative indicator) is removed from transaction amount values in Berlin Group responses. Default: **false**.
3261+
|
3262+
|When enabled, amounts such as "-100.00" are returned as "100.00". This can be useful when the sign is conveyed by other means (e.g. booked vs pending lists, or credit/debit indicators).
3263+
|
3264+
|Example:
3265+
|
3266+
| # Remove the sign from transaction amounts
3267+
| BG_remove_sign_of_amounts = true
3268+
|
3269+
|## Error Message Path Visibility
3270+
|
3271+
|* `berlin_group_error_message_show_path` - Boolean flag that controls whether the request URL path is included in Berlin Group error response messages. Default: **true**.
3272+
|
3273+
|When enabled, error responses include the `path` field showing which URL triggered the error. This can be disabled for privacy or security reasons.
3274+
|
3275+
|Example:
3276+
|
3277+
| # Hide the request path in error messages
3278+
| berlin_group_error_message_show_path = false
3279+
|
3280+
""")
3281+
3282+
3283+
glossaryItems += GlossaryItem(
3284+
title = "Berlin Group Consent Settings",
3285+
description =
3286+
s"""
3287+
|OBP provides configuration options for Berlin Group consent creation and SCA (Strong Customer Authentication) flows.
3288+
|
3289+
|## Frequency Per Day Limit
3290+
|
3291+
|* `berlin_group_frequency_per_day_upper_limit` - Maximum allowed value for the `frequencyPerDay` field when creating a Berlin Group consent. Default: **4**.
3292+
|
3293+
|When a TPP creates a consent, the requested `frequencyPerDay` must be greater than 0 and less than or equal to this upper limit. For one-off access consents, the frequency must be exactly 1.
3294+
|
3295+
|Example:
3296+
|
3297+
| # Allow up to 10 requests per day per consent
3298+
| berlin_group_frequency_per_day_upper_limit = 10
3299+
|
3300+
|## ASPSP SCA Approach
3301+
|
3302+
|* `berlin_group_aspsp_sca_approach` - Defines the SCA approach advertised by the ASPSP (Account Servicing Payment Service Provider) in the `ASPSP-SCA-Approach` response header for consent creation endpoints. Default: **redirect**.
3303+
|
3304+
|Possible values include:
3305+
|
3306+
|* `redirect` - The PSU is redirected to the ASPSP for authentication
3307+
|* `embedded` - Authentication is performed within the TPP interface
3308+
|* `decoupled` - Authentication is performed on a separate device/channel
3309+
|
3310+
|This header is returned in the response to POST `/consents` requests to inform the TPP which SCA method the ASPSP supports.
3311+
|
3312+
|Example:
3313+
|
3314+
| # Use embedded SCA approach
3315+
| berlin_group_aspsp_sca_approach = embedded
3316+
|
3317+
""")
3318+
3319+
31683320
glossaryItems += GlossaryItem(
31693321
title = "API Collection",
31703322
description = s"""An API Collection is a collection of endpoints grouped together for a certain purpose.

0 commit comments

Comments
 (0)