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

# SDK & Libraries Overview

> Choose the right Terminal Gateway, Terminal H2H, or Terminal C2C toolkit for your in-person payments

Welcome to the SDK & Libraries hub. Use this page to decide whether to operate the Terminal Gateway App as a companion or embed the Terminal H2H / C2C SDKs directly in your application.

<Warning>
  Choose one track per deployment: run the standalone Gateway App **or** embed Terminal H2H or C2C SDKs. Mixing Gateway App with SDK integrations on the same device leads to conflicting sessions.
</Warning>

## Select the right toolkit

<Tabs>
  <Tab title="Gateway App">
    <p>The Terminal Gateway App is a ready-to-use companion that manages device discovery, firmware, and secure networking. It is used by two integration paths:</p>

    <ul>
      <li><strong>H2H path</strong> — The Gateway App relays commands between the <a href="/api-reference/terminal-api/introduction">Terminal API</a> (HTTP) and physical terminals. Required for BRI/NTT; other providers connect directly.</li>
      <li><strong>C2C path</strong> — The Gateway App exposes the <a href="/api-reference/c2c/introduction">Terminal C2C API</a> (HTTP REST) on the local network. Required for BRI/NTT; other providers receive commands directly.</li>
    </ul>

    <Check>
      Follow the setup guide in <a href="/sdk/gateway/app-configuration">Gateway App configuration</a> to manage devices across locations.
    </Check>
  </Tab>

  <Tab title="Terminal H2H SDK">
    <p>The Terminal H2H SDK provides <strong>device connectivity</strong> for the H2H integration path. It embeds terminal communication inside your Android or iOS app, replacing the Gateway App as the relay layer.</p>

    <ul>
      <li>Payment API calls are always made via HTTP to the <a href="/api-reference/terminal-api/introduction">Terminal API</a> — the SDK handles the device side only.</li>
      <li>Recommended when you want staff to stay in a single app workflow with consistent branding.</li>
      <li>Required for BRI/NTT terminals on the H2H path if you choose not to use the Gateway App.</li>
    </ul>

    <Tip>
      Start with the <a href="/sdk/h2h/introduction">Terminal H2H introduction</a> then dive into the <a href="/sdk/h2h/android-sdk">Android SDK</a> or <a href="/sdk/h2h/ios-sdk">iOS SDK</a> quickstarts.
    </Tip>
  </Tab>

  <Tab title="Terminal C2C SDK">
    <p>The Terminal C2C SDK provides <strong>native method calls</strong> as an alternative to the <a href="/api-reference/c2c/introduction">Terminal C2C API</a> (HTTP). Instead of sending REST commands, your app calls SDK methods directly.</p>

    <ul>
      <li>For <strong>BRI/NTT</strong> terminals, the C2C SDK is the required install — it handles device connectivity.</li>
      <li>For <strong>other providers</strong> (Cashup, SHC), the C2C SDK is an optional convenience wrapper.</li>
      <li>Ideal for kiosks, custom POS, or any scenario requiring advanced device control and offline resilience.</li>
    </ul>

    <Info>
      Review the <a href="/sdk/c2c/introduction">Terminal C2C overview</a> then select the <a href="/sdk/c2c/android-sdk">Android</a> or <a href="/sdk/c2c/ios-sdk">iOS</a> guide.
    </Info>
  </Tab>
</Tabs>

## Sample use cases

<Tabs>
  <Tab title="Web POS (Gateway App)">
    <p>A browser-based POS team wants to accept cards without rebuilding their app in native mobile languages.</p>

    <Tip>
      Choose the Gateway App when your cashier experience already runs on Windows or macOS and you prefer to keep payments outside the browser for compliance, driver management, and quick deployment.
    </Tip>

    <ul>
      <li>Operations manage hardware from a single companion app while developers continue shipping updates in web frameworks.</li>
      <li>IT teams can lock down dedicated workstations, separating PCI controls from the POS codebase.</li>
    </ul>
  </Tab>

  <Tab title="Assisted checkout (H2H)">
    <p>A mobile retail app powers assisted selling inside flagships and pop-ups, and staff expect to stay in one interface during checkout.</p>

    <Tip>
      Pick H2H SDKs when associates already carry Android or iOS devices and you want them to trigger payments, signature capture, and receipts without switching apps.
    </Tip>

    <ul>
      <li>Training is faster: new hires learn one app that covers product lookup, cart building, and tendering.</li>
      <li>Store designers keep consistent branding because payments inherit your app's look and feel.</li>
    </ul>
  </Tab>

  <Tab title="Self-service kiosk (C2C)">
    <p>A self-service kiosk fleet depends on custom flows, offline tolerance, and tight integration with scanners, printers, and loyalty systems.</p>

    <Tip>
      Opt for C2C SDKs when you need end-to-end control over every terminal command, from prompting the customer to handling edge cases during outages.
    </Tip>

    <ul>
      <li>Engineers can coordinate peripherals, screen content, and payments from one application.</li>
      <li>Support teams define venue-specific fallbacks, such as queueing payments when mall networks are unreliable.</li>
    </ul>
  </Tab>
</Tabs>

<Tip>
  Document the chosen operating model in your runbook so support teams know whether to escalate to Gateway App operators or the dedicated H2H/C2C SDK maintainers.
</Tip>
