6.5 Consumer Services - Oracle Banking Virtual Account Management

This topic describes about the consumer services required for Oracle Banking Virtual Account Management Implementation.

The below endpoints must be configured under Consumer Services in Oracle Banking Routing Hub:
  1. VirtualAccDetails
  2. PostAllocation
  3. ReverseAllocation
  4. VirtualAccPost
  5. CorporateDetails
  6. AccountProduct

Figure 6-5 Consumer Services - Virtual Account Managment



VirtualAccDetails

This API enables the user to fetch the virtual account details.

SERVICE-CONSUMER = “OBSCFCM_OBVAM”

SERVICE-CONSUMER-SERVICE= “VirtualAccDetails”

Request:

{
    "serviceConsumerServiceName": "VirtualAccDetails",
    "body": {
        "branchCode": "006",
        "offset": 0,
        "limit": 0,
        "virtualAccountNo": "1000216",
	"realCustomerNo": "000462",
“virtualEntityId”:””,
“realAccountNo”:””,
“virtualAccountName”:””
    },
    "serviceConsumerName": "OBSCFCM_OBVAM"
}

Response:

{
    "headers": {},
    "body": {
        "data": {
            "data": [
                {
                    "branchCode": "HEL",
                    "virtualEntityId": "SDCVE02",
                    "virtualEntityName": "SDCVE02",
                    "realCustomerNo": "000462",
                    "defaultAccCcy": "GBP",
                    "virtualAccProduct": "DEF1",
                    "virtualAccountNo": "1000216",
                    "ibanRequired": "N",
                    "ibanAccNo": null,
                    "realAccountNo": null,
                    "virtualAccountName": "nehdemovaApril7",
                    "addressLine1": null,
                    "addressLine2": null,
                    "addressLine3": null,
                    "addressLine4": null,
                    "pincode": null,
                    "countryCode": null,
                    "accountPurpose": null,
                    "interestCalcReq": "N",
                    "accountFrozen": "N",
                    "balChkForDebits": "N",
                    "balAvailabilityOptions": "O",
                    "fixedAmtFromPool": null,
                    "overdraftAllowed": "N",
                    "fixedAmount": null,
                    "creditTxnsAllowed": "N",
                    "debitTxnsAllowed": "N",
                    "status": "A",
                    "realAccLinkage": "S",
                    "realAccountCcy": null,
                    "realAccountBrn": null,
                    "accOpenDate": "2020-06-02",
                    "accClosureDate": null,
                    "lastActivityDate": null,
                    "makerId": null,
                    "makerDateStamp": null,
                    "checkerId": null,
                    "checkerDateStamp": null,
                    "modNo": null,
                    "resourceId": null,
                    "unauthModNos": null,
                    "recordStatus": "O",
                    "authStatus": null,
                    "onceAuth": null,
                    "doerRemarks": null,
                    "approverRemarks": null,
                    "odStartDate": null,
                    "odEndDate": null,
                    "branchName": "HEL FC UNIVERSAL BANK",
                    "structureCode": null,
                    "virtualParentAcc": null,
                    "sanctionChkStatus": "Success",
                    "accLiqdAllowed": "N",
                    "StructuredAddressServiceDTO": null
                }
            ],
            "paging": {
                "totalResults": 1,
                "links": {
                    "next": null,
                    "prev": null
                }
            }
        },
        "messages": {
            "keyId": null,
            "status": "SUCCESS",
            "codes": [],
            "requestId": null,
            "httpStatusCode": "OK",
            "overrideAuthLevelsReqd": null
        }
    }
}

PostAllocation

This API enables the user to post the allocation details to Virtual Account Management with Skip DDA

SERVICE-CONSUMER = “OBSCFCM_OBVAM”

SERVICE-CONSUMER-SERVICE= “PostAllocation”

