⚠️ This repository is no longer maintained by the original author ⚠️
⚠️ Please refer to vinsol-spree-contrib/spree_reffiliate for an updated version ⚠️
Spree Reffiliate
Spree Reffiliate is a Spree Extension that adds the referral and affiliate features to your Spree Store. Users are going to be able to share a unique hyperlink with their friends to gain benefits and you'll be able to create affiliate campaigns through the Spree Administrator and configure it to your needs.
Referrals
- User can share a unique URL
- User can signup as a referred user
- Referred user can have promotions
- Admin is able to see referred users and orders from user
Affiliates
- Admin is able to create an affiliate with a custom path
- Customize the affiliate view with a partial
- Users are going to be able to signup as an affiliated user
- Affiliated user can have individual promotions
- Admin is able to see affiliated users and orders from affiliate
Installation
To use the stable branch, add this line to your Gemfile:
gem 'spree_reffiliate'Alternatively, if you want to use the bleeding edge version, use this line:
gem 'spree_reffiliate', github: 'kinduff/spree_reffiliate'Bundle your dependencies and run the installation generator:
bundle
bundle exec rails g spree_reffiliate:installExisting Users
If you already have users within your database, you'll need to run the following command to generate the referral registry for your users:
bundle exec rake reffiliate:generateUsage
Referral path is /r/:code and Affiliate path (assigned in the admin) is /a/:path
Once installed, you'll be able to access the following methods.
Spree::User
- referred_by => user record
- referral_count => user count
- referred? => boolean
- affiliate? => boolean
- affiliate => affiliate record
- referral => referral record
Spree::Referral
- code => referral code
- referred_users => array of users
- referred_orders => array of orders
- referred_count => user count
- referral_activated_users => users with completed orders
Spree::Affiliates
- referred_users => array of users
- referred_orders => array of orders
- referred_count => user count
Spree Admin
Users
Affiliates
Promotion Rules
Important: in both referrals and affiliates, do not fill in the promotion code for the promotion itself to be applied automatically to the user's order. If you add a promotion code, the user will need to apply the for promotion manually.
For referrals
For affiliates
User account
Testing
First bundle your dependencies, then run rake. rake will default to building the dummy app if it does not exist, then it will run specs. The dummy app can be regenerated by using rake test_app.
bundle
bundle exec rakeWhen testing your applications integration with this extension you may use it's factories. Simply add this require statement to your spec_helper:
require 'spree_reffiliate/factories'ToDo
- Add missing documentation
- Add 2-2-stable and 2-1-stable support (or at least test them)
- Improve affiliates admin
- Improve User and Orders listing at user admin
- Add option or helper to show referral code to the user
Copyright (c) 2014 Alejandro AR, released under the New BSD License





