0% found this document useful (0 votes)
36 views12 pages

Sandbox Documentation Guideline - Bank Statement

The document outlines the testing guidelines for the Mandiri API Sandbox 3.0, detailing the expected activities and documentation format for test cases. It specifies the requirements for capturing requests and responses, including necessary headers and body content, as well as the expected error codes and messages for various scenarios. Successful testing is contingent upon passing all outlined test cases and adhering to the documentation standards provided.

Uploaded by

zeal.two62
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
36 views12 pages

Sandbox Documentation Guideline - Bank Statement

The document outlines the testing guidelines for the Mandiri API Sandbox 3.0, detailing the expected activities and documentation format for test cases. It specifies the requirements for capturing requests and responses, including necessary headers and body content, as well as the expected error codes and messages for various scenarios. Successful testing is contingent upon passing all outlined test cases and adhering to the documentation standards provided.

Uploaded by

zeal.two62
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

Test Case Document

Mandiri API
Sandbox 3.0 Doc v3.1
Guideline on the Expected Sandbox Activity
Sandbox 3.0 Doc v3.1 Bank Statement

Notes :
1. Make sure perform all the test case
2. Sandbox testing will be considered as passed if all the test case passed
3. Make sure your test documentation is following the provided documentation guideline
Guideline on the Expected Sandbox Documentation
1 Open the postman console then click the restore down icon

2 - Set the postman console window as big as half of your screen


- Do the screen capture within this desired postman console window
size

3 - The expected documentation should be in landscape format and contain


4 columns : No, Test Case, Request and Response
- Put test case set being reported & your company name on top of the
document
- Place the screen capture of Request and Response on the documentation
for each of prepared test case
- Make sure the screen capture contain all of the important parts as
explained on the next page
- For non postman tools, make sure all of the expected parts are reported
and easy to be read (no need to zoom in)
Request Part
1 2 Important Part on Request Documentation
3 1. Make sure the screen capture contain full path of the endpoint
being tested
2. Make sure the screen capture contain the HTTP response
3. Make sure the screen capture contain the complete header
request. If the complete request header can’t be captured within
1 shot, please do another shot and override the incomplete part.
4. Make sure the screen capture contain the complete body
request. If the complete body request can’t be captured within 1
shot, please do another shot and override the incomplete part.

Postman console
Response Part
Important Part on Response Documentation
1 1. Make sure the screen capture contain the complete body
response. If the complete body response can’t be captured
within 1 shot, please do another shot and override the
incomplete part.
Postman console
No Service Scenario Expected Result Request Response Result Notes
3,1 Bank Statement Access Token Invalid Error Code: 401xx01 Header To produce this error, make sure the signature
Error Message: "Access Token Invalid" X-PARTNER-ID : SANDBOX { encryption is correct although the token is
Authorization: Bearer asd "responseCode": "4011401", "responseMessage": "Invalid Token (B2B)" invalid/expired
}
X-EXTERNAL-ID : 401001

Body
{
"accountNo": "60004400184",
"fromDateTime":"2022-05-17T00:00:21+07:00",
"toDateTime":"2022-05-17T10:20:40+07:00"
}
3,2 Bank Statement Unauthorized . Signature Error Code: 401xx00 Header
Error Message: "Unauthorized Signature" X-PARTNER-ID : SANDBOX {
X-SIGNATURE: asd "responseCode": "4011400",
X-EXTERNAL-ID : 401002 "responseMessage": "Unauthorized. Invalid X-SIGNATURE"
}
Body
{
"accountNo": "60004400184",
"fromDateTime":"2022-05-17T00:00:21+07:00",
"toDateTime":"2022-05-17T10:20:40+07:00"
}
3,3 Bank Statement Unauthorized . stringToSign Error Code: 401xx00 Header
Error Message: "Unauthorized X-PARTNER-ID : SANDBOX {
"responseCode": "4011400",
stringToSign" X-SIGNATURE: asd
"responseMessage": "Unauthorized. Invalid X-SIGNATURE"
X-EXTERNAL-ID : 401003 }

