Bug #4504

BII RMBP: Server - Bill Payment Special Services

Added by Tan Lee Yong about 10 years ago. Updated almost 10 years ago.

Status:Work Completed-End life cycleStart date:June 30, 2014
Priority:NormalDue date:
Assignee:M Nurdin Norazan% Done:

100%

Category:Server API DevelopmentSpent time:-
Target version:-

SpecialBillPaymentIntegration.docx (31.4 KB) Ngoh Chee Onn, August 25, 2014 10:13

Screen Shot 2014-09-23 at 6.30.22 PM.png (68.7 KB) M Nurdin Norazan, September 23, 2014 18:30

History

#1 Avatar?id=1966&size=24 Updated by Ngoh Chee Onn about 10 years ago

  • Assignee changed from Ngoh Chee Onn to Rayvandy Gabbytian

#2 Avatar?id=1966&size=24 Updated by Ngoh Chee Onn about 10 years ago

  • File SpecialBillPaymentIntegration.docx added
  • Status changed from New - Begin Life Cycle to Finished Development
  • Assignee changed from Rayvandy Gabbytian to M Nurdin Norazan
  • % Done changed from 0 to 100

Hi Nurdin,

Development for this services done, please refer attachment for the integration API document.

Thank you.

#3 Updated by M Nurdin Norazan almost 10 years ago

  • Tracker changed from Task to Bug
  • Status changed from Finished Development to Development / Work In Progress
  • Assignee changed from M Nurdin Norazan to Ngoh Chee Onn

Hi Chee Onn

I found bug on Special Bill payment Utility confirm page, if I select other than PAM PALYJA value, it will throw response 99.

And where I can find tacValue for Special Bill payment utility result page?

Thank you

#4 Avatar?id=1966&size=24 Updated by Ngoh Chee Onn almost 10 years ago

  • Assignee changed from Ngoh Chee Onn to M Nurdin Norazan

Hi Nurdin,

For the special bill payment you can only select PAM PALYJA and Telkom Speedy Flexi YesTV for testing, due others selection the mockup host message we are using is not updated cause some data from host missing. I will try to update the mockup data later. Please use this 2 selection for temporary.
The tacValue parameter is the tac input by user after successful request the tac, you may check on the request tac method.

Thank you.

#5 Updated by M Nurdin Norazan almost 10 years ago

  • Assignee changed from M Nurdin Norazan to Ngoh Chee Onn

Hi Chee Onn

It same goes to Special Bill payment Mobile confirm page. Only Indosat Postpaid gives response 00. Please check.

Thank you.

#6 Updated by M Nurdin Norazan almost 10 years ago

  • % Done changed from 100 to 80

Hi Chee Onn

How I can get cifNo for Special Bill payment mobile result page because tacBean is false?

Thank you

#7 Updated by M Nurdin Norazan almost 10 years ago

Hi Chee Onn

What is different between Special Bill payment Credit Card pre confirm page for user to select payment mode and Special Bill payment Credit Card confirm page? How I can relate with Bii demo site?

Thank you.

#8 Avatar?id=1966&size=24 Updated by Ngoh Chee Onn almost 10 years ago

  • Assignee changed from Ngoh Chee Onn to M Nurdin Norazan
  • % Done changed from 80 to 100

Hi Nurdin,

For the Special Bill payment Mobile same issue as Utility. What you means by tacBean is false? TacBean is a bean to store all the parameter need send for request tac, it not a boolean.
Special bill payment Credit Card you may refer flow as below:
executeSelectCreditCardPayee(Only get serviceInfoBean no display page) --> executeCreditCardDetail(Get fromAccount) --> executeCreditCardPreConfirm(Get payment mode list) --> executeCreditCardConfirm(Confirm your information and request tac) --> executeCreditCardResult(Get transaction status)

Thank you.

#9 Updated by M Nurdin Norazan almost 10 years ago

  • Assignee changed from M Nurdin Norazan to Ngoh Chee Onn

Hi Chee Onn

How I can get smsServiceBean for Special Bill payment mobile result page ? I got tacRequired is false and tacBean is null.

Thank you.

#10 Avatar?id=1966&size=24 Updated by Ngoh Chee Onn almost 10 years ago

  • Assignee changed from Ngoh Chee Onn to M Nurdin Norazan