Request
{
       "serviceConsumerServiceName": "PostAllocation",
    "body": {
        "branchCode": "HEL",
        "sourceCode": "OBDX",
        "requestList": [
            {
                "drCrInd": "C",
                "txnAccount": "1000216",
                "txnAccountBrn": "HEL",
                "txnCcy": "USD",
                "txnAccountCcy": "GBP",
                "txnAmount": 100,
                "txnCode": null,
                "valueDate": "2022-10-05",
                "exchRate": null,
                "reconRefNo": null,
                "addlText": "PymtABZNov2823",
                "ecaOrBlockRefNo": null,
                "ddaOffset": null,
                "skipDDAEntries": "Y",
                "forceDebit": null,
                "blkReleaseStatus": null,
                "reconType": "M",
                "vamBranchDate": "2022-09-12",
                "treatAsAuto": "N",
                "paymentInformation": {
                    "autoReconcile": null,
                    "bankCode": null,
                    "beneficiaryCode": null,
                    "beneficiaryId": null,
                    "beneficiaryName": null,
                    "counterpartyId": null,
                    "counterpartyName": null,
                    "counterpartyCode": null,
                    "creditAccNo": null,
                    "creditNoteRefNo": null,
                    "dcIndicator": null,
                    "eftRefNo": null,
                    "entityRefNo": null,
                    "filler1": null,
                    "filler2": null,
                    "filler3": null,
                    "filler4": null,
                    "filler5": null,
                    "filler6": null,
                    "filler7": null,
                    "filler8": null,
                    "filler9": null,
                    "filler10": null,
                    "flag": null,
                    "genericAppropriation": null,
                    "specificAppropriation": null,
                    "indicator": null,
                    "instrumentBank": null,
                    "instrumentBranch": null,
                    "instrumentDate": null,
                    "mandateRefNo": null,
                    "paymentAmount": null,
                    "paymentCurrency": null,
                    "paymentDate": null,
                    "paymentMode": null,
                    "paymentNumber": null,
                    "partyPaymentCode": null,
                    "paymentPartyId": null,
                    "paymentPartyName": null,
                    "paymentProcessStatus": null,
                    "paymentRefNo": null,
                    "paymentStatus": null,
                    "programCode": null,
                    "remarks": null,
                    "remitterAccNo": null,
                    "fileName": null,
                    "reasonCode": null,
                    "lastActionPerformed": null,
                    "matchedAmount": null,
                    "unmatchedAmount": null,
                    "reconTxnStatus": null,
                    "isAutoAuth": null,
                    "virtualAcFlag": null,
                    "paymentBusinessDate": null,
                    "counterpartyRole": null,
                    "beneficiaryRole": null,
                    "paymentPartyRole": null,
                    "errorDesc": null,
                    "paymentPartyCategory": null,
                    "derivedFlag": null,
                    "allocationRequired": null,
                    "allocStatus": null,
                    "allocatedAmt": null,
                    "unallocatedAmt": null,
                    "relationshipCode": null,
                    "accOwner": null,
                    "procBranchCode": null,
                    "procBranchDate": null,
                    "invoiceNumber": null,
                    "amountToMatch": null,
                    "transactionRefNo": null,
                    "seqNo": null,
                    "isPUA": null,
                    "isIndirectPayment": null,
                    "sourceTxnId": null,
                    "reconciledPmtAmt": null,
                    "totalAllocatedAmt": null,
                    "isRecon": null,
                    "excessHandling": null,
                    "excessRefundParty": null,
                    "excessRefundPartyId": null,
                    "excessRefundPaymentMode": null,
                    "parentPaymentRefNo": null,
                    "parentPaymentNo": null
                }
            }
        ],
        "sourceReferenceNo": "004051022REC46903_2"
    },
    "serviceConsumerName": "OBSCFCM_OBVAM"
}
Response:
{
    "headers": {},
    "body": {
        "data": {
            "transactionData": {
                "links": [],
                "keyId": "1181563494237868032",
                "txnRefNo": "006ZJNL1808901hY",
                "sourceCode": "OBDX",
                "sourceReferenceNo": "004051022REC46903_2",
                "bookingDate": "2018-03-30",
                "initiationDate": "2018-03-30",
                "authStatus": "A",
                "transactionStatus": "A",
                "originalReferenceNo": null,
                "checkerDtStamp": "2018-03-30 11:51:29",
                "checkerId": "OBVAMUSER6",
                "makerDtStamp": "2018-03-30 11:51:29",
                "makerId": "OBVAMUSER6",
                "initialMaker": "OBVAMUSER6 30-Mar-18 ",
                "initialChecker": "OBVAMUSER6 30-Mar-18 ",
                "doerRemarks": null,
                "approverRemarks": null,
                "transactionDetailsDTOList": [
                    {
                        "id": "1181563494128816128",
                        "txnMasterId": "1181563494237868032",
                        "txnRefNo": "006ZJNL1808901hY",
                        "entrySerialNo": 1,
                        "drCrInd": "C",
                        "txnAccount": "1000216",
                        "txnAccountBrn": "HEL",
                        "txnCcy": "USD",
                        "txnAmount": 100,
                        "txnCode": "000",
                        "valueDate": "2018-03-30",
                        "virtualIdentifier": null,
                        "txnAccountCcy": "GBP",
                        "amtInTxnAccCcy": 25,
                        "amtInDdaLcy": null,
                        "excRateDdaLcy": null,
                        "exchRate": 4,
                        "realAccCcy": null,
                        "amtInRealAccCcy": null,
                        "realAccClass": null,
                        "excRateTxccyRaccy": null,
                        "reconRefNo": null,
                        "addlText": null,
                        "reportingInfo": null,
                        "accountType": "A",
                        "realAccountNo": null,
                        "realAccountBrn": null,
                        "ecaOrBlockRefNo": null,
                        "ddaOffset": null,
                        "forceDebit": "N",
                        "skipDDAEntries": "Y",
                        "blkReleaseStatus": "F",
                        "realCustomerNo": "000462",
                        "restrictionId": null,
                        "txnBlockReleaseAmt": 0
                    }
                ]
            },
            "messages": {
                "keyId": "1181563494237868032",
                "status": "SUCCESS",
                "codes": [
                    {
                        "args": null,
                        "arg": null,
                        "information": true,
                        "override": false,
                        "error": false,
                        "overrideAuthLevelsReqd": null,
                        "code": "VAT-JNOL-017",
                        "desc": "Transaction successfully authorized",
                        "language": "ENG",
                        "type": "I"
                    }
                ],
                "requestId": null,
                "httpStatusCode": null,
                "overrideAuthLevelsReqd": null
            }
        },
        "messages": {
            "keyId": null,
            "status": "SUCCESS",
            "codes": [],
            "requestId": null,
            "httpStatusCode": "OK",
            "overrideAuthLevelsReqd": null
        }
    }
}

