Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Reflio – Open-source affiliate program creator for SaaS (reflio.com)
135 points by mcilroy on Sept 16, 2022 | hide | past | favorite | 56 comments



Interesting project but I've always half-consciously avoided self-hosted affiliate programs because of one simple reason: trust.

My (possibly misguided) thought is that when dealing with self-hosted referral tracking the affiliate needs to trust that their commission is being tracked properly. But when the SaaS controls the database themselves the affiliate is putting a huge amount of trust in them that tracking is working. And if it isn't working, it seems suspicious at best and fraudulent at worst.

With third party tracking you have external "proof" if presented with compliance or legal needs.

With that said, I see they do offer a hosted option, which is interesting too.


Well a hosted service that is open source would be even better for trust right, since you can inspect the code and make sure it isn't doing anything nefarious. Of course, ideally you would want some kind of garantee they aren't making any changes to the code before deploying it, but a periodic third party audit could potentially accomplish that.


You can inspect the source code of the published version. Doesn't mean what is running on the server is identical and not modified. So I'm not sure it adds trust. Trust it is bug free maybe but not trust no one is doing something underhanded.


Have you ever considered that most affiliates wouldn't have the technical chops to audit the code? Even if they did, they wouldn't waste their time.


My experience was the most 3rd party affiliate system (rewardful, CJ) actually don't properly record conversions (most likely they are blocked by ad-blockers or other technical issues that popular 3rd party services have).


Do you have any proof that the named systems don't properly record conversions? Sounds like a hoax as Rewardful ties directly into the payment processor. Ad-blockers do (or will) block tracking scripts from every provider, open source or not, once they reach enough scale to get on their radar. Although there's always ways around them if you know what you're doing.


I think the best solution that works with most platforms and doesn't have to deal with adblockers, is to use coupons (e.g. 10% discount using the affiliate's code).


This can work, but you lose click tracking and most SaaS companies don't have a coupon input box or want to discount their product. Also, you end up on all the shady coupon sites pretty quickly.


I was an affiliate on both CJ and rewardful, got both clicks and conversions but they were not tracked. Maybe 1 in 10 clocks was tracked.


How would you know if someone clicked and/or converted if it wasn't tracked? Sounds like smoke & mirrors to me.


Because I sent them the link and they purchased through me, I know at least several cases.


I like where you are going with this. Is there any way to set a different "conversion" event, instead of signup? Just move the tracking event to later in the funnel I guess? I think at a minimum, you should explain this usecase in your docs, as I expect many people don't pay for "sign ups" rather for "purchases".


Hey thank you for your feedback! I 100% agree, the docs are my next priority after the next two features go live.

You can see what’s on the roadmap here: https://reflio.canny.io

Custom events will be possible in the upcoming analytics update :)


I tried an affiliate service called LeadDyno recently for my SaaS. A lot of the companies I looked at all have very similar pricing (starting around ~$50/mo), but not all of them worked with Stripe promo codes, which I needed for my app. I ended up cancelling my account when I found out that affiliates were only getting attributed for the first purchase, and not subsequent charges on the subscription.

Now I use a custom query on Stripe Sigma, which is actually cheaper, but probably won't scale as well.

Anyway, glad to see an open source option in this space. Hopefully my anecdote will be interesting to you. Would love to see support for promo codes in the future.


Hey thank you for your comment! Ah yeah that’s annoying about the attribution problem. With Reflio, you can define how you long you want your affiliate to keep receiving commission for on subscription payments. Default is 12 months. So for each payment taken in the subscription, your affiliate will continue to be paid out :)

We do support promo codes right now but it’s manual, however, a direct sync with your available Stripe coupons in the future would be cool. I’ll get it added to the roadmap!


FYI I use leaddyno as well, and there's an option in the commission settings to pay on first purchase only, or recurring.

I've got my app using the custom API, and it works just fine (although lately a lot of ad blockers have started blocking leaddyno js, but that's a whole different can of worms)


Thanks, I was looking for something like this earlier this year but could not find, I will give it a go, hopefully I will finally be able to boost sales.


Amazing! :) feel free to message on live chat or send an email whenever you like if you need help


Since you work in this space, would you happen to know if there’s something like this on the other side of the marketplace for the affiliate content publishers? I started building out a site but the closest thing I can find to a platform entails hacking a Wordpress e-comm CMS to manage outbound links as if they were purchasable products.


