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

# Go-Live Checklist

> Verify your Gameball iOS SDK integration before releasing to production

Use this checklist to ensure your **Gameball iOS SDK v3.1.1** integration is functionally correct, secure, and ready for production launch.

<Info>
  Use your **Test API Key** during development. Only switch to your **Live API Key** after completing all checklist items and validating the integration.
</Info>

***

# 1. SDK Installation & Environment Setup

* Gameball iOS SDK **v3.1.1** installed via Swift Package Manager
* Project builds cleanly with **no warnings or dependency conflicts**
* `import Gameball` works across the project
* `GameballApp.getInstance().init(config:)` is called at startup (AppDelegate or App struct)
* Minimum iOS version set to **12.0+**
* Swift version is **5.0+**
* Test and Production keys stored securely (not committed to VCS)

<Tip>
  See: [**Getting Started**](/installation-guides/v3/ios/getting-started)
</Tip>

***

# 2. Customer Initialization & Profile Registration

* SDK initialization succeeds with Test API Key
* `initializeCustomer` creates/updates customer profiles correctly
* Custom attributes mapped properly and visible in dashboard
* Device token registered with Gameball (if push notifications enabled)
* Referral code passed correctly for newly referred customers
* Guest user flow tested (if applicable)
* Errors handled gracefully (network issues, invalid input, auth errors)

<Tip>
  See: [**Initialize Customer Profile**](/installation-guides/v3/ios/initialize-profile)
</Tip>

***

# 3. Event Tracking Validation

* All required customer actions mapped to events
* Events successfully sent using `sendEvent`
* Events appear in Gameball dashboard with correct metadata
* Event-based rewards trigger successfully
* Async/Await and callback variants tested
* Metadata keys follow consistent naming conventions
* Error handling implemented for timeouts, auth errors, and invalid payloads

<Tip>
  See: [**Track Customer Events**](/installation-guides/v3/ios/track-events)
</Tip>

***

# 4. Profile Widget Validation

* Widget opens correctly inside the app (UIKit & SwiftUI)
* Customer data (points, referrals, tiers, rewards) loads correctly
* Navigation within widget works without crashes
* Close button behavior correct (if enabled)
* Deep linking with `openDetail` behaves as expected
* Widget theme reflects dashboard customization

<Tip>
  See: [**Show Profile Widget**](/installation-guides/v3/ios/show-profile)
</Tip>

***

# 5. Push Notifications (Firebase / Huawei)

* Push Notifications capability enabled in Xcode
* Permission request shown at a meaningful moment (not app launch)
* Device token registered successfully via `initializeCustomer`
* Firebase or Huawei push service configured in your project
* Test notifications received on physical devices from Gameball
* Foreground/background notification handling implemented
* Deep link navigation implemented for Gameball notification actions
* Device token refresh handled

<Tip>
  See: [**Push Notifications**](/installation-guides/v3/ios/push-notifications)
</Tip>

***

# 6. Referrals (Branch or Adjust)

* Selected provider integrated (Branch or Adjust)
* Universal Links configured and verified
* Deep linking + deferred deep linking both tested
* Referral code extracted correctly from provider payload
* Referral code passed to Gameball during registration
* Referral link sharing UI tested
* Referral rewards trigger successfully for referrer & referee
* Firebase Dynamic Links fully removed (deprecated)

<Tip>
  See: [**Track Referrals**](/installation-guides/v3/ios/track-referrals)
</Tip>

***

# 7. Security, Authentication & Session Tokens

* Session Token implemented if backend-auth is required
* API version routing (v4.0 / v4.1) verified if using Session Token
* Secret keys not included in client-side code
* HTTPS enforced, no insecure communication
* App logs do not expose sensitive data

***

# 8. Multi-Environment & Build Verification

* Tested in Debug, Stage, and Production environments
* Gameball Test → Production API key switch validated
* Release build tested on physical devices
* Feature flags and environment switches validated

***

# 9. Performance & Stability

* No memory leaks in widget or SDK APIs
* No crashes in repeated widget open/close cycles
* API calls retry gracefully on poor networks
* Offline mode behavior (retry, error messages) reviewed
* Long session stability verified

***

# 10. Dashboard & Backend Alignment

* All earning rules and rewards set up correctly
* Redemption settings & limits configured
* Referral rules finalized
* Push provider configuration verified in Gameball dashboard
* Test user transactions visible in Gameball dashboard
* Segments, tiers, and campaigns behave as expected

***

# 11. Pre-Launch QA & Monitoring Setup

* Full customer lifecycle tested (signup → earn → redeem → notify → track)
* Regression testing performed on all integration points
* Analytics and monitoring tools enabled (e.g., Crashlytics, Sentry)
* Support team prepared for launch
* Documentation shared with engineering & product teams

<Check>
  If every item above is complete, your Gameball iOS SDK integration is fully production-ready.
</Check>

***

## Troubleshooting Resources

* [**API Reference**](/api-reference/introduction)
* [**Status & Error Codes**](/api-reference/overview/status-error-codes)
* [**Migration Notes**](/installation-guides/v3/ios/migration-notes)
* [**iOS SDK GitHub Repository**](https://github.com/gameballers/gameball-ios)
