We are a designing a referral system where one user A can send a code to another user B (referring or recommending user B to join our service). When user B creates an account with the code sent by A and completes his first task, we send the reward to user A.
What does the code do?
The code is just used for user B to inform the system that he is creating an account because he got referred by user A. It's an invite code similar to what Uber does:
Everyone with an Uber account has a personal invite code that you can share with friends interested in creating a rider or driver account.
Is it a person who somehow referred something to someone (What?)
User A refers user B to use our system. So user A is referring the system itself to user B.
Is it a variable that's doing something (What)?
The code is always the same for the same user A. User A can refer other users C, D or E with that same code. This way, when these users sign up with that code, the system knows to reward user A because they used user A's code. This is again similar to Uber's system:
You are only eligible for one referral reward per individual. If your referral has already signed up to drive or deliver before, you may not be eligible for a reward.
What do the users do that distinguish one from the other that would make you want to use the terminology?
One user (user A in the above examples) is giving the code to others and the other (user B) is creating an account in our system with that code. We need to store this relationship between the two users to know who gave the code and who used it.
In the link from Uber, Uber is addressing user A to explain their system. They refer to user B as user A's "referral" or "invitee".
Problem
In this context we are struggling to find terms that are both clear and unambiguous for the user who refers someone and the user who gets referred. Discussions here [1] [2] suggest the use of referrer and referee but these have at least the following two problems for us:
- Not all of us are native English speakers so "referrer" and "referee" can be confusing;
- Both words are very similar which can lead to misspellings or, worse, them being used interchangeably when writing computer code.
So, instead, we are considering one of the following pairs:
- "referrer" and "referred";
- "referrer" and "redeemer;
- "sponsor" and "referral"; or
- "sponsor" and "affiliate"
Can "sponsor" be used for the person referring (or recommending) another? Can "affiliate" be used for the person that has been recommended by another? Do you have any other suggestions that are more applicable?
Note that these words are meant to be used internally when writing the computer code of our system. The terms the users will see will be written differently. But internally we need to be specific about these two terms to be able to clearly distinguish between the two types of users.