# สร้างใบแจ้งหนี้

## คำขอ

```bash
curl -X POST https://api.bitsby.app/invoices/create \
  -H "Authorization: Token MSvL2ltaDZdWVjmZURURMVWhqSJLT2NURjhL2Fla1Z1T1IxQTltKs1T3Ay" \
	-F "projectId=9deea1e2-0c08-41a3-bdc2-a34eada3892d" \
	-F "amountFiat=10.55" \
	-F "currencyFiat=EUR" \
	-F "description=12 months license for BITSBY" \
	-F "serviceData={\"userId\":100,\"orderId\":500}" \
	-F "timeToPay=12"
```

## พารามิเตอร์คำขอ

| พารามิเตอร์ | ชนิดข้อมูล | คำอธิบาย | ตัวอย่าง | จำเป็นหรือไม่ |
| --- | --- | --- | --- | --- |
| `projectId` | UUID | ID ของโปรเจกต์ในรูปแบบ UUID | 1c48b092-9878-48f5-b441-07a8a48e7b54 | ใช่ |
| `amountFiat` | Float | จำนวนเงินในสกุลเงินเฟียต | 10.55 | ใช่ |
| `currencyFiat` | String | สกุลเงินเฟียต ค่าที่อนุญาต: USD, EUR, RUB | EUR | ใช่ |
| `description` | String | คำอธิบายสินค้าหรือบริการ แสดงให้ลูกค้าเห็นบนหน้าชำระเงิน | 12 months license for BITSBY | ไม่ |
| `serviceData` | String | ตัวระบุคำสั่งซื้อฝั่งร้านค้า ไม่แสดงให้ลูกค้าเห็น ข้อมูลนี้ใช้เชื่อมโยงใบแจ้งหนี้และการชำระเงินเข้ากับลูกค้าในร้านค้า JSON เป็นรูปแบบที่สะดวกสำหรับข้อมูลนี้ | {"userId":100,"orderId":500} | ไม่ |
| `timeToPay` | Float | เวลาสำหรับชำระใบแจ้งหนี้ หน่วยเป็นชั่วโมง ค่าที่อนุญาต: 0.5, 1, 3, 6, 12 | 1 | ใช่ |

## ตัวอย่างการตอบกลับ

```json
{
   "result":"success",
   "data":{
      "id":"ade9550d-3dc7-4fd3-b94e-3b4c12aaaa0c",
      "uid":"MXNj4m8HhcM4",
      "createDatetime":"2024-02-29 15:20:24",
      "timeToPayDatetime":"2024-03-01 03:20:24",
      "commissionFiatUSD":0.1,
      "amountFiatUSD":10,
      "url":"https:\/\/dash.bitsby.app\/invoices\/pay\/MXNj4m8HhcM4"
   }
}
```

## พารามิเตอร์การตอบกลับ

| พารามิเตอร์ | คำอธิบาย |
| --- | --- |
| `id` | ID ของใบแจ้งหนี้ในรูปแบบ UUID |
| `uid` | ID ของใบแจ้งหนี้ (สำหรับลูกค้า) |
| `createDatetime` | วันที่และเวลาที่สร้างใบแจ้งหนี้ (UTC) |
| `timeToPayDatetime` | วันที่และเวลาที่ใบแจ้งหนี้มีอายุถึง (UTC) ลูกค้าต้องชำระใบแจ้งหนี้ก่อนเวลานี้ |
| `commissionFiatUSD` | จำนวนค่าธรรมเนียมบริการ คำนวณจากจำนวนเงิน `amountFiatUSD` |
| `amountFiatUSD` | จำนวนเงินเป็น USD คำนวณตอนสร้างใบแจ้งหนี้จาก `invoice.amountFiat` ตามอัตราแลกเปลี่ยนปัจจุบัน |
| `url` | ลิงก์หน้าชำระเงินสำหรับลูกค้า ส่งลิงก์นี้ให้ลูกค้าเพื่อชำระใบแจ้งหนี้ |