Body
{
"accountNo": "60004400184",
"fromDateTime":"2022-05-17T00:00:21+07:00",
"toDateTime":"2022-05-17T10:20:40+07:00"
}
3,4 Get Access Token Unauthorized . Unknown Error Code: 401xx00 {
Client Error Message: "Unauthorized Client" Header "responseCode": "4017300",
X-Client-Key : asd "responseMessage": "Unauthorized. Invalid X-CLIENT-KEY"
}
Body
{
"grantType":"client_credentials"
}
3,5 Bank Statement Missing Mandatory Field {} …, Error Code: 400xx02
etc Error Message: "Missing Mandatory Field Header {
{........}" X-PARTNER-ID : SANDBOX "responseCode": "4001402",
X-EXTERNAL-ID : 400001 "responseMessage": "Invalid Mandatory Field pageNumber"
}
Body
{
"accountNo":"1150097011284",
"fromDateTime":"2022-05-17T00:00:21+07:00",
"toDateTime":"2022-05-17T10:20:40+07:00"
}
3,6 Bank Statement Invalid Field Format {} .., etc Error Code: 400xx01
Error Message: "Invalid Field Format Header {
{........}" X-PARTNER-ID : SANDBOX "responseCode": "4001401",
X-EXTERNAL-ID : 400002 "responseMessage": "Invalid Field Format accountNo"
}
Body
{
"accountNo":"Yuou",
"fromDateTime":"2022-05-17T00:00:21+07:00",
"toDateTime":"2022-05-17T10:20:40+07:00",
"additionalInfo":
{
"pageNumber":"1"
}
}
3,7 Bank Statement Cannot use the same X- Error Code: 409xx01 -To perform this test, please use sample data
EXTERNAL-ID Error Message: "Conflict" Header { provided
X-PARTNER-ID : SANDBOX "responseCode": "4091400", - To avoid this error in real case, please make
X-EXTERNAL-ID : 409001 "responseMessage": "Conflict" sure always using unique X-EXTERNAL-ID value
} for any request
Body
{
"accountNo":"1150097011284",
"fromDateTime":"2022-05-17T00:00:21+07:00",
"toDateTime":"2022-05-17T10:20:40+07:00",
"additionalInfo":
{
"pageNumber":"1"
}
}
3,8 Bank Statement Menampilkan mutasi rekening Response Code: 2001400 {
yang terjadi dalam kurun Response Message: "success" Header "responseCode": "2001400",
waktu tertentu X-PARTNER-ID : SANDBOX "responseMessage": "Success",
X-EXTERNAL-ID : 20000113 "referenceNo": "99123306822680418",
"hasMore": "N",
"detailData": [
Body
{
{ "amount": {
"accountNo": "1150097011284", "currency": "IDR",
"fromDateTime": "2022-05-18T00:00:00+07:00", "value": "3210405393.00"
"toDateTime": "2022-05-19T14:00:00+07:00", },
"additionalInfo": "transactionDate": "2022-05-19T21:49:31+07:00",
{ "type": "DEBIT",
"pageNumber": "1" "transactionId": "22051999124990029298",
} "remark": "756183471124124",
"transactionDetailStatus": "SUCCESS",
}
"detailInfo": {
"EFTDescription": "TEST SNAP RTGS",
"transactionDescription": null,
"sourceAccount": "1150097011284",
"sourceAccountName": "CH000006000049470",
"sourceBankCode": "008",
"sourceBankName": "MANDIRI",
"destinationAccount": "799102000045001",
"destinationAccountName": "TEST SNAP RTGS",
"destinationBankCode": "014"
}
},
{
"amount": {
"currency": "IDR",
"value": "11000.00"
},
"transactionDate": "2022-05-19T21:47:42+07:00",
"type": "DEBIT",
"transactionId": "22051999123310065318",
"remark": "timeout_test",
"transactionDetailStatus": "SUCCESS",
"detailInfo": {
"EFTDescription": "KE 1040004133430",
"transactionDescription": null,
"sourceAccount": "1150097011284",
"sourceAccountName": "CH000006000049470",
"sourceBankCode": "008",
"sourceBankName": "MANDIRI",
"destinationAccount": "1040004133430",
"destinationAccountName": "SU000038000945390",
"destinationBankCode": "008"
}
},
{
"amount": {
"currency": "IDR",
"value": "101000002.00"
},
"transactionDate": "2022-05-19T18:17:29+07:00",
"type": "DEBIT",
"transactionId": "22051999124990029292",
"remark": "756183471124124",
"remark": "756183471124124",
"transactionDetailStatus": "SUCCESS",
"detailInfo": {
"EFTDescription": "TEST SNAP RTGS",
"transactionDescription": null,
"sourceAccount": "1150097011284",
"sourceAccountName": "CH000006000049470",
"sourceBankCode": "008",
"sourceBankName": "MANDIRI",
"destinationAccount": "799102000044901",
"destinationAccountName": "TEST SNAP RTGS",
"destinationBankCode": "014"
}
},
{
"amount": {
"currency": "IDR",
"value": "100100000.00"
},
"transactionDate": "2022-05-19T18:15:31+07:00",
"type": "DEBIT",
"transactionId": "22051999124990029290",
"remark": "756183471124124",
"transactionDetailStatus": "SUCCESS",
"detailInfo": {
"EFTDescription": "TEST SNAP RTGS",
"transactionDescription": null,
"sourceAccount": "1150097011284",
"sourceAccountName": "CH000006000049470",
"sourceBankCode": "008",
"sourceBankName": "MANDIRI",
"destinationAccount": "799102000044801",
"destinationAccountName": "TEST SNAP RTGS",
"destinationBankCode": "014"
}
}
]
}

