Home EnvyTheme Envy Banking Plugin Documentation Envy Banking Documentation

Envy Banking Documentation

Power your WordPress site with a modern digital banking experience — manage accounts, beneficiaries, cards, loans and transactions.

1. Overview

Envy Banking adds a secure, front‑end banking dashboard to WordPress with customer accounts, fund transfers (with OTP), beneficiaries, cards, loan requests, deposits, and admin treasury controls. It ships with shortcodes, auto‑created core pages, and a full settings panel.

2. Requirements

  • WordPress 5.0+ (tested up to 6.5+)
  • Pretty permalinks enabled
  • Working email delivery (for OTP and notifications)
  • Optional: WooCommerce, for country list helper; otherwise the plugin uses a built‑in list.

3. Install & Activate

  1. Upload the folder envy-banking to wp-content/plugins/.
  2. Activate “Envy Banking” from Plugins in wp‑admin.
  3. The plugin auto‑creates core pages: Dashboard, Customer Login, Customer Register.

4. Quick Start

  1. Go to wp‑admin → Envy Banking → Settings.
  2. In General tab, set Currency, select the Dashboard/Login/Register pages if needed.
  3. In Bank Information, add Branches, Account Types, and Loan Products.
  4. Create or edit users and assign roles (Customer or Bank Representative).
  5. Visit the Dashboard page on the front‑end to use features.

5. Shortcodes

ShortcodeDescription
[envy_dashboard]Renders the full banking dashboard. This is auto‑placed on the “Dashboard” page.
[envy-login]Front‑end login form (redirects to dashboard if already logged in).
[envy-register]Front‑end registration form with optional auto‑activation (see Settings → General).

Note: Some older strings may reference [envy-dashboard]. The correct shortcode is [envy_dashboard].

6. User Roles

  • bank_customer: Default customer role with access to their own dashboard and actions.
  • bank_representative: Staff role with extra insights and admin‑style dashboard stats.

Assign roles via wp‑admin → Users. The plugin creates these roles on init if missing.

7. Dashboard Sections

The dashboard uses friendly sub‑paths under the selected Dashboard page. Example: /dashboard/personal-information. Key sections:

  • personal-information – Profile and KYC details
  • customer-list – Customers (staff view)
  • add-new-customer – Create customer (staff)
  • fund-transfer – Send money with email OTP
  • all-beneficiary – Beneficiary list
  • add-new-beneficiary – Add beneficiary
  • apply-for-loanmy-loan-applicationsall-loan-applications
  • emi-calculator
  • apply-for-cardcardsmanage-cardsadd-new-card
  • accounts-listopen-accountdeposit
  • bank-treasury – Bank wallet and ledger (staff)
  • activity-logs – Plugin activity log (read‑only)

8. Settings (wp‑admin → Envy Banking → Settings)

8.1 General

  • Dashboard Logo: Small logo in dashboard header.
  • Currency Name/Symbol: Display and storage currency (e.g., USD / $).
  • Auto Activate Account: Immediately activates new registrations.
  • Dashboard/Login/Register Pages: Select the pages containing the shortcodes.
  • Logout Redirect Page: Destination after logging out.

8.2 Bank Information

  • Bank Name, Address, Phone, Email
  • Bank Branches: Add multiple branches (name, address, phone).
  • Account Types: Create options users can select when opening accounts.
  • Loan Products: Define the available loan products.

8.3 Banner

  • Hide Dashboard Banner
  • Banner Background Image (used in Dashboard and Settings pages)
  • Welcome Text and Last Login Text

8.4 Sidebar

  • Sidebar Image and Link

8.5 Footer

  • Hide Dashboard Footer
  • Footer Text (WYSIWYG)

8.6 Logs

  • Activity Logs: Read‑only record of plugin actions/events.

9. Feature Guide

9.1 Accounts

  • Open Account: Create accounts per user and type. Account numbers are auto‑generated and unique.
  • Accounts List: See balances, status, type, and masked numbers.
  • Deposit (Admin/Staff): Credit customer accounts; emails are sent upon success.

Tables: wp_envy_accounts. Helper: Envy_Banking_Accounts.

9.2 Beneficiaries

  • Add, list, edit, and remove beneficiaries under “All Beneficiary”.
  • Data stored in wp_envy_bank_beneficiaries.

9.3 Fund Transfer (with OTP)

  • Two‑step flow: submit details → verify email OTP → complete.
  • Balances update atomically on sender and receiver accounts.
  • Receipts emailed to both parties; transactions logged in wp_envy_transactions.

9.4 Cards

  • Apply for debit/credit/prepaid cards, manage status, and view masked PAN and expiry.
  • Table: wp_envy_cards. Helper: Envy_Banking_Cards.

9.5 Loans

  • Submit loan applications, view “My Loan Applications”, staff can see “All Loan Applications”.
  • Table: wp_envy_loan_applications.

9.6 Bank Treasury (Staff)

  • Internal bank wallet with ledger entries; debit/credit the bank balance with reasons.
  • Tables: wp_envy_bank_walletwp_envy_bank_ledger.

10. Emails

  • OTP Email: sent during fund transfer confirmation.
  • Fund Transfer Receipt: sent to sender; a deposit email to receiver.
  • Card/Loan: status and application notifications.

Ensure your site can send emails (SMTP plugin recommended in production).

11. Template Overrides

You can override front‑end templates in your theme. Copy files from the plugin’s templates/ folder into your theme at your-theme/envy-banking/ preserving relative paths. Example:

wp-content/themes/your-theme/envy-banking/dashboard.php
wp-content/themes/your-theme/envy-banking/fund-transfer.php
wp-content/themes/your-theme/envy-banking/account/open-account.php

The loader checks the theme first via locate_template('envy-banking/<file>').

12. Database Tables

  • wp_envy_accounts – customer accounts
  • wp_envy_cards – card issuance and status
  • wp_envy_transactions – transfer/deposit audit
  • wp_envy_loan_applications – loan requests
  • wp_envy_bank_walletwp_envy_bank_ledger – treasury
  • wp_envy_bank_beneficiaries – saved beneficiaries

13. FAQ

Links 404 inside the dashboard.
Visit Settings → Permalinks and click Save to flush rewrite rules.

Which pages should contain shortcodes?
Dashboard[envy_dashboard]Customer Login[envy-login]Customer Register[envy-register].

How do I customize the look?
Use the Settings → Banner/Sidebar/Footer or override template files in your theme.

Can I translate the plugin?
Yes, text domain is envy-banking and language files load from languages/.

14. Troubleshooting

  • If OTP emails are not received, configure SMTP and re‑test.
  • Ensure users have the correct role for the expected dashboard features.
  • If tables are missing, deactivate and reactivate the plugin to trigger installers.

15. Developer Notes

  • Main classes: Envy_BankingEnvy_Banking_CoreEnvy_Banking_SettingsEnvy_Banking_AccountsEnvy_Banking_CardsEnvy_Banking_TreasuryEnvy_Banking_Loans_Install.
  • Shortcodes registered in includes/class-envy-banking-login-register.php and core dashboard via add_shortcode('envy_dashboard').
  • Theme overrides via Envy_Banking_Core::load_template().
  • Activity log helper: Envy_Banking_Core::add_log_entry().