We recently moved away from Rewardful to Tapfiliate. The only reason being - provide an option to the user to add the conversion. With only Stripe integrated for tracking it is hard to onboard businesses other than from the US.


If I self-host, who is getting the 9%? I don't think the site is clear on this, as I'm wondering what the point of self hosting is if the app somehow still transfers the fee to your company.


If you self host then you don’t pay a 9% fee since you’re hosting your own Reflio instance. I’ll make the site more clear to reflect this :)

There’s a lack of docs right now since it’s still so new, working on this as a priority.


Looks interesting. Will there be an option to skip the digital hop across the pond and just use US infrastructure for those that don't serve the EU?


Any chance Reflio integrates with InvoiceNinja?

Curious if SaaS could use this for managing commission payments to internal and external sales teams and agents...


Can I use promo codes instead of website tracking? Most of my new customers come from a Discord channel and never visit my website.


That’s actually a good point :) how would you see this working? Your affiliate gets a unique promo code for your checkout, then if a sale is completed with that promo code, it attributes the referral to that particular affiliate?


That's pretty much what I'm after. Ideally the affiliate gets real $ in return for their referral instead of just credit for my service. I run a niche gaming vpn.

Last time I looked at your competitors nobody seemed to be doing it, so I implemented a halfway version myself. I currently generate a unique Stripe promo code for each new customer. If someone uses the promo code it gives them a small discount and gives the referrer credit against their account. Its not very popular as it stands.


This is exactly the type of referral programme I am aiming to build via Stripe in the next couple weeks.

If you have any advice, or know of any existing SaaS that can handle this, please do give a shout.


That's intriguing, what's your business and how are people finding you via Discord? (If you don't mind explaining — if you do, I get it.)


No probs, I run a niche gaming vpn service supporting a handful of games for Australian and New Zealand customers. It is mostly run out of a Discord server and any support work is handled via Discord PM's. All my new customers are from word of mouth and typically just get sent an invite to my Discord channel from existing customers. The website is pretty much an afterthought and to provide a bit of credibility.


What is the benefit of this over just rolling referral attribution into your billing system?


So with Reflio you just need to connect your Stripe, add the JS tracking script to your site and then your good to go. You can manage multiple different types of affiliate campaigns from one dashboard, and manage all of your affiliates in one place. Your affiliates also get access to their own dashboard so they can monitor their own referrals and commissions.

It just saves you all of the leg work in setting up these systems basically :)


Is 9% fee per successful referral not crazy expensive? Or am I missing something here?


I don’t think so. The idea of the 9% fee is to allow you to try out the platform with no upfront commitment. You only pay per successful referral. So once you start to see referrals come through, you could then upgrade to a plan that has 0% fees.

I’ll add a fee cap though of maybe ~$50 or so though to account for higher ticket conversions.


This explains a lot and a cap sounds great!


I’m sorry guys, but you will need to work out the pricing. The existing solutions offer much better functionality and being managed-hosted for the same price.


Hey thank you for your feedback - I agree, it’s still early days, but in terms of being the same price I don’t think that’s quite right. We’re about 30-60% cheaper than other solutions right now. Our solution is also managed, so you get your own affiliate signup page and affiliate dashboard etc.

Our landing and pricing page isn’t as clear as it needs to be right now, I will be updating it soon with all of the different functionality we offer that’s also unique.


Instead of denying the truth of the feedback, you could have asked, “Thanks I’d love to know which competitors so we can understand if and how to adjust.”

Then you’d learn something, or not. But by pushing back “no” you’ll definitely not.


I appreciate that, thank you. You’re definitely right I could have worded it better.

Just from my point of view, I’ve done a lot of research in this market so I’d be very surprised to learn that there’s competitors offering affiliate marketing program creation/management for the same pricing as us or better.

Our nearest competitor seems to start from $29/month, but that’s with an additional 9% fee for each referral. And they don’t allow you to upload your own logo to your campaign invite page…

I do appreciate I should have worded my response better though, it’s been a long day


Which existing solution offers a free-tier with x% fee on successful referrals?


What exactly makes this privacy first?


You can enable “privacy mode” in your Reflio script, where it will automatically request that users based in the EU confirm that they accept the use of cookies (it’ll show a small popup banner asking the user to confirm consent).

All data is processed in the EU, and our company is registered in the UK.


so does this only work if i use stripe ?


Right now, however, we’re currently in the process of adding support for Paddle :)


