...
Name | Occurrence | Xpath | Enhanced Definition | Class | Codes | Pattern |
OBDomesticRefundAccount | 1..1 | OBDomesticRefundAccount | Unambiguous identification of the refund account to which a refund will be made as a result of the transaction | OBDomesticRefundAccount |
|
|
Account | 1..1 | OBDomesticRefundAccount/Account | Provides the details to identify an account | OBDomesticRefundAccount/Account |
|
|
SchemeName | 1..1 | OBDomesticRefundAccount/Account/SchemeName | Name of the identification scheme, in a coded form as published in an external list | String | Enum:
· BH.OBF. IBAN · BH.OBF.PAN
|
|
Identification | 1..1 | OBDomesticRefundAccount/Account/Identification | Identification assigned by an institution to identify an account. This identification is known by the account owner | String |
|
|
Name | 0..1 | OBDomesticRefundAccount/Account/Name | Name of the account, as assigned by the account servicing institution. Usage: The account name is the name or names of the account owner(s) represented at an account level. The account name is not the product name or the nickname of the account | String |
|
|
4.1.
...
This section describes the OBWritePaymentDetails class which used in the response payloads of payment-detail sub resources.
4.1.5.1 UML Diagram
...
...
5
...
Name
...
Occurrence
...
Xpath
...
Enhanced Definition
...
Class
...
Codes
...
Pattern
...
OBInternationalRefundAccount
...
...
OBInternationalRefundAccount
...
Unambiguous identification of the refund account to which a refund will be made as a result of the transaction.
...
OBInternationalRefundAccount
...
...
...
Creditor
...
0..1
...
OBInternationalRefundAccount/Creditor
...
Party to which an amount of money is due.
...
OBInternationalRefundAccount/Creditor
...
...
...
Name
...
0..1
...
OBInternationalRefundAccount/Creditor/Name
...
Name by which a party is known and which is usually used to identify that party.
...
String
...
...
...
PostalAddress
...
0..1
...
OBInternationalRefundAccount/Creditor/PostalAddress
...
Information that locates and identifies a specific address, as defined by postal services.
...
OBPostalAddress
...
...
...
AddressType
...
0..1
...
OBInternationalRefundAccount/Creditor/PostalAddress/AddressType
...
Identifies the nature of the postal address.
...
String
...
Enum:
Business
Correspondence
DeliveryTo
MailTo
POBox
Postal
Residential
Statement
...
...
Department
...
0..1
...
OBInternationalRefundAccount/Creditor/PostalAddress/Department
...
Identification of a division of a large organisation or building.
...
String
...
...
...
SubDepartment
...
0..1
...
OBInternationalRefundAccount/Creditor/PostalAddress/SubDepartment
...
Identification of a sub-division of a large organisation or building.
...
String
...
...
...
AddressLine
...
0..7
...
OBInternationalRefundAccount/Creditor/PostalAddress/AddressLine
...
Information that locates and identifies a specific address, as defined by postal services, presented in free format text.
...
String
...
...
...
StreetName
...
0..1
...
OBInternationalPaymentInitiation/Creditor/PostalAddress/StreetName
...
Name of a street or thoroughfare.
...
String
...
BuildingNumber
...
0..1
...
OBInternationalPaymentInitiation/Creditor/PostalAddress/BuildingNumber
...
Number that identifies the position of a building on a street.
...
String
...
...
...
PostCode
...
0..1
...
OBInternationalPaymentInitiation/Creditor/PostalAddress/PostCode
...
Identifier consisting of a group of letters and/or numbers that is added to a postal address to assist the sorting of mail.
...
String
...
...
...
TownName
...
0..1
...
OBInternationalPaymentInitiation/Creditor/PostalAddress/TownName
...
Name of a built-up area, with defined boundaries, and a local government.
...
String
...
...
...
CountrySubDivision
...
0..1
...
OBInternationalPaymentInitiation/Creditor/PostalAddress/CountrySubDivision
...
Identifies a subdivision of a country such as state, region, country.
...
String
...
...
...
Country
...
0..1
...
OBInternationalRefundAccount/Creditor/PostalAddress/Country
...
Nation with its own government.
...
String
...
...
^[A-Z]{2,2}$
...
Agent
...
0..1
...
OBInternationalRefundAccount/Agent
...
Financial institution servicing an account for the creditor.
...
OBInternationalRefundAccount/Agent
...
...
...
SchemeName
...
0..1
...
OBInternationalRefundAccount/Agent/SchemeName
...
Name of the identification scheme, in a coded form as published in an external list.
...
String
...
Enum:
BH.OBF.BICFI
BH.OBF.NCC
...
...
Identification
...
0..1
...
OBInternationalRefundAccount/Agent/Identification
...
Unique and unambiguous identification of a financial institution or a branch of a financial institution.
...
String
...
...
...
Name
...
0..1
...
OBInternationalRefundAccount/Agent/Name
...
Name by which an agent is known and which is usually used to identify that agent.
...
String
...
...
...
PostalAddress
...
0..1
...
OBInternationalRefundAccount/Agent/PostalAddress
...
Information that locates and identifies a specific address, as defined by postal services.
...
OBPostalAddress
...
...
...
AddressType
...
0..1
...
OBInternationalRefundAccount/Agent/PostalAddress/AddressType
...
Identifies the nature of the postal address.
...
String
...
Enum:
Business
Correspondence
DeliveryTo
MailTo
POBox
Postal
Residential
Statement
...
...
Department
...
0..1
...
OBInternationalRefundAccount/Agent/PostalAddress/Department
...
Identification of a division of a large organisation or building.
...
String
...
...
...
SubDepartment
...
0..1
...
OBInternationalRefundAccount/Agent/PostalAddress/SubDepartment
...
Identification of a sub-division of a large organisation or building.
...
String
...
...
...
AddressLine
...
0..7
...
OBInternationalRefundAccount/Agent/PostalAddress/AddressLine
...
Information that locates and identifies a specific address, as defined by postal services, presented in free format text.
...
String
...
...
...
StreetName
...
0..1
...
OBInternationalPaymentInitiation/CreditorAgent/PostalAddress/StreetName
...
Name of a street or thoroughfare.
...
String
...
BuildingNumber
...
0..1
...
OBInternationalPaymentInitiation/CreditorAgent/PostalAddress/BuildingNumber
...
Number that identifies the position of a building on a street.
...
String
...
...
...
PostCode
...
0..1
...
OBInternationalPaymentInitiation/CreditorAgent/PostalAddress/PostCode
...
Identifier consisting of a group of letters and/or numbers that is added to a postal address to assist the sorting of mail.
...
String
...
...
...
TownName
...
0..1
...
OBInternationalPaymentInitiation/CreditorAgent/PostalAddress/TownName
...
Name of a built-up area, with defined boundaries, and a local government.
...
String
...
...
...
CountrySubDivision
...
0..1
...
OBInternationalPaymentInitiation/CreditorAgent/PostalAddress/CountrySubDivision
...
Identifies a subdivision of a country such as state, region, country.
...
String
...
...
...
Country
...
0..1
...
OBInternationalRefundAccount/Agent/PostalAddress/Country
...
Nation with its own government.
...
String
...
...
^[A-Z]{2,2}$
...
Account
...
1..1
...
OBInternationalRefundAccount/Account
...
Unambiguous identification of the account of the creditor to which a credit entry will be posted as a result of the payment transaction.
...
OBInternationalRefundAccount/Account
...
...
...
SchemeName
...
1..1
...
OBInternationalRefundAccount/Account/SchemeName
...
Name of the identification scheme, in a coded form as published in an external list.
...
String
...
Enum:
BH.OBF.IBAN
BH.OBF.BBAN
BH.OBF.PAN
...
...
Identification
...
1..1
...
OBInternationalRefundAccount/Account/Identification
...
Identification assigned by an institution to identify an account. This identification is known by the account owner.
...
String
...
...
...
Name
...
1..1
...
OBInternationalRefundAccount/Account/Name
...
The account name is the name or names of the account owner(s) represented at an account level. Note, the account name is not the product name or the nickname of the account.
...
String
...
...
...
OBWritePaymentDetails
This section describes the OBWritePaymentDetails class which used in the response payloads of payment-detail sub resources.
4.1.
...
5.1 UML Diagram
...
4.1.
...
5.2 Data Dictionary
Name | Occurrence | Xpath | Enhanced Definition | Class | Codes | Pattern |
OBWritePaymentDetails | 1..1 | OBWritePaymentDetails | Payment status details. | OBWritePaymentDetails |
|
|
PaymentTransactionId | 1..1 | OBWritePaymentDetails/PaymentTransactionId | Unique identifier for the transaction within an a servicing institution. This identifier is both unique and immutable. | String |
|
|
Status | 1..1 | OBWritePaymentDetails/Status | Status of a transfer, as assigned by the transaction administrator. | String | Enum: · Accepted · AcceptedCancellationRequest · AcceptedCreditSettlementCompleted · AcceptedCustomerProfile · AcceptedFundsChecked · AcceptedSettlementCompleted · AcceptedSettlementInProcess · AcceptedTechnicalValidation · AcceptedWithChange · AcceptedWithoutPosting · Cancelled · NoCancellationProcess · PartiallyAcceptedCancellationRequest · PartiallyAcceptedTechnicalCorrect · PaymentCancelled · Pending · PendingCancellationRequest · Received · Rejected · RejectedCancellationRequest |
|
StatusUpdateDateTime | 1..1 |
| Date and time at which the status was assigned to the transfer. | DateTime |
|
|
StatusDetail | 0..1 | OBWritePaymentDetails/StatusDetail | Payment status details as per underlying Payment Rail. | OBWritePaymentDetails/StatusDetail |
|
|
LocalInstrument | 1..1 |
| User community specific instrument. Usage: This element is used to specify a local instrument, local clearing option and/or further qualify the service or service level. | String | Enum: · BH.OBF. DNSDNS · BH.OBF.NRT · BH.OBF.BIL |
|
Status | 1..1 | OBWritePaymentDetails/StatusDetail/Status | Status of a transfer, as assigned by the transaction administrator. | String |
|
|
StatusReason | 0..1 | OBWritePaymentDetails/StatusDetail/StatusReason |
| String | Enum: · Cancelled · PendingFailingSettlement · PendingSettlement · Proprietary · ProprietaryRejection · Suspended · Unmatched |
|
StatusReasonDescription | 0..1 | OBWritePaymentDetails/StatusDetail/StatusReasonDescription | Reason provided for the status of a transfer. | String |
|
|
4.1.
...
6 OBSCASupportData
This section describes the OBSCASupportData class, which is used across all payment order consents consent request resources, enabling PISPs to provide Supporting Data when requesting ASPSP for SCA Exemption.
4.1.
...
6.1 UML Diagram
...
4.1.
...
6.2 Data Dictionary
Name | Occurrence | Xpath | Enhanced Definition | Class | Codes | Pattern |
OBSCASupportData |
| SCASupportData | Supporting Data provided by PISP, when requesting SCA Exemption. | OBSCASupportData |
|
|
RequestedSCAExemptionType | 0..1 | SCASupportData/RequestedSCAExemptionType | This field allows a PISP to request specific SCA Exemption for a Payment Initiation. | String |
Enum: BillPayment ContactlessTravel EcommerceGoods EcommerceServices Kiosk Parking
This field is under discussion with the CBB, will be finalised in the next version |
|
AppliedAuthenticationApproach | 0..1 | SCASupportData/AppliedAuthenticationApproach | Specifies a character string with a maximum length of 40 characters. Usage: This field indicates whether the userUser/customer Customer was subject to SCA performed by the PISP. | String | Enum: · CA · SCA |
|
ReferencePaymentOrderId | 0..1 | SCASupportData/ReferencePaymentOrderId | Specifies a character string with a maximum length of 140 characters. Usage: If the payment is recurring, then the transaction identifier of the previous payment occurrence so that the ASPSP can verify that the PISP, amount and the payee are the same as the previous occurrence. | String |
|
|
4.2 Identifier Fields
...
Generated | Identifier | Business Description |
Merchant/PISP Sent in API Payload | EndToEndIdentification | The EndToEndIdentification reference is a reference that can be populated by the debtor (or merchant in the ecommerce space). This reference is important to the debtor (could be an internal reference Id against the transaction), it Is NOT the reference information that will be primarily populated on the statement of the creditor (beneficiary). |
Merchant/PISP Sent in API Payload | InstructionIdentification | The PISP generates the InstructionIdentification which is a unique transaction Id and passes it to the ASPSP (this is mandatory), but this does not have to go any further in the payment flow. The flow of this identifier needs to align with payment scheme rules. The expectation is that this is unique indefinitely across all time periods. The PISP can ensure this is indefinitely unique by including a date or date time element to the field, or by inserting a unique Id. |
Merchant/PISP Sent in API Payload | RemittanceInformation | The RemittanceInformation is the reference information that the creditor (or beneficiary) will need to reconcile (e.g. Invoice 123). |
ASPSP / API System | ConsentId | A unique identification as assigned by the ASPSP to uniquely identify the payment-order consents consent resource. |
ASPSP / API System | Payment Order Id | A unique identification as assigned by the ASPSP to uniquely identify the payment-order resource. · DomesticPaymentId · DomesticFutureDatedPaymentId · DomesticStandingOrderId · InternationalPaymentId InternationalFutureDatedPaymentId |
ASPSP / Payment Scheme | Scheme Payment ID | This is generated by the ASPSP to uniquely identify a payment through a processing scheme. |
4.3 Enumerations
4.3.1 Static Enumerations
...
Code Class | Name | Definition | |||
OBExternalPaymentContextCode | BillPayment | The context of the payment initiation is a bill payment. | |||
OBExternalPaymentContextCode | EcommerceGoods | The context of the payment initiation is for goods via an ecommerce channel. | |||
OBExternalPaymentContextCode | EcommerceServices | The context of the payment initiation is for services via an ecommerce channel. | |||
OBExternalPaymentContextCode | PartyToParty | The context of the payment initiation is a party to party payment. | |||
OBExternalPaymentContextCode | Other | The context of the payment initiation is of another type. | |||
OBTransactionIndividualStatusCode | AcceptedSettlementCompleted | Settlement on the debtor's account has been completed. Usage: this can be used by the first agent to report to the debtor that the transaction has been completed.
Warning: this status is provided for transaction status reasons, not for financial information. It can only be used after bilateral agreement. PISPs must not use this status as confirmation that settlement is complete on the creditor's account. | |||
OBTransactionIndividualStatusCode | AcceptedSettlementInProcess | All preceding checks such as technical validation and customer profile were successful and therefore the payment initiation has been accepted for execution. | |||
OBTransactionIndividualStatusCode | Pending | Payment initiation or individual transaction included in the payment initiation is pending. Further checks and status update will be performed. | |||
OBTransactionIndividualStatusCode | Rejected | Payment initiation or individual transaction included in the payment initiation has been rejected. | |||
OBTransactionIndividualStatusCode | AcceptedWithoutPosting | Payment instruction included in the credit transfer is accepted without being posted to the creditor customer's account. | |||
OBTransactionIndividualStatusCode | AcceptedCreditSettlementCompleted | Settlement on the creditor's account has been completed. | |||
OBExternalConsentStatusCode | AwaitingAuthorisation | The consents consent resource is awaiting userUser/customer Customer authorisation. | |||
OBExternalConsentStatusCode | Rejected | The consents consent resource has been rejected. | |||
OBExternalConsentStatusCode | Authorised | The consents consent resource has been successfully authorised. | |||
OBExternalConsentStatusCode | Consumed | The consented action has been successfully completed. This does not reflect the status of the consented action. | |||
OBChargeBearerTypeCode | BorneByCreditor | All transaction charges are to be borne by the creditor. | |||
OBChargeBearerTypeCode | BorneByDebtor | All transaction charges are to be borne by the debtor. | |||
OBChargeBearerTypeCode | FollowingServiceLevel | Charges are to be applied following the rules agreed in the service level and/or scheme. | |||
OBChargeBearerTypeCode | Shared | In a credit transfer context, means that transaction charges on the sender side are to be borne by the debtor, transaction charges on the receiver side are to be borne by the creditor. In a direct debit context, means that transaction charges on the sender side are to be borne by the creditor, transaction charges on the receiver side are to be borne by the debtor. | |||
OBExternalAuthorisationCode | Single | Single authorisation type is requested. | |||
OBExternalStatusCode | InitiationCompleted | The payment-order initiation has been completed. | |||
OBExternalStatusCode | InitiationFailed | The payment-order initiation has failed. | |||
OBExternalStatusCode | InitiationPending | The payment-order initiation is pending. | |||
OBExternalStatusCode | InitiationCompleted | The payment-order initiation has been completed. | |||
OBExternalStatusCode | InitiationFailed | The payment-order initiation has failed. | |||
OBExternalStatusCode | InitiationPending | The payment-order initiation is pending. | |||
OBExternalStatusCode | Cancelled | Payment initiation has been successfully cancelled after having received a request for cancellation. | |||
OBExchangeRateTypeCode | Actual | Exchange rate is the actual rate. | |||
OBExchangeRateTypeCode | Agreed | Exchange rate is the agreed rate between the parties. | |||
OBExchangeRateTypeCode | Indicative | Exchange rate is the indicative rate. | |||
OBPriorityCode | Normal | Priority is normal. | |||
OBPriorityCode | Urgent | Priority is urgent. | |||
OBAddressTypeCode | Business | Address is the business address. | |||
OBAddressTypeCode | Correspondence | Address is the address where correspondence is sent. | |||
OBAddressTypeCode | DeliveryTo | Address is the address to which delivery is to take place. | |||
OBAddressTypeCode | MailTo | Address is the address to which mail is sent. | |||
OBAddressTypeCode | POBox | Address is a postal office (PO) box. | |||
OBAddressTypeCode | Postal | Address is the complete postal address. | |||
OBAddressTypeCode | Residential | Address is the home address. | |||
OBAddressTypeCode | StatementResidential | Address is the home address where statements are sent. | |||
OBTransactionIndividualExtendedISOStatusCode | Accepted | Request is accepted. | |||
OBTransactionIndividualExtendedISOStatusCode | AcceptedCancellationRequest | Cancellation is accepted. | |||
OBTransactionIndividualExtendedISOStatusCode | AcceptedCreditSettlementCompleted | Settlement on the creditor's account has been completed. | |||
OBTransactionIndividualExtendedISOStatusCode | AcceptedCustomerProfile | Preceding check of technical validation was successful. Customer profile check was also successful. | |||
OBTransactionIndividualExtendedISOStatusCode | AcceptedFundsChecked | Preceding check of technical validation and customer profile was successful and an automatic funds check was positive. | |||
OBTransactionIndividualExtendedISOStatusCode | AcceptedSettlementCompleted | Settlement on the debtor's account has been completed.
Usage: this can be used by the first agent to report to the debtor that the transaction has been completed.
Warning: this status is provided for transaction status reasons, not for financial information. It can only be used after bilateral agreement. | |||
OBTransactionIndividualExtendedISOStatusCode | AcceptedSettlementInProcess | All preceding checks such as technical validation and customer profile were successful and therefore the payment initiation has been accepted for execution. | |||
OBTransactionIndividualExtendedISOStatusCode | AcceptedTechnicalValidation | Authentication and syntactical and semantical validation are successful. | |||
OBTransactionIndividualExtendedISOStatusCode | AcceptedWithChange | Instruction is accepted but a change will be made, such as date or remittance not sent. | |||
OBTransactionIndividualExtendedISOStatusCode | AcceptedWithoutPosting | Payment instruction included in the credit transfer is accepted without being posted to the creditor customer’s account. | |||
OBTransactionIndividualExtendedISOStatusCode | Cancelled | Request is cancelled. | |||
OBTransactionIndividualExtendedISOStatusCode | NoCancellationProcess | No cancellation process. | |||
OBTransactionIndividualExtendedISOStatusCode | PartiallyAcceptedCancellationRequest | Cancellation is partially accepted. | |||
OBTransactionIndividualExtendedISOStatusCode | PartiallyAcceptedTechnicalCorrect | Authentication and syntactical and semantical validation are successful. | |||
OBTransactionIndividualExtendedISOStatusCode | PaymentCancelled | Transaction has been cancelled. | |||
OBTransactionIndividualExtendedISOStatusCode | Pending | Payment initiation or individual transaction included in the payment initiation is pending. Further checks and status update will be performed. | |||
OBTransactionIndividualExtendedISOStatusCode | PendingCancellationRequest | Cancellation request is pending. | |||
OBTransactionIndividualExtendedISOStatusCode | Received | Payment initiation has been received by the receiving agent. | |||
OBTransactionIndividualExtendedISOStatusCode | Rejected | Payment initiation or individual transaction included in the payment initiation has been rejected. | |||
OBTransactionIndividualExtendedISOStatusCode | RejectedCancellationRequest | Cancellation request is rejected. | |||
OBTransactionIndividualStatusReasonCode | Cancelled | Reason why the payment status is cancelled. | |||
OBTransactionIndividualStatusReasonCode | PendingFailingSettlement | Reason why the payment status is pending (failing settlement). | |||
OBTransactionIndividualStatusReasonCode | PendingSettlement | Reason why the payment status is pending (settlement). | |||
OBTransactionIndividualStatusReasonCode | Proprietary | Defines a free text proprietary reason. | |||
OBTransactionIndividualStatusReasonCode | ProprietaryRejection | Defines the reason that has been used by the Local Instrument system to reject the transaction. | |||
OBTransactionIndividualStatusReasonCode | Suspended | Reason why the payment status is suspended. | |||
OBTransactionIndividualStatusReasonCode | Unmatched | Reason why the payment status is unmatched. | |||
OBExternalSCAExemptionTypeCode | BillPayment | Bill Payment. | |||
OBExternalSCAExemptionTypeCode | ContactlessTravel | Contactless Travel. | |||
OBExternalSCAExemptionTypeCode | EcommerceGoods | Ecommerce Goods. | |||
OBExternalSCAExemptionTypeCode | EcommerceServices | Ecommerce Services. | OBExternalSCAExemptionTypeCode | Kiosk | Kisok. |
OBExternalSCAExemptionTypeCode | Parking | Parking. | |||
OBExternalSCAExemptionTypeCode | PartyToParty | Party To Party. | |||
OBExternalAppliedAuthenticationApproachCode | CA | Single Factor Strong Customer Authentication. | |||
OBExternalAppliedAuthenticationApproachCode | SCA | Multi Factor Strong Customer Authentication. | |||
OBReadRefundAccountCode | Yes | Yes. | |||
OBReadRefundAccountCode | No | No. |
4.3.2 ISO Enumerations
These following ISO Enumerations are used in the Payment APIs.
ISO Data Type | Fields | ISO Enumeration Values URL |
String | MerchantCategoryCode | |
String | Currency | https://www.iso20022.org/catalogue-messages/additional-content-messages/external-code-sets |
String | Country |
4.3.3 Namespaced Enumerations
...
5. Alternative and Error Flows
...
This example illustrates a scenario where an ASPSP choses to Reject the Payment-Order consentsconsent/resource request, after the CutoffTime. We have a payment-order consents consent created after the CutOffDateTime, and ASPSP rejects the ConsentsConsent, and the PISP chooses to place a Future Dated Payment-Order consentsconsent.
...
5.4 Reject the Payment Order Creation after CutOffDateTime
This example illustrates a scenario where an ASPSP choses to Reject the Payment-Order consentsconsent/resource request, after the CutoffTime. We have a payment-order Consents Consent created and the Authorisation completed before the CutOffDateTime, but the Payment-Order submission happened after the CutOffDateTime, so the ASPSP has rejected it.
...