Haxelo Documentation ## Sections • [Overview & Getting Started](https://app.theneo.io/haxelo/haxelo-unity-sdk/overview-and-getting-started.md): Welcome to Haxelo SDK documentation, this will guide you to quickly integrate and utilize the SDK functionalities within your games. • [Basics](https://app.theneo.io/haxelo/haxelo-unity-sdk/setting-things-up-1.md): Lets get started • [Registration](https://app.theneo.io/haxelo/haxelo-unity-sdk/sign-up.md): First of all we need to add your first game on our platform 1 Registration Register at Haxelo platform as game owner and follow the steps 2 Games section You can access your games from Games section 3 Add game You can easilly add your game by clicking on Add Game button 4 Input relevant information Make Sure that info is up to date and correct. This will ensure montization effectivness. 5 Congragulations, you've added your first game. You can publish your game using this button • [Game configuration](https://app.theneo.io/haxelo/haxelo-unity-sdk/game-configuration.md): First of all we need to add your first game on our platform 1 Game details You can review your game, statistics and tweak some settings for your game from this page 2 Settings You can enable or disable clickable functionality for your placements on In-menu and in-game placements respectively If you uncheck the in-game option, clicks will be disabled for placements inside the game world. If you uncheck the in-menu option, clicks will be disabled for menu placements. • [App-ads.txt lines](https://app.theneo.io/haxelo/haxelo-unity-sdk/app-ads-txt-lines.md): 1 Copy app-ads.txt lines You can Simply copy the lines from here 2 If you have app-ads.txt file setup Simply Paste in the lines you copy from here into your file • [App-ads.txt Setup (If You Don’t Have One Yet)](https://app.theneo.io/haxelo/haxelo-unity-sdk/app-ads-txt-lines/app-ads-txt-setup-if-you-don-t-have-one-yet.md): What is app-ads.txt and why it matters App-ads.txt is an IAB standard that helps prevent ad fraud by declaring who is authorized to sell ads for your app . Most DSPs will not bid if this file is missing or incorrect. Haxelo requires a valid app-ads.txt entry to enable full demand access. When do I need to do this? You need app-ads.txt if your game is published on: Google Play Apple App Store Any platform that exposes a public developer website If you already have app-ads.txt → skip this guide and just add Haxelo’s line. If you don’t have one → follow the steps below. 1 Step 1: Choose a website to host app-ads.txt You must have any publicly accessible domain . Examples: https://yourstudio.com https://yourgame.com https://studio-name.io This should not to be your app store listing URL. It just needs to be a domain you control . 2 Step 2: Create the app-ads.txt file Create a plain text file named exactly: app-ads.txt Open it with any text editor. Add the lines you copied from the Haxelo Platform(example format): Do not add extra spaces or formatting. 3 Step 3: Upload it to your website root The file must be accessible at: https://yourdomain.com/app-ads.txt Examples: ✅ https://yourstudio.com/app-ads.txt ❌ https://yourstudio.com/ads/app-ads.txt ❌ https://yourstudio.com/.well-known/app-ads.txt It must be at the root level. 4 Step 4: Link the website to your app store listing Google Play Open Google Play Console Go to Store presence → Main store listing Set Developer website to: https://yourdomain.com Apple App Store Open App Store Connect Go to App Information Set Marketing URL or Developer Website https://yourdomain.com This step is mandatory. Without it, app-ads.txt will not be recognized unless specified during adding the game on our platform 5 Step 5: Verify it works Open this URL in a browser: https://yourdomain.com/app-ads.txt You should see plain text only , no HTML, no redirects. Haxelo will automatically verify the file during onboarding. 6 If you don’t have a website at all You have three options: Create a minimal website One page is enough Can be hosted on Netlify, Vercel, GitHub Pages, etc. Use https://app-ads-txt.com/ for easy setup and hosting for free Ask Haxelo support We can guide you through the fastest compliant setup • [Download SDK](https://app.theneo.io/haxelo/haxelo-unity-sdk/download-sdk.md): Here you can download relevant version of Haxelo SDK Import it into your Unity project. • [Insert keys into Haxelo editor](https://app.theneo.io/haxelo/haxelo-unity-sdk/insert-api-key-into-haxelo-editor.md): You can copy your api key and Identifier anytime from here To open Haxelo editor window, find Haxelo from the main menu bar , and click on Configure. Choose for which platforms you will be building from this Unity Project Insert keys into the editor Remember to enter correctly for relevant platforms Enter your API key and Game ID, then click apply and wait for the verification process. If it's succeeded, you should see the message “API Key applied successfully!” . If it's succeeded, you should see the message “API Key applied successfully!” . • [Haxelo Configuration](https://app.theneo.io/haxelo/haxelo-unity-sdk/using-configuration.md): You can open Haxelo configuration window by navigating to Haxelo tab at the top. After setup is done, the configuration has several tools that you can configure. Outline Color You can select your default global outline color from here, however, you can override this setting from the banner configuration. Outlines only appear on banners that are clickable and have widgets. Enable Debug You can enable/disable haxelo logs using Enable Debug . Hold threshold This determines how long user needs to hold down on banner for click sequenc to be innitiated on clickable banners with hold click funcitionality • [Placing billboards](https://app.theneo.io/haxelo/haxelo-unity-sdk/placing-billboards.md): To get started with banners, from haxelo menu open Haxelo Adverts. This window should pop up. Select your Ad Type and banner size. Then click on Create. The banner should appear in your scene. Position it as you would like, but keep in mind that you can't modify the aspect ratio of the banner. Banner Configuration Each banner can be separately configured, but this is not a required step. They all have their default values, if required, you can configure each of them. Custom outline color: You can override the global outline color value for this banner Default texture: You can set custom texture to be used in case of no fill Invisible on no content: You can make banner invisible if there is no fill using Vibrate on interaction: Controls wheter click makes device vibrate (for mobile devices only) On magnifier close callback can be used to do any action when the user closes the advertisement of this banner (can be used to gant rewards) Interaction Action: Refering to action required for banner click to be initiated(Tap or Hold) Custom canvas: If needed, you can also set up your for magnifier and assign it in the inspector of banner In your resources folder, you will find the default prefab. Duplicate it and redesign it for your needs. Please do not remove or modify the default prefab to avoid errors. Also please keep the canvas structure and button functions the same, otherwise it will not function as expected. • [Haxelo SDK Methods](https://app.theneo.io/haxelo/haxelo-unity-sdk/initialization.md): In the root Haxleo folder, there is sample a initialization script called “DemoScript” that will show you how you can initilize Haxelo Session and use all of the methods. You can simply put it anywhere in the scene and you will be ready to go live as it handles everything for you (or create an object named HaxeloInit and add DemoScript as a component) • [Initialize Method](https://app.theneo.io/haxelo/haxelo-unity-sdk/initialize-method.md): Haxelo.Initialize(UserData data, bool IAP_status) Initializes the Haxelo SDK with user data and consent preferences. Parameters: UserData data – Contains user demographic information: string gender – Can be "Male" , "Female" , "Non-binary" , or empty. int age – Any numeric value or empty. int year_of_birth – 4-digit numeric value or empty. bool IAP_Status – Indicates whether the user has made an in-app purchase in your game. • [Camera Configuration](https://app.theneo.io/haxelo/haxelo-unity-sdk/camera-configuration.md): Haxelo.setTargetCamera(Camera object) Sets the camera that user is looking with at given moment. If your game uses complex camera system when camera rendering the scene on players screen is changing time to time, we highly advise you to set up a function that will use this method to change camera that Haxelo manager uses to track impressions. This will increase your revenue and impressions. Use case Required for proper measurement for impressions Haxelo. Parameters: Camera object – The main game camera. • [Banner Methods](https://app.theneo.io/haxelo/haxelo-unity-sdk/banner-methods.md): You can use several banner methods to further customize the way banners behave in-game • [Event Listeners](https://app.theneo.io/haxelo/haxelo-unity-sdk/event-listeners.md): Haxelo provides event listeners for various interactions. • [onMagnifierOpen Event](https://app.theneo.io/haxelo/haxelo-unity-sdk/onmagnifier-open-event.md): Haxelo.onMagnifierOpen Triggered when the magnifier opens. Use Case This can be used to pause the game when the magnifier opens to prevent gameplay distractions. • [onMagnifierClose Event](https://app.theneo.io/haxelo/haxelo-unity-sdk/onmagnifierclose-event.md): Haxelo.onMagnifierClose Triggered when the magnifier closes. Use case This can be used to resume gameplay after the player finishes using the magnifier. • [onLinkClick Event](https://app.theneo.io/haxelo/haxelo-unity-sdk/onlinkclick-event.md): Haxelo.onLinkClick Triggered when a user clicks on an in-game ad link. Use case This can be used to reward users when they interact with ad units, making ad engagement more valuable. • [onInAppPurchaseMade](https://app.theneo.io/haxelo/haxelo-unity-sdk/onlinkclick-event-copy-1.md): Haxelo.onInAppPurchaseMade Triggered when a user clicks on final purchase button for in-game IAP ad. Use case This can be used to open up IAP purchase dialog when they want to purchase from our banner