Certification
A Consumer API integration must be certified before production credentials are made available.
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).
Legal Requirements
- 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
- There must be 2 buttons
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. Don’t rapidly poll 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
- User can view and update account details (email, first name, last name, etc)
- User can submit a request for account closure
- User can view and update communication settings
Card Management
- API-based enrollment
- User can enroll a credit card
- User can archive a credit card
- 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
- User can view recent 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
- The following expressions of loyalty are optional and the usage of these can be determined by an integration partner’s creative/marketing teams.
- That said, a requirement of the card networks is that a user must be able to receive value in exchange for enrolling their card and authorizing Thanx for automated data capture. Support for points, tiers, or both is required to satisfy this requirement.
- Points
- User can see their current points balance
- User can view info of how they earn points
- User can view configured rewards in the marketplace (points products)
- User can exchange points for points products
- Tiers
- User can see tier info, including thresholds and a description of tier perks
- User can view their current tier status
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