7 Data Structures

This section provides information on the core data structures/data models that are used by this Building Block.

7.1 Account Mapper

Beneficiary onboarding

Field

Type

M/O

Description

requestID

String (12)

M

Globally unique ID

beneficiaries

Object

JSON Array

payeeIdentity

String (20)

M

The functional Id of the beneficiary.

paymentModality

String (2)

O

00 for Bank Account

01 for Mobile Money

02 for Voucher

03 for Digital Wallet

04 for Proxy

bankingInstitutionCode(BBIC)

String (11)

C

Beneficiary Bank Institution code that will receive the address. This is conditional as it will only be present in case of bank account, mobile money account and digital wallet ID

financialAddress

String (30)

O

Destination Account Number, ideally an IBAN if available otherwise wallet destination accounts could be phone numbers as well, other Financial Addresses such as Aliases etc.

Onboarded beneficiary

Field

Type

M/O

Description

requestID

String (12)

M

Globally unique ID

registerRequestID

String (12)

M

Referenced GUID of original request by Source BB to register a beneficiary.

rumberFailedCases

Number

M

The number of cases failed. 0 if none, otherwise integer value

failedCases

Object

O

JSON Array containing the list of FunctionalIDs and Payment Modalities that were not updated in the ID Mapper.

payeeIdentity

String (20)

M

The functional Id of the beneficiary.

bankingInstitutionCode

String (11)

C

Beneficiary Bank Institution Code (BBIC).The beneficiary bank institution code. This is conditional as it will only be present in case of bank account, mobile money account and digital wallet ID

paymentModality

String (2)

M

00 for Bank Account

01 for Mobile Money

02 for Voucher

03 for Digital Wallet

04 for Proxy

failureReason

String(100)

O

Description of why this particular record failed to add

7.2 Bulk disbursement

Bulk Payment fields

Field

Type

M/O

Description

batchId

String(50)

M

BatchID for sub-batch that is being dispatched to this specific receiving bank.

destinationDFSPID

String (11)

M

BIC of the receiving bank.(Payee)

creditInstructions

Object

M

JSON Array of all instructions that require to be credited after pre-validation has occurred.

instructionID

String (16)

M

Individual ID for each instruction in the Credit Batch generated by the Payments Building Block

financialAddress

String (20)

M

Destination Account Number, ideally an IBAN if available otherwise wallet destination accounts could be phone numbers as well. (Payee Identifier)

amount

Float

O

Amount to be Credited

currency

String (3)

O

Transaction Currency Code

narration

String (50)

O

Description of Payment

7.3 Vouchers

Voucher activation

Name

Type

Description

Notes

Vouchers ID

Int64

Unique voucher identifier

Voucher_Number

Varchar

Secret voucher number

Voucher_serial_no

Varchar

Unique voucher identifier for external parties

Currency

Varchar

Voucher currency

Create_date

Date

Date when the voucher was created

Activate_date

Date

Date when the voucher was activated

Expiry_date

Date

Date when voucher will expire

Voucher_group

Varchar

Voucher group

Status

Varchar

Status of the voucher (e.g. ACTIVATED, SUSPENDED, CONSUMED, etc.)

Value

Double

Value of the Voucher

Voucher Groups

Name

Type

Description

Notes

Vouchers ID

Int64

Unique voucher group identifier

Voucher_group

Varchar

Voucher group short code

Voucher_group_desc

Varchar

Voucher description

7.2.4 P2G

Bill Payments

Field

Type

M/O

Description

requestId

String (2)

M

00 – Success

01 – Failure

code

String (200)

M

reason

String (12)

M

Echoed from Request

billID

String (20)

M

Echoed from Request

billDetails

Object

M

The relevant bill details including biller ID, Name, Bank Institutional Code (BIC), Status, Amount with due date and after due date

billerId

String (10)

M

Biller Id

billerName

String (10)

M

Biller Name

billStatus

String (10)

M

Informs the status whether paid or unpaid

dueDate

Epoch

M

amountonDueDate

Integer

C

The amount at which the consumer needs to pay bill with due date.

amountAfterDueDate

Integer

C

Amount calculated after due date.

Billers table

The Biller Table may need to include the following fields:

Fields/ RecordsDescriptionProvided/ Generated By

Unique ID

Prefix allocated to every entity directly registering with PBB

PBB Billing Module

Biller Details

Records Biller Details

Biller/ Aggregator

Biller FSP

Recorded Biller’s Bank Details

Biller/ Aggregator

Bill ID Details

Maximum number of Digits in Bill ID

Biller/ Aggregator

Biller Status

Active/ Inactive

PBB Billing Module

End-Points

Addresses to send requests

Biller/ Aggregator Technology Partner

Response Codes

Mapping of codes received and sent to Billers/ Agg.

PBB Billing Module + Biller Tech Partner

Last updated

Copyright © 2024