Task #4493

BII RMBP: Server - Own Account Fund Transfer

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:-

OwnFundTransferIntegration.docx (17.4 KB) Ngoh Chee Onn, August 06, 2014 14:27

OwnFundTransferIntegration.docx (17.4 KB) Ngoh Chee Onn, August 07, 2014 15:45

OwnFundTransferIntegration.docx (19.8 KB) Ngoh Chee Onn, August 26, 2014 10:37

History

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

  • Status changed from New - Begin Life Cycle to Finished Development
  • Assignee changed from Ngoh Chee Onn to M Nurdin Norazan
  • % Done changed from 0 to 100

Hi Nurdin,

Development done for Server side Own Account Fund Transfer, you may call url below with adapter to get the restful response.

i)Module Own Fund Transfer Details Page(To get the from account, to account and currency list)
Path - http://121.121.18.49:9083/bii-rest/service/ownServices/processTransferDetails

Request Parameter - String locale, Long userId(can be get from login welcome module), String serviceInfoType

Response - fromAccountMap, buildToAccountsMap, currencyMap, serviceInfoBean

Sample input - en, 1551, FUNOWN

ii)Module Own Fund Transfer Confirm Page
Path - http://121.121.18.49:9083/bii-rest/service/ownServices/proceedOwnTransferConfirm

Request Parameter - String locale, String serviceInfoName, String fromAccountNumber, String toAccountNumber, String toCurrency, String toAmount, String fromCurrency, String sessionId, String selectedCurrency, Boolean isTacRequired, Boolean isStandingInstruction, String payMode(1=pay now, 2=pay later, 3=recurring payment)

Response - responseCode, debitAmountDis, fromCurrencyRate, toAmountDis, toCurrencyRate, etc

Sample input - en, Transfer Own Account, 2003500382, 1001328000, IDR, 3214, IDR, 20140703104656008130, IDR, false, false, 1

iii)Module Own Fund Transfer Result Page
Path - http://121.121.18.49:9083/bii-rest/service/ownServices/proceedOwnTransferResult

Request Parameter - String userAlias, String locale, String serviceInfoName, String fromAccountNumber, String toAccountNumber, String paymentMode, String toCurrency, String toAmount, String fromCurrency, String debitAmount, String remark, String localAmount, String fromCurrencyRate, String toCurrencyRate, Boolean tacRequired, String tacValue, String sessionId, Long userId, Date effectiveDate, String serviceInfoCode, String remoteIPAddress, Date terminationDate, String payFrequencyCode, String userAgent, Integer channel
*effectiveDate(only for payment mode = 2 and 3)
*terminationDate, payFrequencyCode(only for payment mode = 3)

Response - isTransactionSuccessful, fromAccountNumberMask, mobileNumber, receiptEN, receiptIN, referenceNumber and etc

Sample Input - ribuser, en, Transfer Own Account, 2003500382, 1001328000, 1, IDR, 3214, IDR, 3214, Testing only, 3214, 1, 1, false, "", 20140703104656008130, 1551, "", FUNOWN, 192.168.0.1, "", "", mobile, 2

Thank you.

#2 Updated by M Nurdin Norazan about 10 years ago

  • Status changed from Finished Development to Development / Work In Progress
  • % Done changed from 100 to 70

I got this error message when try to trigger this link, bii-rest/service/ownServices/proceedOwnTransferResult

{
"errors": [
"Runtime: Failed to parse JSON string\nUnrecognized field \"isTacRequired\" (Class net.penril.ib.middle.fundtransfer.own.request.IBOwnTransferResultRequestBean), not marked as ignorable\n at [Source: com.ibm.ws.webcontainer.srt.http.HttpInputStream@5d215d21; line: 1, column: 182] (through reference chain: net.penril.ib.middle.fundtransfer.own.request.IBOwnTransferResultRequestBean[\"isTacRequired\"])"
],
"info": [
],
"isSuccessful": false,
"warnings": [
]
}

#3 Updated by M Nurdin Norazan about 10 years ago

  • Tracker changed from Task to Bug
  • Assignee changed from M Nurdin Norazan to Ngoh Chee Onn

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

  • File OwnFundTransferIntegration.docx added
  • Tracker changed from Bug to Task
  • Status changed from Development / Work In Progress to Finished Development
  • Assignee changed from Ngoh Chee Onn to M Nurdin Norazan
  • % Done changed from 70 to 100

Hi nurdin,

Please refer attachment for the latest Own Fund Transfer Integration API.

Thank you.

