# Examples

> Integration examples with synchronized language switchers across each page.

Source: https://help.boltapp.com/examples/overview

Browse examples by use case. Select your language once: all code blocks on the page update together.

## Create an order token [#create-an-order-token]

<CodeGroup>
  <CodeBlockTabs defaultValue="TypeScript">
    <CodeBlockTabsList>
      <CodeBlockTabsTrigger value="TypeScript">
        TypeScript
      </CodeBlockTabsTrigger>

      <CodeBlockTabsTrigger value="JavaScript">
        JavaScript
      </CodeBlockTabsTrigger>

      <CodeBlockTabsTrigger value="Python">
        Python
      </CodeBlockTabsTrigger>

      <CodeBlockTabsTrigger value="cURL">
        cURL
      </CodeBlockTabsTrigger>
    </CodeBlockTabsList>

    <CodeBlockTab value="TypeScript">
      ```typescript
      interface OrderTokenResponse {
        token: string;
      }

      const apiKey = process.env.BOLT_API_KEY;
      if (!apiKey) throw new Error("Missing BOLT_API_KEY");

      const response = await fetch("https://api-sandbox.boltapp.com/v1/merchant/orders", {
        method: "POST",
        headers: {
          "Content-Type": "application/json",
          "X-API-Key": apiKey,
        },
        body: JSON.stringify({ cart: { total_amount: 1000, currency: "USD", items: [] } }),
      });

      const order = (await response.json()) as OrderTokenResponse;
      ```
    </CodeBlockTab>

    <CodeBlockTab value="JavaScript">
      ```javascript
      const order = await fetch('https://api-sandbox.boltapp.com/v1/merchant/orders', {
        method: 'POST',
        headers: {
          'Content-Type': 'application/json',
          'X-API-Key': process.env.BOLT_API_KEY,
        },
        body: JSON.stringify({ cart: { total_amount: 1000, currency: 'USD', items: [] } }),
      }).then((r) => r.json());
      ```
    </CodeBlockTab>

    <CodeBlockTab value="Python">
      ```python
      import os, requests

      order = requests.post(
          "https://api-sandbox.boltapp.com/v1/merchant/orders",
          headers={"X-API-Key": os.environ["BOLT_API_KEY"]},
          json={"cart": {"total_amount": 1000, "currency": "USD", "items": []}},
      ).json()
      ```
    </CodeBlockTab>

    <CodeBlockTab value="cURL">
      ```bash
      curl -X POST 'https://api-sandbox.boltapp.com/v1/merchant/orders' \
        -H 'Content-Type: application/json' \
        -H 'X-API-Key: YOUR_API_KEY' \
        -d '{"cart": {"total_amount": 1000, "currency": "USD", "items": []}}'
      ```
    </CodeBlockTab>
  </CodeBlockTabs>
</CodeGroup>

## Authorize a payment [#authorize-a-payment]

<CodeGroup>
  <CodeBlockTabs defaultValue="TypeScript">
    <CodeBlockTabsList>
      <CodeBlockTabsTrigger value="TypeScript">
        TypeScript
      </CodeBlockTabsTrigger>

      <CodeBlockTabsTrigger value="JavaScript">
        JavaScript
      </CodeBlockTabsTrigger>

      <CodeBlockTabsTrigger value="Python">
        Python
      </CodeBlockTabsTrigger>

      <CodeBlockTabsTrigger value="cURL">
        cURL
      </CodeBlockTabsTrigger>
    </CodeBlockTabsList>

    <CodeBlockTab value="TypeScript">
      ```typescript
      const apiKey = process.env.BOLT_API_KEY;
      if (!apiKey) throw new Error("Missing BOLT_API_KEY");

      await fetch("https://api-sandbox.boltapp.com/v1/merchant/transactions/authorize", {
        method: "POST",
        headers: { "Content-Type": "application/json", "X-API-Key": apiKey },
        body: JSON.stringify({ auto_capture: true }),
      });
      ```
    </CodeBlockTab>

    <CodeBlockTab value="JavaScript">
      ```javascript
      await fetch('https://api-sandbox.boltapp.com/v1/merchant/transactions/authorize', {
        method: 'POST',
        headers: { 'Content-Type': 'application/json', 'X-API-Key': process.env.BOLT_API_KEY },
        body: JSON.stringify({ auto_capture: true }),
      });
      ```
    </CodeBlockTab>

    <CodeBlockTab value="Python">
      ```python
      requests.post(
          "https://api-sandbox.boltapp.com/v1/merchant/transactions/authorize",
          headers={"X-API-Key": os.environ["BOLT_API_KEY"]},
          json={"auto_capture": True},
      )
      ```
    </CodeBlockTab>

    <CodeBlockTab value="cURL">
      ```bash
      curl -X POST 'https://api-sandbox.boltapp.com/v1/merchant/transactions/authorize' \
        -H 'Content-Type: application/json' \
        -H 'X-API-Key: YOUR_API_KEY' \
        -d '{"auto_capture": true}'
      ```
    </CodeBlockTab>
  </CodeBlockTabs>
</CodeGroup>

## By platform [#by-platform]

| Platform       | Guide                                       |
| -------------- | ------------------------------------------- |
| Shopify        | [Quickstart](/platforms/shopify)            |
| BigCommerce    | [Quickstart](/platforms/bigcommerce)        |
| Direct API     | [Quickstart](/platforms/direct-api)         |
| Gaming (Unity) | [Gaming checkout](/gaming/guide/quickstart) |
