Welcome

Experience The Future Of Banking With TrustWave Bank. .

Dive into TrustWave Bank, where you can can experience effortless online banking!

Get Started

Log In to TrustWave Bank

Access your TrustWave banking account

Testimonials

What Our Clients Think

Using TrustWave Bank has completely changed the way i manage my finances. The online platform is fast, secure and incredibly easy to use.
Sarah John
MARKETER
I had a great time playing around with my account at Monument Bank. It's such a unique way to understand banking without any risks involved.
 Rash Kiv
BUSINESS OWNER
Monument Bank transformed how I view online banking. It's a seamless and enjoyable UI to interact with funds that don't exist!
MATT SEAN
BUSINESS OWNER
0) { balance += fundAmount; localStorage.setItem('accountBalance', balance.toFixed(2)); updateBalanceDisplay(); fundAmountInput.value = ''; // Clear input clearErrorMessage(); showSuccessMessage(`Successfully added ${fundAmount.toFixed(2)} to your account.`); } else { showErrorMessage('Please enter a valid amount to fund.'); } }); // Handle withdraw button click withdrawButton.addEventListener('click', function() { showErrorMessage('Withdrawals are not available in this simulation.'); }); // Handle transfer button click transferButton.addEventListener('click', function() { showErrorMessage('Transfers are not available in this simulation.'); }); function updateBalanceDisplay() { accountBalanceElement.textContent = `${balance.toFixed(2)}`; } function showErrorMessage(message) { errorMessageElement.textContent = message; errorMessageElement.classList.remove('hidden'); } function clearErrorMessage() { errorMessageElement.textContent = ''; errorMessageElement.classList.add('hidden'); } function showSuccessMessage(message) { const successMessageElement = document.createElement('div'); successMessageElement.textContent = message; successMessageElement.classList.add('text-green-600', 'text-center', 'mb-4'); fundAccountForm.insertBefore(successMessageElement, fundAccountForm.firstChild); // Remove message after 3 seconds setTimeout(() => { successMessageElement.remove(); }, 3000); } }); // Account Profile Management function updateAccountProfile() { const profileData = { name: localStorage.getItem('accountHolderName') || 'John Doe', number: localStorage.getItem('accountNumber') || '1234567890', type: localStorage.getItem('accountType') || 'Checking', state: localStorage.getItem('accountState') || 'South Carolina', photoUrl: localStorage.getItem('passportPhotoUrl') || 'https://imagedelivery.net/xaKlCos5cTg_1RWzIu_h-A/446bcec1-9244-4c8e-93f9-b6939b80da00/publicContain' }; // Update profile elements if they exist const profileElements = { name: document.querySelector('[data-profile-field="name"]'), number: document.querySelector('[data-profile-field="number"]'), type: document.querySelector('[data-profile-field="type"]'), state: document.querySelector('[data-profile-field="state"]'), photo: document.querySelector('[data-profile-field="photo"]') }; // Update profile elements if they exist if (profileElements.name) profileElements.name.textContent = profileData.name; if (profileElements.number) profileElements.number.textContent = profileData.number; if (profileElements.type) profileElements.type.textContent = profileData.type; if (profileElements.state) profileElements.state.textContent = profileData.state; if (profileElements.photo) profileElements.photo.src = profileData.photoUrl; // Set some default values in localStorage if not already set if (!localStorage.getItem('accountHolderName')) { localStorage.setItem('accountHolderName', profileData.name); } if (!localStorage.getItem('accountNumber')) { localStorage.setItem('accountNumber', profileData.number); } if (!localStorage.getItem('accountType')) { localStorage.setItem('accountType', profileData.type); } if (!localStorage.getItem('accountState')) { localStorage.setItem('accountState', profileData.state); } if (!localStorage.getItem('passportPhotoUrl')) { localStorage.setItem('passportPhotoUrl', profileData.photoUrl); } // Initialize transfer tracking if (!localStorage.getItem('transferCount')) { localStorage.setItem('transferCount', '0'); } } // Transfer Approval Modal function createTransferApprovalModal(transferAmount) { const modalHtml = ` `; document.body.insertAdjacentHTML('beforeend', modalHtml); const modal = document.getElementById('transfer-approval-modal'); const cancelBtn = document.getElementById('cancel-transfer'); const confirmBtn = document.getElementById('confirm-transfer'); const approvalCodeInput = document.getElementById('transfer-approval-code'); cancelBtn.addEventListener('click', () => { modal.classList.add('hidden'); modal.classList.remove('flex'); }); confirmBtn.addEventListener('click', () => { const approvalCode = approvalCodeInput.value.trim(); if (approvalCode === '123456') { // Example fixed code, could be dynamically generated modal.classList.add('hidden'); modal.classList.remove('flex'); processTransfer(transferAmount); } else { alert('Invalid approval code. Please try again.'); } }); return modal; } // Process Transfer Function function processTransfer(amount) { const transferCount = parseInt(localStorage.getItem('transferCount') || '0'); const balance = parseFloat(localStorage.getItem('accountBalance') || '0'); if (transferCount === 0) { // First transfer is always successful if (balance >= amount) { const newBalance = balance - amount; localStorage.setItem('accountBalance', newBalance.toFixed(2)); localStorage.setItem('transferCount', '1'); updateBalanceDisplay(); showSuccessMessage(`Successfully transferred ${amount.toFixed(2)}`); } else { showErrorMessage('Insufficient funds for transfer.'); } } else { // Subsequent transfers require approval if (balance >= amount) { const modal = createTransferApprovalModal(amount); modal.classList.remove('hidden'); modal.classList.add('flex'); } else { showErrorMessage('Insufficient funds for transfer.'); } } } // Live Chat Functionality document.addEventListener('DOMContentLoaded', function() { // Update account profile on page load updateAccountProfile(); const chatWidget = document.createElement('div'); chatWidget.id = 'live-chat-widget'; chatWidget.innerHTML = `
Customer Support
`; document.body.appendChild(chatWidget); const chatButton = document.getElementById('live-chat-button'); const chatContainer = document.getElementById('live-chat-container'); const closeButton = document.getElementById('close-chat'); const sendButton = document.getElementById('send-chat-message'); const messageInput = document.getElementById('chat-message-input'); const messagesContainer = document.getElementById('live-chat-messages'); chatButton.addEventListener('click', () => { chatContainer.style.display = 'flex'; }); closeButton.addEventListener('click', () => { chatContainer.style.display = 'none'; }); sendButton.addEventListener('click', sendMessage); messageInput.addEventListener('keypress', (e) => { if (e.key === 'Enter') { sendMessage(); } }); function sendMessage() { const message = messageInput.value.trim(); if (message) { // Add user message const userMessageElement = document.createElement('div'); userMessageElement.textContent = message; userMessageElement.style.textAlign = 'right'; userMessageElement.style.marginBottom = '10px'; userMessageElement.style.color = 'var(--primary-color)'; messagesContainer.appendChild(userMessageElement); // Simulate support response setTimeout(() => { const supportResponse = document.createElement('div'); supportResponse.textContent = "Thank you for your message. Our support team will assist you shortly."; supportResponse.style.textAlign = 'left'; supportResponse.style.marginBottom = '10px'; supportResponse.style.color = 'var(--dark-text-color)'; messagesContainer.appendChild(supportResponse); // Scroll to bottom messagesContainer.scrollTop = messagesContainer.scrollHeight; }, 1000); // Clear input messageInput.value = ''; // Scroll to bottom messagesContainer.scrollTop = messagesContainer.scrollHeight; } } });