Here's a view which will display monthly revenue by Coupon:

$view = new view();
$view->name = 'commerce_coupon_revenue';
$view->description = '';
$view->tag = 'default';
$view->base_table = 'commerce_order';
$view->human_name = 'Commerce Coupon revenue';
$view->core = 7;
$view->api_version = '3.0';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */

/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['title'] = 'Revenue by coupon';
$handler->display->display_options['use_more_always'] = FALSE;
$handler->display->display_options['group_by'] = TRUE;
$handler->display->display_options['access']['type'] = 'perm';
$handler->display->display_options['access']['perm'] = 'access commerce reports';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['pager']['type'] = 'none';
$handler->display->display_options['style_plugin'] = 'table';
/* Relationship: Entity Reference: Referenced Entity */
$handler->display->display_options['relationships']['commerce_coupon_order_reference_target_id']['id'] = 'commerce_coupon_order_reference_target_id';
$handler->display->display_options['relationships']['commerce_coupon_order_reference_target_id']['table'] = 'field_data_commerce_coupon_order_reference';
$handler->display->display_options['relationships']['commerce_coupon_order_reference_target_id']['field'] = 'commerce_coupon_order_reference_target_id';
$handler->display->display_options['relationships']['commerce_coupon_order_reference_target_id']['label'] = 'Coupon';
$handler->display->display_options['relationships']['commerce_coupon_order_reference_target_id']['required'] = TRUE;
/* Field: Commerce Coupon: Coupon Code */
$handler->display->display_options['fields']['commerce_coupon_code']['id'] = 'commerce_coupon_code';
$handler->display->display_options['fields']['commerce_coupon_code']['table'] = 'field_data_commerce_coupon_code';
$handler->display->display_options['fields']['commerce_coupon_code']['field'] = 'commerce_coupon_code';
$handler->display->display_options['fields']['commerce_coupon_code']['relationship'] = 'commerce_coupon_order_reference_target_id';
/* Field: SUM(Commerce Order: Order total) */
$handler->display->display_options['fields']['commerce_order_total']['id'] = 'commerce_order_total';
$handler->display->display_options['fields']['commerce_order_total']['table'] = 'field_data_commerce_order_total';
$handler->display->display_options['fields']['commerce_order_total']['field'] = 'commerce_order_total';
$handler->display->display_options['fields']['commerce_order_total']['group_type'] = 'sum';
$handler->display->display_options['fields']['commerce_order_total']['click_sort_column'] = 'amount';
$handler->display->display_options['fields']['commerce_order_total']['type'] = 'commerce_price_formatted_amount';
$handler->display->display_options['fields']['commerce_order_total']['settings'] = array(
  'calculation' => FALSE,
);
$handler->display->display_options['fields']['commerce_order_total']['group_column'] = 'amount';
$handler->display->display_options['fields']['commerce_order_total']['group_columns'] = array(
  'currency_code' => 'currency_code',
);
/* Filter criterion: Commerce Order: Order state */
$handler->display->display_options['filters']['state']['id'] = 'state';
$handler->display->display_options['filters']['state']['table'] = 'commerce_order';
$handler->display->display_options['filters']['state']['field'] = 'state';
$handler->display->display_options['filters']['state']['value'] = array(
  'pending' => 'pending',
  'completed' => 'completed',
);
/* Filter criterion: Date: Date (commerce_order) */
$handler->display->display_options['filters']['date_filter']['id'] = 'date_filter';
$handler->display->display_options['filters']['date_filter']['table'] = 'commerce_order';
$handler->display->display_options['filters']['date_filter']['field'] = 'date_filter';
$handler->display->display_options['filters']['date_filter']['exposed'] = TRUE;
$handler->display->display_options['filters']['date_filter']['expose']['operator_id'] = 'date_filter_op';
$handler->display->display_options['filters']['date_filter']['expose']['label'] = 'Date';
$handler->display->display_options['filters']['date_filter']['expose']['operator'] = 'date_filter_op';
$handler->display->display_options['filters']['date_filter']['expose']['identifier'] = 'date_filter';
$handler->display->display_options['filters']['date_filter']['expose']['remember_roles'] = array(
  2 => '2',
  1 => 0,
  3 => 0,
  4 => 0,
  5 => 0,
  6 => 0,
);
$handler->display->display_options['filters']['date_filter']['granularity'] = 'month';
$handler->display->display_options['filters']['date_filter']['year_range'] = '-1:+1';
$handler->display->display_options['filters']['date_filter']['date_fields'] = array(
  'commerce_order.created' => 'commerce_order.created',
);

/* Display: Page */
$handler = $view->new_display('page', 'Page', 'page');
$handler->display->display_options['path'] = 'admin/commerce/coupons/revenue';
$handler->display->display_options['menu']['type'] = 'tab';
$handler->display->display_options['menu']['title'] = 'Revenue';
$handler->display->display_options['menu']['weight'] = '0';
$handler->display->display_options['menu']['name'] = 'management';
$handler->display->display_options['menu']['context'] = 0;
$handler->display->display_options['menu']['context_only_inline'] = 0;

Comments

MrPeanut’s picture

I am taking this a step further and creating a second page that shows the orders for a specific coupon. On the view you provided, I made the coupon code a link to a second page. That second page shows Order ID, E-mail, Order total, and I'm trying to get it to show Granted amount. However, Granted amount is showing blank. If anyone has ideas on why, I'd appreciate the assistance!