ReverseAllocation

This API enables the user to fetch the outstanding loan amount.

SERVICE-CONSUMER = “OBSCFCM_OBVAM”

SERVICE-CONSUMER-SERVICE= “ReverseAllocation”

Request:
{
    "serviceConsumerServiceName": "ReverseAllocation",
    "body": {
        "branchCode": "000",
        "sourceCode": "EXTSYS",
        "txnRefNo": "000ZJNL2033606NG",
        "action": "reverse"
    },
    "serviceConsumerName": "OBSCFCM_OBVAM"
}
Response:
{
    "headers": {},
    "body": {
        "data": {
            "data": {
                "links": [],
                "revTxnRefNo": "000ZRNL2033603Nj"
            },
            "messages": {
                "keyId": "b83cb05d-9d1d-4420-bb1c-d0f77fc08a6a",
                "status": "SUCCESS",
                "codes": [
                    {
                        "args": null,
                        "arg": null,
                        "information": true,
                        "override": false,
                        "error": false,
                        "overrideAuthLevelsReqd": null,
                        "desc": "Transaction successfully reversed",
                        "code": "VAT-JNOL-022",
                        "language": "ENG",
                        "type": "I"
                    }
                ],
                "requestId": null,
                "httpStatusCode": "OK",
                "overrideAuthLevelsReqd": null
            }
        },
        "messages": {
            "keyId": null,
            "status": "SUCCESS",
            "codes": [],
            "requestId": null,
            "httpStatusCode": "OK",
            "overrideAuthLevelsReqd": null
        }
    }
}

VirtualAccPost

This API enables the user to get the virtual account transaction code.

SERVICE-CONSUMER = “OBSCFCM_OBVAM”

SERVICE-CONSUMER-SERVICE= “VirtualAccPost”

