Salt Edge PSD2 Compliance Logo

OB

Consents

Create a new payment consent.

CURL

Example of request parameters

Request

POST https://your.connector.url/api/priora/ob/v1/payment_consents

Headers
Unpacked Request Authorization
Response headers
Response

Upon successful request, 200 status code should be returned.


Related Errors

Funds Confirmation

Checks whether a specific amount is available at point of time of the request on an account addressed by IBAN or other available identifiers.

CURL

curl -i  \ 
 -H "Authorization: Authorization" \ 
 -H "Access-Token: Access-Token" \ 
 -H "Accept: application/json" \ 
 -H "Content-Type: application/json" \ 
 -H "Client-Id: 123" \ 
 -X GET "https://your.connector.url/api/priora/ob/v1/payment_consents/funds_confirmation"

Example of request parameters

{"data":{"provider_code":"demobank","app_name":"app_name"},"exp":1234567}

Example of response

{"data":{"funds_available":"true"}}
Request

GET https://your.connector.url/api/priora/ob/v1/payment_consents/funds_confirmation

Headers
Header Type Description
Authorization string, required JSON Web Token containing payload, signed using RSA256 and application.private_key.
Access-Token string, required The token which is created by a connector as a result of successful authentication.
Accept string, required Media type that is acceptable for the response. Allowed values: application/json
Content-Type string, required The media type of the body of the request. Allowed values: application/json
Client-Id integer, required Client application identifier in Salt Edge PSD2 Compliance. Should be used to get public key for Authorization header validation.
Consent-Id integer, optional ID of the corresponding consent object as returned by an Account Information Consent Request.
Unpacked Request Authorization
exp
integer, required
The lifetime of the request in timestamp UTC format. Values greater than: Current time.
Response headers
Header Type Description
Retry-After integer, optional Amount of time in seconds after which Salt Edge PSD2 Compliance Solution resends the previously failed request.
Response

Upon successful request, 200 status code should be returned.


Related Errors
Class Code Description
FieldInvalid 400 An invalid value is supplied in the field. More details in error_message.

Payments

Payment

Create a payment. As a result, Connector should send an update callback to Salt Edge PSD2 Compliance with the result of the operation for additional steps.

CURL

curl -i  \ 
 -H "Authorization: Bearer authorization" \ 
 -H "Access-Token: aXMgZmFpbHVyZSB0byBjb21tdW5pY2F0ZQ0K" \ 
 -H "Accept: application/json" \ 
 -H "Content-Type: application/json" \ 
 -H "Client-Id: 123" \ 
 -X POST "https://your.connector.url/api/priora/ob/v1/payments"

Example of request parameters

Request

POST https://your.connector.url/api/priora/ob/v1/payments

Headers
Header Type Description
Authorization string, required JSON Web Token containing payload, signed using RSA256 and application.private_key.
Access-Token string, required The token which is created by a connector as a result of successful authentication.
Accept string, required Media type that is acceptable for the response. Allowed values: application/json
Content-Type string, required The media type of the body of the request. Allowed values: application/json
Client-Id integer, required Client application identifier in Salt Edge PSD2 Compliance. Should be used to get public key for Authorization header validation.
Consent-Id integer, optional ID of the corresponding consent object as returned by an Account Information Consent Request.
Unpacked Request Authorization
Response headers
Header Type Description
Retry-After integer, optional Amount of time in seconds after which Salt Edge PSD2 Compliance Solution resends the previously failed request.
Response

Upon successful request, 200 status code should be returned.


Related Errors
Class Code Description
FieldInvalid 400 An invalid value is supplied in the field. More details in error_message.
UnsupportedCurrency 400 The currency is not supported.
CountryNameInvalid 400 Country doesn't exist or is invalid. Expected alpha 2 ISO3166 format.

Errors

Create

This endpoint is responsible for receiving validation errors of responses which Connector sends to Salt Edge PSD2 Compliance Solution.

CURL

curl -i  \ 
 -H "Authorization: example_Authorization" \ 
 -H "Access-Token: b2077c5c020a5e262767aac63fdbc75fd64461afc660784fbc3451766f586bb4836e3405007c2caf497a1125ba58fb49be65b3c352285dea68328aded84e2f91" \ 
 -H "Accept: application/json" \ 
 -H "Content-Type: application/json" \ 
 -H "Client-Id: 685" \ 
 -X POST "https://your.connector.url/api/priora/ob/v1/errors"

