6.3 Consumer Services - Oracle FLEXCUBE Universal Banking

This topic describes about the consumer services required for Oracle FLEXCUBE Universal Banking Implementation.

The below endpoints must be configured under Consumer Services in Oracle Banking Routing Hub:
  1. CreateEcablk
  2. CloseEcablk
  3. CreateExtAccEcaEntries
  4. CreateQueryPricing

Figure 6-3 Consumer Services - FLEXCUBE Banking



CreateEcablk

This API enables the user to create ECA block for debit accounts.

SERVICE-CONSUMER = “OBSCF_FCUBS”

SERVICE-CONSUMER-SERVICE= “CreateEcablk”

Request:

{
    "serviceConsumerServiceName": "CreateEcablk",
    "body": {
        "branchCode": "004",
        "ecaSize": {
            "1": {
                "forceBlk": "",
                "partialBlkReqd": "",
                "reqBlkAmt": 1270,
                "custAcBrn": "004",
                "custAccCcy": "USD",
                "action": null,
                "custAcNo": "0040006410050"
            }
        },
        "createExtRefNo": "R2022-10-053340",
        "ecaDetails": [
            {
                "forceBlk": "",
                "partialBlkReqd": "",
                "reqBlkAmt": 1270,
                "custAcBrn": "004",
                "custAccCcy": "USD",
                "action": null,
                "custAcNo": "0040006410050"
            }
        ],
        "updaSerrIfAnyFail": "Y",
        "brn": "004"
    },
    "serviceConsumerName": "OBSCF_FCUBS"
}

Response:

 {
    "headers": {},
    "body": {
        "data": {
            "txnStatus": "A",
            "warningCode": [
                {
                    "warningCode": "CA-ECA12",
                    "warningDesc": "Effective date has been defaulted to today"
                },
                {
                    "warningCode": "ST-SAVE-052",
                    "warningDesc": "Successfully Saved and Authorized"
                }
            ],
            "createExtRefNno": "R2022-10-053340",
            "updasErrIfAnyFail": "Y",
            "ecaRefNo": "ECA177198",
            "errorCode": [],
            "ecaDetails": [
                {
                    "blkRefNo": "ECABLK40017",
                    "approvedBlkAmt": "1270",
                    "outstandingBlkAmt": "1270",
                    "reqBlkAmt": "1270",
                    "custAcNo": "0040006410050",
                    "ecaRefNo": "ECA177198",
                    "ecaDetailsLog": [
                        {
                            "outStandingAmount": "1270",
                            "reqBlkAmountLog": "1270",
                            "txnAmountLog": "1270",
                            "custAcNo": "0040006410050",
                            "ecaRefNo": "ECA177198",
                            "amt": "1270",
                            "ecaErrOvdLog": []
                        }
                    ]
                }
            ],
            "effectiveDate": "2021-03-27",
            "status": "SUCCESS"
        },
        "messages": {
            "keyId": null,
            "status": "SUCCESS",
            "codes": [],
            "requestId": null,
            "httpStatusCode": "OK",
            "overrideAuthLevelsReqd": null
        }
    }
}

CloseEcablk

This API enables the user to cancel the ECA block if the transaction is rejected or rolled back.

SERVICE-CONSUMER = “OBSCF_FCUBS”

SERVICE-CONSUMER-SERVICE= “CloseEcablk”

Request
{
    "serviceConsumerServiceName": "CloseEcablk",
    "body": {
        "branchCode": "004",
        "trnRefNo": "R2022-10-0548984",
        "txnBrn": "004",
        "ecaSize": {
            "1": {
                "custAcBrn": "004",
                "custAccCcy": "GBP",
                "ecaRefNo": "ECA177630",
                "custAcNo": "GBP1119999999",
                "brn": "004"
            }
        },
        "uniqueExtRefno": "R2022-10-0548984",
        "ecaRefNo": "ECA177630",
        "referralAllowed": "Y",
        "ecaDetails": [
            {
                "custAcBrn": "004",
                "custAccCcy": "GBP",
                "ecaRefNo": "ECA177630",
                "custAcNo": "GBP1119999999",
                "brn": "004"
            }
        ],
        "event": "INIT"
    },
    "serviceConsumerName": "OBSCF_FCUBS"
}
Response:
{
    "headers": {},
    "body": {
        "data": {
            "txnStatus": "K",
            "warningCode": [
                {
                    "warningCode": "ST-SAVE-060",
                    "warningDesc": "Successfully Closed And Authorized"
                }
            ],
            "createExtRefNno": "R2022-10-0597144",
            "updasErrIfAnyFail": "Y",
            "ecaRefNo": "ECA177630",
            "errorCode": [],
            "effectiveDate": "2021-03-27",
            "status": "SUCCESS"
        },
        "messages": {
            "keyId": null,
            "status": "SUCCESS",
            "codes": [],
            "requestId": null,
            "httpStatusCode": "OK",
            "overrideAuthLevelsReqd": null
        }
    }
}