Hi Nurdin,

If the tac required is false, you no need to request tac and passing the all tac parameter and smsServiceBean on result page. You must do a checking on mobile side and disable the request tac button when i passing the serviceInfoBean to you which content the tacRequired is false.

Thank you.

#11 Updated by M Nurdin Norazan almost 10 years ago

  • Assignee changed from M Nurdin Norazan to Ngoh Chee Onn

Hi Chee Onn

In Special Bill payment mobile result page, I got this error message, not-null property references a null or transient value: net.penril.ibss.core.hibernate.IbBillPayment.billAccNo. In your documentation doesn't have billAccNo . Can you test it for me? If successful, can you give me the latest parameter input for that API??

Thank you

#12 Avatar?id=1966&size=24 Updated by Ngoh Chee Onn almost 10 years ago

  • Assignee changed from Ngoh Chee Onn to M Nurdin Norazan

Hi Nurdin,

Please refer below for the response get from restful webservices just now and parameter post to restful webservices.

{
"delegationErrorParams": null,
"details": null,
"errorCode": null,
"errorParams": null,
"favPayeeKey": "153",
"fromAccount": "******0382",
"isSuccessful": true,
"loggerErrorCode": null,
"loggerErrorParams": null,
"loggerResponseCode": "00",
"loggerResponseMessage": null,
"loggerServiceName": null,
"mobileNumber": "6288210696800",
"payeeFullName": "Indosat Postpaid",
"payeeKey": "Indosat Postpaid",
"receipt": {
"Jam Transaksi": "12:09:52",
"Jenis Tagihan": "Indosat Postpaid",
"Jumlah": "IDR 17,818,141.00",
"Nomor Handphone": "023405513151314",
"Nomor Referensi Bill": "0000015940",
"Status": "Successful",
"Tanggal Transaksi": "24\/09\/2014",
"Tipe Transaksi": "Mobile Postpaid Payment"
},
"receiptEN": {
"Amount": "IDR 17,818,141.00",
"Bill Reference No.": "0000015940",
"Mobile Number": "023405513151314",
"Payee Corporation": "Indosat Postpaid",
"Status": "Successful",
"Transaction Date": "24\/09\/2014",
"Transaction Time": "12:09:52",
"Transaction Type": "Mobile Postpaid Payment"
},
"receiptLink": "\/common\/ibReceipt.do?formBeanName=fbSpecialBillPayment&viewBeanName=viewBean&transferType=payment",
"responseCode": "00",
"responseHeaders": {
"Content-Language": "en-US",
"Content-Type": "text\/plain",
"Date": "Wed, 24 Sep 2014 04:09:52 GMT",
"Transfer-Encoding": "chunked"
},
"responseMessage": null,
"responseTime": 910,
"serviceName": null,
"smsMessage": "BII Internet Banking: Bill Payment - 016 1.7818141E7 Successful on 24 Sep 2014 12:09:52. Call Customer Care 69811 for inquiries. TQ.",
"statusCode": 201,
"statusMessage": "",
"statusReason": "Created",
"toAccount": "023405513151314",
"totalTime": 1000,
"transactionDate": "24\/09\/2014",
"transactionReferenceNumber": "0000015940",
"transactionStatus": "Successful",
"transactionSuccessful": true,
"transactionTime": "12:09:52"
}

function executeMobileResult() {
path = "bii-rest/service/billSpecialServices/executeMobileResult";

var input = {
method : 'post',
returnedContentType : 'json',
path : path,
body:{
contentType:'application/json; charset=UTF-8',
content:
JSON.stringify({
"locale":"en",
"fromAccountNumber":"2003500382",
"fromCurrency":"016",
"fromCurrencyCode":"016",
"userId":1551,
"cifNo":"0005967176",
"userFullName":"EKO SUGIANTORO",
"additionalData":"000300 1107A000001 000000035000TELKOMSEL POSTPAID 00",
"tacSentDateTime":"",
"tacValue":"",
"sessionId":"20140924115754009446",
"payeeCode":"000700",
"payeeKey":"Indosat Postpaid",
"userAgent":"Iphone5",
"billInfoMap":billInfoMapMobile,
"monetaryMap":monetaryMapMobile,
"serviceInfoBean":serviceInfoBeanMobile,
"smsServiceBean":null,
})
}
};
return WL.Server.invokeHttp(input);
}

