concretecms-community-store / community_store

An open, free and community developed eCommerce system for Concrete CMS
https://concretecms-community-store.github.io/community_store/
MIT License
106 stars 66 forks source link

For discussion: Easy implementation of Affiliate Marketing #412

Open cahueya opened 5 years ago

cahueya commented 5 years ago

Hey people :-)

I have been thinking about how to implement some kind of Affiliate Marketing and could not come up with a "automatic" way yet (without the need to build something from bottom up).

So I think about how to do it easily without any building with CS as-it-is and want to invite you to a discussion or ideas, some brainsharing and so on:

1. Generating an Affiliate ID An Affiliate ID could automatically be generated by the User ID maybe with mixture of the Registration Date or something that adds more numbers. This can easily be shown in the User Profile, maybe depending on some UserGroup criteria.

2. Add Affiliate-ID to Order process. Just a textbox that MAYBE just pops up after a click like the coupon code box.

2a. @mesuva do you think it is possible to auto-populate this field by an URL parameter? It would be easy to create an "Affiliate Product Link" with https://domain.com/products/product1?aid=12345 if this could be pushed through the Cart into the checkout pages.

3. Find the Affiliate ID in Orders. As this is just an Order Attribute, this should be easily visible in orders.php or the reports page. Maybe some code addition to the controller.

3a. Find the Affiliate Partner. If the Affiliate ID is, lets say, some variant of the UserID, it is simple to return that User within the Order. Something like "Affiliate Partner: User12345" somewhere on the Order Details would be easy.

4. Evaluation This is where I am unclear. Depending on how you would want to evaluate the Affiliation value, I think this must be done manually. If I want to see how many new customers were brought in by an Affiliate Parter, I can get this out of reports. If I want to check how much revenue a Affiliate Partner has brought in, I can get this from the reports. The most easy way I think would be to define threshholds (up to 500, up to 1000...) and give out coupon codes or maybe send money but thats all manual work as far as I can see now.

Thoughts I have no figured out how the "Affiliation points" could be attached to the user. Maybe through a custom Attribute that stores the value and is updated whenever the AffiliateID pops up in an order. But that required already some more effort as what I think about now.

Please share your brains :-)

Thank you!

cahueya commented 5 years ago

Update: Ok, so I set it up like defined above, with a minor change to the order details page, the referring user can now be shown with a link to their data in the Users List.

When set up as a Order Choices Attribute, the Affiliate ID is easily searchable in the orders. It is not shown in the reports exports, but that would be easy to add.