CreateExtAccEcaEntries

This API enables the user to post accounting entries to FCUBS after the transaction is authorized or reverse the accounting entries in case the transaction is rolled back.

SERVICE-CONSUMER = “OBSCF_FCUBS”

SERVICE-CONSUMER-SERVICE= “CreateExtAccEcaEntries”

Request:
 {
   
    "serviceConsumerServiceName": "CreateExtAccEcaEntries",
    "body": {
        "branchCode": "004",
        "trnRefNo": "R2022-10-0573407",
        "txnBrn": "004",
        "uniqueExtRefno": "R2022-10-0573407",
        "event": "INIT",
        "accPostMap": {
            "1": {
                "id": "1182591265587810304",
                "refNo": "004081223CACC280",
                "seqNo": null,
                "accountingEntryCode": "CASH_COLL_CR",
                "drCrIndicator": "D",
                "amountCcy": "GBP",
                "amount": 1000,
                "actualPostingAmt": null,
                "accountCcy": "GBP",
                "amountAccCcy": 1000,
                "accountNo": "988623460",
                "amountType": "CONS_TXN_AMT",
                "exchangeRate": 1,
                "status": null,
                "accRoleCode": "CMS_COLLCASH_POOL",
                "accPartyType": null,
                "accPartyId": null,
                "accSettMethod": "INTERNAL_GL",
                "accEntrySeq": 1,
                "accRoleDesc": "Cms Collection Cash Pool",
                "accEntryDesc": "Cash Collection Credit",
                "accType": "G",
                "ecaRefNo": null,
                "eventSrNo": 1,
                "externalAccount": null,
                "paymentMode": null,
                "externalAccountCcy": null,
                "externalBankId": null,
                "externalBankName": null,
                "externalBranchCode": null,
                "externalBranchName": null,
                "externalBranchRoutingCode": null,
                "stage": null,
                "makerId": "OBCMUSER2",
                "makererDateStamp": 1701993600000,
                "checkerId": null,
                "checkerDateStamp": null,
                "additionalField1": null,
                "additionalField2": null,
                "additionalField3": null,
                "additionalField4": null,
                "additionalField5": null,
                "additionalField6": null,
                "additionalField7": null,
                "additionalField8": null,
                "additionalField9": null,
                "additionalField10": null,
                "applicationCode": "OBCM",
                "eventCode": "POOLING",
                "valueDate": 1664928000000,
                "processingDate": 1664928000000,
                "txnBranchCode": "004",
                "productCode": "CASH",
                "postingRefNo": null,
                "postingStatus": null,
                "ecaStatus": null,
                "postingErrorCode": null,
                "ecaErrorCode": null,
                "blkRefNo": null,
                "accClass": null,
                "vaContraAccountNo": null,
                "vamPostingRefNo": null,
                "vamPostingStatus": null,
                "clearingRefNo": null,
                "paymentStatus": null,
                "paymentRefNo": null,
                "extPmtErrorCode": null,
                "lcyAmt": 1000,
                "fcyAmt": 1000,
                "relatedRef": "0000000508",
                "acNo": "988623460",
                "isRolloverApplicable": false,
                "trnCode": "000"
            },
            "2": {
                "id": "1182591265667502080",
                "refNo": "004081223CACC280",
                "seqNo": null,
                "accountingEntryCode": "CASH_COLL_CR",
                "drCrIndicator": "C",
                "amountCcy": "GBP",
                "amount": 1000,
                "actualPostingAmt": null,
                "accountCcy": "GBP",
                "amountAccCcy": 1000,
                "accountNo": "GBP1119999999",
                "amountType": "CONS_TXN_AMT",
                "exchangeRate": 1,
                "status": null,
                "accRoleCode": "CUST_ACC",
                "accPartyType": "C",
                "accPartyId": "000380",
                "accSettMethod": "CUST_A/C",
                "accEntrySeq": 1,
                "accRoleDesc": "Customer Account",
                "accEntryDesc": "Cash Collection Credit",
                "accType": "C",
                "ecaRefNo": null,
                "eventSrNo": 1,
                "externalAccount": null,
                "paymentMode": null,
                "externalAccountCcy": null,
                "externalBankId": null,
                "externalBankName": null,
                "externalBranchCode": null,
                "externalBranchName": null,
                "externalBranchRoutingCode": null,
                "stage": null,
                "makerId": "OBCMUSER2",
                "makererDateStamp": 1701993600000,
                "checkerId": null,
                "checkerDateStamp": null,
                "additionalField1": null,
                "additionalField2": null,
                "additionalField3": null,
                "additionalField4": null,
                "additionalField5": null,
                "additionalField6": null,
                "additionalField7": null,
                "additionalField8": null,
                "additionalField9": null,
                "additionalField10": null,
                "applicationCode": "OBCM",
                "eventCode": "POOLING",
                "valueDate": 1664928000000,
                "processingDate": 1664928000000,
                "txnBranchCode": "004",
                "productCode": "CASH",
                "postingRefNo": null,
                "postingStatus": null,
                "ecaStatus": null,
                "postingErrorCode": null,
                "ecaErrorCode": null,
                "blkRefNo": null,
                "accClass": null,
                "vaContraAccountNo": null,
                "vamPostingRefNo": null,
                "vamPostingStatus": null,
                "clearingRefNo": null,
                "paymentStatus": null,
                "paymentRefNo": null,
                "extPmtErrorCode": null,
                "lcyAmt": 1000,
                "fcyAmt": 1000,
                "relatedRef": "0000000508",
                "acNo": "GBP1119999999",
                "isRolloverApplicable": false,
                "trnCode": "000"
            }
        }
    },
    "serviceConsumerName": "OBSCF_FCUBS"
}
Response:
{
    "headers": {},
    "body": {
        "data": {
            "warningCode": [
                {
                    "warningCode": "ST-SAVE-052",
                    "warningDesc": "Successfully Saved and Authorized"
                }
            ],
            "errorCode": [],
            "grpRefNo": "941477",
            "status": "SUCCESS"
        },
        "messages": {
            "keyId": null,
            "status": "SUCCESS",
            "codes": [],
            "requestId": null,
            "httpStatusCode": "OK",
            "overrideAuthLevelsReqd": null
        }
    }
}