Example of request parameters

{"data":{"request":{"method":"delete","url":"https://user.will.be/redirected/here","headers":{}},"error":{"error_message":"something went wrong","error_class":"InternalProviderError"}},"exp":1574093209}
Request

POST https://your.connector.url/api/priora/ob/v1/errors

Headers
Header Type Description
Authorization string, required JSON Web Token containing payload, signed using RSA256 and application.private_key.
Access-Token string, required The token which is created by a connector as a result of successful authentication.
Accept string, required Media type that is acceptable for the response. Allowed values: application/json
Content-Type string, required The media type of the body of the request. Allowed values: application/json
Client-Id integer, required Client application identifier in Salt Edge PSD2 Compliance. Should be used to get public key for Authorization header validation.
Consent-Id integer, optional ID of the corresponding consent object as returned by an Account Information Consent Request.
Unpacked Request Authorization
exp
integer, required
The lifetime of the request in timestamp UTC format. Values greater than: Current time.
Response headers
Header Type Description
Retry-After integer, optional Amount of time in seconds after which Salt Edge PSD2 Compliance Solution resends the previously failed request.
Response

Upon successful request, 200 status code should be returned.


Related Errors
Class Code Description
FieldInvalid 400 An invalid value is supplied in the field. More details in error_message.

Authorizations

Create

Send all the received data from TPP to Salt Edge PSD2 Compliance in order to create an authorization attempt and allow Salt Edge PSD2 Compliance to validate all the incoming data.

CURL

curl -i  \ 
 -H "App-Id: ds213FtasF23" \ 
 -H "App-Secret: WE21ffgGjgYqwigjhgh&g15f3" \ 
 -H "Content-Type: application/jwt" \ 
 -X POST "/api/connectors/ob/v1/authorizations"

Example of request parameters

{"data":{"authorize_url":"https://bank.com?client_id=some_client_id&redirect_uri=https://tpp.com&scope=openid%20accounts&response_type=code&state=weqe","auth_code":"xf7dhf-edfgbDf","auth_code_exp":"2021-01-25T15:03:52.177Z"},"exp":1606298169}

Example of response

{"data":{"redirect_uri":"https://tpp.com?error=access_denied&error_description=User+denied+the+authorization&state=weqe","authorization_id":153,"consent_id":162,"access_token":"cziaTXgBaCYerEHDvWE9"}}
Request

POST /api/connectors/ob/v1/authorizations

Headers
Header Type Description
Content-Type string, required The media type of the body of the request. Allowed values: application/jwt, text/plain
App-Id string, required Provider's app_id from connection details tab. Can raise: ProviderNotFound, ProviderDisabled, ConfigurationError
App-Secret string, required Provider's app_secret from connection details tab.
Unpacked Request Body (JWT)
exp
integer, required
The lifetime of the request in timestamp UTC format. Values greater than: Current time.
Response

Upon successful request, 200 status code will be returned. See ‘Related Errors’ table for other possibilities.


Related Errors
Class Code Description
FieldInvalid 400 An invalid value is supplied in the field. More details in error_message.
InvalidScope 400 TPP has sent wrong scopes.
InvalidRequest 400 Given data is invalid. More in message.
RequestFormatInvalid 400 Request format is wrong. Details are stored in error_message
ConfigurationError 400 Missing configurations in dashboard.
UnauthorizedClient 401 Wrong client_id in authorize_url.
ProviderNotFound 404 Provider specified in request does not exist or cannot be retrieved.
ProviderDisabled 406 Cooperation with specified Provider is impossible.

Update

Update the status of just created authorization. Should be invoked after user successful/unsuccessful authentication.

CURL

curl -i  \ 
 -H "App-Id: ds213FtasF23" \ 
 -H "App-Secret: WE21ffgGjgYqwigjhgh&g15f3" \ 
 -H "Content-Type: application/jwt" \ 
 -X PUT "/api/connectors/ob/v1/authorizations/:id"

Example of request parameters

Example of response

{"data":{"authorization_id":123,"status":"approved","redirect_uri":"https://tpp.com?code=auth_code&state=weqe&scope=openid%20accounts"}}
Request

PUT /api/connectors/ob/v1/authorizations/:id

