```html

Analytics

WalletPro exposes wallet program performance across two surfaces: native WooCommerce Analytics reports and a dedicated program dashboard. Together they give you the data needed to measure ROI, spot redemption trends, and tune rewards without leaving wp-admin.

Merchant WooCommerce Analytics ROI Dashboard Cohort Analysis CSV Export Scheduled Reports Breakage Reports Liability Reports

Overview

WalletPro adds two distinct analytics surfaces:

Both surfaces read from the same HMAC-chained audit ledger that backs every wallet transaction, so figures are always consistent with the balance totals shown elsewhere in WalletPro.

WooCommerce Analytics Integration

Reports added to WooCommerce > Analytics

Report name Location in WC Analytics What it shows
Wallet Revenue Analytics > Revenue Orders where wallet covered part or all of the total; columns for wallet-paid amount vs gateway-paid amount
Wallet Top-ups Analytics > Orders (filter: Wallet top-up order type) Top-up orders by date, gateway, and amount loaded
Cashback Issued Analytics > WalletPro > Cashback Cashback credits issued per day, broken down by rule name
Redemption Codes Analytics > WalletPro > Codes Code usage count, total value redeemed, and remaining balance per code batch
Referral Credits Analytics > WalletPro > Referrals Referrer and referee credits issued, qualifying orders generated
ℹ️

WooCommerce Analytics integration requires WooCommerce 8.2 or later and HPOS enabled. On sites still using the legacy post-based order storage, the added columns appear but cohort queries run slower.

Using the Revenue report with wallet columns

  1. Go to Analytics > Revenue.
  2. Click Show / hide columns (top-right of the table).
  3. Enable Wallet paid and Gateway paid.
  4. The table now shows, per order, how much came from the customer's wallet vs an external payment method.
  5. Use the standard date picker and segment filters (product, category, coupon) as normal, wallet columns respect all existing filters.

WalletPro Program Dashboard

The program dashboard is at WooCommerce > WalletPro > Analytics. It refreshes on a configurable schedule and can be e-mailed as a CSV summary to store administrators.

Dashboard panels

Panel Metric Notes
Funded Liability Total unredeemed wallet balance across all customers Matches the Liability Report figure; exported to GL CSV
Redemption Rate % of funded balance spent vs loaded (rolling 90 days) Configurable window (30 / 60 / 90 / 365 days)
Breakage Value of credits that expired before use Requires credit expiry to be enabled; see Expiry settings
Program ROI Revenue from wallet-paying orders minus cost of cashback/referral credits issued Simplified model; does not account for gateway fees
Cohort Retention % of customers who loaded a wallet in month N and made a wallet-paid purchase in months N+1 through N+6 6-month cohort table; one row per acquisition month
Average Wallet Size Mean balance across customers with a non-zero balance Excludes zero-balance accounts
Top Loaders Top 10 customers by total amount loaded (current period) Links to individual customer wallet admin page

Configuring the dashboard

Go to WooCommerce > WalletPro > Settings > Analytics.

Setting name Options Default
Dashboard date range Last 30 / 60 / 90 / 365 days; custom range Last 30 days
Redemption rate window 30 / 60 / 90 / 365 days 90 days
Cohort retention months 3 / 6 / 12 6
Enable ROI panel On / Off On
ROI cost model Credits issued only / Credits issued + estimated gateway cost Credits issued only
Cache analytics data On / Off On (24-hour cache)
Cache TTL (hours) 1 to 168 24

On large databases (100k+ wallet transactions) leave caching enabled. The cohort query in particular is expensive, running it on every page load will noticeably slow down the wp-admin dashboard screen.

Liability and Breakage Reports

These two reports are available at WooCommerce > WalletPro > Reports and are designed for accounting handoff.

Liability Report

Shows the total unredeemed wallet balance as of any point-in-time date. Use this for month-end accounting entries.

  1. Go to WooCommerce > WalletPro > Reports > Liability.
  2. Set the As-of date field to the reporting date.
  3. The table lists: customer name, email, current balance, currency.
  4. The footer row shows the total funded liability.
  5. Click Export CSV to download the full list.

Breakage Report

Lists credits that expired before the customer used them. Requires credit expiry to be configured under WooCommerce > WalletPro > Settings > Credits > Credit expiry.

  1. Go to WooCommerce > WalletPro > Reports > Breakage.
  2. Select a date range covering the expiry events you want to review.
  3. The table shows: customer, credit source (cashback / referral / manual / code), amount, issue date, expiry date, days held.
  4. Click Export CSV to download.

GL-Friendly CSV export

Both reports export a CSV formatted for general-ledger import:

Scheduled CSV Email Reports

WalletPro can automatically e-mail a CSV summary of wallet activity on a daily, weekly, or monthly schedule.

Configuring scheduled reports

  1. Go to WooCommerce > WalletPro > Settings > Analytics > Scheduled Reports.
  2. Set Enable scheduled CSV email to On.
  3. Configure the following fields:
Field Description
Frequency Daily / Weekly (Monday) / Monthly (1st of month)
Send time Hour of day in site timezone (00:00 to 23:00)
Recipient email(s) Comma-separated list; defaults to the WooCommerce store admin email
Report contents Checkboxes: Transactions summary, Liability snapshot, Cashback issued, Breakage (if expiry enabled), Referral credits
Attach full transaction CSV On / Off, attaches the raw ledger export in addition to the summary
  1. Click Save changes.
  2. To test immediately, click Send test report now, this dispatches a report covering the previous 24 hours to the configured recipients.
⚠️

Scheduled reports use WP-Cron. If your site disables WP-Cron in favor of a system cron, confirm that the cron job fires at least as frequently as the chosen report interval, or scheduled emails will not send.

Filtering and Segmenting Data

All WalletPro analytics screens support the following filters, applied via the filter bar at the top of each report or dashboard panel:

Filter Available on
Date range All screens
Customer role Program Dashboard, Liability Report
Currency All screens (multi-currency stores only)
Credit source Cashback, Breakage, Referral panels
Transaction type WC Analytics Revenue, Ledger export
Minimum balance threshold Liability Report

Developer: Accessing Analytics Data via REST API

The walletpro/v1 REST API exposes several analytics endpoints. All require the manage_woocommerce capability and a valid application password or OAuth token.

GET /wp-json/walletpro/v1/analytics/summary

Returns the same figures shown on the Program Dashboard.

Query parameters

Parameter Type Required Description
date_start string (YYYY-MM-DD) Optional Start of date range; defaults to 30 days ago
date_end string (YYYY-MM-DD) Optional End of date range; defaults to today
currency string (ISO 4217) Optional Filter to a single currency; omit for all currencies

Example request

# Fetch summary for June 2026
curl -u "admin:app-password" \
  "https://example.com/wp-json/walletpro/v1/analytics/summary?date_start=2026-06-01&date_end=2026-06-30"

Example response

{
  "date_start": "2026-06-01",
  "date_end": "2026-06-30",
  "currency": "USD",
  "funded_liability": "4821.50",
  "redemption_rate": "0.68",
  "breakage": "142.00",
  "cashback_issued": "318.75",
  "referral_credits_issued": "95.00",
  "top_ups_total": "6200.00",
  "wallet_paid_orders_total": "5410.25",
  "program_roi": "4996.50",
  "average_wallet_size": "38.40",
  "active_wallets": 126
}

GET /wp-json/walletpro/v1/analytics/cohorts

Returns cohort retention data.

Query parameters

Parameter Type Required Description
months integer Optional Number of cohort months to return (3, 6, or 12); default 6
currency string (ISO 4217) Optional Filter to a single currency

Example response

{
  "cohorts": [
    {
      "acquisition_month": "2026-01",
      "customers_loaded": 42,
      "retention": {
        "m1": "0.81",
        "m2": "0.64",
        "m3": "0.52",
        "m4": "0.45",
        "m5": "0.40",
        "m6": "0.38"
      }
    }
  ]
}

Developer: WP-CLI Analytics Commands

# Print a summary of program metrics for the current month
wp wallet analytics summary

# Print summary for a specific date range
wp wallet analytics summary --start=2026-06-01 --end=2026-06-30

# Export the full liability report to a CSV file
wp wallet analytics liability --as-of=2026-06-30 --format=csv > liability-june.csv

# Export breakage for the last quarter
wp wallet analytics breakage --start=2026-04-01 --end=2026-06-30 --format=csv > breakage-q2.csv

# Bust the analytics cache and force a fresh calculation
wp wallet analytics cache flush

Developer: Hooks for Extending Analytics

Two filters let you add columns to or modify data in the exported reports.

/**
 * Add a custom column to the WalletPro liability CSV export.
 *
 * @param array $columns Existing column definitions.
 * @return array
 */
add_filter( 'walletpro_liability_export_columns', function( $columns ) {
    $columns['customer_tier'] = 'Customer Tier';
    return $columns;
} );

/**
 * Populate the custom column value per row.
 *
 * @param array  $row      Row data keyed by column slug.
 * @param int    $user_id  WP user ID for this row.
 * @return array
 */
add_filter( 'walletpro_liability_export_row', function( $row, $user_id ) {
    $row['customer_tier'] = get_user_meta( $user_id, 'loyalty_tier', true );
    return $row;
}, 10, 2 );
ℹ️

The walletpro_analytics_summary_data filter fires after all metrics are calculated but before the REST response or CLI output is rendered. You can use it to append store-specific KPIs to the summary array without replacing the built-in metrics.

Permissions

Access to analytics screens and API endpoints is controlled by WordPress capabilities.

Screen / endpoint Required capability
WalletPro Program Dashboard (admin) manage_woocommerce
Liability Report (admin) manage_woocommerce
Breakage Report (admin) manage_woocommerce
WC Analytics wallet columns view_woocommerce_reports
REST API analytics endpoints manage_woocommerce
WP-CLI analytics commands WP-CLI administrator context