CreateQueryPrice

This API enables the user to calculate charge pricing if external pricing method is applicable.

SERVICE-CONSUMER = “OBSCFCM_FCUBS”

SERVICE-CONSUMER-SERVICE= “CreateQueryPrice”

Request:
{ 
  "serviceConsumerServiceName" : "CreateQueryPrice",
  "body" : {
    "priceMethods" : [ {
      "externalCharge" : null,
      "partyId" : "000380",
      "chargeCode" : "DOC",
      "partyToCharge" : "BUY",
      "priceMethod" : null,
      "priceRuleId" : null,
      "charge" : null,
      "chargeCcy" : "USD",
      "chargeSharing" : "N",
      "exchangeRate" : null,
      "minMaxValidationCriteria" : null,
      "maxChgAmount" : null,
      "maxChgPct" : null,
      "minChgAmount" : null,
      "minChgPct" : null,
      "externalPricingApplicable" : "Y",
      "externalPricingSystem" : "FCUBS",
      "externalPricingConsumerService" : "OBSCFCM_FCUBS",
      "externalPrcId" : null,
      "externalPrcDesc" : null
    } ],
    "txnRefNo" : "004030423PR00271",
    "txnAttributes" : [ {
      "attrName" : "ID",
      "attrValue" : "1098478904887623680"
    }, {
      "attrName" : "FINANCEREFNO",
      "attrValue" : "004030423PR00271"
    }, {
      "attrName" : "SEQNO",
      "attrValue" : "1.0"
    }, {
      "attrName" : "REQUESTID",
      "attrValue" : "R0304230373"
    }, {
      "attrName" : "BRANCHCODE",
      "attrValue" : "004"
    }, {
      "attrName" : "PRODUCTCODE",
      "attrValue" : "PRD2"
    }, {
      "attrName" : "OPERATIONCODE",
      "attrValue" : "DISBURSEMENT"
    }, {
      "attrName" : "PROGRAMCODE",
      "attrValue" : "PROGRAM2"
    }, {
      "attrName" : "ISADHOCTXN",
      "attrValue" : "N"
    }, {
      "attrName" : "PROGRAMNAME",
      "attrValue" : "This is PROGRAM2"
    }, {
      "attrName" : "BUYERID",
      "attrValue" : "000380"
    }, {
      "attrName" : "BUYERNAME",
      "attrValue" : "Carrefour"
    }, {
      "attrName" : "SUPPLIERID",
      "attrValue" : "000381"
    }, {
      "attrName" : "SUPPLIERNAME",
      "attrValue" : "Danone"
    }, {
      "attrName" : "DEBTOR",
      "attrValue" : "000380"
    }, {
      "attrName" : "DEBTORNAME",
      "attrValue" : "Carrefour"
    }, {
      "attrName" : "STARTDATE",
      "attrValue" : "2023-04-03"
    }, {
      "attrName" : "TENOR",
      "attrValue" : "17.0"
    }, {
      "attrName" : "MATURITYDATE",
      "attrValue" : "2023-04-20"
    }, {
      "attrName" : "TOTALINSTRUMENTAMTCCY",
      "attrValue" : "USD"
    }, {
      "attrName" : "TOTALINSTRUMENTAMT",
      "attrValue" : "50.0"
    }, {
      "attrName" : "FINANCEPCT",
      "attrValue" : "100.0"
    }, {
      "attrName" : "FINANCEAMTCCY",
      "attrValue" : "USD"
    }, {
      "attrName" : "FINANCEAMT",
      "attrValue" : "0.0"
    }, {
      "attrName" : "EXCHANGERATE",
      "attrValue" : "1.0"
    }, {
      "attrName" : "PROCESSINGDATE",
      "attrValue" : "2023-04-03"
    }, {
      "attrName" : "MAKERID",
      "attrValue" : "SRUDRACH"
    }, {
      "attrName" : "PASTDUEDATE",
      "attrValue" : "2023-04-20"
    }, {
      "attrName" : "PRODUCTDESCRIPTION",
      "attrValue" : "This is PRD2"
    }, {
      "attrName" : "PRODUCTCATEGORY",
      "attrValue" : "INV"
    }, {
      "attrName" : "MAXTENORALLOWED",
      "attrValue" : "999.0"
    }, {
      "attrName" : "MINTENORALLOWED",
      "attrValue" : "1.0"
    }, {
      "attrName" : "MINFINPCT",
      "attrValue" : "1.0"
    }, {
      "attrName" : "MAXFINPCT",
      "attrValue" : "100.0"
    }, {
      "attrName" : "HOLIDAYTREATMENT",
      "attrValue" : "NCH"
    }, {
      "attrName" : "PRODUCTTYPE",
      "attrValue" : "B"
    }, {
      "attrName" : "PREFERREDDISBURSEMENTMODE",
      "attrValue" : "ACCOUNT_TRANSFER"
    }, {
      "attrName" : "STAGEID",
      "attrValue" : "Processing"
    }, {
      "attrName" : "GRACEDAYS",
      "attrValue" : "0.0"
    }, {
      "attrName" : "STALESTATUS",
      "attrValue" : "Y"
    }, {
      "attrName" : "MINFINANCIABLEAMT",
      "attrValue" : "0.0"
    }, {
      "attrName" : "MAXFINANCIABLEAMT",
      "attrValue" : "50.0"
    }, {
      "attrName" : "MINREFINPCT",
      "attrValue" : "0.0"
    }, {
      "attrName" : "MAXREFINPCT",
      "attrValue" : "100.0"
    }, {
      "attrName" : "WITHRECOURSE",
      "attrValue" : "Y"
    }, {
      "attrName" : "TOTALMARGINAMOUNT",
      "attrValue" : "50.0"
    }, {
      "attrName" : "INTERESTBEARINGPARTYROLE",
      "attrValue" : "B"
    }, {
      "attrName" : "INTCALCBASISAMT",
      "attrValue" : "0.0"
    }, {
      "attrName" : "ODINTCALCBASISAMT",
      "attrValue" : "0.0"
    }, {
      "attrName" : "PENINTCALCBASISAMT",
      "attrValue" : "0.0"
    }, {
      "attrName" : "DOCREFNO",
      "attrValue" : "004030423PR00271"
    } ],
    "applicationCode" : null
  },
  "serviceConsumerName" : "OBSCFCM_FCUBS"
}
Response:
{
    "headers": {},
    "body": {
        "data": {
            "edes": [],
            "warningCode": [
                {
                    "warningCode": "ST-SAVE-002",
                    "warningDesc": "Record Successfully Saved and Authorized"
                }
            ],
            "sourceSystem": "FCUBS",
            "customerAccNo": "",
            "errorCode": [],
            "rpRefNo": "004CURP21086001P",
            "priceCompCodes": "DOC",
            "currency2": "USD",
            "productCode": "PRD2",
            "rateDetails": [],
            "exchangeRateDetails": [],
            "txnRefNo": "004030423PR00271",
            "feeDetails": [
                {
                    "calculatedValue": "10",
                    "characteristicValue": "CHARGE",
                    "priceCcy": "USD",
                    "priceCompCode": "DOC",
                    "varianceType": "FIXED AMOUNT",
                    "errorCode": "",
                    "errorDescription": ""
                }
            ],
            "currency": "USD",
            "moduleId": "IC",
            "customerNo": "000242"
        },
        "messages": {
            "keyId": null,
            "status": "SUCCESS",
            "codes": [],
            "requestId": null,
            "httpStatusCode": "OK",
            "overrideAuthLevelsReqd": null
        }
    }
}