The `create pre-order` endpoint generates a unique payment link based on the provided transaction details. This link redirects the customer to a secure, bank-hosted page where they can complete their payment using various methods.

**Method:** `POST /v1/preorder`

**Headers:** See [Common Headers](https://api.bog.ge/docs/en/link-payment/conventions#common-headers)




#### Request Parameters



- `callback_url` — string, required


  The HTTPS URL where the bank's server sends asynchronous callbacks with the final transaction status.



- `description` — string, required


  A brief description of the order or service.



- `external_order_id` — string


  A unique order identifier generated by the merchant's system.



- `purchase_units` — object, required


  An object with payment amount and currency details.



  - `purchase_units.currency` — string, required


    The three-letter currency code (e.g., 'GEL').



  - `purchase_units.total_amount` — number, required


    The total transaction amount.






- `ttl` — integer


  Time to live in minutes for which the pre-order link remains valid. Minimum: 2 min. Maximum: 1440 min (24 hours). Default: 15 min.








**REQUEST**

```bash
curl --location 'https://api.bog.ge/payments/v1/pre-orders' \
--header 'accept: */*' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <JWT>' \
--data '{
  "callback_url": "https://example.com/callback",
  "description": "service fee",
  "external_order_id": "id123",
  "purchase_units": {
    "currency": "GEL",
    "total_amount": 1
  },
  "ttl": 1440
}'
```









#### Response Parameters



- `id` — string


  A unique identifier for the pre-order generated by the bank's system. This ID can be used for future references, such as checking the payment status.



- `_links` — object


  A container for hypermedia links related to the resource.



  - `_links.payment_link` — object


    An object containing the URL for the customer to complete the payment.



    - `_links.payment_link.href` — string


      The fully qualified URL redirects the customer to the secure, bank-hosted payment page.












**RESPONSE**

```json
{
    "id": "c0fb0f1d-7715-485a-b753-10cf148708e3",
    "_links": {
        "payment_link": {
            "href": "https://link.bog.ge/HnisFqRnzJz"
        }
    }
}
```
