> This page is for version v1 (default).
> For other versions, use one of these documentation indexes:
> - v1 (default): https://developers.truemed.com/v-1/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://developers.truemed.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developers.truemed.com/_mcp/server.

# Truemed Checkout Method

POST https://dev-api.truemed.com/api/v1/product_catalog/truemed_checkout_method
Content-Type: application/json

This endpoint is intended to be used to make yes/no decisions about whether to display Truemed as a checkout option for a given set of items. It is limited in that it does not determine whether or not an order containing the items will truly be eligible for Truemed checkout because it does not receive prices, discounts nor additional charges. Any new items received will be created and subsequently categorized.

Reference: https://developers.truemed.com/api-reference/product-catalog/truemed-checkout-method

## Authentication

- `x-truemed-api-key` header (required) — Sales channel API key for merchant server-to-server authentication

## Servers

- `https://dev-api.truemed.com` (Development server, default)
- `https://api.truemed.com` (Production server)

## Request

### Body (application/json)

This endpoint expects a TruemedCheckoutMethodRequest.

- `items` (list of TruemedCheckoutMethodItemInfo, required) — The items to check eligibility for.

## Response

### 200

Successful response

- `enabled` (boolean, required) — Whether the set of items is enabled for checkout with Truemed.

## Errors

### 400 Bad Request Error

Bad Request

- `error` (enum, required)
  - Allowed values: `TotalAmountInvalid`, `ValidationError`
- `message` (string, required)

### 404 Not Found Error

Not Found

- `error` (enum, required)
  - Allowed values: `NotFound`
- `message` (string, required)

### 405 Method Not Allowed Error

Method Not Allowed

- `error` (enum, required)
  - Allowed values: `MethodNotAllowed`
- `message` (string, required)

### 500 Internal Server Error

Internal Server Error

- `error` (enum, required)
  - Allowed values: `ServerError`
- `message` (string, required)

### 501 Not Implemented Error

Not Implemented

- `error` (enum, required)
  - Allowed values: `NotImplemented`
- `message` (string, required)

## Types

### TruemedCheckoutMethodItemInfo

- `name` (string, required) — The name of the catalog item.
- `sku` (string, required) — The SKU of the catalog item.
- `product_id` (string, optional, nullable) — The product ID of the parent product which this catalog item is a variant of.

## Examples

**Request**

```json
{
  "items": [
    {
      "name": "string",
      "sku": "string"
    }
  ]
}
```

**Response**

```json
{
  "enabled": true
}
```

**SDK Code**

```python
import requests

url = "https://dev-api.truemed.com/api/v1/product_catalog/truemed_checkout_method"

payload = { "items": [
        {
            "name": "string",
            "sku": "string"
        }
    ] }
headers = {
    "x-truemed-api-key": "<apiKey>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.json())
```

```javascript
const url = 'https://dev-api.truemed.com/api/v1/product_catalog/truemed_checkout_method';
const options = {
  method: 'POST',
  headers: {'x-truemed-api-key': '<apiKey>', 'Content-Type': 'application/json'},
  body: '{"items":[{"name":"string","sku":"string"}]}'
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```