Request:
{
    "serviceConsumerServiceName": "VirtualAccPost ",
    "body": {
  "sourceCode" : "",
  "vatRequestDetServiceDTO" : [  {
    "reconRefNo" : "",
    "txnAccountBrn" : "",
    "blkReleaseStatus" : "",
    "forceDebit" : "N",
    "amtInTxnAccCcy" : "",
    "addlText" : "",
    "exchRate" : "",
    "ecaOrBlockRefNo" : "",
    "txnAccount" : "",
    "valueDate" : "",
    "txnAccountCcy" : "",
    "txnCcy" : "",
    "txnCode" : "",
    "ddaOffset" : "",
    "drCrInd" : "",
    "txnAmount" : ""
  }  ],
  "sourceReferenceNo" : ""
},
    "serviceConsumerName": "OBSCFCM_OBVAM"
}
Response:
{
“txnRefNo”:””,
“sourceReferenceNo”:””,
“transactionStatus”:””
}

CorporateDetails

This API enables the user to fetch corporate details for the given Virtual Account Number.

SERVICE-CONSUMER = “OBSCFCM_OBVAM”

SERVICE-CONSUMER-SERVICE= “CorporateDetails”

Request:
{
    "serviceConsumerServiceName": "CorporateDetails ",
    "body": {
        "branchCode": "006",
        "offset": 0,
        "limit": 0,
        "virtualAccountNo": "1000216"
    },
    "serviceConsumerName": "OBSCFCM_OBVAM"
}
Response:
{
    "headers": {},
    "body": {
        "data": {
            "data": [
                {
                    "branchCode": "HEL",
                    "virtualEntityId": "SDCVE02",
                    "virtualEntityName": "SDCVE02",
                    "realCustomerNo": "000462",
                    "defaultAccCcy": "GBP",
                    "virtualAccProduct": "DEF1",
                    "virtualAccountNo": "1000216",
                    "ibanRequired": "N",
                    "ibanAccNo": null,
                    "realAccountNo": null,
                    "virtualAccountName": "nehdemovaApril7",
                    "addressLine1": null,
                    "addressLine2": null,
                    "addressLine3": null,
                    "addressLine4": null,
                    "pincode": null,
                    "countryCode": null,
                    "accountPurpose": null,
                    "interestCalcReq": "N",
                    "accountFrozen": "N",
                    "balChkForDebits": "N",
                    "balAvailabilityOptions": "O",
                    "fixedAmtFromPool": null,
                    "overdraftAllowed": "N",
                    "fixedAmount": null,
                    "creditTxnsAllowed": "N",
                    "debitTxnsAllowed": "N",
                    "status": "A",
                    "realAccLinkage": "S",
                    "realAccountCcy": null,
                    "realAccountBrn": null,
                    "accOpenDate": "2020-06-02",
                    "accClosureDate": null,
                    "lastActivityDate": null,
                    "makerId": null,
                    "makerDateStamp": null,
                    "checkerId": null,
                    "checkerDateStamp": null,
                    "modNo": null,
                    "resourceId": null,
                    "unauthModNos": null,
                    "recordStatus": "O",
                    "authStatus": null,
                    "onceAuth": null,
                    "doerRemarks": null,
                    "approverRemarks": null,
                    "odStartDate": null,
                    "odEndDate": null,
                    "branchName": "HEL FC UNIVERSAL BANK",
                    "structureCode": null,
                    "virtualParentAcc": null,
                    "sanctionChkStatus": "Success",
                    "accLiqdAllowed": "N",
                    "StructuredAddressServiceDTO": null
                }
            ],
            "paging": {
                "totalResults": 1,
                "links": {
                    "next": null,
                    "prev": null
                }
            }
        },
        "messages": {
            "keyId": null,
            "status": "SUCCESS",
            "codes": [],
            "requestId": null,
            "httpStatusCode": "OK",
            "overrideAuthLevelsReqd": null
        }
    }
}

AccountProduct

This API enables the user to fetch Virtual Account Transaction Codes.

SERVICE-CONSUMER = “OBSCFCM_OBVAM”

SERVICE-CONSUMER-SERVICE= “AccountProduct”

Request:
{
    "serviceConsumerServiceName": "AccountProduct ",
    "body": {
        
        "offset": 0,
        "limit": 0
        
    },
    "serviceConsumerName": "OBSCFCM_OBVAM"
}
Response:
{
trnCode:””
}