#5 Updated by M Nurdin Norazan about 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
  • % Done changed from 100 to 0

Hi Chee Onn

I got this response from this procedure processTransferDetails, all null for fromAccountMap, toAccounts, currencyMap and serviceInfoBean.

{"filteredInterRegisteredAccounts":null,"fromAccountMap":null,"loggerErrorParams":null,"loggerServiceName":null,"toAccounts":null,"loggerResponseCode":"00","responseHeaders":{"Content-Language":"en-US","Transfer-Encoding":"chunked","Date":"Wed, 06 Aug 2014 08:32:23 GMT","Content-Type":"text/plain"},"serviceName":"general.","responseMessage":"Unexpected character ('o' (code 111)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')\n at [Source: java.io.StringReader@5d025d02; line: 1, column: 3]","statusCode":201,"currencyMap":null,"isSuccessful":true,"filteredRegisteredAccounts":null,"errorParams":null,"responseTime":92,"serviceInfoBean":null,"toForeignBankCode":null,"responseCode":"95","loggerErrorCode":null,"buildToAccountsMap":null,"responseID":"34","telegraphicTransferBankMap":null,"serviceInfoType":null,"statusReason":"Created","errorCode":"default","toForeignBankAddress3":null,"loggerResponseMessage":null,"toCountryMap":null,"interBankMap":null,"registeredAccounts":null,"foreignBankMap":null,"toForeignBankOID":null,"toForeignBankAddress2":null,"totalTime":92,"toForeignBankCountry":null,"toForeignBankName":null,"toForeignBankAddress1":null}

Please check. Thanks.

#6 Updated by M Nurdin Norazan about 10 years ago

test

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

  • File OwnFundTransferIntegration.docx added
  • Tracker changed from Bug to Task
  • Status changed from Development / Work In Progress to Finished Development
  • Assignee changed from Ngoh Chee Onn to M Nurdin Norazan
  • % Done changed from 0 to 100

This issue due to the parameter pass for link account in incorrect format, solve by stringify the object before send to server.

Hi nurdin,

Please refer attachment for the updated API document by changing the path name.

Thank you.

#8 Updated by M Nurdin Norazan about 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
  • % Done changed from 100 to 30

Hi Chee Onn

I got this error message after trigger proceedOwnTransferConfirm procedure.

{
"responseID": "53",
"errors": ["Runtime: Failed to parse JSON string\nError 404: Not Found"],
"isSuccessful": false,
"warnings": [],
"info": []
}

I'm afraid it cause from serviceInfo. It's not proper JSON format.

P.S: solution to proceedOwnTransferDetail procdure

http://stackoverflow.com/questions/25173636/ibm-worklight-parse-json-response

#9 Updated by M Nurdin Norazan about 10 years ago

Request userId for processOwnTransferResult procedure, can't find the response from any procedure inside loginaccess adapter. Please check. Thanks.

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

  • Status changed from Development / Work In Progress to Finished Development
  • Assignee changed from Ngoh Chee Onn to M Nurdin Norazan
  • % Done changed from 30 to 100

The userId is under customer profile name as restCustProfile getting from the login welcome procedure.

Thank you.

#11 Updated by M Nurdin Norazan about 10 years ago

  • Status changed from Finished Development to Development / Work In Progress
  • Assignee changed from M Nurdin Norazan to Ngoh Chee Onn
  • % Done changed from 100 to 70

I got this error for OwnFundtransferResult .

{
"loggerErrorParams": null,
"tranxDate": null,
"loggerServiceName": null,
"referenceNumber": null,
"loggerResponseCode": "00",
"responseHeaders": {
"Content-Language": "en-US",
"Transfer-Encoding": "chunked",
"Date": "Fri, 08 Aug 2014 02:59:13 GMT",
"Content-Type": "text/plain"
},
"serviceName": "general.",
"statusCode": 201,
"responseMessage": "Unexpected character ('r' (code 114)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')\n at [Source: java.io.StringReader@63916391; line: 1, column: 2]",
"fromAccountNumberMask": null,
"receiptIN": null,
"isSuccessful": true,
"receiptLink": null,
"errorParams": null,
"isTransactionSuccessful": null,
"transactionStatus": null,
"toAccountNumberMask": null,
"responseTime": 715,
"tranxTime": null,
"responseCode": "95",
"loggerErrorCode": null,
"statusMessage": null,
"responseID": "71",
"statusReason": "Created",
"receiptEN": null,
"errorCode": "default",
"loggerResponseMessage": null,
"mobileNumber": null,
"smsMessage": null,
"totalTime": 716
}

