# เอกสาร blockwallets: วิธีเชื่อมต่อ

> เลือกวิธีเชื่อมต่อ: ลิงก์ชำระเงิน POS และปุ่มฝังที่ไม่ต้องเขียนโค้ด API ที่เข้ากันได้กับ Cryptomus หรือ REST API ของเราเอง API ที่เข้ากันได้กับ Cryptomus, NOWPayments และ Coinbase Commerce พร้อมพรอมต์ AI, AGENTS.md และ MCP
>
> HTML: https://blockwallets.io/docs?lang=th · English: https://blockwallets.io/docs.md?lang=en

## เอกสาร

blockwallets ให้คุณรับ USDT และ USDC รวมถึง BTC, LTC และเหรียญประจำเครือข่าย (บันทึกเป็นดอลลาร์สหรัฐด้วยอัตราที่ล็อกไว้) ทุกวิธีเชื่อมต่อด้านล่างสร้างใบแจ้งหนี้แบบเดียวกันบนหน้าชำระเงินเดียวกัน ด้วยการยืนยัน ค่าธรรมเนียม และยอดคงเหลือเหมือนกัน ต่างกันเพียงวิธีที่ระบบของคุณคุยกับเรา เลือกวิธีที่เหมาะ แล้วทำตามหน้าของวิธีนั้น

### เลือกวิธีเชื่อมต่อ

จัดกลุ่มตามจุดเริ่มต้นของคุณ แต่ละการ์ดเปิดคู่มือฉบับเต็ม

#### ไม่ต้องเขียนโค้ด

รับเงินจากแดชบอร์ดร้านค้า ไม่ต้องติดตั้งอะไร

