{"id":15748226,"url":"https://github.com/binaryphile/spree_dibs_referral","last_synced_at":"2025-04-30T08:24:45.743Z","repository":{"id":4548224,"uuid":"5688952","full_name":"binaryphile/spree_dibs_referral","owner":"binaryphile","description":"A simple extension for tracking referrals based on a role","archived":false,"fork":false,"pushed_at":"2014-04-01T15:29:08.000Z","size":514,"stargazers_count":2,"open_issues_count":2,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-30T14:23:06.353Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/binaryphile.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-09-05T15:10:16.000Z","updated_at":"2015-05-04T19:00:02.000Z","dependencies_parsed_at":"2022-09-19T09:41:27.565Z","dependency_job_id":null,"html_url":"https://github.com/binaryphile/spree_dibs_referral","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binaryphile%2Fspree_dibs_referral","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binaryphile%2Fspree_dibs_referral/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binaryphile%2Fspree_dibs_referral/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binaryphile%2Fspree_dibs_referral/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/binaryphile","download_url":"https://codeload.github.com/binaryphile/spree_dibs_referral/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251667548,"owners_count":21624519,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-04T05:40:58.687Z","updated_at":"2025-04-30T08:24:45.712Z","avatar_url":"https://github.com/binaryphile.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"spree_dibs_referral\n===================\n\nThis is a [Spree] extension that allows tracking of sales referrals\nbased on a role.  It allows users with that role to send links to leads\nvia email, then have their account reported as the referral on\nassociated sales.\n\nThe customer can also manually choose or override the referral during\nthe payment step of checkout.\n\nInstallation\n============\n\nThe master branch of spree_dibs_referral is compatible with Ruby 1.9.x\nand Spree 1.3.  There are stable branches for Spree 1.1, 1.2 and 1.3.\nUse the appropriate branch for your version as shown below.\n\n1. Edit your Gemfile, adding the line:\n\n`gem 'spree_dibs_referral', :git =\u003e 'git://github.com/binaryphile/spree_dibs_referral, :branch =\u003e '1-3-stable'`\n\n2. Run the following commands:\n\n```\nbundle install\nbundle exec rake spree_dibs_referral:install:migrations\nbundle exec rake db:migrate\n```\n\nStart your Spree instance and you're done.\n\nKnown Issues\n============\n\nThe spree_flexi_variants extension\n----------------------------------\n\nThe referral link on the cart page cannot support carts which have items\nthat differ only by their ad-hoc options (i.e. they have the same Spree\nvariant id but different ad-hoc options) as well as having different\nquantities.  The user who clicks on such a referral link will get a cart\nthat has both items, with the proper options, but the quantities for\nboth will be the quantity of the last such item.\n\nFor example, if you have two t-shirt items in your cart that only differ\nby quantity and the ad-hoc option of size, say two of the small and\nthree of the large, then the user receiving the referral link will get a\nquantity of three on both the small and large t-shirts.\n\nThere is no workaround, you simply can't do this if you're using the\nspree_flexi_variants extension.\n\nDetails\n=======\n\nIt is open-source, so input/pull requests will certainly be considered,\nbut be aware that it is being developed specifically for the needs of\nDidItBetter Software's Spree implementation, which puts some\nconstraints on what input is accepted.  That said, please do contact\nme if you have a problem or suggestion.\n\nBy referrals, we typically mean inside or outside salespeople who take\nan active role in assisting customers with finding suitable product(s)\nand who are compensated for assisting closed sales.  This system makes\nit easier to track the referrers association with the sale so that\ncredit can be given where it is due.\n\nAs it stands, the system is actively being developed and will have some\nsignificant changes to the user experience in the near future.\n\n### dibs_referral Role\n\nThere is a new role added by the extension, called \"dibs_referral\".\n\"dibs\" is short for DidItBetter Software.\n\n![user_role]\n\nEach referrer (salesperson) must have an account on the system and must\nbe assigned the dibs_referrer role.\n\nOnce the role is assigned, the referrer will show up in the list of\nreferrers.  This list is shown to the user on the payment step of the\ncheckout process.\n\n### Choosing Referrer During Payment Step\n\nIf the user has been sent a referral link, then they will have the\nreferrer's id set in their session cookie.  Once they make it to\ncheckout, the payment step will list the referrer automatically.  The\nuser will have the opportunity to change the referrer at that point,\nchoosing from any user with the referral role.  However, they will\nusually leave it alone.\n\n![purchase]\n\nIf the user has not been sent a referral link, the referral field\ndefaults to blank.  They can select from the list of referrers or choose\na blank selection, but they must touch the dropdown at least once.\nThere is bit of javascript to make sure that they do, which pops up an\nalert warning.\n\n### Orders Admin View\n\nIn the orders list in the admin view, there is a new column that\ncontains the referral, if one was specified with the order.  Currently\nthe list isn't sortable on that field like the others can be since I\ncouldn't figure that part out.\n\n![order_list]\n\nOn the order detail, the referral is listed in the order summary in the\nright-hand sidebar.  If you edit the order, there is a dropdown to\nchange the referral.\n\n![order_detail]\n\n### My Account Referral View\n\nFor the referrer, a new table has been added to the \"My Account\" page,\nwhich shows their referrals that have been completed as sales, so\nthey can see their current status.  Incomplete referrals are not\ntracked.\n\n![my_account]\n\n### Sending a Cart Referral\n\nAs a referrer, you will also see a _Send Referral_ button on your cart.\n\n![cart_referral]\n\nWhen you click this button, you will again see an email from your local\nmail client.  This time, the link will take the user to their own cart.\nHowever, the current contents of the cart will be emptied and replaced\nwith the contents of the referral cart.  Your id will be saved in their\nsession so that any future purchase will list you as the referrer.\n\n![cart_email]\n\n### Email notifications\n\nThe referrer will automatically be cc'ed on any emails generated by the\npurchase process for the referred user.\n\nFuture Features\n===============\n\n* Create a cart template system\n\nAllow referrers to store pre-defined carts, tailor them and send them.\n\n* Reporting\n\nMore detailed reports for admins and referrers\n\n* Track compensation rates and calculate totals\n\nAdd the ability to set a rate (percentage) that the referrer receives\nand put totals in reporting\n\nMore detailed specifications can be found at the [DidItBetter Wiki].\n\nCopyright (c) 2012 DidItBetter Software, released under the New BSD\nLicense\n\n[Spree]: http://spreecommerce.com/\n[user_role]: https://github.com/downloads/lilleyt/spree_dibs_referral/user_role.png\n[purchase]: https://github.com/downloads/lilleyt/spree_dibs_referral/purchase.png\n[order_list]: https://github.com/downloads/lilleyt/spree_dibs_referral/order_list.png\n[order_detail]: https://github.com/downloads/lilleyt/spree_dibs_referral/order_detail.png\n[my_account]: https://github.com/downloads/lilleyt/spree_dibs_referral/my_account.png\n[cart_referral]: https://github.com/downloads/lilleyt/spree_dibs_referral/cart_referral.png\n[cart_email]: https://github.com/downloads/lilleyt/spree_dibs_referral/cart_email.png\n[DidItBetter Wiki]: http://wiki.diditbetter.com/doku.php?id=Agent_Modules:Agent_Modules\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbinaryphile%2Fspree_dibs_referral","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbinaryphile%2Fspree_dibs_referral","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbinaryphile%2Fspree_dibs_referral/lists"}