Thank you.

#13 Updated by M Nurdin Norazan almost 10 years ago

  • Assignee changed from M Nurdin Norazan to Ngoh Chee Onn

Hi Chee Onn

Can you check for me for Special Bill payment Credit Card confirm page. I got response 99 using inputs below.

paymentMode::1
creditCardNumber::54016012345
creditCardHolderName::E.ANIS YASA
productCode:: 000100
fullAmount::17818141.00
expiryDate::0913
serviceInfoBean::{"offlineMessage":null,"minimumSmsAmount":"0","smsCharges":null,"serviceInfoCode":"BILLCREDIT","operationStartTime":"0830","weekend":true,"rewardMultiplier":"0.00","operationHour":false,"tableLimit":"0","rewardBase":"0","smsNote2":null,"charges":null,"smsNote1":null,"status":"0","smsServiceBit":0,"operationEndTime":"1500","denominator":"0","minLimit":"0","serviceType":null,"smsNote4":null,"serviceInfoName":"BII Credit Card Payment","smsNote3":null,"si":true,"smsNote5":null,"mainNote3":null,"mainNote4":null,"mainNote5":null,"mainNote6":null,"futureTransactionFlag":false,"maxLimit":"0","tacRequired":false,"mainNote1":null,"mainNote2":null}
fromAccountMap::{"0":{"currecyCode":"016","accountNo":"1001328000","accountNoDisplay":"1001328000 SA IDR","accountHolderName":"LELY HERNAWATI","isocurrecyCode":"IDR"},"1":{"currecyCode":"016","accountNo":"2003500382","accountNoDisplay":"2003500382 CA IDR","accountHolderName":"LELY HERNAWATI","isocurrecyCode":"IDR"}}
fromAccountNumber::0
sessionId::20140924182023009463
userId::1551

Thank you

#14 Avatar?id=1966&size=24 Updated by Ngoh Chee Onn almost 10 years ago

  • Assignee changed from Ngoh Chee Onn to M Nurdin Norazan

Hi Nurdin,

I already try call restful webservice with the same parameter on my side, i get response as below:

{
"additionalData": "0001000913",
"amountCurrency": "016",
"billInfoMap": {
"Bill Amount": "IDR 17,818,141.00",
"Card Holder Name": "E.ANIS YASA",
"Credit Card Number": "54016012345"
},
"chargeAmount": "0",
"debitAmount": "17,818,141.00",
"delegationErrorParams": null,
"equDefaultAmount": "17,818,141.00",
"errorCode": null,
"errorParams": null,
"fromCurrency": "016",
"isSuccessful": true,
"loggerErrorCode": null,
"loggerErrorParams": null,
"loggerResponseCode": "00",
"loggerResponseMessage": null,
"loggerServiceName": null,
"monetaryMap": {
"Amount to be Paid": "IDR 17,818,141.00",
"IDR Equivalent Debited ": "IDR 17,818,141.00",
"Total Amount to be Debited": "IDR 17,818,141.00",
"Transfer \/ Administration Fee ": "IDR 0.00"
},
"multiBillMap": {
},
"responseCode": "00",
"responseHeaders": {
"Content-Language": "en-US",
"Content-Type": "text\/plain",
"Date": "Wed, 24 Sep 2014 10:39:52 GMT",
"Transfer-Encoding": "chunked"
},
"responseMessage": null,
"responseTime": 421,
"serviceName": null,
"statusCode": 201,
"statusReason": "Created",
"tacBean": null,
"toAmount": "17818141.00",
"totalTime": 421
}

Here are my post content:
function executeCreditCardConfirm() {
path = "bii-rest/service/billSpecialServices/executeCreditCardConfirm";

var input = {
method : 'post',
returnedContentType : 'json',
path : path,
body:{
contentType:'application/json; charset=UTF-8',
content:
JSON.stringify({
"locale":"en",
"paymentMode":"1",
"creditCardNumber":"54016012345",
"creditCardHolderName":"E.ANIS YASA",
"productCode":"000100",
"fullAmount":"17818141.00",
"expiryDate":"0913",
"serviceInfoBean":serviceInfoBeanCredit,//get from previous page
"fromAccountMap":fromAccounts,//get from details page
"fromAccountNumber":"0",
"sessionId":"20140924183053009464",
"userId":1551,
})
}
};
return WL.Server.invokeHttp(input);
}

