# Get an order quote

`POST /v1/quote` · scope `orders:write`

Price a list of items (service plans, domains) as they would be ordered: subtotal, tax, discounts, renewal prices. Creates no order and no invoice. Same `items` shape as POST /v1/order.

## HTTP request

| Item | Value |
| --- | --- |
| URL | `https://api.tino.vn/v1/quote` |
| Method | `POST` |
| Scope | `orders:write` |
| Header | `Authorization: Bearer <token>` |
| Content-Type | `application/json` |
| Tokens that can call it | app tokens (`tinoat_`), personal API tokens (`tinopat_`) |

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `pay_method` | body | integer | no | Payment method ID |
| `output` | body | string | no | Type of output, default is short. Possible options    short - Basic details about the item in cart</li>  config- Basic details and form components</li>  full - All details available in cart</li> </ul> |
| `items` | body | array | no | list with order items |

## Example request

```bash
curl -X POST "https://api.tino.vn/v1/quote" \
  -H "Authorization: Bearer $TINO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "pay_method": "<pay_method>",
  "output": "short",
  "items": [
    {
      "type": "certificate",
      "product_id": 840,
      "csr": "-----BEGIN CERTIFICATE REQUEST----- (...)",
      "years": 1,
      "approver_email": "admin@example.com"
    }
  ]
}'
```

`$TINO_TOKEN` is a token with the scope `orders:write`.

SDK ([SDK & examples](/en/docs/sdk)): Python `client.cart.quote(pay_method=...)`, Node.js `await client.cart.quote({ pay_method: ... });`, PHP `$client->cart->quote(['pay_method' => ...]);`.

## Example response

```json
{
 "summary": {
  "subtotal": 79000,
  "total": 85320,
  "setup_fee": 0,
  "credit": 0,
  "discount": 0,
  "cost": 79000,
  "recurring": [
   {
    "title": "1 tháng",
    "price": 85320,
    "value": "m"
   }
  ],
  "recurring_discount": [],
  "tax": [
   {
    "name": "VAT",
    "tax": 6320,
    "value": 8
   }
  ]
 },
 "items": []
}
```

Live sample from a test account with personal data masked; long arrays and strings are trimmed (`… N more item(s)`, `… N more line(s)`).
