Validate · Enforce · Trust

Authorization Requirements v2.13 min read

This page defines the required error handling behaviour when the consent authorization fails after the end user has been authenticated. The LFI MUST invoke POST /auth/{interactionId}/doFail with the exact error and error_description values specified below.

For all authorization failure scenarios, the LFI MUST PATCH the consent to Rejected before calling doFail — the end user has been identified during the authentication step. For the full doFail API specification, see the POST /auth/{interactionId}/doFail API Reference.

01 Section

Error scenarios

1. End user explicitly cancels or declines the consent

The end user reviews the consent details and chooses to decline or cancel the authorization.

Field
Value
error
access_denied
error_description
user_rejected_consent

2. End user lacks eligible accounts or access

The end user does not have any accounts or sufficient access rights to authorize the consent. For example:

  • The end user has no eligible accounts for the requested consent type
  • The end user's accounts do not support the requested payment rail or currency
  • The consent has IsSingleAuthorization set to true but the end user does not have sufficient authority to authorize the payment independently — for example, where the payment would require an additional approver (subsequent authorizer)

Field
Value
error
invalid_request
error_description
user_lacks_eligible_accounts

3. Consent type not supported by LFI

Use POST /consent/action/validate instead
This scenario SHOULD NOT occur in steady state. LFIs SHOULD implement the POST /consent/action/validate endpoint to reject unsupported consents at creation time — before the end user is redirected to the LFI. If this error is reported persistently or frequently, Nebras may require the LFI to implement the POST /consent/action/validate endpoint.

The LFI does not support the consent type or configuration requested by the TPP.

Field
Value
error
access_denied
error_description
consent_not_supported

4. End user session expires

Session timeout guidance
LFIs MUST ensure that session timeouts are not so short that they create an obstacle to an end user completing authentication and authorization. The introduction of payment step-up authentication enables LFIs to implement session management in a way that balances security with usability.

The end user's session with the LFI expires before they complete the authorization of the consent.

Field
Value
error
access_denied
error_description
session_expired

5. LFI internal technical error

The LFI encounters an internal technical error during the authorization process — for example, an internal service failure or inability to retrieve account data.

Field
Value
error
server_error
error_description
lfi_internal_error

6. LFI fails to communicate with API Hub

The LFI cannot communicate with the API Hub during the authorization process — for example, a failure when calling PATCH /consents/{consentId} to update the consent status.

Field
Value
error
server_error
error_description
api_hub_communication_error

The LFI MUST attempt to PATCH the consent to Rejected before calling doFail, but if the API Hub is unreachable, the LFI MUST still call doFail to redirect the end user back to the TPP.

7. LFI temporarily unavailable

The LFI cannot complete authorization due to high load or temporary capacity constraints at the LFI's systems.

Field
Value
error
temporarily_unavailable
error_description
lfi_temporarily_unavailable

The LFI MUST PATCH the consent to Rejected before calling doFail — the end user has been identified during the authentication step.

02 Section

Summary

FAPI error code validation
If the LFI submits an error code that is not supported by the FAPI 2.0 Security Profile, the API Hub will overwrite it with invalid_request.
#
Scenario
`error`
`error_description`
1
End user explicitly cancels or declines the consent
access_denied
user_rejected_consent
2
End user lacks eligible accounts or access
invalid_request
user_lacks_eligible_accounts
3
Consent type not supported by LFI
access_denied
consent_not_supported
4
End user session expires
access_denied
session_expired
5
LFI internal technical error
server_error
lfi_internal_error
6
LFI fails to communicate with API Hub
server_error
api_hub_communication_error
7
LFI temporarily unavailable
temporarily_unavailable
lfi_temporarily_unavailable

For all scenarios above, the LFI MUST PATCH the consent to Rejected before calling doFail, except scenario 6 where the API Hub may be unreachable — in which case the LFI MUST make a best-effort attempt.