Skip to content
Transform To APP
FeaturesHow it worksPricingHow to publishFAQ
Log inCreate my app
window.TTA

Developer API — window.TTA

Your website controls real native features directly — the same code works on iOS and Android. No SDK, no rebuild: just call these from your site.

Detect the app

Your site runs both in a normal browser and inside the app. Check for window.TTA before calling native features so the web keeps working everywhere.

if (window.TTA) {
  // inside the native app
} else {
  // normal browser — your web fallback
}

Methods

Methods marked “opt-in” only exist when you enable that feature in the builder — always feature-detect.

window.TTA.platform

'ios' or 'android' — tells your site it runs inside the native app.

if (window.TTA) {
  console.log('Running natively on', window.TTA.platform);
}
window.TTA.haptic()

Native haptic / vibration feedback on a tap or action.

button.addEventListener('click', () => window.TTA?.haptic());
window.TTA.share(url?)

Open the native share sheet. Defaults to the current page URL.

window.TTA?.share('https://example.com/product/42');
window.TTA.rate()

Show the native App Store / Google Play review prompt.

window.TTA?.rate();
window.TTA.openExternal(url)

Open a link in the in-app browser instead of leaving your app.

window.TTA?.openExternal('https://help.example.com');
await window.TTA.scan()opt-in · Scanner

Open the full-screen native QR / barcode scanner. Resolves to {text, format} or null if cancelled.

const result = await window.TTA.scan();
if (result) alert('Scanned: ' + result.text);
window.TTA.logEvent(name, params?)opt-in · Analytics

Send a custom analytics event (Insights). 'app_open' is tracked automatically.

window.TTA?.logEvent?.('add_to_cart', { id: 'sku_42', value: 9.99 });
await window.TTA.getProducts()opt-in · In-app purchases

Fetch your in-app products: [{ id, title, price, priceValue, currency }].

const products = await window.TTA.getProducts();
products.forEach(p => renderPrice(p.id, p.price));
await window.TTA.purchase(productId)opt-in · In-app purchases

Launch the native purchase flow. Resolves to { success, productId, transactionId } or { success:false, cancelled }.

const r = await window.TTA.purchase('com.app.pro.monthly');
if (r.success) unlockPro();
await window.TTA.restorePurchases()opt-in · In-app purchases

Return the product IDs the user already owns (restore entitlements).

const owned = await window.TTA.restorePurchases();
if (owned.includes('com.app.pro.monthly')) unlockPro();

Works automatically

With the matching feature enabled, standard web APIs just work inside the app: navigator.geolocation (Location), getUserMedia camera for web QR libraries (Camera), <input type=file> and file downloads.

Build your app with these superpowers

Open the builder
Transform To APP

The #1 platform to turn websites into native apps.

[email protected]

Product

  • Features
  • Pricing
  • How it works
  • How to publish
  • Developers

Company

  • About us
  • Contact
  • Blog

Legal

  • Privacy
  • Terms
  • Cookies
© Transform To APP. All rights reserved.transformtoapp.com