9<\/td> | seqNr<\/td> | numeric<\/td> | <\/td> | <\/td> | <\/td><\/tr><\/tbody><\/table>\n\n\n\nSample Success Response<\/strong><\/p>\n\n\n\n{ “responseCode”:”00″, “responseMessage”:”Successful”, “data”:{\u200b\u200b\u200b\u200b\u200b\u200b\u200b\u200b “pan”:”5063210000000005255″, “seqNr”:”001″, “defaultAccountType”:”20″, “expiryDate”:”2407″, “pinOffset”:”7928″, “cvv”:”829″, “cvv2″:”801”, “pinInfo”:”AC47A9D62D435C76″, “track2″:”5063210000000005255=2407101007928829”, “customerId”:”PC5063215255-001″ }\u200b\u200b\u200b\u200b\u200b\u200b\u200b\u200b<\/p>\n\n\n\n }<\/p>\n\n\n\n Sample Failed Response<\/strong><\/p>\n\n\n\n{ “responseCode”: “W104”, “responseMessage”: “A card already exists for this customer on this domain”, “errors”: [] }<\/p>\n\n\n\n Block Virtual Card Endpoint<\/strong><\/h4>\n\n\n\nPOST {scheme}:\/\/{host}:{port}\/virtual-card\/api\/v1\/cards\/block<\/td><\/tr><\/tbody><\/table>\n\n\n\n Request Type is application\/json<\/p>\n\n\n\n Authorization: {passport generated bearer token}<\/p>\n\n\n\n Request Message description<\/h4>\n\n\n\nField#<\/th> | Field name<\/th> | Data type<\/th> | Max length<\/th> | Required<\/th> | Description<\/th><\/tr><\/thead> |
---|
1<\/td> | mobileNumber<\/td> | String<\/td> | 25<\/td> | Yes<\/td> | <\/td><\/tr> | 2<\/td> | pin<\/td> | Numeric<\/td> | 4<\/td> | Yes<\/td> | <\/td><\/tr> | 3<\/td> | cardIdentifier<\/td> | String<\/td> | 100<\/td> | Yes<\/td> | This is a name to identify each card attached to the same account<\/td><\/tr><\/tbody><\/table>\n\n\n\n Plain Sample Request<\/strong><\/p>\n\n\n\n{ “pin”:”1234″, “mobileNumber”:”2348055186175″, “cardIdentifier” : “my-card” }<\/p>\n\n\n\n Encrypted Sample Request<\/strong><\/h4>\n\n\n\n{ “data”:”T4DZPBE42uzXl61X+3D47lTyB1uXkvgTY\/Q2ATx5\/A2Qm\/8fAlkbJbMtmpGciO” }<\/p>\n\n\n\n Sample Success Response<\/strong><\/p>\n\n\n\n{ “responseCode”: “00”, “responseMessage”: “Successful”, “data”: { “maskedPan”: “506321*********5396” } }<\/p>\n\n\n\n Sample Failed Response<\/strong><\/p>\n\n\n\n{ “responseCode”: “W102”, “responseMessage”: “Failed to complete request”, “errors”: [ { “fieldName”: null<\/strong>, “code”: “E39”, “message”: “No Card acceptor ID has been defined for this client.” } ] }<\/p>\n\n\n\nUnblock Virtual Card Endpoint<\/strong><\/h4>\n\n\n\nPOST {scheme}:\/\/{host}:{port}\/virtual-card\/api\/v1\/cards\/unblock<\/td><\/tr><\/tbody><\/table>\n\n\n\n Request Type is application\/json<\/p>\n\n\n\n Authorization: {passport generated bearer token}<\/p>\n\n\n\n Request Message description<\/h4>\n\n\n\nField#<\/th> | Field name<\/th> | Data type<\/th> | Max length<\/th> | Required<\/th> | Description<\/th><\/tr><\/thead> |
---|
1<\/td> | mobileNumber<\/td> | String<\/td> | 25<\/td> | Yes<\/td> | <\/td><\/tr> | 2<\/td> | pin<\/td> | Numeric<\/td> | 4<\/td> | Yes<\/td> | <\/td><\/tr> | 3<\/td> | cardIdentifier<\/td> | String<\/td> | 100<\/td> | Yes<\/td> | This is a name to identify each card attached to the same account<\/td><\/tr><\/tbody><\/table>\n\n\n\n Plain Sample Request<\/strong><\/p>\n\n\n\n{ “pin”:”1234″, “mobileNumber”:”2348055186175″, “cardIdentifier” : “my-card” }<\/p>\n\n\n\n Encrypted Sample Request<\/strong><\/h4>\n\n\n\n{ “data”:”T4DZPBE42uzXl61X+3D47lTyB1uXkvgTY\/Q2ATx5\/A2Qm\/8fAlkbJbMtmpGciOCIO” }<\/p>\n\n\n\n Sample Success Response<\/strong><\/p>\n\n\n\n{ “responseCode”: “00”, “responseMessage”: “Successful”, “data”: { “maskedPan”: “506321*********5396” } }<\/p>\n\n\n\n Sample Failed Response<\/strong><\/p>\n\n\n\n{ “responseCode”: “W102”, “responseMessage”: “Failed to complete request”, “errors”: [ { “fieldName”: null<\/strong>, “code”: “E39”, “message”: “No Card acceptor ID has been defined for this client.” } ] }<\/p>\n\n\n\nChange Card Pin Endpoint – This endpoint must be called after successful card creation to activate the card.<\/strong><\/h4>\n\n\n\nPOST {scheme}:\/\/{host}:{port}\/virtual-card\/api\/v1\/cards\/change-pin<\/td><\/tr><\/tbody><\/table>\n\n\n\nAuthorization: {passport generated bearer token}<\/h4>\n\n\n\nRequest Message description<\/h4>\n\n\n\nField#<\/th> | Field name<\/th> | Data type<\/th> | Max length<\/th> | Required<\/th> | Description<\/th><\/tr><\/thead> |
---|
1<\/td> | mobileNumber<\/td> | String<\/td> | 25<\/td> | Yes<\/td> | <\/td><\/tr> | 2<\/td> | oldPin<\/td> | Numeric<\/td> | 4<\/td> | Yes<\/td> | This is a default pin configured on the client end that was used to create the card. After the successful activation, subsequent call to this endpoint, the user old pin will then be passed.<\/td><\/tr> | 3<\/td> | newPin<\/td> | Numeric<\/td> | 4<\/td> | Yes<\/td> | This is the user’s preferred pin. <\/td><\/tr> | 4<\/td> | cardIdentifier<\/td> | String<\/td> | 100<\/td> | Yes<\/td> | This is a name to identify each card attached to the same account<\/td><\/tr><\/tbody><\/table>\n\n\n\n Plain Sample Request<\/strong><\/p>\n\n\n\n{ “newPin”:”1234″, “oldPin”:”1234″, “mobileNumber”:”2348055186175″, “cardIdentifier” : “my-card” }<\/p>\n\n\n\n Encrypted Sample Request<\/strong><\/h4>\n\n\n\n{ “data”:”T4DZPBE42uzXl61X+3D47lTyB1uXkvgTY\/Q2ATx5\/A2Qm\/8fAlkbJbzcgajBbad1\/pbC8QUf7oYZ1rVqQ\/Kghyi0aC5tIyL2h3ul\/jiPyjEmb18I0xTSz3w==” }<\/p>\n\n\n\n Sample Success Response<\/strong><\/p>\n\n\n\n{ “responseCode”: “00”, “responseMessage”: “Successful”, “data”: { “maskedPan”: “506321*********5396” } }<\/p>\n\n\n\n Sample Failed Response<\/strong><\/p>\n\n\n\n{ “responseCode”: “W102”, “responseMessage”: “Failed to complete request”, “errors”: [ { “fieldName”: null<\/strong>, “code”: “E39”, “message”: “No Card acceptor ID has been defined for this client.” } ] }<\/p>\n\n\n\nGet Card balance Endpoint<\/strong><\/h4>\n\n\n\nPOST {scheme}:\/\/{host}:{port}\/virtual-card\/api\/v1\/cards\/card-balance<\/td><\/tr><\/tbody><\/table>\n\n\n\n Request Type is application\/json<\/p>\n\n\n\n Authorization: {passport generated bearer token}<\/p>\n\n\n\n Request Message description<\/h4>\n\n\n\nField#<\/th> | Field name<\/th> | Data type<\/th> | Max length<\/th> | Required<\/th> | Description<\/th><\/tr><\/thead> |
---|
1<\/td> | mobileNumber<\/td> | String<\/td> | 25<\/td> | Yes<\/td> | <\/td><\/tr> | 2<\/td> | cardIdentifier<\/td> | String<\/td> | 100<\/td> | Yes<\/td> | This is a name to identify each card attached to the same account<\/td><\/tr><\/tbody><\/table>\n\n\n\n Sample Request<\/strong><\/p>\n\n\n\n{ “mobileNumber” : “2348065186175”, “cardIdentifier” : “my-card” }<\/p>\n\n\n\n Sample Success Response<\/strong><\/p>\n\n\n\n{ “responseCode”: “00”, “responseMessage”: “Successful”,<\/p>\n\n\n\n “data”:{<\/p>\n\n\n\n “ledgerBalance”:”00″,<\/p>\n\n\n\n “availableBalance”:”0.00″,<\/p>\n\n\n\n “cashLimit”:”0.00″,<\/p>\n\n\n\n “cashNrTransLimit”:”0.00″,<\/p>\n\n\n\n “paymentLimit”:”0.00″,<\/p>\n\n\n\n “paymentNrTransLimit”:”0.00″,<\/p>\n\n\n\n “depositCreditLimit”:”0.00″<\/p>\n\n\n\n }<\/p>\n\n\n\n }<\/p>\n\n\n\n Sample Failed Response<\/strong><\/p>\n\n\n\n{ “responseCode”: “W102”, “responseMessage”: “Failed to complete request”, “errors”: [ { “fieldName”: null, “code”: “10400”, “message”: “Bad request Error 1: pan-> not a valid card number” } ] }<\/p>\n\n\n\n Get Account Statement Endpoint<\/strong><\/h4>\n\n\n\nPOST {scheme}:\/\/{host}:{port}\/virtual-card\/api\/v1\/cards\/account-statement<\/td><\/tr><\/tbody><\/table>\n\n\n\n Request Type is application\/json<\/p>\n\n\n\n Authorization: {passport generated bearer token}<\/p>\n\n\n\n Request Message description<\/h4>\n\n\n\nField#<\/th> | Field name<\/th> | Data type<\/th> | Max length<\/th> | Required<\/th> | Description<\/th><\/tr><\/thead> |
---|
1<\/td> | fromDate<\/td> | String<\/td> | <\/td> | Yes<\/td> | <\/td><\/tr> | 2<\/td> | toDate<\/td> | String<\/td> | <\/td> | Yes<\/td> | <\/td><\/tr> | 3<\/td> | transCount<\/td> | Integer<\/td> | <\/td> | Yes<\/td> | <\/td><\/tr> | 4<\/td> | reference<\/td> | Integer<\/td> | <\/td> | Yes<\/td> | <\/td><\/tr> | 5<\/td> | forward<\/td> | Integer<\/td> | <\/td> | Yes<\/td> | <\/td><\/tr> | 6<\/td> | ordering<\/td> | Integer<\/td> | <\/td> | Yes<\/td> | <\/td><\/tr> | 7<\/td> | mobileNumber<\/td> | String<\/td> | <\/td> | Yes<\/td> | <\/td><\/tr> | 8<\/td> | cardIdentifier<\/td> | String<\/td> | 100<\/td> | Yes<\/td> | This is a name to identify each card attached to the same account<\/td><\/tr><\/tbody><\/table>\n\n\n\n Sample Request<\/strong><\/p>\n\n\n\n{ “fromDate” : “03\/05\/2018”, “toDate” : “03\/05\/2018”, “transCount” : 10, “reference” : 1, “forward” : 1, “ordering” : 1, “mobileNumber” : “2348065186175”, “cardIdentifier” : “my-card” }<\/p>\n\n\n\n Sample Success Response<\/strong><\/p>\n\n\n\n{ “responseCode”: “00”, “responseMessage”: “Successful”, “data”: { “statementRecords”: [ { “tranType”: “50”, “tranAmount”: “-23250”, “tranLocalDatetime”: “1406497152000”, “tranPostedDatetime”: “1406497152230”, “cardAcceptorNameLocation”: “QTBPWCGMO\/ayo\/999923430 LANG” }, { “tranType”: “50”, “tranAmount”: “-20000”, “tranLocalDatetime”: “1406497152005”, “tranPostedDatetime”: “1406497152210”, “cardAcceptorNameLocation”: “QTBPWCGMO\/ayo\/999923430 LANG” } ] } }<\/p>\n\n\n\n Sample Failed Response<\/strong><\/p>\n\n\n\n{ “responseCode”: “W102”, “responseMessage”: “Failed to complete request”, “errors”: [ { “fieldName”: null, “code”: “10400”, “message”: “Bad request Error 1: pan-> not a valid card number” } ] }<\/p>\n\n\n\n Get Customer Details Endpoint<\/strong><\/h4>\n\n\n\nGET {scheme}:\/\/{host}:{port}\/virtual-card\/api\/v1\/cards\/customer-details<\/td><\/tr><\/tbody><\/table>\n\n\n\n Request Type is application\/json<\/p>\n\n\n\n Authorization: {passport generated bearer token}<\/p>\n\n\n\n Header Message description<\/h4>\n\n\n\nField#<\/th> | Field name<\/th> | Data type<\/th> | Max length<\/th> | Required<\/th> | Description<\/th><\/tr><\/thead> |
---|
1<\/td> | mobileNumber<\/td> | String<\/td> | <\/td> | Yes<\/td> | <\/td><\/tr><\/tbody><\/table>\n\n\n\nSample Response<\/strong><\/p>\n\n\n\n{ “responseCode”: “00”, “responseMessage”: “Successful”, “data”: { “customer”:{<\/p>\n\n\n\n “id”: 1, “createdAt”: “2021-07-22 13:59:19”, “updatedAt”: null<\/strong>, “firstName”:”John”, “lastName”:”Doe”, “nameOnCard”:”John Doe”, “mobileNumber”:”234807564996655″, “gender”:”Male”, “email”:”john.doe@interswitchgroup.com”, “streetAddress”:”7 Ako Awo Street”, “streetAddressLine2″:”7 Ako Awo Street”<\/p>\n\n\n\n },<\/p>\n\n\n\n “domain”:{<\/p>\n\n\n\n “id”: 1, “createdAt”: “2021-07-22 13:59:19”, “updatedAt”: null<\/strong>, “domainCode”:”FBN”, “clientId”:”virtual-card”, “domainName”:”First bank”, “issuerNr”:”2″, “currencyCode”:”NGN”, “cardProgram”:”UAT wallet”, “channel”:”quicktellermobile”, “merchantId”:”QTMOBILE1IZTTIS”, “enabled”:true<\/p>\n\n\n\n },<\/p>\n\n\n\n “cardDetails”: [ { “cardIdentifier”: “default”, “maskedPan”: “506321*********0545”, “status”: “unblocked” }, { “cardIdentifier”: “my-card”, “maskedPan”: “506321*********1733”, “status”: “unblocked” } ]<\/p>\n\n\n\n } }<\/p>\n\n\n\n
Get Card Details Endpoint<\/strong><\/h4>\n\n\n\nGET {scheme}:\/\/{host}:{port}\/virtual-card\/api\/v1\/cards\/card-details<\/td><\/tr><\/tbody><\/table>\n\n\n\n Request Type is application\/json<\/p>\n\n\n\n Authorization: {passport generated bearer token}<\/p>\n\n\n\n Header Message description<\/h4>\n\n\n\nField#<\/th> | Field name<\/th> | Data type<\/th> | Max length<\/th> | Required<\/th> | Description<\/th><\/tr><\/thead> |
---|
1<\/td> | mobileNumber<\/td> | String<\/td> | <\/td> | Yes<\/td> | <\/td><\/tr> | 2<\/td> | cardIdentifier<\/td> | String<\/td> | 100<\/td> | Yes<\/td> | This is a name to identify each card attached to the same account<\/td><\/tr><\/tbody><\/table>\n\n\n\n Sample Response<\/strong><\/p>\n\n\n\n{ “responseCode”: “00”, “responseMessage”: “Successful”, “data”: { “safeTokenStatus”: “SUCCESSFUL”,<\/p>\n\n\n\n “payPhoneStatus”: “SUCCESSFUL”,<\/p>\n\n\n\n “maskedPan”: “506321*********5396”,<\/p>\n\n\n\n “currencyCode”: “NGN”,<\/p>\n\n\n\n “seqNr”: “001”,<\/p>\n\n\n\n “pan”: “5063210987654345396”,<\/p>\n\n\n\n “cvv”: “333”,<\/p>\n\n\n\n “cvv2”: “233”,<\/p>\n\n\n\n “expiry”: “2501”, <\/p>\n\n\n\n “status”: “unblocked”<\/p>\n\n\n\n } }<\/p>\n","protected":false},"author":4618,"featured_media":0,"parent":4074,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"spay_email":""},"doc_tag":[],"_links":{"self":[{"href":"https:\/\/sandbox.interswitchng.com\/docbase\/wp-json\/wp\/v2\/docs\/4075"}],"collection":[{"href":"https:\/\/sandbox.interswitchng.com\/docbase\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/sandbox.interswitchng.com\/docbase\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/sandbox.interswitchng.com\/docbase\/wp-json\/wp\/v2\/users\/4618"}],"replies":[{"embeddable":true,"href":"https:\/\/sandbox.interswitchng.com\/docbase\/wp-json\/wp\/v2\/comments?post=4075"}],"version-history":[{"count":10,"href":"https:\/\/sandbox.interswitchng.com\/docbase\/wp-json\/wp\/v2\/docs\/4075\/revisions"}],"predecessor-version":[{"id":4290,"href":"https:\/\/sandbox.interswitchng.com\/docbase\/wp-json\/wp\/v2\/docs\/4075\/revisions\/4290"}],"up":[{"embeddable":true,"href":"https:\/\/sandbox.interswitchng.com\/docbase\/wp-json\/wp\/v2\/docs\/4074"}],"next":[{"title":"Enrollment","link":"https:\/\/sandbox.interswitchng.com\/docbase\/docs\/card-management\/enrollment\/","href":"https:\/\/sandbox.interswitchng.com\/docbase\/wp-json\/wp\/v2\/docs\/4100"}],"wp:attachment":[{"href":"https:\/\/sandbox.interswitchng.com\/docbase\/wp-json\/wp\/v2\/media?parent=4075"}],"wp:term":[{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/sandbox.interswitchng.com\/docbase\/wp-json\/wp\/v2\/doc_tag?post=4075"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|