3,9 Bank Statement Mengakses mutasi rekening Error Code: 4031418


account yang sudah tutup Error Message: "Inactive Account" Header {
X-PARTNER-ID : SANDBOX "responseCode": "4041411",
X-EXTERNAL-ID : 404001 "responseMessage": "Invalid Account"
}
Body
{
"accountNo": "1390094033542",
"fromDateTime": "2022-05-17T10:00:00+07:00",
"toDateTime": "2022-05-17T14:00:00+07:00",
"additionalInfo": {
"pageNumber": "1"
}
}
3,10 Bank Statement Tanggal berakhir lebih besar Error Code: 4041401
dari tanggal hari ini Error Message: "Transaction Not Found" Header {
X-PARTNER-ID : SANDBOX "responseCode": "4041401",
X-EXTERNAL-ID : 404002 "responseMessage": "Transaction Not Found"
}
Body
{
"accountNo": "1150097011284",
"fromDateTime": "2022-05-19T10:00:00+07:00",
"toDateTime": "2022-05-30T14:00:00+07:00",
"additionalInfo": {
"pageNumber": "1"
}
}
3,11 Bank Statement Tanggal mulai lebih besar dari Error Code: 4041401
tanggal berakhir Error Message: "Transaction Not Found" Header {
X-PARTNER-ID : SANDBOX "responseCode": "4041401",
X-EXTERNAL-ID : 404003 "responseMessage": "Transaction Not Found"
}
Body
{
"accountNo": "1150097011284",
"fromDateTime": "2022-05-20T00:00:00+07:00",
"toDateTime": "2022-05-19T14:00:00+07:00",
"additionalInfo": {
"pageNumber": "1"
}
}
3,12 Bank Statement Daftar mutasi rekening Error Code: 4041401
melewati batas waktu kurun Error Message: "Transaction Not Found" Header {
waktu yang ditentukan X-PARTNER-ID : SANDBOX "responseCode": "4041401",
X-EXTERNAL-ID : 404004 "responseMessage": "Transaction Not Found"
}
Body
{
"accountNo": "1150097011284",
"fromDateTime": "2022-05-17T10:00:00+07:00",
"toDateTime": "2023-05-17T14:00:00+07:00",
"additionalInfo": {
"pageNumber": "1"
}
}
3,13 Bank Statement Request Timeout Error Code: 5041400
Error Message: "Request Timeout" Header {
X-PARTNER-ID : SANDBOX "responseCode": "5041400",
X-EXTERNAL-ID : 504001 "responseMessage": "Timeout"
}
Body
{
"accountNo": "1150097011284",
"fromDateTime": "2022-05-19T10:00:00+07:00",
"toDateTime": "2022-05-20T14:00:00+07:00",
"additionalInfo": {
"pageNumber": "1"
}
}
3,14 Bank Statement Success - Today "responseCode": "2001400" { - posting time from last record on previous call was
Transaction Inquiry CASA "responseMessage": "Success" Header "responseCode": "2001400", 13:04:10.0Z, thus call the API with given
Page 2 X-PARTNER-ID : SANDBOX "responseMessage": "Success", information to retrieve the next 10 records
X-EXTERNAL-ID : 200002 "data": [
{ - if you find any record with "transactionStatus":
Body "postingDate": "2020-06-22", "EC", means there was reversal transaction from
{ "postingTime": "13:04:09.0Z", previous transaction and all of the information
"accountNo": "1150097011284", "debitCreditCode": "C", within the records are identical except the
"fromDateTime": "2022-05-19T10:00:00+07:00", "transactionAmount": "200607", debitCreditCode. One must be C (credit) and the
"toDateTime": "2022-05-20T14:00:00+07:00", "originalTransCurrencyCode": "IDR", other one must be D (debit)
"additionalInfo": { "originalTransAmount": "200607",
"pageNumber": "2" "transactionRemark": "REMARK 1",
} "EFTDescription": "DARI 140006878343",
} "transactionDescription": "MCM InhouseTrf CS-CS",
"transactionTicket": "200622991145004500032",
"transactionStatus": ""
},
{
"postingDate": "2020-06-22",
"postingTime": "13:04:02.0Z",
"debitCreditCode": "D",
"transactionAmount": "50000",
"originalTransCurrencyCode": "IDR",
"originalTransAmount": "50000",
"transactionRemark": "REMARK 1",
"EFTDescription": "KE 1060010482407",
"transactionDescription": "MCM InhouseTrf CS-CS",
"transactionTicket": "20062299114500000076",
"transactionStatus": ""
},
{
{
"postingDate": "2020-06-22",
"postingTime": "13:04:02.0Z",
"debitCreditCode": "C",
"transactionAmount": "50000",
"originalTransCurrencyCode": "IDR",
"originalTransAmount": "50000",
"transactionRemark": "REMARK 1",
"EFTDescription": "KE 1060010482407",
"transactionDescription": "MCM InhouseTrf CS-CS",
"transactionTicket": "20062299114500000076",
"transactionStatus": "EC"
}
]
}

3,15 Bank Statement Failed - Today Transaction "responseCode": "4291400", Header {


Inquiry CASA Failed due to "responseMessage": "Too many X-PARTNER-ID : SANDBOX "responseCode": "4291400",
Maximum Request per request" X-EXTERNAL-ID : 4291400 "responseMessage": "Too many request"
Minute }
Body
{
"accountNo": "1190080001041",
"fromDateTime": "2022-05-19T10:00:00+07:00",
"toDateTime": "2022-05-20T14:00:00+07:00",
"additionalInfo": {
"pageNumber": "1"
}
}

3,16 Bank Statement Failed - Internal Server Error "responseCode": "5001401", Header {
"responseMessage": "Internal server X-PARTNER-ID : SANDBOX "responseCode": "5001401",
error" X-EXTERNAL-ID : 5001401 "responseMessage": "Internal Server Error"
}
Body
{
"accountNo": "1190080001041",
"fromDateTime": "2022-05-19T10:00:00+07:00",
"toDateTime": "2022-05-20T14:00:00+07:00",
"additionalInfo": {
"pageNumber": "1"
}
}

3,17 Bank Statement Menampilkan mutasi rekening Response Code: 2001400 { range waktu yang di pilih hanya bisa 30 hari
yang terjadi dalam kurun Response Message: "success" Header "responseCode": "2001400", kebelakang (include today)
waktu tertentu X-PARTNER-ID : SANDBOX "responseMessage": "Success",
"hasMore": "Y",
X-EXTERNAL-ID : 200003
"detailData": [
{
Body "amount": {
{ "currency": "IDR",
"accountNo": "1150097011284", "value": "10001.00"
"fromDateTime": "2022-06-10T00:00:01+07:00", },
"toDateTime": "2022-06-30T00:00:00+07:00", "transactionDate": "2022-06-17T22:21:36+07:00",
"additionalInfo": "type": "CREDIT",
{ "transactionId": "22061792049860120633",
"remark": "ptr so soa biru",
"pageNumber": "1"
"transactionDetailStatus": "SUCCESS",
} "detailInfo": {
} "EFTDescription": "DARI KEVIN KRISNANDI",
"transactionDescription": null,
"sourceAccount": 700010455983,
"sourceAccountName": "KEVIN KRISNANDI",
"sourceBankCode": "008",
"sourceBankName": "BANK MANDIRI",
"destinationAccount": 1150006399259,
"destinationAccountName": "DIEN ANGGRAENI",
"destinationBankCode": "008"
}
},
{
"amount": {
"currency": "IDR",
"currency": "IDR",
"value": "10101.00"
},
"transactionDate": "2022-06-17T21:45:27+07:00",
"type": "DEBIT",
"transactionId": "22061799124061299153",
"remark": "1150006399259/OH36000824593040/702349278",
"transactionDetailStatus": "SUCCESS",
"detailInfo": {
"EFTDescription": "",
"transactionDescription": null,
"sourceAccount": 1150006399259,
"sourceAccountName": "DIEN ANGGRAENI",
"sourceBankCode": "008",
"sourceBankName": "BANK MANDIRI",
"destinationAccount": 702349278300,
"destinationAccountName": "MOHAMAD ARDISTA ABRI",
"destinationBankCode": "022"
}
},
{
"amount": {
"currency": "IDR",
"value": "3000.00"
},
"transactionDate": "2022-06-17T21:45:27+07:00",
"type": "DEBIT",
"transactionId": "22061799124061299153",
"remark": "Transfer Fee 20220617940005",
"transactionDetailStatus": "SUCCESS",
"detailInfo": {
3,18 Bank Statement Menampilkan mutasi rekening Response Code: 2001400 {
yang terjadi dalam kurun Response Message: "success" Header "responseCode": "2001400",
waktu tertentu X-PARTNER-ID : SANDBOX "responseMessage": "Success",
"hasMore": "N",
X-EXTERNAL-ID : 200004
"detailData": [
{
Body "amount": {
{ "currency": "IDR",
"accountNo": "1150097011284", "value": "10001.00"
"fromDateTime": "2022-06-10T00:00:01+07:00", },
"toDateTime": "2022-06-30T00:00:00+07:00", "transactionDate": "2022-06-17T22:21:36+07:00",
"additionalInfo": "type": "CREDIT",
{ "transactionId": "22061792049860120633",
"remark": "ptr so soa biru",
"pageNumber": "2"
"transactionDetailStatus": "SUCCESS",
} "detailInfo": {
} "EFTDescription": "DARI KEVIN KRISNANDI",
"transactionDescription": null,
"sourceAccount": 700010455983,
"sourceAccountName": "KEVIN KRISNANDI",
"sourceBankCode": "008",
"sourceBankName": "BANK MANDIRI",
"destinationAccount": 1150006399259,
"destinationAccountName": "DIEN ANGGRAENI",
"destinationBankCode": "008"
}
},
{
"amount": {
"currency": "IDR",
"currency": "IDR",
"value": "10101.00"
},
"transactionDate": "2022-06-17T21:45:27+07:00",
"type": "DEBIT",
"transactionId": "22061799124061299153",
"remark": "1150006399259/OH36000824593040/702349278",
"transactionDetailStatus": "SUCCESS",
"detailInfo": {
"EFTDescription": "",
"transactionDescription": null,
"sourceAccount": 1150006399259,
"sourceAccountName": "DIEN ANGGRAENI",
"sourceBankCode": "008",
"sourceBankName": "BANK MANDIRI",
"destinationAccount": 702349278300,
"destinationAccountName": "MOHAMAD ARDISTA ABRI",
"destinationBankCode": "022"
}
},
{
"amount": {
"currency": "IDR",
"value": "3000.00"
},
"transactionDate": "2022-06-17T21:45:27+07:00",
"type": "DEBIT",
"transactionId": "22061799124061299153",
"remark": "Transfer Fee 20220617940005",
"transactionDetailStatus": "SUCCESS",
"detailInfo": {
3,19 Bank Statement kurun waktu yang di pilih lebih Error Code: 4041401 kurun waktu yang di pilih tidak boleh melebihi
dari 30 hari Error Message: "Transaction Not Found" Header { range waktu yang telah di tentukan, walaupun
X-PARTNER-ID : SANDBOX "responseCode": "4041401", hanya lebih 1 detik
X-EXTERNAL-ID : 200005 "responseMessage": "Transaction Not Found"
}
Body
{
"accountNo": "1150097011284",
"fromDateTime": "2022-05-01T00:00:01+07:00",
"toDateTime": "2022-06-30T00:00:01+07:00",
"additionalInfo":
{
"pageNumber": "1"
}
}

You might also like