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/ Records | Description | Provided/ 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