Headers
Header Type Description
Content-Type string, required The media type of the body of the request. Allowed values: application/jwt, text/plain
App-Id string, required Provider's app_id from connection details tab. Can raise: ProviderNotFound, ProviderDisabled, ConfigurationError
App-Secret string, required Provider's app_secret from connection details tab.
Unpacked Request Body (JWT)
Response

Upon successful request, 200 status code will be returned. See ‘Related Errors’ table for other possibilities.


Related Errors
Class Code Description
FieldInvalid 400 An invalid value is supplied in the field. More details in error_message.
ConfigurationError 400 Missing configurations in dashboard.
NotFound 404 A resource could not be found. More in error_message.
ProviderNotFound 404 Provider specified in request does not exist or cannot be retrieved.
ProviderDisabled 406 Cooperation with specified Provider is impossible.

Payments

Update

Update the status of just created payment. Should be invoked after successful/unsuccessful payment creation.

CURL

curl -i  \ 
 -H "App-Id: app-id" \ 
 -H "App-Secret: app-secret" \ 
 -H "Content-Type: application/jwt" \ 
 -X PUT "/api/connectors/ob/v1/payments/:payment_id"

Example of request parameters

{"data":{"consent_id":1,"status":"AcceptedSettlementCompleted"},"exp":1606298169}
Request

PUT /api/connectors/ob/v1/payments/:payment_id

Headers
Header Type Description
Content-Type string, required The media type of the body of the request. Allowed values: application/jwt, text/plain
App-Id string, required Provider's app_id from connection details tab. Can raise: ProviderNotFound, ProviderDisabled, ConfigurationError
App-Secret string, required Provider's app_secret from connection details tab.
Unpacked Request Body (JWT)
payment_id (path)
integer, required
Payment order identifier on Connector side. Used to map Salt Edge PSD2 Compliance payments to Connector ones. Can raise: ResourceNotFound
exp
integer, required
The lifetime of the request in timestamp UTC format. Values greater than: Current time.
Response

Upon successful request, 200 status code will be returned. See ‘Related Errors’ table for other possibilities.


Related Errors
Class Code Description
ResourceNotFound 400 Specified resource doesn't exist.
ResourceInvalidConsentStatus 400 The action can't be performed with current status of consent.
FieldInvalid 400 An invalid value is supplied in the field. More details in error_message.
ConfigurationError 400 Missing configurations in dashboard.
Unauthorized 401 Consent is already expired.
ProviderNotFound 404 Provider specified in request does not exist or cannot be retrieved.
ProviderDisabled 406 Cooperation with specified Provider is impossible.

Consents

Update

Update consents callback needs to be called any time the consent is updated on the Provider Connector side.

CURL

curl -i  \ 
 -H "App-Id: ds213FtasF23" \ 
 -H "App-Secret: WE21ffgGjgYqwigjhgh&g15f3" \ 
 -H "Content-Type: application/jwt" \ 
 -X PATCH "/api/connectors/ob/v1/consents/:consent_id"

Example of request parameters

{"data":{"expected_execution_date_time":"2021-01-25T15:03:52.177Z","expected_settlement_date_time":"2021-02-25T15:03:52.177Z","charges":[{"ChargeBearer":"ChargeBearer","Type":"Type"}]},"exp":1606298169}
Request

PATCH /api/connectors/ob/v1/consents/:consent_id

Headers
Header Type Description
Content-Type string, required The media type of the body of the request. Allowed values: application/jwt, text/plain
App-Id string, required Provider's app_id from connection details tab. Can raise: ProviderNotFound, ProviderDisabled, ConfigurationError
App-Secret string, required Provider's app_secret from connection details tab.
Unpacked Request Body (JWT)
exp
integer, required
The lifetime of the request in timestamp UTC format. Values greater than: Current time.
consent_id (path)
integer, required
The consent identifier assigned to the created resource. Can raise: ResourceNotFound, ResourceInvalidConsentStatus, Unauthorized
Response

Upon successful request, 200 status code will be returned. See ‘Related Errors’ table for other possibilities.


Related Errors
Class Code Description
ResourceNotFound 400 Specified resource doesn't exist.
ResourceInvalidConsentStatus 400 The action can't be performed with current status of consent.
ConfigurationError 400 Missing configurations in dashboard.
Unauthorized 401 Consent is already expired.
ProviderNotFound 404 Provider specified in request does not exist or cannot be retrieved.
ProviderDisabled 406 Cooperation with specified Provider is impossible.