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

# Create a marketplace order

> Send a fulfillment order to Turtles

### Overview

Create a marketplace order when your customer has checked out and Turtles needs to fulfill the item.

<Note>
  Set `purchaseOrderNumber` to the internal order ID, transaction ID, or associated ID you want to use for future tracking.
</Note>

### Base URL

```http theme={null}
https://triton.turtles.com
```

This is the public production API. Turtles does not currently provide a sandbox URL.

### Authentication

Order endpoints use HTTP Basic Auth with your Turtles API credentials.

```bash theme={null}
-u "$TURTLES_USER:$TURTLES_PASS"
```

### Endpoint

```http theme={null}
POST https://triton.turtles.com/api/orders
```

Partners receive valid `itemId` values from the product feed provided during onboarding.

| Field                 | Type   | Required | Description                                                                                    |
| --------------------- | ------ | -------- | ---------------------------------------------------------------------------------------------- |
| `itemId`              | number | Yes      | Turtles item ID to fulfill.                                                                    |
| `purchaseOrderNumber` | string | Yes      | Your internal order ID, transaction ID, or associated ID for matching future tracking updates. |
| `name`                | string | Yes      | Recipient full name.                                                                           |
| `email`               | string | Yes      | Recipient email address.                                                                       |
| `phone`               | string | Yes      | Recipient phone number, preferably in E.164 format.                                            |
| `address`             | string | Yes      | Street address line 1.                                                                         |
| `address2`            | string | No       | Street address line 2.                                                                         |
| `city`                | string | Yes      | Recipient city.                                                                                |
| `state`               | string | Yes      | State or province code.                                                                        |
| `zipCode`             | string | Yes      | Postal code.                                                                                   |
| `country`             | string | Yes      | Two-letter country code, for example `US`.                                                     |

### Example

```bash theme={null}
curl -X POST "https://triton.turtles.com/api/orders" \
  -u "$TURTLES_USER:$TURTLES_PASS" \
  -H "Content-Type: application/json" \
  -d '{
    "itemId": 12345,
    "purchaseOrderNumber": "internal-order-1001",
    "name": "Jane Doe",
    "email": "jane@example.com",
    "phone": "+15551234567",
    "address": "123 Main St",
    "address2": "Apt 4B",
    "city": "Austin",
    "state": "TX",
    "zipCode": "78701",
    "country": "US"
  }'
```

A `201 Created` response means Turtles accepted the order. Store the `purchaseOrderNumber` you sent so you can match future tracking updates.

<Warning>
  Automatic retries should reuse the same `purchaseOrderNumber`. Confirm duplicate-order behavior with Turtles before retrying create requests automatically.
</Warning>

Next, [retrieve tracking updates](/build/retrieve-tracking-updates) for created orders.
