https://github.com/kinduff/spree_reffiliate
Spree Affiliate and Referrals extension
https://github.com/kinduff/spree_reffiliate
Last synced: about 1 year ago
JSON representation
Spree Affiliate and Referrals extension
- Host: GitHub
- URL: https://github.com/kinduff/spree_reffiliate
- Owner: kinduff
- License: bsd-3-clause
- Created: 2014-09-10T00:18:06.000Z (almost 12 years ago)
- Default Branch: master
- Last Pushed: 2017-09-05T18:24:46.000Z (almost 9 years ago)
- Last Synced: 2025-05-08T21:12:54.067Z (about 1 year ago)
- Language: Ruby
- Size: 80.1 KB
- Stars: 24
- Watchers: 6
- Forks: 80
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## :warning: This repository is no longer maintained by the original author :warning:
## :warning: Please refer to [vinsol-spree-contrib/spree_reffiliate](https://github.com/vinsol-spree-contrib/spree_reffiliate) for an updated version :warning:
Spree Reffiliate
================
[](https://codeship.com/projects/46636)
[](https://travis-ci.org/kinduff/spree_reffiliate)
[](https://codeclimate.com/github/kinduff/spree_reffiliate)
[](https://codeclimate.com/github/kinduff/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:
```ruby
gem 'spree_reffiliate'
```
Alternatively, if you want to use the bleeding edge version, use this line:
```ruby
gem 'spree_reffiliate', github: 'kinduff/spree_reffiliate'
```
Bundle your dependencies and run the installation generator:
```shell
bundle
bundle exec rails g spree_reffiliate:install
```
### Existing 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:
```shell
bundle exec rake reffiliate:generate
```
## Usage
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`.
```shell
bundle
bundle exec rake
```
When testing your applications integration with this extension you may use it's factories.
Simply add this require statement to your spec_helper:
```ruby
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
[Spree]: http://spreecommerce.com/