- [ลิงก์ชำระเงิน](https://blockwallets.io/docs?lang=th#links): ใส่จำนวนเงิน (หรือให้ผู้จ่ายพิมพ์เอง) แล้วแชร์ลิงก์หรือคิวอาร์โค้ด ทุกครั้งที่เปิดจะสร้างใบแจ้งหนี้ใหม่

- [POS สำหรับร้านค้า](https://blockwallets.io/docs?lang=th#pos): พนักงานเปิดลิงก์ POS บนมือถือหรือแท็บเล็ต พิมพ์จำนวนเงิน แล้วลูกค้าสแกนคิวอาร์โค้ด

- [ปุ่มฝัง](https://blockwallets.io/docs?lang=th#embed): วางปุ่ม “ชำระเงิน” หรือ “บริจาค” ลงในเว็บไซต์ใดก็ได้: HTML ล้วน หรือ HTML พร้อมแท็ก script หนึ่งตัว

#### เชื่อมต่อ API ใหม่

คุณเขียนการเชื่อมต่อเองตั้งแต่ต้น

- [REST API ของเรา](https://blockwallets.io/docs/api?lang=th): คีย์ Bearer จำนวนเงินเป็นเซนต์ `ref` แบบ idempotent, Webhook แบบ HMAC-SHA256 และ events API สร้างคีย์เองได้ในแดชบอร์ด

- [API ที่เข้ากันได้กับ Cryptomus](https://blockwallets.io/docs/cryptomus?lang=th): POST + JSON พร้อมลายเซ็น md5 สร้างข้อมูลรับรองเองในแดชบอร์ด ทุก endpoint หลักมีแผง “ลองเลย”

#### ย้ายมาจากเกตเวย์อื่น

ใช้โค้ดเดิมต่อ: API ที่เข้ากันได้ แค่เปลี่ยน base URL และคีย์

- [จาก Cryptomus](https://blockwallets.io/docs/cryptomus?lang=th#cryptomus): เปลี่ยน `https://api.cryptomus.com` เป็น `https://blockwallets.io` และใช้ merchant กับ API key ใหม่ พาธ พารามิเตอร์ `sign` และ webhook เหมือนเดิม

- [จาก NOWPayments](https://blockwallets.io/docs/nowpayments?lang=th): เปลี่ยน `https://api.nowpayments.io/v1` เป็น `https://blockwallets.io/nowpayments/v1` และใช้ API key กับ IPN secret ใหม่ `x-nowpayments-sig` เหมือนเดิม

- [จาก Coinbase Commerce](https://blockwallets.io/docs/coinbase-commerce?lang=th): ส่ง `https://blockwallets.io/coinbase/` เป็น base URL ของ SDK และใช้ API key กับ webhook shared secret ใหม่ `X-CC-Webhook-Signature` เหมือนเดิม

#### ให้ AI เชื่อมต่อให้

สำหรับคนที่ไม่เขียนโค้ดแต่ใช้เครื่องมือเขียนโค้ดด้วย AI

- [ตัวสร้างพรอมต์](https://blockwallets.io/docs/ai?lang=th): เลือกเว็บไซต์ รูปแบบการชำระเงิน และเครื่องมือ AI ของคุณ แล้วคัดลอกพรอมต์ที่สร้างให้สำหรับ Claude Code, Codex, Cursor หรือ ChatGPT

- [AGENTS.md](https://blockwallets.io/agents.md): กฎการเชื่อมต่อ ข้อผิดพลาดที่พบบ่อย และรายการตรวจรับ บันทึกไว้ที่รากโปรเจกต์สำหรับเอเจนต์เขียนโค้ด

- [MCP server](https://blockwallets.io/docs/mcp?lang=th): ให้เครื่องมือ AI ค้นหาเอกสารเหล่านี้และสร้างใบแจ้งหนี้ทดสอบได้โดยตรง

#### เครื่องมือ

ตัวช่วยดีบักที่ทำงานในเบราว์เซอร์ของคุณ

- [ตัวตรวจลายเซ็น](https://blockwallets.io/docs/sign?lang=th): วางเนื้อหาคำขอหรือ Webhook เพื่อดูทุกขั้นตอนการเซ็นและจุดที่ของคุณต่างออกไป API key ไม่ออกจากเบราว์เซอร์ของคุณ

### เข้ากันได้กับ Cryptomus หรือของเราเอง?

ทั้งสองแบบสร้างใบแจ้งหนี้เดียวกันบนหน้าชำระเงินเดียวกัน ด้วยค่าธรรมเนียมและยอดคงเหลือเหมือนกัน ต่างกันที่รูปแบบคำขอ รูปแบบ webhook และวิธีรับข้อมูลรับรอง

|  | เข้ากันได้กับ Cryptomus | REST ของเรา |
| --- | --- | --- |
| ข้อมูลรับรอง | สร้างเองในแดชบอร์ดที่ “นักพัฒนา › การเชื่อมต่อและคีย์” (ชุดสำหรับ Live หนึ่งชุด และ Test หนึ่งชุด) | สร้างเองได้ในแดชบอร์ดที่ “นักพัฒนา › การเชื่อมต่อและคีย์” เช่นกัน: คีย์ Live และ Test อย่างละหนึ่งชุด (`bw_live_…` / `bw_test_…`) พร้อม webhook signing secret ของคีย์เหล่านั้น |
| คำขอ | ทุกการเรียกเป็น `POST` + JSON พร้อมเฮดเดอร์ `merchant` และ `sign` = `md5(base64(เนื้อหาคำขอ) + API key)` | REST (`GET` / `POST`) พร้อม `Authorization: Bearer` คำนำหน้าของคีย์กำหนดว่าเป็น Live หรือ Test |
| จำนวนเงิน | สตริงทศนิยม เช่น `"42.00"` เป็น USD, USDT หรือ USDC (ทั้งหมด 1:1) | จำนวนเต็มเป็นเซนต์สหรัฐ เช่น `4200` เฉพาะ USD |
| การส่งซ้ำ | `order_id` เดิมได้ใบแจ้งหนี้ที่มีอยู่ | `ref` เดิมกับพารามิเตอร์เดิมได้ใบแจ้งหนี้ที่มีอยู่ พารามิเตอร์ต่างกันได้ 409 |
| Webhook | ส่งไปที่ `url_callback` ของแต่ละใบแจ้งหนี้ ลายเซ็นคือฟิลด์ `sign` ในเนื้อหา | ส่งไปที่ URL webhook ที่ตั้งในแดชบอร์ด `X-BW-Signature` = HMAC-SHA256 พร้อมเวลา ดูรายการและส่งซ้ำผ่าน `/v1/events` |
| ที่อยู่คงที่ | `/v1/wallet`: หนึ่งเครือข่ายต่อหนึ่งการเรียก | `/v1/deposit-accounts`: ทุกเครือข่ายพร้อมกันสำหรับลูกค้าหนึ่งราย |
| เครื่องมือ | แผง “ลองเลย” ตัวตรวจลายเซ็น พรอมต์ AI และ MCP server ใช้ SDK และปลั๊กอินของ Cryptomus ที่มีอยู่ได้ | เอกสารอ้างอิงนี้และตัวอย่างโค้ด |

เริ่มใหม่? ใช้ REST API ของเรา: จำนวนเงินเป็นเซนต์ `ref` แบบ idempotent ลายเซ็น Webhook ที่มีเวลากำกับ และคีย์ที่สร้างเองในแดชบอร์ด หากใช้ Cryptomus อยู่แล้ว หรืออยากใช้ SDK หรือปลั๊กอิน Cryptomus ที่มีอยู่ ให้ใช้ API ที่เข้ากันได้กับ Cryptomus

### เริ่มต้นอย่างรวดเร็ว

จากศูนย์ถึงการชำระเงินทดสอบใน 5 ขั้นตอน (API ที่เข้ากันได้กับ Cryptomus ส่วน API อื่นทำตามขั้นตอนเดียวกันด้วยข้อมูลรับรองของตัวเอง)

- ขอใช้งานที่[หน้าแรก](https://blockwallets.io/?lang=th#join) เมื่ออนุมัติแล้ว เข้าสู่ระบบ[แดชบอร์ดร้านค้า](https://blockwallets.io/dashboard)

- เปิด “นักพัฒนา › การเชื่อมต่อและคีย์” ในแดชบอร์ด สร้าง merchant และ API key ในคอลัมน์ Test แล้วเพิ่มโดเมนเว็บไซต์ของคุณ

- เซิร์ฟเวอร์ของคุณสร้างใบแจ้งหนี้ด้วย `POST /v1/payment` แล้วส่งลูกค้าไปที่ `result.url`

- ชำระด้วย “จำลองการชำระเงิน” บนหน้าชำระเงิน แล้วตรวจว่าตัวจัดการ Webhook ของคุณตรวจ `sign` และบันทึกยอดตาม `payment_amount_usd`

- สลับไปใช้ข้อมูลรับรองในคอลัมน์ Live แล้วชำระเงินจริงจำนวนน้อยหนึ่งครั้ง (“ลองรับเงินหนึ่งรายการ” ในหน้าแรกของแดชบอร์ด)

```http
POST https://blockwallets.io/v1/payment
merchant: <merchant>
sign: md5(base64(body) + API key)
Content-Type: application/json

{
  "amount": "42.00",
  "currency": "USD",
  "order_id": "order_1042",
  "url_callback": "https://shop.example/webhooks/crypto",
  "url_return": "https://shop.example/cart",
  "url_success": "https://shop.example/thanks?order=1042"
}
```

โค้ด Node.js, PHP และ Python ของทุกขั้นตอนอยู่ในเอกสาร[API ที่เข้ากันได้กับ Cryptomus](https://blockwallets.io/docs/cryptomus?lang=th#api) หากอยากให้ AI ทำให้ เริ่มที่[ตัวสร้างพรอมต์](https://blockwallets.io/docs/ai?lang=th)

### ลิงก์ชำระเงิน (ไม่ต้องเขียนโค้ด)

แดชบอร์ดร้านค้า → “การรับเงิน › ลิงก์รับชำระ” → ใส่คำอธิบายและจำนวนเงิน (กำหนดเครือข่ายหรือให้ลูกค้าเลือก) → สร้าง แต่ละลิงก์มี URL และคิวอาร์โค้ด

- ทุกครั้งที่มีคนเปิดลิงก์ จะสร้างใบแจ้งหนี้ใหม่ ลิงก์เดียวจึงใช้ซ้ำได้ (เช่น “สมาชิก $99”)

- ทุกการชำระปรากฏใน “การรับเงิน › รายการรับเงิน” ถอนเข้ากระเป๋าของคุณได้จาก “เงิน › ยอดคงเหลือและการถอน”

- หากคุณสร้างข้อมูลรับรองและ URL webhook ไว้ที่ “นักพัฒนา › การเชื่อมต่อและคีย์” การชำระเงินผ่านลิงก์ก็จะถูกแจ้งด้วย ในรูปแบบ[webhook ที่เข้ากันได้กับ Cryptomus](https://blockwallets.io/docs/cryptomus?lang=th#webhooks)

- หากไม่ต้องการรับอีก กด “ปิดใช้งาน” ลิงก์จะหยุดทำงานทันที

### POS สำหรับร้านค้า

สำหรับเคาน์เตอร์และแผงขายของ: แดชบอร์ดร้านค้า → “การรับเงิน › แคชเชียร์ POS” → เปิดเครื่อง แล้วรับลิงก์ POS พนักงานเปิดลิงก์บนมือถือหรือแท็บเล็ต พิมพ์จำนวนเงิน แล้วคิวอาร์โค้ดชำระเงินจะปรากฏ เมื่อลูกค้าจ่ายแล้ว หน้าจอแสดง “Paid”

- ใบแจ้งหนี้ POS มีผล 30 นาที เงินเข้ายอดคงเหลือของคุณและแสดงใน “การรับเงิน › รายการรับเงิน” และคุณได้รับแจ้งที่ URL webhook เหมือนลิงก์ชำระเงิน

- ลิงก์ POS รับชำระเงินได้อย่างเดียว: ดูยอดคงเหลือ การถอน คำสั่งซื้ออื่น การตั้งค่า หรือข้อมูลรับรองของคุณไม่ได้

- อุปกรณ์หาย หรือพนักงานลาออก? เพิกถอนเครื่องนั้นในแดชบอร์ด แล้วลิงก์ของเครื่องนั้นจะใช้ไม่ได้ทันที

### ปุ่มฝัง

แดชบอร์ดร้านค้า → “การรับเงิน › ลิงก์รับชำระ” → “ปุ่มฝัง”: เลือกข้อความ สี ขนาด และรูปทรง แล้วคัดลอกโค้ด การกดปุ่มจะเปิดหน้าชำระเงินของลิงก์รับชำระนั้น

- HTML ล้วน: ลิงก์ที่จัดสไตล์แล้วหนึ่งอัน ไม่มี script จึงใช้ได้ทุกที่ที่วาง HTML ได้ (เครื่องมือสร้างเว็บ ฟอรัม ลายเซ็นอีเมล)

- พร้อม script: เพิ่ม `data-blockwallets` และแท็ก `/embed.js` หนึ่งตัว บนเดสก์ท็อปหน้าชำระเงินเปิดในหน้าต่างเล็กกลางจอ บนมือถือเปิดตามปกติ

- script ไม่ส่งคำขอใด ไม่ตั้งคุกกี้ และไม่เพิ่ม iframe หากหน้านั้นบล็อก ปุ่มยังเป็นลิงก์ธรรมดาที่ใช้งานได้

ในโค้ดด้านล่าง ให้แทน `/l/pl_…` ด้วยที่อยู่ลิงก์รับชำระเงินของคุณเอง

#### HTML ล้วน

```html
<a href="https://blockwallets.io/l/pl_…" target="_blank" rel="noopener nofollow"
   style="display:inline-flex;align-items:center;height:44px;padding:0 22px;border-radius:999px;background:#1f5a3d;color:#ffffff;font:600 16px/1 sans-serif;text-decoration:none">Pay with crypto</a>
```

#### HTML + script

```html
<a href="https://blockwallets.io/l/pl_…" target="_blank" rel="noopener nofollow"
   data-blockwallets data-color="green" data-size="m" data-shape="pill">Pay with crypto</a>
<script src="https://blockwallets.io/embed.js" async></script>
```
