Step-by-Step Guide — Follow each step exactly as written. All values are provided — do not improvise.
TC-BIL-005: Invoice Notifications & Emails
Module: Billing & Invoicing - Email Notifications
Primary Login: admin@rcme.membervu.com / Admin123! (ADMIN role)
Email Verification: MailHog at https://stg-webmail.membervu.com
URLs for this test:
Frontend:
Backend API:
MailHog:
Frontend:
https://stg-rcme.membervu.comBackend API:
https://stg-api.membervu.comMailHog:
https://stg-webmail.membervu.com
Membership Types & Dues Reference:
Regular Member: PHP 15,000/year
Associate Member: PHP 10,000/year
Student Member: PHP 5,000/year
Regular Member: PHP 15,000/year
Associate Member: PHP 10,000/year
Student Member: PHP 5,000/year
Test A: New Invoice Email Notification
Purpose: Verify that creating an invoice sends an email notification to the member.
| Step | Action (EXACT clicks/typing) | Expected Result (EXACT text/behavior) | Test Value |
|---|---|---|---|
| 1 | Open a new browser tab and go to:https://stg-webmail.membervu.com | MailHog interface loads. Shows list of captured emails. | https://stg-webmail.membervu.com |
| 2 | Note the number of existing emails (or clear the inbox if desired). Leave this tab open. | MailHog inbox is visible. Note the current email count. | - |
| 3 | In another tab, go to:https://stg-rcme.membervu.com/loginLogin as: admin@rcme.membervu.com / Admin123! | Admin dashboard displayed. | Email: admin@rcme.membervu.comPass: Admin123! |
| 4 | Navigate to "Admin" > "Billing" > "Invoices". Click "Create Invoice". | Invoice creation form opens. | - |
| 5 | Fill in the invoice: - Member: Maria Cruz (testmember@rcme.membervu.com)- Line item: Annual Dues 2026 - Regular Member / 15000- Due date: 30 days from today Click "Create Invoice". | Invoice created successfully. Status: ISSUED. | Member: Maria Cruz Amount: PHP 15,000.00 |
| 6 | Switch to the MailHog tab. Click refresh (or wait a few seconds for auto-refresh). | A new email appears in the inbox. | - |
| 7 | Find the email sent to testmember@rcme.membervu.com. Click on it to open. | Email found. Recipient: testmember@rcme.membervu.com | To: testmember@rcme.membervu.com |
| 8 | Verify the email subject line. | Subject contains "Invoice" and the amount or invoice number. Example: "New Invoice: PHP 15,000.00" or "Invoice INV-2026-XXXX from RCME" | Subject contains: "Invoice" |
| 9 | Verify the email body content. | Email body contains: - Member's name (Maria Cruz) - Invoice number - Line items listed: "Annual Dues 2026 - Regular Member" / PHP 15,000.00 - Total amount: PHP 15,000.00 - Due date - A "Pay Now" or "View Invoice" link/button - Organization sign-off (e.g., "The RCME Team") | - |
| 10 | Click the "Pay Now" or "View Invoice" link in the email. | Link navigates to the invoice detail page or payment page on the frontend. The correct invoice loads. | - |
PASS if: New invoice email sent to member with correct subject, line items, total amount, due date, and a working "Pay Now" / "View Invoice" link.
Test B: Invoice Email - Verify Amounts by Membership Type
Purpose: Verify invoice emails show correct amounts for different membership types.
| Step | Action (EXACT clicks/typing) | Expected Result (EXACT text/behavior) | Test Value |
|---|---|---|---|
| 1 | Create an invoice for an Associate Member (if one exists in the system): - Line item: Annual Dues 2026 - Associate Member / 10000- Save | Invoice created. Status: ISSUED. | Amount: PHP 10,000.00 |
| 2 | Switch to MailHog. Find the notification email for this invoice. | Email shows: Line item "Annual Dues 2026 - Associate Member" — PHP 10,000.00. Total: PHP 10,000.00. | Total in email: PHP 10,000.00 |
| 3 | Create an invoice for a Student Member (if one exists in the system): - Line item: Annual Dues 2026 - Student Member / 5000- Save | Invoice created. Status: ISSUED. | Amount: PHP 5,000.00 |
| 4 | Switch to MailHog. Find the notification email for this invoice. | Email shows: Line item "Annual Dues 2026 - Student Member" — PHP 5,000.00. Total: PHP 5,000.00. | Total in email: PHP 5,000.00 |
SKIP — If Associate Member or Student Member accounts do not exist in the test environment, skip those sub-steps. Note which membership types were tested.
PASS if: Invoice emails show correct amounts corresponding to each membership type.
Test C: Payment Reminder Email for Unpaid/Overdue Invoice
Purpose: Verify that a payment reminder can be sent and the email is received.
| Step | Action (EXACT clicks/typing) | Expected Result (EXACT text/behavior) | Test Value |
|---|---|---|---|
| 1 | Navigate to "Admin" > "Billing" > "Invoices". Find an ISSUED (unpaid) invoice for Maria Cruz. Click on it. | Invoice detail page loads. Status: ISSUED. | - |
| 2 | Look for a "Send Reminder" button (or "Resend Notification", "Send Payment Reminder"). | Button is available on the detail page. | - |
| 3 | Click "Send Reminder". | Confirmation dialog may appear: "Send payment reminder to Maria Cruz?" Click "Yes" or "Send". | - |
| 4 | Wait for success message. | Success: "Payment reminder sent" or "Reminder email sent successfully". | - |
| 5 | Switch to MailHog tab. Click refresh. | A new reminder email appears in the inbox. | - |
| 6 | Find and open the reminder email to testmember@rcme.membervu.com. | Email found. Recipient: testmember@rcme.membervu.com | To: testmember@rcme.membervu.com |
| 7 | Verify the reminder email subject. | Subject indicates a reminder. Example: "Payment Reminder: Invoice INV-2026-XXXX" or "Reminder: Outstanding Invoice" | Subject contains: "Reminder" |
| 8 | Verify the reminder email body. | Body contains: - Member name - Invoice number and amount - Due date (and whether it is past due) - "Pay Now" or "View Invoice" link - Organization sign-off | - |
SKIP — If the "Send Reminder" feature is not implemented, skip this test and note it in your report.
PASS if: Reminder email sent and received in MailHog with correct subject, invoice details, amount, and payment link.
Test D: Invoice Void Notification Email
Purpose: Verify that voiding an invoice sends a notification email to the member.
| Step | Action (EXACT clicks/typing) | Expected Result (EXACT text/behavior) | Test Value |
|---|---|---|---|
| 1 | Navigate to "Admin" > "Billing" > "Invoices". Find an ISSUED invoice for Maria Cruz. Click on it. | Invoice detail page loads. Status: ISSUED. | - |
| 2 | Note the invoice number and amount. Click "Void Invoice". | Void confirmation dialog opens. | - |
| 3 | Enter void reason: Duplicate invoice - voiding for email notification testClick "Confirm Void". | Invoice voided. Status changes to VOIDED. | Reason: Duplicate invoice - voiding for email notification test |
| 4 | Switch to MailHog tab. Click refresh. | A new email appears (void notification). | - |
| 5 | Find and open the void notification email to testmember@rcme.membervu.com. | Email found. Recipient: testmember@rcme.membervu.com | To: testmember@rcme.membervu.com |
| 6 | Verify the email subject. | Subject indicates invoice voided/cancelled. Example: "Invoice INV-2026-XXXX Voided" or "Invoice Cancelled" | Subject contains: "Void" or "Cancel" |
| 7 | Verify the email body. | Body contains: - Invoice number - Original amount - Statement that the invoice has been voided/cancelled - Void reason (may or may not be included) - "No further action is required" or similar - Organization sign-off | - |
SKIP — If void notification emails are not sent by the system, skip steps 4-7 and note it in your report. The void action itself (steps 1-3) should still work.
PASS if: Void notification email sent to member with correct invoice number and voided status. (Or if void email is not implemented, PASS if void action succeeds and no email is expected.)
Test E: Payment Confirmation Email
Purpose: Verify that a successful payment triggers a confirmation email.
| Step | Action (EXACT clicks/typing) | Expected Result (EXACT text/behavior) | Test Value |
|---|---|---|---|
| 1 | Create a new ISSUED invoice: - Member: Maria Cruz - Line item: Annual Dues 2026 / 15000- Save | Invoice created. Status: ISSUED. | Amount: PHP 15,000.00 |
| 2 | Record a payment on this invoice: - Amount: 15000- Method: Bank Transfer - Reference: BT-2026-EMAIL-TEST- Submit/Approve | Payment recorded. Invoice status: PAID. | Ref: BT-2026-EMAIL-TEST |
| 3 | Switch to MailHog tab. Click refresh. | A new payment confirmation email appears. | - |
| 4 | Find and open the payment confirmation email to testmember@rcme.membervu.com. | Email found. | To: testmember@rcme.membervu.com |
| 5 | Verify the email content. | Email contains: - Subject with "Payment" and/or "Received"/"Confirmed" - Invoice number - Payment amount: PHP 15,000.00 - Payment method and reference - "Thank you for your payment" or similar - Organization sign-off | Amount: PHP 15,000.00 |
SKIP — If payment confirmation emails are not implemented, skip steps 3-5 and note it in your report.
PASS if: Payment confirmation email sent with correct invoice number, payment amount, and reference.
CLEANUP
After completing all tests in this file:
- Note all invoices created during this test (for email notification testing).
- Void any remaining ISSUED invoices: Open invoice > Void > Reason:
Test cleanup - TC-BIL-005 - PAID invoices from Test E cannot be voided (terminal state). Note them in your report.
- MailHog emails do not need cleanup (they auto-clear on container restart).