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

# SDKs

> Official libraries for your server and your frontend.

The SDKs are the recommended way to integrate. They are typed end to end, retry what is safe to
retry, paginate for you and verify webhooks. Everything they do is also available over
[HTTP](/api-reference/introduction) if you prefer.

<CardGroup cols={2}>
  <Card title="Node.js and TypeScript" icon="js" href="/sdks/typescript">
    `@useroutr/sdk` for your server: funding intents, quotes, settlements, the ledger, refunds,
    webhooks and request logs.
  </Card>

  <Card title="React" icon="react" href="/sdks/react">
    `@useroutr/checkout-react` for your frontend: a drop-in checkout that follows the payment to
    completion.
  </Card>
</CardGroup>

## Which one do I need?

| You want to | Use |
| - | - |
| Create funding intents, read state, handle webhooks | `@useroutr/sdk` on your server |
| Show a checkout inside your React app | `@useroutr/checkout-react` in the browser |
| Build a checkout for another framework | `@useroutr/checkout-core` in the browser |
| Share Useroutr types across your code | `@useroutr/types`, installed with the SDK |

A typical integration uses two: the Node.js SDK creates the funding intent on your server, and
the React checkout takes the payment in the browser with the intent's funding token. Your API
key stays on the server.

<Note>
  Using another language? Every endpoint is plain JSON over HTTPS, with a bearer API key. The
  [API reference](/api-reference/introduction) has a cURL example beside each one.
</Note>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.