Your license is very sketchy considering this product is aimed at businesses. You have parts of the app licensed under a proprietary license called "ENTERPRISE" and other parts licensed under GPL. I suggest you either separate those into specific repos or stop calling it "open source".


We’ve taken our commercial open-source licensing from other larger commercial open-source products.

I think it’s fair. The licensing states that you’re allowed to use Reflio 100% for free, as long as you keep the codebase in a public repository. Otherwise, if you want to use Reflio in a closed repo, you have to obtain a commercial license.


Can you clarify, is everything in your repo (https://github.com/Reflio-com/reflio) AGPL like it says in the readme, or are there parts of the repo under a different license, as this file seems to imply- https://github.com/Reflio-com/reflio/blob/main/apps/reflio/L...? I don't see any license header or anything else that would indicate that some files are under a different license?

Second, what license is the Reflio referral tracking script under? It appears that this script should be integrated into the SaaS product itself? Having that script AGPL would be a poison pill that no sane non-AGPL SaaS would swallow.


Hey thank you for your comment. I took the idea of Reflio’s licensing from other larger commercial open-source products, but I understand now that it’s a bit confusing.

The idea was that Reflio is 100% free to self-host in your own public repo. If you wish to make the code private, then you need to purchase a commercial license. That’s how I plan to set up the licensing. I’ll be changing the licensing file and README shortly to reflect this.


Looking at cal.com, which I noticed you said is what you are basing this on, it appears they are 100% AGPL... the other license file in your repo seems to imply that some of your code is not AGPL... but it isn't clear what that might be.

The AGPL on everything should accomplish that, and you can just note that commercial licenses are available for those wanting to keep their fork private.

But I suggest you license any javascript or client side libraries under a more permissive license, probably MIT or similiar-- because your SaaS customers probably don't want to make their entire SaaS app AGPL (Unless you only want to serve AGPL licensed SaaS customers). I think you use Sentry- look at the way they have their server under a NOT open source-available license, but the client libraries are under a permissive open source license- you can have the server under the AGPL, while using a more permissive library on the client libraries.

Beyond that, you should consider that there are many successful open source companies that use more permissive Open Source licenses and many companies that refuse to even consider AGPL licenses software. Personally not a huge fan of the AGPL due to to many uncertainties involved with it.

It is your project and you can license it however you want, and I appreciate that you have chosen an Open Source license, even if it is the AGPL. I just want to help you be more clear about the licensing and maybe put some consideration into if the AGPL is really the right license, rather than just following others :)

Also, consider that you can state your intent in the readme and that is great- you should- but it is the license that companies look to to decide if they want to use it or not, and generally to determine what they can and can't do


One other thing to consider is a CLA- if you plan to accept contributions from outsiders, and you stick with AGPL+Commercial, you will want any contributors to sign a CLA that grants you the right to sell their contributions under the commercial license. This would be a hard stop for me, and others like me, to contributing to the code... but is necessary if you want to accept outside contributions while offering a commercial license option. (Another good reason not to use the AGPL, if you want to encourage community development- many commercial open source products simply forbid outside contributions of code, though, or don't care about outside contributors).


> This software and associated documentation files (the "Software") may only be used in production, if you (and any entity that you represent) have agreed to, and are in compliance with, the Reflio Subscription Terms available at https://reflio.com/terms (the “EE Terms”) ...

If I don't agree with your enterprise edition terms I have to manually remove that part of the code from my installation. Why don't you just separate them instead?


I’ll update the terms to be a bit clearer and not exclude any parts of the codebase. I figured since other much larger products have the same terms, then it must be a well practised license type in commercial open-source. I guess not.


yeah, very sketchy


Curious, how’s that sketchy? It’s a commercial open-source product. Look at Cal.com’s licensing - that’s what we based Reflio’s licensing on. I think it’s more than fair.


I regret the wording, apologies if it comes across negatively, but sometimes you can surprise people if you market as open source and then when reading the licence people find out it's actually more "opensource-ish".

As far as I can see it's not AGPL, like Cal.com. It's actually AGPL + Commercial. That's to say if you clone the repo into a private repo but don't make any changes then you have to pay for some magical "licence", AGPL doesn't require that.

I'm not sure what achieves beyond AGPL.. but like others mentioned think about MIT licensing the client, and come up with contributor agreements if you're selling the code commercially.


I wouldn’t recommend MIT for commercial OSS. See Elastic v Amazon. Go AGPLv3 or BSL.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: