Skip to content

Authorization

PSD2 allows a range of SCA approaches. rebel exclusively supports the scaOAuth SCA approach.

OAuth: Proof Key for Code Exchange (PKCE)

Please consult PKCE - RFC 7636 for an in-depth explanation of OAuth 2.0. If you create a new rebel consent, as a service consumer you receive an scaOAuth with a href inside. The OAuth 2.0 Authorization Server Metadata RFC8414 endpoint should be specified in this href, so the service consumer is able to construct the proper /authorize URL.

The data owner should be redirected to this URL, complete the OAuth flow, and the service consumer can use the obtained authorization_grant to exchange it for valid tokens, attached to the rebel consent.

If your consent is valid, these tokens can be used to access data from the data owner.

Additional authorization flows

You might also choose to implement additional authorization steps using rebel. For example, if your consent involves manual steps or paperwork, you might use a simple redirect flow and guide the data owner to the necessary steps to complete the setup. The consent stays in the consentStatus partiallyAuthorised during that time, and calls to the API might be answered by HTTP 401 and code CONSENT_INVALID.

You can use rebelConsentConfiguration in _links to guide your users to the incomplete consent.