Skip to main content

cTrader Invite

cTrader Invite enables brokers to implement affiliate and referral programmes with multi-level tracking and attribution reporting.

Prerequisites

Important

Before implementing cTrader Invite, ensure completion of:

Implementation flows

There are two possible trader attribution flows.

  • Flow 1 (New partner) outlines a case in which a trader is attributed to an entirely new partner.
  • Flow 2 (Existing partner) describes attributing a trader to a partner who has already been registered as a partner in the broker's client area for some time but has not yet created a cTrader ID.

The flow proceeds through the following stages:

  1. The user (User 1) registers as a partner in the broker's CRM. If they do not have a cTID, they first pass the User creation flow.
  2. The broker's backend registers a new partner either at the account level or the user level. The mechanism for registering a new partner is left entirely to the broker's choice.
  3. The broker's backend issues a referral link containing a unique partner identifier of User 1; this identifier is later used to set the partnerId parameter.
  4. The broker's backend sends a request to set the partnerId parameter (PUT /oauth2/ctid/referral) to the cTrader backend.
  5. On success, the cTrader backend assigns User 1 the provided partnerId either at the account level (via the ctidTraderAccountId parameter) or the user level (via the userId parameter). Depending on the level, the cTrader backend returns either the ctidTraderAccountId or the userId to the broker's backend (PUT /oauth2/ctid/referral).
  6. The cTrader backend sends the partnerId of User 1 back to the cTrader application.
  7. User 1 generates a cTrader link inside the cTrader application (for example, by sharing a direct link to a Copy strategy).
  8. The cTrader application generates the link requested by User 1; this link contains the partnerId of User 1.
  9. The cTrader application displays the requested link to User 1.
  10. User 1 shares the cTrader link with User 2.
  11. User 2 clicks on the cTrader link provided by User 1.
  12. For User 2, the cTrader application opens a predefined URL to the login/signup screen. This URL contains the partnerId of User 1 as a query parameter.
  13. User 2 fills out the signup form; afterward, the web browser sends a request for user creation to the broker's backend containing the partnerId.
  14. The broker's backend successfully creates a user; the User creation flow is continued further.
  15. When the User creation flow is completed, User 2 is attributed to User 1.
  16. User 1 logs into the broker's client area and opens a page containing a list of their referrals.
  17. The broker's client area successfully fetches data about the referrals of User 1 and displays this information on the requested page.
  18. User 1 sees User 2 among their referrals.

Endpoints used