| A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Ticket URL | |||||||||||||||||||||||||
2 | Feature Name | Send Money | ||||||||||||||||||||||||
3 | Sprint | S10 | ||||||||||||||||||||||||
4 | Tested By | |||||||||||||||||||||||||
5 | Test Result (Passed/Failed) | Passed-10/10 Failed-0/10 | ||||||||||||||||||||||||
6 | ||||||||||||||||||||||||||
7 | Test Case Id | Module/ Test Scenario | Test Case Title | Prerequsites | Steps/Actions | Expected Result | Test Data | Actual Result | Status | Remarks | ||||||||||||||||
8 | TC01 | Authentication | Admin Login | Admin credentials are valid. | Send POST request to {{baseUrl}/user/login with admin email and password. | Status 200, returns a valid token and "Login successful" message. | {"email": "admin@dmoney.com", "password": "1234"} | login Successful | Passed | |||||||||||||||||
9 | TC02 | User Onboatding | Create Agent | Admin is logged in (Auth Token) & secret key is set by script. All values are randomely genrated by the script | POST {{baseUrl}/user/create with role: Agent and required details. | Status 201, User created successfully with Agent role. | { "name": "{{name}}", "email": "{{email}}", "password": "{{user-password}}", "phone_number": "{{phoneNo}}", "nid": "{{NID}}", "role":{{role}} } | User created successfully | Passed | |||||||||||||||||
10 | TC03 | Create Customer 1 | Admin is logged in (Auth Token) & secret key is set by script | POST {{baseUrl}/user/create with role: Customer and unique phone/email. | Status 201, First customer account created. | { "name": "{{name}}", "email": "{{email}}", "password": "{{user-password}}", "phone_number": "{{phoneNo}}", "nid": "{{NID}}", "role":{{role}} } | User created successfully | Passed | ||||||||||||||||||
11 | TC04 | Create Customer 2 | Admin is logged in (Auth Token) & secret key is set by script | POST {{baseUrl}/user/create with role: Customer and unique phone/email. | Status 201, Second customer account created. | { "name": "{{name}}", "email": "{{email}}", "password": "{{user-password}}", "phone_number": "{{phoneNo}}", "nid": "{{NID}}", "role":{{role}} } | User created successfully | Passed | ||||||||||||||||||
12 | TC05 | Create Merchant | Admin is logged in (Auth Token) & secret key is set by script | POST {{baseUrl}/user/create with role: Customer and unique phone/email. | Status 201, Merchant account created successfully. | { "name": "{{name}}", "email": "{{email}}", "password": "{{user-password}}", "phone_number": "{{phoneNo}}", "nid": "{{NID}}", "role":{{role}} } | User created successfully | Passed | ||||||||||||||||||
13 | TC06 | Create a random user with duplicate phone number | Admin is logged in. | POST /user/create with role: Merchant and required details. | User already exists | { "name": "ABC123", "email": "xxx@gmail.com", "password": "1234", "phone_number": "01234567892", "nid": "012wert123456", } | User not created | Passed | ||||||||||||||||||
14 | TC07 | Send Money | System Deposit to Agent | 1. Sytem user is logged in 2.SYSTEM account has funds. | 1.Add System Auth token & secret key from collection variable 2. POST /transaction/deposit from SYSTEM to Agent (Amount: 5000 TK). | Status 200, Balance credited to Agent, "Deposit successful". | { "from_account": "SYSTEM", "to_account": "123456789", "amount": 50000 } | As expected | Passed | |||||||||||||||||
15 | TC08 | Agent Deposit to Customer 1 | Agent has sufficient balance. | POST /transaction/deposit from Agent phone to Customer 1 phone. | Status 200, Customer 1 balance increases; Agent balance decreases. | { "from_account": "0123456789", "to_account": "123456789", "amount": 50000 } | As expected | Passed | ||||||||||||||||||
16 | TC09 | Verify Agent Balance | Agent has performed transactions. | 1. Save a agent number as collection variable from dmoney portal 2. GET /transaction/balance/{Agent_Phone} using Agent's token. | Status 200, Balance matches the expected remaining amount. | As expected | Passed | |||||||||||||||||||
17 | TC10 | Send Money customer to customer | sender must have sufficient balance. | POST /transaction/sendmoney from Customer 1 to Customer 2. | Status 200, Funds transferred from C1 to C2 successfully. | { "from_account": "0123456789", "to_account": "123456789", "amount": 50000 } | As expected | Passed | ||||||||||||||||||
18 | TC11 | Customer Withdrawal | Customer has balance; Agent exists. | POST /transaction/withdraw from Customer to Agent (e.g., 500 TK). | Status 200, Withdrawal successful, trnxId generated. | { "from_account": "0123456789", "to_account": "123456789", "amount": 50000 } | As expected | Passed | ||||||||||||||||||
19 | TC11 | Verify Customer Balance | Customer 1 performed Withdrawal/P2P. | 1. Save a agent number as collection variable from dmoney portal 2.GET /transaction/balance/{Customer1_Phone}. | Status 200, Current balance matches (Initial + Deposit - Send - Withdraw). | { "from_account": "0123456789", "to_account": "123456789", "amount": 50000 } | As expected | Passed | ||||||||||||||||||
20 | TC12 | Search | Search Transaction by ID | A valid transaction ID exists. | GET /transaction/search/{trnxId} using the ID from the withdrawal. | Status 200, returns specific transaction details matching the ID. each trxID should have single transaction | { "from_account": "0123456789", "to_account": "123456789", "amount": 50000 } | Multiple transaction details came up | Defect | |||||||||||||||||
21 | TC13 | payment | Payment to Merchant | Customer 2 has sufficient balance. | POST /transaction/payment from Customer 2 to Merchant. | Status 200, Payment successful, Merchant balance updated. | { "from_account": "0123456789", "to_account": "123456789", "amount": 50000 } | As expected | Passed | |||||||||||||||||
22 | TC14 | check balance | Verify Merchant Balance | Merchant received payment. | GET /transaction/balance/{Merchant_Phone}. | Status 200, Balance reflects the payment received from Customer 2. | { "from_account": "0123456789", "to_account": "123456789", "amount": 50000 } | As expected | Passed | |||||||||||||||||
23 | TC15 | check balance | Check Customer Statement | Customer 2 performed transactions. | GET /transaction/statement/{Customer2_Phone}. | Status 200, returns a list of all transactions for Customer 2. | { "from_account": "0123456789", "to_account": "123456789", "amount": 50000 } | As expected | Passed | |||||||||||||||||
24 | TC16 | Negative: Deposit below Limit | Agent balance is sufficient. | POST /transaction/deposit with amount 5 TK (Minimum is 10). | Status 400, Error: "Minimum deposit amount is 10 TK". | { "from_account": "0123456789", "to_account": "123456789", "amount": 50000 } | As expected | Passed | ||||||||||||||||||
25 | TC17 | Negative: Insufficient Balance | Customer 1 balance is low. | POST /transaction/sendmoney with amount greater than current balance. | Status 208, Error: "Insufficient balance". | { "from_account": "0123456789", "to_account": "123456789", "amount": 50000 } | As expected | Passed | ||||||||||||||||||
26 | TC18 | Unauthorized Access | No Auth Token or invalid token used. | Attempt to check any account balance without a valid Bearer token in the header. | Status 401 (Unauthorized); Access denied. | { "from_account": "0123456789", "to_account": "123456789", "amount": 50000 } | As expected | Passed | ||||||||||||||||||
27 | TC19 | Exceed Range Limit (Upper) | SYSTEM account has funds. | Attempt to deposit 10,001 TK from SYSTEM to Agent (Limit: 10,000 TK). | Status 400/406; Error: "Amount exceeds maximum limit." | { "from_account": "0123456789", "to_account": "123456789", "amount": 50000 } | As expected | Passed | ||||||||||||||||||
28 | TC20 | Invalid Recipient Account | Sender has balance; Recipient is not registered. | Attempt to "Send Money" from a Customer to a non-existent phone number (e.g., 01000000000). | Status 404; Error: "Account not found" or "Recipient does not exist." | { "from_account": "0123456789", "to_account": "00000, "amount": 50000 } | As expected | Passed | ||||||||||||||||||
29 | ||||||||||||||||||||||||||
30 | ||||||||||||||||||||||||||
31 | ||||||||||||||||||||||||||
32 | ||||||||||||||||||||||||||
33 | ||||||||||||||||||||||||||
34 | ||||||||||||||||||||||||||
35 | ||||||||||||||||||||||||||
36 | ||||||||||||||||||||||||||
37 | ||||||||||||||||||||||||||
38 | ||||||||||||||||||||||||||
39 | ||||||||||||||||||||||||||
40 | ||||||||||||||||||||||||||
41 | ||||||||||||||||||||||||||
42 | ||||||||||||||||||||||||||
43 | ||||||||||||||||||||||||||
44 | ||||||||||||||||||||||||||
45 | ||||||||||||||||||||||||||
46 | ||||||||||||||||||||||||||
47 | ||||||||||||||||||||||||||
48 | ||||||||||||||||||||||||||
49 | ||||||||||||||||||||||||||
50 | ||||||||||||||||||||||||||
51 | ||||||||||||||||||||||||||
52 | ||||||||||||||||||||||||||
53 | ||||||||||||||||||||||||||
54 | ||||||||||||||||||||||||||
55 | ||||||||||||||||||||||||||
56 | ||||||||||||||||||||||||||
57 | ||||||||||||||||||||||||||
58 | ||||||||||||||||||||||||||
59 | ||||||||||||||||||||||||||
60 | ||||||||||||||||||||||||||
61 | ||||||||||||||||||||||||||
62 | ||||||||||||||||||||||||||
63 | ||||||||||||||||||||||||||
64 | ||||||||||||||||||||||||||
65 | ||||||||||||||||||||||||||
66 | ||||||||||||||||||||||||||
67 | ||||||||||||||||||||||||||
68 | ||||||||||||||||||||||||||
69 | ||||||||||||||||||||||||||
70 | ||||||||||||||||||||||||||
71 | ||||||||||||||||||||||||||
72 | ||||||||||||||||||||||||||
73 | ||||||||||||||||||||||||||
74 | ||||||||||||||||||||||||||
75 | ||||||||||||||||||||||||||
76 | ||||||||||||||||||||||||||
77 | ||||||||||||||||||||||||||
78 | ||||||||||||||||||||||||||
79 | ||||||||||||||||||||||||||
80 | ||||||||||||||||||||||||||
81 | ||||||||||||||||||||||||||
82 | ||||||||||||||||||||||||||
83 | ||||||||||||||||||||||||||
84 | ||||||||||||||||||||||||||
85 | ||||||||||||||||||||||||||
86 | ||||||||||||||||||||||||||
87 | ||||||||||||||||||||||||||
88 | ||||||||||||||||||||||||||
89 | ||||||||||||||||||||||||||
90 | ||||||||||||||||||||||||||
91 | ||||||||||||||||||||||||||
92 | ||||||||||||||||||||||||||
93 | ||||||||||||||||||||||||||
94 | ||||||||||||||||||||||||||
95 | ||||||||||||||||||||||||||
96 | ||||||||||||||||||||||||||
97 | ||||||||||||||||||||||||||
98 | ||||||||||||||||||||||||||
99 | ||||||||||||||||||||||||||
100 |