> ## Documentation Index
> Fetch the complete documentation index at: https://docs.thanx.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Pre Cert Checklist Consumer UX

# Pre-Certification Self-Check: Consumer UX Integration (Mobile App / Web Ordering)

Complete ALL items before contacting [developer.support@thanx.com](mailto:developer.support@thanx.com) for certification.

***

## API Headers & General

*This integration uses three separate APIs with different header requirements.*

### Consumer API Headers (Create User, SSO Authentication, Get Account, Get Rewards, Activate Reward, Card Management, Purchases, Account Management)

* [ ] `Authorization: Bearer {access_token}`
* [ ] `X-ClientId: {client_id}`
* [ ] `Accept-Version: v4.0`
* [ ] `Content-Type: application/json`
* [ ] `Accept: application/json`

### Partner API Headers (Get Merchants, Get Locations)

* [ ] `Authorization: Bearer {access_token}`
* [ ] `X-ClientId: {client_id}`
* [ ] `Accept-Version: v4.0`
* [ ] `Content-Type: application/json`
* [ ] `User-Agent: {partner}/1.0.0`

### Loyalty API Headers (Create/Update Basket)

* [ ] `Authorization: Bearer {user_access_token}`
* [ ] `Merchant-Key: {merchant_key}`
* [ ] `Accept: application/vnd.thanx-v1+json`
* [ ] `Content-Type: application/json`
* [ ] `User-Agent: {partner}/1.0.0`

### General

* [ ] No unnecessary duplicate API requests
* [ ] Error messages displayed to the user
* [ ] API requests only issued in response to end-user interactions (no rapid polling)

## Legal Requirements

* [ ] User must agree to Thanx Privacy Policy and Terms of Service when creating a loyalty account
* [ ] Legal text reads: "By signing up you agree to our privacy policy and our terms of service"
* [ ] Privacy Policy and Terms of Service links accessible from both app and web when logged in
* [ ] Card enrollment screens include correct legal text (see enrollment best practices)
* [ ] Card enrollment screen has two buttons: one to "Register card", one to skip
* [ ] Legal content visible at all times on enrollment screens
* [ ] All legal links are visible and clickable

## Account Creation & Authentication

* [ ] Thanx is the only authentication provider (no Google SSO, email/password, etc.)
* [ ] User can create account via Create User endpoint
* [ ] User can authenticate via passwordless email following Thanx SSO guidelines
* [ ] Users required to provide a name to complete registration
* [ ] New users prompted to sign up
* [ ] Existing users sent a login email with appropriate messaging displayed

## 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 (Card-Linked Loyalty Only)

* [ ] User can enroll a credit card
* [ ] User can archive/delete a credit card
* [ ] Experience displays a list of enrolled cards
* [ ] Supports Visa, Mastercard, and American Express

## Purchases

* [ ] User can view recent purchases

## Reward Redemption

* [ ] User can view available rewards
* [ ] User can activate and finalize a reward
* [ ] Supported reward types implemented:
  * [ ] Manual
  * [ ] Automatic
* [ ] Supported coupon code formats implemented (only in-use types required):
  * [ ] Raw text / QR code / Barcode formats as applicable
* [ ] Reward activation request only made on user action
* [ ] Manual redemption rewards display a countdown timer

## Reward Redemption at Checkout (Ordering)

* [ ] Get Account call made at checkout to retrieve points balance, rewards, and points products
* [ ] Available rewards and points products displayed to user
* [ ] Basket submitted to Create or Update Basket endpoint with selected rewards
* [ ] Correct `location_uid` included (mapped via Get Locations endpoint)

## Bonus Points Automatic Activation

* [ ] Bonus points rewards automatically activated so users earn points without manual redemption
* [ ] Uses Get Rewards and Activate Reward endpoints

## In-Store Reward Redemption (Mobile Apps Only)

* [ ] In-store redemption codes displayed when users redeem rewards in-store
* [ ] Codes rendered as QR codes or merchant's preferred code format

## Basket Submission

* [ ] Basket submitted to Create or Update Basket endpoint with correct state transitions:
  * [ ] `checkout` — basket created/updated during browsing
  * [ ] `placed` — order submitted, reward locked
  * [ ] `billed` — payment charged, loyalty accrued
  * [ ] `completed` — order handed to customer (recommended)
* [ ] `location_uid` included (mapped via Get Locations endpoint from Consumer API)
* [ ] `items` array populated with `price` per item in every basket state
* [ ] `payments` array populated with `amount` per entry
* [ ] `order_timestamp` in ISO 8601 format (UTC)

## Automated Location Mapping

* [ ] Location IDs mapped from your system to Thanx Location IDs via Get Locations endpoint
* [ ] Correct `location_uid` sent with every basket submission

## Expression of Loyalty (Points and/or Tiers Required)

### Points

* [ ] User can see current points balance
* [ ] User can view info on 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 tier perk descriptions
* [ ] User can view their current tier status

## Submission Format

* [ ] **Mobile apps:**
  * [ ] TestFlight build submitted (iOS) — whitelisted emails requested from [developer.support@thanx.com](mailto:developer.support@thanx.com)
  * [ ] Firebase App Distribution or APK submitted (Android)
* [ ] **Web ordering:**
  * [ ] Test URL submitted pointing to Thanx Sandbox APIs
* [ ] All experiences point to Thanx Sandbox APIs
* [ ] A build submitted for each experience (web, iOS, Android)

***

**After completing all items above, email [developer.support@thanx.com](mailto:developer.support@thanx.com) to submit your build for certification review (10 business day review cycle).**
