Process

To initiate the certification process, a build (app or web) should be submitted to the Thanx Developer Support team (developer.support@thanx.com). Once a build is submitted for certification, feedback will be delivered within ten business days. If no critical feedback is provided, the build will be certified and production API credentials will be issued. If critical feedback is provided, integration partners should address the feedback and resubmit a new certification candidate build, after which the 10 business day certification review cycle will begin again.

Submission

Depending on the experience being developed, the following submission formats are supported:

  • Web
    • URL of web experience
  • iOS
    • Firebase App Distribution link
    • TestFlight build. For the specific emails to whitelist, please request them from developer.support@thanx.com.
  • Android
    • Firebase App Distribution link
    • APK file

All the above experiences must be pointing the Thanx Sandbox APIs. A build should be submitted for each experience (web, iOS, Android).

  • User must agree to the Thanx Privacy Policy and Terms of Service when creating a loyalty account. The language should read

    By signing up you agree to our  privacy policy and our  terms of service

  • User must be able to navigate to the Thanx Privacy Policy and Terms of service from both App and Web experiences when logged in (may also be mentioned in another document that’s readily available in the app, e.g. the brand’s Terms)
  • Any screen where the user is enrolling their credit card for loyalty tracking must have the correct legal text (see enrollment best practices)
    • There must be 2 buttons
      • One button must include “Register card”
      • The other allow to skip enrolling the card
    • Legal content should be visible at all times
    • Links must be visible and clickable

General

  • API requests must include all required headers
  • API requests must not be unnecessarily duplicated
  • API error messages should be displayed to the user
  • API requests should only be issued on a reasonable frequency and in response to end-user interactions (e.g. rapidly polling API for changes)

Account Creation & Authentication

  • Thanx must be the only authentication provider available for users
    • Thanx tools do not work when other authentication mechanisms are in place (eg. Google SSO, email/password)
  • User can create account via the create user endpoint
  • User can authenticate via passwordless email following Thanx SSO guidelines
  • Users should be required to provide a name to complete registration
  • A new user should be prompted to sign up
  • An existing user should be sent a login email (experience should display a message about an email being sent)

Account Management

Card Management

  • API-based enrollment
  • Experience should support displaying a list of cards
  • Experience should allow a user to link a card (Visa, Mastercard, American Express)
  • Experience should allow a user to delete a card

Purchases

Reward Redemption

  • User can view available rewards
  • User can activate and finalize a reward
  • Reward type support
    • Only in-use reward types need to be supported
    • manual - redemption conducted manually (e.g. in-store, showing server/cashier)
    • automatic - cash-back pushed directly to a user’s credit card once a qualifying purchase is made
  • Supported coupon code formats:
    • Only in-use coupon code types need to be supported
    • raw
    • qrcode
    • barcode39
    • barcode39extended
    • barcode93
    • barcode128
    • barcode_upc_a
    • barcode_ean_8
    • barcode_ean_13
    • barcode25interleaved
  • Reward activation request should be made only on user action
  • Manual redemption rewards should display a countdown timer

Expression of Loyalty

Push Notifications (Mobile Only)

  • For custom app builds, push notification certificates (Apple APNS and Google FCM) must be provided to Thanx developer support
    • APNS push notification certificate should be provided to Thanx
    • FCM server key and server ID should be provided to Thanx
  • User can register for push notifications and the app should make a call to register the push notification token with Thanx

Feedback (Optional)

  • This functionality is optional and will only be validated if implemented
  • User can get feedback prompts (created post purchase creation)
  • User can submit feedback (rating and review)
  • Experience should submit numerical rating and optional text feedback
  • Experience should present the option to leave text feedback for each purchase
  • Rating should be on a 10 point scale

Receipt Submission (Optional)

  • This functionality is optional and will only be validated if implemented
  • User can view pending receipts
  • User can upload and submit a receipt
  • Experience should request all required information from the user
  • Experience should allow the user to choose a card to associate the receipt with, if they have any