# Integration

o make sure your Base44 app works seamlessly inside your mobile app, you’ll need to prepare a few things directly in your Base44 project. These steps are essential for proper login flows, payments, navigation, and deep linking.

#### 1. Publish Your Base44 App with HTTPS

* Your Base44 app must be published using a secure **https\://** link.
* iOS and Android do not allow insecure (http\://) content inside mobile apps.
* If your app isn’t yet on HTTPS, update your Base44 publishing settings before moving forward.

***

#### 2. Use One Primary Domain

* Keep your app on a single main domain.
* If parts of your app (like login or payments) jump to a different subdomain, it can break navigation inside the mobile app.
* Example: If your main app runs on `app.example.com`, try to also run login and checkout flows there instead of switching to `accounts.example.com`.
* If you cannot avoid external domains, you must mark them as **external links** in BuildNatively so they open in the user’s browser.

***

#### 3. Make Every Key Screen Accessible by a URL

* Each important page in your Base44 app should have its own **stable, shareable URL**.
* Examples:
  * `/login` for the login page
  * `/profile` for the user profile
  * `/orders/123` for a specific order
* This is critical for:
  * **Deep Links** (so notifications or external links open the right page)
  * **Social Login** (so users are returned to the right place after authentication)
  * **User navigation** (so users don’t lose their place inside the app)

***

#### 4. Avoid Popups for Critical Actions

* Some builders allow you to make login, signup, or checkout as popups instead of full pages.
* Popups don’t create a unique URL — which means deep links, notifications, and re-entry flows won’t work.
* Instead, make these actions full pages with their own URLs (e.g., `/login`, `/checkout`).

***

#### 5. Test Your Base44 App on a Phone Browser

* Open your Base44 app in Safari (iPhone) and Chrome (Android).
* Check:
  * Do text and buttons fit on the screen?
  * Are forms easy to use without zooming?
  * Do pages scroll properly?
  * Are images and videos loading quickly?
* Fix anything that doesn’t look good on mobile, because BuildNatively will show the same content.

***

#### 6. Plan for Login & Authentication

* **Email/Password Login:** If this works in a phone browser, it will work inside your mobile app.
* **Social Login (Google, Apple, Facebook):**
  * These require **deep links (Universal Links)** to return the user to your app after login.
  * You’ll need to configure this later in BuildNatively.
  * Make sure your Base44 login redirects back to your main app domain.

***

#### 7. Review All External Links

* Identify any links in your Base44 app that go outside your own domain, such as:
  * Stripe checkout
  * PayPal payments
  * YouTube videos
  * Calendly booking pages
  * External help docs
* These must be marked as **external links** in BuildNatively. Otherwise, they may break or trap users inside the app.

***

#### 8. Prepare Checkout & Payment Pages

* If you’re selling products or services, test your checkout flow in a mobile browser.
* If checkout uses an external page (like Stripe Checkout), mark it as external in BuildNatively.
* If you sell **digital content or subscriptions**, plan to use **In-App Purchases (RevenueCat)**, because Apple and Google require this instead of Stripe.

***

#### 9. Optimize for Mobile Performance

* Compress large images and videos to reduce load times.
* Avoid heavy scripts that slow down mobile.
* Keep layouts simple and mobile-first.

***

#### 10. Set Clear Page Routes for Notifications & Deep Links

* Push notifications and deeplinks rely on clean URLs.
* Example:
  * A notification for “New Lesson Available” should link to `/lessons/456`.
  * A notification for “New Message” should link to `/messages/123`.
* Make sure these URLs exist in your Base44 project and open the correct content.

***

#### Summary of Base44 Integration Steps

Before connecting to BuildNatively, make sure you have:

1. HTTPS enabled for your Base44 app.
2. A single primary domain for your app.
3. Stable URLs for all important screens.
4. Full pages (not popups) for login, signup, and checkout.
5. A mobile-optimized layout tested on real devices.
6. A plan for Social Login (with deep links).
7. A list of external links (Stripe, YouTube, Calendly, etc.).
8. Checkout flows tested and marked as external if needed.
9. Images and videos optimized for mobile.
10. Clean routes prepared for notifications and deeplinks.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.buildnatively.com/getting-started/other-platform-integrations/base44/integration.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
