Layer 1 copy

Use-case

This integration guide helps marketplaces stop referral abuse, spam, scams, chargebacks, and other types of fraud. Send the following events for all users when applicable:

Send User Events

A core integration includes the following (when applicable):

Integrate your website
Integrate your mobile app
Integrate your events
User creates an account
  • When a user creates an account, send a $create_account event with custom fields to capture differences between users, such as:
    • 'promo_code' : 'SpringPromo'
    • 'num_reviews' : 0
    • 'num_services_purchased' : 0
    • 'num_campaigns_started' : 0
    • 'num_listings' : 0
  • When a user updates their account information send an $update_account event.
User content
  • When a user creates content, send a $create_content event
      Custom field ideas: (update counters capturing key activity metrics of users here)
    • 'num_campaigns_started' : 0 (value before this campaign)
    • 'num_listings' : 4 (value before this listing)
  • When a user updates their content, send an $update_content event.
  • When the status of a piece of content changes, e.g. from draft to active, send a $content_status event if the user hasn't made other changes (as then you'd send an $update_content).
  • When other users flag the content as potentially bad, send a $flag_content event.
User buys an item or service
  • When a user buys an item or service, send a $create_order event.
      Custom field ideas: (update counters capturing key activity metrics of users here)
    • 'percent_discount' : 48
    • 'total_auction_bids' : 14
    • 'amount_after_credit' : 12.43 (how much the user spent after promos and credits, if different order $amount)
    • 'num_poster_reviews' : 2
    • 'num_services_purchased' : 4 (value prior to this purchase)
    • 'num_reviews' : 9
  • If a user can update their order, say with a new shipping address, send an $update_order event.
      Custom field ideas:
    • 'address_changed' : True
When you interact with a payment gateway
  • Send a $transaction event for each payment gateway interaction, as well as each other payment method accepted for the order (e.g. gift card).
  • When a payment gateway informs you of a chargeback, send a $chargeback eventand a fraud label.
Additional Events

The following events can be sent to capture a more complete picture of users when applicable: $submit_review, $send_message, $login.

Referral Fraud

If you offer a referral promotion, do the following. When user B signs up using user A's referral:

  • Send '$referrer_user_id' : 'A' in the code '$create_account' event for user B.
  • Send a referral_redeemed custom event for user A with the following fields:
    • '$type' : 'referral_redeemed'
    • '$api_key' : 'your_rest_api_key'
    • '$user_id' : 'A'
    • 'referred_user' : 'B'
    • 'num_referrals_redeemed' : 3 (value including this redemption)

You'll also want to take advantage of our promotion object that can be sent with $create_account, $create_order, and $add_promotion.

Send Feedback to Sift

One of the key strengths of the Sift Science platform is that as you give it feedback it continues to learn and adapt to patterns. By providing continuous feedback on who your good and bad users are, we will evolve our detection and improve the accuracy of risk scores. You’ll be able to stop bad actors even as they change their attack vectors. In addition to sending an optional historical backfill:

  • Create a Feedback focused Workflow where you review high scoring users and tell us how well we are predicting your fraudsters.
  • If you are already doing manual review in your existing system, just send the outcome of each review to our Labels API

Once you’re up and running with Sift, continuing to send feedback will improve your score accuracy in real-time, catching bad users as soon as they appear. This is an important part of a successful integration.

Make Decisions with Sift

Scores are an indication of how risky a user is for a given abuse type. You can use these scores as a means to block bad users, add friction to users you are unsure about (e.g., SMS verification), and let good users sail right through. You’ll want to make these checks at the key events where fraudulent users can hurt your business: typically $create_order for payment_abuse, $create_account for promo_abuse and account_abuse, and $create_content for content_abuse.

The two ways to do this are:

  • Create a Sift Workflow You can build application logic into Sift with our Workflow product. Workflows let you set up criteria that get evaluated whenever specified events occur. Learn more in our Workflows tutorial.
  • Build application logic in your system An alternate approach is to request abuse specific risk scores to be returned in the response of the user events you send. See our API documentation

Any questions? We're happy to talk it through.