Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The International Payment Consent Consents resource is used by a PISP to register an intent to initiate an International Payment.

...

  • The POST action indicates to the ASPSP that a payment consent has been staged. At this point, the user/customer may not have been identified by the ASPSP, and the request payload may not contain any information of the account that should be debited.

  • The endpoint allows the PISP to send a copy of the consent (between user/customer and PISP) to the ASPSP for the user/customer to authorise.

  • The ASPSP creates the international-payment-consentconsents resource and responds with a unique ConsentId to refer to the resource.

...

A PISP can optionally retrieve a payment consent consents resource that they have created to check its status.

...

Once the user/customer authorises the payment-consent consents resource, the Status of the payment-consent consents resource will be updated with "Authorised".

...

The available Status codes for the international-payment-consent consents resource are:

Status

AwaitingAuthorisation

Rejected

Authorised

Consumed

...

The API endpoint allows the PISP to ask an ASPSP to confirm funds on an international-payment-consent resourceconsents resource.

  • An ASPSP can only respond to a funds confirmation request if the international-payment-consent resource consents resource has an Authorised status. If the status is not Authorised, an ASPSP must respond with a 400 (Bad Request) and an BH.OBF.Resource.InvalidConsentStatus error code

  • Confirmation of funds requests do not affect the status of the international-payment-consent resourceconsents resource

2.3.1 State Model

2.3.1.1  Payment Order Consent

The state model for the international-payment-consent consents resource follows the generic consent state model.

...

This section describes the OBInternationalPaymentInitiation class which is reused as the Initiation object in the international-payment-consent consents resource.

3.1.1.1  UML Diagram

...

  • All elements in the Initiation payload that are specified by the PISP, must not be changed via the ASPSP as this is part of formal consent from the user/customer.

  • If the ASPSP is able to establish a problem with payload or any contextual error during the API call, the ASPSP must reject the international-payment-consent request immediately.

  • If the ASPSP establishes a problem with the international-payment-consent after the API call, the ASPSP must set the Status of the international-payment-consent consents resource to Rejected.

  • DebtorAccount is optional as the PISP may not know the account identification details for the user/customer.

  • If the DebtorAccount is specified by the PISP and is invalid for the userr/customer, then the international-payment-consent will be set to Rejected after user/customer authentication.

  • CreditorAgent must at least have either of the pairs provided: Scheme Name and Identification or Name and Postal Address.

  • Account Identification field usage:

    • Where the "BH.OBF.IBAN" is specified as the SchemeName in the Account Identification Section (either DebtorAccount or CreditorAccount), the Identification field must be populated with the full IBAN

    o   Where the “BH.OBF.PAN” is specified as the SchemeName in the Account Identification Section (either DebtorAccount or CreditorAccount), the identification field must be populated with the full Primary Account Number - identifier scheme used to identify a card account

    o   Where the “BH.OBF.BBAN” is specified as the SchemeName in the Account Identification Section (CreditorAccount), the identification field must be populated with the full basic bank account number (Basic Bank Account Number (BBAN) - identifier used nationally by financial institutions, ie, in individual countries, generally as part of a National Account Numbering Scheme(s), to uniquely identify the account of a customer.)

  • Account/Servicer: This is the Data Type for Agent/SchemeName and used to identify the type of Identification used to identify an agent.

    • Where the "BH.OBF. BICFI" is specified as the SchemeName, the Identification field must be populated with the BIC (Valid BICs for financial institutions are registered by the ISO 9362 Registration Authority in the BIC directory, and consist of eight (8) or eleven (11) contiguous characters.)

    • Where the "BH.OBF. NCC" is specified as the SchemeName, the Identification field must be populated with the NCC (Valid NCC -National Clearing Code as an option for the accounts that don't have an IBAN, registered in the country identified by the 2 letter ISO-3166 Country code. For example, transfer to India may have Scheme Name as BH.OBF.NCC.IN and Identification can be the IFSC code of the bank/branch in India.)

  • Account/Servicer: This is the Data Type for Agent/SchemeName and used to identify the type of Identification used to identify an agent.

    • Where the "BH.OBF. BICFI" is specified as the SchemeName, the Identification field must be populated with the BIC (Valid BICs for financial institutions are registered by the ISO 9362 Registration Authority in the BIC directory, and consist of eight (8) or eleven (11) contiguous characters.)

    • Where the "BH.OBF. NCC" is specified as the SchemeName, the Identification field must be populated with the NCC (Valid NCC -National Clearing Code as an option for the accounts that don't have an IBAN, registered in the country identified by the 2 letter ISO-3166 Country code. For example, transfer to India may have Scheme Name as BH.OBF.NCC.IN and Identification can be the IFSC code of the bank/branch in India.)

  • LocalInstrument is the requested payment scheme for execution. This is a free-text field.

  • InstructionPrioirty may be used by the ASPSP to determine the payment scheme for execution.

  • The InstructedAmount object must be populated with the desired Amount and Currency of transfer, regardless of the currency of the DebtorAccount or CreditorAccount, i.e. a user may wish to transfer 100USD from a BHD DebtorAccount (InstructedAmount will be 100USD), or 100BHD to an USD CreditorAccount (the InstructedAmount will be 100BHD).

  • The CurrencyOfTransfer is used to specify the currency the funds will be transferred. I.e., a user/customer may wish to transfer 100BHD from a BH DebtorAccount to a Rupee INR CreditorAccount in India

  • The ChargeBearer field is used by the PISP to indicate the bearer of charges. An ASPSP must reject the request if the requested charge allocation cannot be fulfilled

...

This section describes the OBExchangeRateResponse class, which is used in the response payloads in the international-payment-consent consents resource.

3.1.2.1       UML Diagram

...

  • ConsentId.

  • CreationDateTime the international-payment-consent consents resource was created.

  • Status and StatusUpdateDateTime of the international-payment-consent consents resource.

  • CutOffDateTime Behaviour is explained in Payment Initiation API Profile, Section -Payment Restrictions -> CutOffDateTime Behaviour. 

  • ExpectedExecutionDateTime for the international-payment resource if created before CutOffDateTIme - the expected DateTime the payment is executed against the Debtor Account. If populated, the ASPSP must update the value with any changes (e.g., after user/customer authorisation).

  • ExpectedSettlementDateTime for the international-payment resource if created before CutOffDateTIme - the expected DateTime the payment will be received at the Creditor Account. If populated, the ASPSP must update the value with any changes (e.g., after user/customer authorisation).

  • Charges array which will be used by the ASPSP to indicate charges, and the ChargeBearer as relevant.

  • Post successful user/customer Authentication, an ASPSP may provide Debtor/Name in the Payment Order Consent Response, even when the Payer did not provide the Debtor Account via PISP

  • ExchangeRateInformation (the ASPSP response) - this object will be used to communicate exchange rate information back to the PISP. It must be consistent with what is requested in the Initiation object from the PISP.

...