Thank you.

#15 Updated by M Nurdin Norazan almost 10 years ago

  • Assignee changed from M Nurdin Norazan to Ngoh Chee Onn

Hi Chee Onn

I can't test the API for right now. Maybe server issue. Please check.

Thank you.

#16 Updated by M Nurdin Norazan almost 10 years ago

Hi Chee Onn

I already try several times testing on Special Bill payment Credit Card confirm page but still response 99. Already compare my serviceInfoBean and fromAccountMap with your document, no differences using http://tlrobinson.net/projects/javascript-fun/jsondiff. Can i know your values for serviceInfoBean and fromAccountMap on your side?

serviceInfoBean

{
    "charges": null,
    "denominator": "0",
    "futureTransactionFlag": false,
    "mainNote1": null,
    "mainNote2": null,
    "mainNote3": null,
    "mainNote4": null,
    "mainNote5": null,
    "mainNote6": null,
    "maxLimit": "0",
    "minLimit": "0",
    "minimumSmsAmount": "0",
    "offlineMessage": null,
    "operationEndTime": "1500",
    "operationHour": false,
    "operationStartTime": "0830",
    "rewardBase": "0",
    "rewardMultiplier": "0.00",
    "serviceInfoCode": "BILLCREDIT",
    "serviceInfoName": "BII Credit Card Payment",
    "serviceType": null,
    "si": true,
    "smsCharges": null,
    "smsNote1": null,
    "smsNote2": null,
    "smsNote3": null,
    "smsNote4": null,
    "smsNote5": null,
    "smsServiceBit": 0,
    "status": "0",
    "tableLimit": "0",
    "tacRequired": false,
    "weekend": true
}

fromAccountMap

{
    "0": {
        "accountHolderName": "LELY HERNAWATI",
        "accountNo": "2003500382",
        "accountNoDisplay": "2003500382  CA IDR",
        "currecyCode": "016",
        "isocurrecyCode": "IDR" 
    },
    "1": {
        "accountHolderName": "LELY HERNAWATI",
        "accountNo": "1001328000",
        "accountNoDisplay": "1001328000  SA IDR",
        "currecyCode": "016",
        "isocurrecyCode": "IDR" 
    }
}

Thank you.

#17 Avatar?id=1966&size=24 Updated by Ngoh Chee Onn almost 10 years ago

  • Assignee changed from Ngoh Chee Onn to M Nurdin Norazan

Hi Nurdin,

Please refer below for my fromAccounts and serviceInfoBean.

var fromAccounts = JSON.stringify({
"0": {
"accountHolderName": "LELY HERNAWATI",
"accountNo": "1001328000",
"accountNoDisplay": "1001328000 SA IDR",
"currecyCode": "016",
"isocurrecyCode": "IDR"
},
"1": {
"accountHolderName": "LELY HERNAWATI",
"accountNo": "2003500382",
"accountNoDisplay": "2003500382 CA IDR",
"currecyCode": "016",
"isocurrecyCode": "IDR"
}
});

var serviceInfoBeanCredit = JSON.stringify({
"charges": null,
"denominator": "0",
"futureTransactionFlag": false,
"mainNote1": null,
"mainNote2": null,
"mainNote3": null,
"mainNote4": null,
"mainNote5": null,
"mainNote6": null,
"maxLimit": "0",
"minLimit": "0",
"minimumSmsAmount": "0",
"offlineMessage": null,
"operationEndTime": "1500",
"operationHour": false,
"operationStartTime": "0830",
"rewardBase": "0",
"rewardMultiplier": "0.00",
"serviceInfoCode": "BILLCREDIT",
"serviceInfoName": "BII Credit Card Payment",
"serviceType": null,
"si": true,
"smsCharges": null,
"smsNote1": null,
"smsNote2": null,
"smsNote3": null,
"smsNote4": null,
"smsNote5": null,
"smsServiceBit": 0,
"status": "0",
"tableLimit": "0",
"tacRequired": false,
"weekend": true
});

Thank you.

#18 Updated by Tan Lee Yong almost 10 years ago

  • Status changed from Development / Work In Progress to Work Completed-End life cycle

Also available in: Atom PDF