Please check. Thank you.

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

  • Assignee changed from Ngoh Chee Onn to M Nurdin Norazan

According to the log file, the error shown as below. It means that, the service info bean you post to server in wrong format. Please check the parameter you send back to server.

2014/08/08 10:59:12:977 ERROR service.fundtransfer.own.IBOwnServices: org.codehaus.jackson.JsonParseException: Unexpected character ('r' (code 114)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
at [Source: java.io.StringReader@63916391; line: 1, column: 2]
org.codehaus.jackson.JsonParseException: Unexpected character ('r' (code 114)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
at [Source: java.io.StringReader@63916391; line: 1, column: 2]
at org.codehaus.jackson.JsonParser._constructError(JsonParser.java:1432)
at org.codehaus.jackson.impl.JsonParserMinimalBase._reportError(JsonParserMinimalBase.java:385)
at org.codehaus.jackson.impl.JsonParserMinimalBase._reportUnexpectedChar(JsonParserMinimalBase.java:306)
at org.codehaus.jackson.impl.ReaderBasedParser._handleUnexpectedValue(ReaderBasedParser.java:1192)
at org.codehaus.jackson.impl.ReaderBasedParser.nextToken(ReaderBasedParser.java:479)
at org.codehaus.jackson.map.ObjectMapper._initForReading(ObjectMapper.java:2761)
at org.codehaus.jackson.map.ObjectMapper._readMapAndClose(ObjectMapper.java:2709)
at org.codehaus.jackson.map.ObjectMapper.readValue(ObjectMapper.java:1861)
at com.rest.rib.service.fundtransfer.own.IBOwnServices.proceedOwnTransferResultResponse(IBOwnServices.java:154)

Thank you.

#13 Updated by M Nurdin Norazan about 10 years ago

  • Assignee changed from M Nurdin Norazan to Ngoh Chee Onn

Where I can found all these values inside OwnAccountFundTransfer API ? Thanks

payMode(Integer), toCurrency(String), fromCurrency(String), debitAmount (String), localAmount(String), fromCurrencyRate(Integer), toCurrencyRate(Integer), terminationDate(String), payFrequencyCode(String)

Result for detail

{"accountRule":"1","accountCurrencyISO":"IDR","nickName":"","accountCurrency":"016","accountTypeDisplay":"","accountType":"","accountNo":"1001328000","accountHolderName":"LELY HERNAWATI"},{"accountRule":"1","accountCurrencyISO":"IDR","nickName":"","accountCurrency":"016","accountTypeDisplay":"","accountType":"","accountNo":"30000000100677","accountHolderName":"LELY HERNAWATI"},{"accountRule":"1","accountCurrencyISO":"IDR","nickName":"","accountCurrency":"016","accountTypeDisplay":"","accountType":"","accountNo":"2003500382","accountHolderName":"LELY HERNAWATI"}]
2014-08-14 16:14:46.875 Bii[12148:60b] [DEBUG] [NONE] Request [http://192.168.1.146:10080/bii-mobile/apps/services/api/rmbp/iphone/query]
2014-08-14 16:14:47.702 Bii[12148:60b] [DEBUG] [NONE] response [http://192.168.1.146:10080/bii-mobile/apps/services/api/rmbp/iphone/query] success: /*-secure- {"filteredInterRegisteredAccounts":null,"fromAccountMap":{"1":{"currecyCode":"016","accountNo":"2003500382","accountNoDisplay":"2003500382 CA IDR","accountHolderName":"LELY HERNAWATI","isocurrecyCode":"IDR"},"0":{"currecyCode":"016","accountNo":"1001328000","accountNoDisplay":"1001328000 SA IDR","accountHolderName":"LELY HERNAWATI","isocurrecyCode":"IDR"}},"loggerErrorParams":null,"restToAccountsMap":null,"loggerServiceName":null,"toAccounts":null,"loggerResponseCode":"00","responseHeaders":{"Content-Language":"en-US","Transfer-Encoding":"chunked","Date":"Thu, 14 Aug 2014 08:14:47 GMT","Content-Type":"text\/plain"},"serviceName":null,"restFilteredInterRegisteredAccounts":null,"responseMessage":null,"statusCode":201,"currencyMap":{"039":"USD","021":"CAD","034":"SGD","047":"EUR","040":"DEM","032":"NZD","024":"GBP","025":"HKD","017":"AUD","016":"IDR","029":"JPY"},"isSuccessful":true,"filteredRegisteredAccounts":null,"errorParams":null,"responseTime":616,"serviceInfoBean":{"offlineMessage":"<p>FUNOWN<\/p>","minimumSmsAmount":"0","smsCharges":"0","serviceInfoCode":"FUNOWN","operationStartTime":"0830","weekend":true,"rewardMultiplier":"0.00","operationHour":false,"tableLimit":"0","rewardBase":"0","smsNote2":null,"charges":null,"smsNote1":null,"status":"0","smsServiceBit":1,"operationEndTime":"1500","denominator":"0","minLimit":"999999999","serviceType":null,"smsNote4":null,"serviceInfoName":"Transfer Own Account","smsNote3":null,"si":true,"smsNote5":null,"mainNote3":null,"mainNote4":null,"mainNote5":null,"mainNote6":null,"futureTransactionFlag":false,"maxLimit":"0","tacRequired":false,"mainNote1":"<p>*Choose the account and amount you'd like to transfer to<\/p>","mainNote2":null},"toForeignBankCode":null,"responseCode":"00","loggerErrorCode":null,"restFilteredRegisteredAccounts":null,"buildToAccountsMap":{"1":{"currecyCode":"016","accountNo":"2003500382","accountNoDisplay":"2003500382 CA IDR","accountHolderName":"2003500382","isocurrecyCode":"IDR"},"0":{"currecyCode":"016","accountNo":"1001328000","accountNoDisplay":"1001328000 SA IDR","accountHolderName":"1001328000","isocurrecyCode":"IDR"}},"responseID":"196","telegraphicTransferBankMap":null,"serviceInfoType":"FUNOWN","statusReason":"Created","errorCode":null,"loggerResponseMessage":null,"toForeignBankAddress3":null,"toCountryMap":null,"interBankMap":null,"foreignBankMap":null,"registeredAccounts":null,"toForeignBankAddress2":null,"toForeignBankOID":null,"totalTime":657,"toForeignBankCountry":null,"toForeignBankName":null,"toForeignBankAddress1":null}

Result for confirm

{"loggerErrorParams":null,"fromCurrencyRate":1,"loggerServiceName":null,"tacBean":null,"loggerResponseCode":"00","responseHeaders":{"Content-Language":"en-US","Transfer-Encoding":"chunked","Date":"Thu, 14 Aug 2014 08:13:54 GMT","Content-Type":"text\/plain"},"serviceName":"general.","statusCode":201,"responseMessage":null,"isSuccessful":true,"debitAmount":null,"toAmount":null,"localAmountDis":null,"errorParams":null,"responseTime":80,"debitAmountDis":null,"responseCode":"95","loggerErrorCode":null,"responseID":"194","payMode":null,"toCurrencyRate":1,"toAmountDis":null,"statusReason":"Created","errorCode":"default","loggerResponseMessage":null,"totalTime":113,"localAmount":null}

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

  • Assignee changed from Ngoh Chee Onn to M Nurdin Norazan

Hi nurdin,

May i know which service you refer, details, confirm or result?

Thank you.

#15 Updated by M Nurdin Norazan about 10 years ago

  • Assignee changed from M Nurdin Norazan to Ngoh Chee Onn

Hi Chee Onn

I refer to service result. Only these 4.

toCurrency(String), fromCurrency(String), terminationDate(String), payFrequencyCode(String)

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

  • Assignee changed from Ngoh Chee Onn to M Nurdin Norazan

Hi nurdin,

Please refer below:
toCurrency - You already get the currency map from details page, the currency map is use for the user to select which currency he/she need to be transfer. It selected by the user.

fromCurrency - get it from the fromAccountMap on details page. It depend on the user to select which account to be use.

terminationDate - This already mention on the document, termination date is the date when the user wan termination the SI service and it only use for payment mode 3. Payment mode is the payment method selected by the user on details page. It already inside the document (1=pay now, 2=pay later, 3=recurring).

payFrequencyCode - This already mention on the document, is a SI pay method by week, day or month and it only use for payment mode 3. Payment mode is the payment method selected by the user on details page. It already inside the document (1=pay now, 2=pay later, 3=recurring).

Thank you.

#17 Updated by M Nurdin Norazan about 10 years ago

  • Tracker changed from Bug to Task
  • Status changed from Development / Work In Progress to Finished Development
  • % Done changed from 70 to 100

Completed

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

Hi Nurdin,

Add in request TAC services for this module, please refer attachment document in yellow highlighted for the changes.

Thank you.

#19 Updated by Tan Lee Yong almost 10 years ago

  • Status changed from Finished Development to Work Completed-End life cycle

Also available in: Atom PDF