เอกสารสำหรับนักพัฒนา

เอกสาร API

เชื่อมต่อใบแจ้งหนี้ หน้าชำระเงิน และการแจ้งเตือนการชำระเงิน

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

สร้างใบแจ้งหนี้แรกของคุณ

  1. เตรียมร้านค้า

    เปิดใช้วิธีชำระเงิน ตั้งค่าผู้ให้บริการ และสำรองกระเป๋าของโปรเจกต์

  2. สร้างข้อมูลรับรอง API

    ในคอนโซล ไปที่การตั้งค่า → การเข้าถึง API เลือกอ่าน/เขียนและกำหนดโปรเจกต์

  3. ส่งคำขอ

    ใช้โฮสต์ API ของคุณและ คัดลอก ID โปรเจกต์และร้านค้า ส่งจำนวนเงินทศนิยมเป็นสตริง

  4. เปิดหน้าชำระเงิน

    เปลี่ยนเส้นทางไปยัง links.checkout จากการตอบกลับ ตรวจสอบว่าชำระเสร็จสิ้นก่อนดำเนินการตามคำสั่งซื้อ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new invoice.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/projects/YOUR_PROJECT_ID/stores/YOUR_STORE_ID/invoices" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: order-1042-attempt-1' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "amount": "49.90",
  "currency": "USD",
  "order_id": "order-1042",
  "exchange_rate_spread_percent": "0.5"
}'

ตัวอย่างใช้ค่าตัวแทนและไม่ส่งคำขอจากหน้านี้ ดูทุกฟิลด์ของใบแจ้งหนี้และรูปแบบการตอบกลับ →

ID โปรเจกต์และร้านค้า

หา YOUR_PROJECT_ID และ YOUR_STORE_ID ได้ที่ไหน

ใช้ UUID จากคอนโซล ไม่ใช่ชื่อโปรเจกต์หรือร้านค้า หรือตัวระบุที่อ่านง่าย

ค่าตัวแทนหาได้ที่ไหนใช้สำหรับ
YOUR_PROJECT_IDโปรเจกต์ → การตั้งค่า → API IDs → Project API ID → คัดลอก โดยแสดงในแท็บพื้นฐานของร้านค้าด้วยคำขอระดับโปรเจกต์และระดับร้านค้า
YOUR_STORE_IDโปรเจกต์ → ร้านค้า → เลือกร้านค้า → พื้นฐาน → API IDs → Store API ID → คัดลอกคำขอสร้างใบแจ้งหนี้และวิธีชำระเงินของร้านค้า
  • การสร้างใบแจ้งหนี้ต้องใช้ทั้งสอง ID แม้เป็นร้านค้าเริ่มต้น ร้านค้าต้องอยู่ในโปรเจกต์นั้น และข้อมูลรับรอง API ต้องมีสิทธิ์เข้าถึงโปรเจกต์
  • การสร้าง แสดงรายการ ดูรายละเอียด และหน้าชำระเงินของใบแจ้งหนี้จะคืนค่า invoice_id ซึ่งเป็น UUID เดียวกับที่ส่งใน IPN/webhook ใช้ค่านี้ในพาธใบแจ้งหนี้ ไม่ใช่ id ภายในหรือ order_id ตั้งแต่ merchant 4.0.0 ฟิลด์ public_id เดิมในการตอบกลับถูกนำออกแล้ว ให้อัปเดตการเชื่อมต่อก่อนอัปเกรด
  • REST API ไม่มีเส้นทางแสดงรายการโปรเจกต์/ร้านค้า ให้คัดลอก ID ในคอนโซล หรือใช้เครื่องมือ MCP list_projects และ list_stores ที่จำกัดขอบเขตสิทธิ์ใน merchant 5.0.0+
  • ร้านค้า → พื้นฐาน → โดเมนร้านค้า ใช้เลือกโฮสต์เนม merchant, pay และ API ที่ใช้งานอยู่ ลิงก์หน้าชำระเงินที่คืนค่าและลิงก์ callback ใหม่จะเลือกร้านค้านั้นก่อน ตามด้วยร้านค้าเริ่มต้น แล้วจึงค่าเริ่มต้นของระบบ ชื่อที่เลิกใช้หรือยังไม่เปิดใช้จะไม่ถูกเลือก ตั้งค่า SDK ด้วยโฮสต์เนม API ที่ต้องการ การเปลี่ยนค่าที่เลือกไม่ได้เปลี่ยนเส้นทางชื่อแทนอื่นที่ยังใช้งานอยู่

การยืนยันตัวตนและขอบเขตสิทธิ์

เก็บข้อมูลรับรองไว้บนเซิร์ฟเวอร์ของคุณและให้สิทธิ์เท่าที่จำเป็นเท่านั้น

โฮสต์เริ่มต้นจุดประสงค์
merchant.example.comคอนโซลผู้ค้าและการตั้งค่า
pay.example.comหน้าชำระเงินของลูกค้า
api.example.comคำขอ API ของผู้ค้า

แทนที่ example.com ด้วยโดเมนของคุณ ระบบที่ติดตั้งแล้วจะคงชื่อที่ตั้งไว้ จัดการชื่อแทนได้ใน การตั้งค่า → ระบบ

Authorization: Bearer YOUR_MERCHANT_API_TOKEN
การตั้งค่าวิธีทำงาน
ระดับการเข้าถึงข้อมูลรับรองแบบอ่านอย่างเดียวแสดงรายการและดึงข้อมูลได้ แบบอ่าน/เขียนยังสร้างใบแจ้งหนี้และอัปเดตนโยบายสินทรัพย์ตามที่ระบุในเอกสารได้ด้วย
โปรเจกต์กำหนดโปรเจกต์ที่ข้อมูลรับรองเข้าถึงได้ ID ร้านค้าและใบแจ้งหนี้ต้องอยู่ในโปรเจกต์ที่กำหนด
ข้อจำกัด IPเลือกอนุญาตที่อยู่ IPv4 หรือ IPv6 สาธารณะขาออกแบบตรงตัวได้ใน การตั้งค่า → การเข้าถึง API
การจัดเก็บข้อมูลรับรองเก็บโทเคนในการตั้งค่าแบ็กเอนด์ ห้ามใส่ข้อมูลรับรอง bearer ในเบราว์เซอร์หรือลิงก์หน้าชำระเงิน

เส้นทางหน้าชำระเงินสาธารณะใช้ ID สาธารณะของใบแจ้งหนี้และเปิดเผยเฉพาะข้อมูลที่แสดงบนหน้าชำระเงินได้อย่างปลอดภัย เซสชันคอนโซลและส่วนควบคุมผู้ดูแลแยกจากข้อมูลรับรอง API ของผู้ค้า

สินทรัพย์และกระเป๋า

เลือกวิธีชำระเงินแยกกันสำหรับแต่ละร้านค้า

  1. อ่าน สินทรัพย์รับชำระของโปรเจกต์ และความพร้อมของแต่ละรายการ
  2. เปิดใช้เชนของเหรียญหลักและตั้งค่ากระเป๋ากับผู้ให้บริการ
  3. เรียกดู โทเคนที่อาจใช้ได้ และ ตรวจสอบคอนแทรกต์หรือ mint ก่อนเปิดใช้โทเคน
  4. เลือกและเรียงลำดับ วิธีชำระเงินของร้านค้า ใบแจ้งหนี้ใหม่ใช้รายการที่เลือกและพร้อมใช้งาน

โทเคนใช้กระเป๋าร่วมกับเชนของเหรียญหลัก ยอดคงเหลือในกระเป๋า คืนค่าจำนวนหน่วยย่อยที่แน่นอนและมูลค่าเงินเฟียตเพื่อประกอบการพิจารณา ใช้ฟิลด์ความพร้อมที่คืนค่ามาเพื่อระบุว่าวิธีใดรับชำระเงินได้

โทเคน ERC-20 ที่ตรวจสอบแล้วใช้เครือข่าย EVM ที่รองรับ โทเคน SPL ที่ตรวจสอบแล้วใช้ Solana วิธีชำระด้วยเหรียญหลักมีในเครือข่ายที่เชื่อมต่อทั้ง 30 เครือข่าย Monero ใช้การเชื่อมต่อกระเป๋าภายนอกแบบดูอย่างเดียวที่ผูกกับโปรเจกต์

API รับเงินและการรองรับเหรียญหลัก/โทเคน
ช่องทางการรองรับหลักฐานข้อกำหนด
ช่องทางชำระด้วยเหรียญหลักรองรับสแกนธุรกรรมBTC, SOL, ETH (Ethereum/Base/Arbitrum/OP), BNB, HYPE, AVAX และ POL โดยใช้เอาต์พุต Bitcoin ธุรกรรม/ใบรับ EVM บนเชนหลักที่ยอมรับ และการโอน Solana ที่แยกวิเคราะห์แล้วเป็นหลักฐานของใบแจ้งหนี้
ช่องทางโทเคน ERC-20รองรับสแกนธุรกรรมEthereum, Base, BNB Chain, HyperEVM, Avalanche, Polygon, Arbitrum และ Optimism ต้องตรวจสอบบนเชน โดยใช้บันทึก Transfer ที่จัดทำดัชนีเพื่อระบุการชำระเงิน
ช่องทางโทเคน SPLรองรับสแกนธุรกรรมโทเคนที่อาจใช้ได้บน Solana ต้องตรวจสอบ mainnet และ mint โดยใช้ผลต่างยอดโทเคนที่แน่นอนในธุรกรรมที่แยกวิเคราะห์แล้วเพื่อระบุการชำระเงิน
ช่องทางเหรียญหลัก UTXO เพิ่มเติมรองรับสแกนธุรกรรมBCH/LTC/DOGE ใช้ Esplora; BCH/DOGE รองรับ Bitcore ด้วย, LTC/DOGE/DASH รองรับ BlockCypher, Dash รองรับ Insight และ ZEC แบบโปร่งใสรองรับ zcash-explorer ทั้งหมดยังรองรับบล็อก node-rpc ที่เข้ากันได้กับ Core และเก็บไว้อย่างครบถ้วน โหมด raw ต้องมี 1–48 การยืนยัน ไม่ใช่การตรวจพบใน mempool ไม่รองรับ Zcash แบบ shielded
ช่องทางเหรียญหลักแบบบัญชีที่จัดทำดัชนีรองรับสแกนธุรกรรมTRON ใช้ tron-indexer หรือ node-rpc แบบ solidified; XRP ใช้ xrpl-jsonrpc; Stellar ใช้ stellar-horizon หรือ ledger ของ Stellar node-rpc ที่เก็บไว้; Cosmos Hub ใช้ cometbft-jsonrpc; Algorand ใช้ algorand-indexer หรือ algod node-rpc; Hedera ต้องใช้ hedera-mirror ไม่ใช่ EVM relay
ช่องทางชำระเหรียญหลักแบบ ledgerรองรับสแกนธุรกรรมAptos ใช้ aptos-rest; Sui ใช้ sui-graphql; NEAR ใช้ near-jsonrpc; Kaspa ใช้ kaspa-rest ส่วน Polkadot Asset Hub รองรับ substrate-rest หรือ node-rpc ที่อ่าน metadata และบล็อก finalized ได้; Tezos รองรับ tezos-tzkt หรือ operation แบบเต็มจาก Octez node-rpc รับเฉพาะเหรียญหลัก ต้องเก็บข้อมูลย้อนหลังสำหรับใบแจ้งหนี้เก่า
ช่องทางเหรียญหลัก Cardano และ TONรองรับสแกนธุรกรรมCardano ต้องใช้ cardano-koios และ TON ต้องใช้ toncenter-v3 แท็ก XRP, memo ID ของ Stellar และคอมเมนต์ใบแจ้งหนี้ TON จะคืนค่าเป็น destination_tag และต้องส่งให้ตรงทุกตัว
ความถูกต้องของการชำระเสร็จสิ้นรองรับการตรวจสอบอย่างเป็นอิสระตามค่าเริ่มต้น การชำระเสร็จสิ้นขั้นสุดท้ายต้องมีผู้ให้บริการอิสระสองรายที่เห็นตรงกันในธุรกรรม/อีเวนต์ จำนวนเงิน บล็อกหรือสล็อตบนเชนหลักที่ยอมรับ และความเป็นที่สุด ช่วงข้อมูล raw และ EVM ที่ใช้ร่วมกันยังตรวจสอบความครอบคลุมที่ครบถ้วนด้วย ผู้ดูแลอาจเลือกให้เชนใช้ผู้ให้บริการที่เชื่อถือเพียงรายเดียวอย่างชัดเจน ซึ่งยกเลิกการตรวจสอบไขว้อิสระ แต่ไม่ได้ยกเลิกการตรวจสอบตัวตน ความครบถ้วน หรือความเป็นที่สุด
ช่องทางเหรียญหลัก MoneroรองรับRPC กระเป๋าดูอย่างเดียวที่ผูกกับโปรเจกต์wallet-RPC ภายนอกแบบ watch-only โดยเฉพาะหนึ่งตัวอยู่หลังเกตเวย์ HTTPS ที่อนุญาตเฉพาะเมธอดในรายการ และสร้าง subaddress ของ account-0 เกณฑ์ daemon บน mainnet ที่ตั้งไว้ (ค่าเริ่มต้น 2 แหล่งอิสระ หรือเลือก 1 แหล่ง) ให้หลักฐานการชำระเสร็จสิ้น ตัวเลือก --restricted-rpc แบบ native ใช้กับ create_address ไม่ได้ ผู้ดูแลระบบต้องรับรองชัดเจนว่ามีการสำรองกระเป๋าและไม่มีคีย์ใช้จ่าย โดยไม่ส่งข้อมูลคีย์ใดไปยัง Wholly Crypto

ยอดคงเหลือในเอ็กซ์เชนจ์และตัวเลือกการรวบรวมเงินไปกระเป๋าหรือเอ็กซ์เชนจ์แยกตามสินทรัพย์มีในคอนโซล ไม่ใช่ผ่าน API v1 สาธารณะ ดูการตั้งค่าเอ็กซ์เชนจ์.

วงจรสถานะใบแจ้งหนี้

หลักฐานการชำระเงิน การชำระเสร็จสิ้น และการดำเนินการตามคำสั่งซื้อ

สถานะความหมาย
newรอการชำระเงิน
processingตรวจพบการชำระเงิน รอจำนวนที่ยอมรับหรือความเป็นที่สุด
settledยอมรับตามนโยบายการชำระเสร็จสิ้นของใบแจ้งหนี้ หรือยอมรับด้วยตนเอง
expiredพ้นกำหนดแล้ว อาจยังติดตามการชำระล่าช้า
invalidไม่สามารถยอมรับการชำระเงินอัตโนมัติได้
cancelledยกเลิกแล้ว เปิดใหม่ได้ด้วยการกระทบยอดอย่างชัดเจนเท่านั้น

amount_status บันทึก none, partial, paid หรือ overpaid. timing_status แยกการชำระตรงเวลาและล่าช้า กฎของร้านค้ากำหนดจำนวนการยืนยันที่ต้องการและส่วนต่างชำระขาดที่ยอมรับ

ใช้ค่าของใบแจ้งหนี้ invoice_id ร่วมกับ เส้นทางรายละเอียดใบแจ้งหนี้ การเปลี่ยนเส้นทางจากหน้าชำระเงินเพียงอย่างเดียวไม่ใช่หลักฐานว่าชำระเสร็จสิ้น ตรวจสอบข้อยกเว้นผ่าน การกระทบยอด.

การลองใหม่อย่างปลอดภัย

การสร้างใบแจ้งหนี้ต้องใช้ Idempotency-Key หลังหมดเวลารอ ให้ลองใหม่ด้วยข้อมูลรับรอง คีย์ และเนื้อหาคำขอเดิมทุกไบต์ ใช้คีย์ใหม่เฉพาะเมื่อสร้างใบแจ้งหนี้ใหม่

การสแกนการชำระเงิน EVM

การค้นหาบล็อกเหรียญหลักและ ERC-20 แบบใช้ร่วมกันแยกกลุ่มใบแจ้งหนี้ล่าสุดออกจากงานไล่ตรวจข้อมูลเก่า แต่ละใบแจ้งหนี้เก็บเคอร์เซอร์ประวัติแบบถาวรของตนเอง คำขอโทเคนใช้ไม่เกิน 100 บล็อกต่อคำขอและลดขนาดเมื่อผู้ให้บริการจำกัดเข้มกว่า ตามค่าเริ่มต้นผู้ให้บริการอิสระสองรายจะตรวจสอบทุกช่วงข้อมูล ใน การตั้งค่า → การเชื่อมต่อเชน → รายละเอียด สามารถเลือกให้เชนใช้แหล่งที่เชื่อถือเพียงรายเดียวโดยไม่มีการตรวจสอบไขว้อิสระ แต่ยังตรวจสอบธุรกรรมบนเชนหลักที่ยอมรับ จำนวนเงิน และการยืนยัน รายละเอียดการเชื่อมต่อแยกความล่าช้าของสแกนเนอร์ ข้อจำกัดข้อมูลย้อนหลัง และช่วงพักโควตาออกจากสถานะพื้นฐานของโหนด ไม่รับประกันความจุของ RPC สาธารณะ

IPN และ webhook

รับและตรวจสอบอีเวนต์การชำระเงิน

IPN รับทุกอีเวนต์ใบแจ้งหนี้ที่สร้างขึ้นทาง ipn_url ที่มีผลของใบแจ้งหนี้ ส่วน webhook รับเฉพาะอีเวนต์ที่เลือกไว้สำหรับเอนด์พอยต์ร้านค้าแต่ละตัวที่เปิดใช้ ทั้งคู่ส่ง POST ด้วยภาพข้อมูล JSON เดียวกัน แต่ทำงานอิสระต่อกัน ดังนั้นการเปิดทั้งคู่อาจแจ้งแอปพลิเคชันของคุณสองครั้ง

กำหนด ipn_url เมื่อสร้างใบแจ้งหนี้ หรือใช้ค่าเริ่มต้นของร้านค้า IPN ใช้ ร้าน → IPN เป็นซีเคร็ต ส่วนแต่ละ ร้าน → Webhook เอนด์พอยต์มีซีเคร็ตของตนเอง ทั้งสองอย่างไม่ใช่คีย์ API ของคุณ

ควรดำเนินการตามคำสั่งซื้อเมื่อใด

สำหรับการจัดการตามอีเวนต์ ให้ใช้ event_type = invoice.settled ร่วมกับ status = settled เพื่อเริ่มตรวจสอบคำสั่งซื้อ ตรวจสอบใบแจ้งหนี้ปัจจุบันและดำเนินการแต่ละคำสั่งซื้อเพียงครั้งเดียว

status คือสถานะใบแจ้งหนี้เมื่อสร้างอีเวนต์ ส่วน event_type บอกว่าเกิดอะไรขึ้น payment.received อาจมีค่า processing หรือ settled ไม่ได้หมายถึงการชำระครั้งที่สองและไม่ใช่สัญญาณให้ดำเนินการตามคำสั่งซื้อโดยลำพัง

ส่งอีเวนต์และสถานะใดบ้าง

อีเวนต์ในการตั้งค่า/ประวัติสถานะในเนื้อหาความหมาย
invoice.creatednewสร้างใบแจ้งหนี้แล้วและรอชำระเงิน ใช้ด้วยเมื่อการเปิดใหม่แบบควบคุมทำให้ใบแจ้งหนี้กลับสู่ new
payment.receivedResulting invoice statusบันทึกการชำระเงินแล้วหรือจำนวนที่รับเพิ่มขึ้น โดยทั่วไปเป็น processing หรือ settled อีเวนต์นี้เพียงอย่างเดียวไม่ใช่หลักฐานว่าชำระเสร็จสิ้น
invoice.processingprocessingตรวจพบการชำระเงิน แต่ยังไม่ถึงจำนวนที่ยอมรับหรือความเป็นที่สุดที่กำหนด รวมถึงการชำระบางส่วน
invoice.settledsettledผ่านนโยบายการชำระเสร็จสิ้น หรือยอมรับด้วยตนเอง ตรวจสอบ resolution และคำสั่งซื้อก่อนดำเนินการ
invoice.expiredexpiredพ้นกำหนดชำระแล้ว การชำระล่าช้าอาจยังเปลี่ยนสถานะได้ขณะที่ติดตามต่อ
invoice.invalidinvalidยอมรับอัตโนมัติไม่ได้ หลักฐานการชำระเงินหายไป หรือผู้ค้าปฏิเสธ ให้ตรวจสอบใบแจ้งหนี้
invoice.cancelledcancelledยกเลิกใบแจ้งหนี้แล้ว ห้ามดำเนินการตามคำสั่งซื้อ การยกเลิกไม่ได้คืนการชำระเงินบนเชน
เหตุใด Ethereum และ Solana จึงอาจส่งลำดับอีเวนต์ต่างกัน

การยืนยันมาภายหลัง (ตัวอย่าง Ethereum)

ลำดับevent_typestatus
1invoice.creatednew
2payment.receivedprocessing
2invoice.processingprocessing
3invoice.settledsettled

เป็นที่สุดแล้วเมื่อตรวจพบ (ตัวอย่าง Solana)

ลำดับevent_typestatus
1invoice.creatednew
2payment.receivedsettled
2invoice.settledsettled

ตัวอย่างเหล่านี้แสดงการสร้างอีเวนต์ ไม่ได้รับประกันลำดับการส่ง ทั้งสองรูปแบบเกิดบนเชนอื่นได้ ขึ้นกับเวลาที่ตรวจพบและนโยบายการชำระเสร็จสิ้น อย่ากำหนดว่าต้องมีอีเวนต์ processing ก่อน settled

ดำเนินการครั้งเดียว: ตัวอย่างตัวรับและการป้องกันรายการซ้ำ
แนวทางวิธีจัดการ
ตัวรับตามอีเวนต์เก็บแต่ละอีเวนต์แยกด้วย event_id ที่ลงนาม แล้วเลือก invoice.settled ที่มี status = settled อย่าทิ้งอีเวนต์นี้เพราะ payment.received ที่มี sequence เดียวกันมาถึงก่อน
กล่องรับสถานะคำสั่งซื้อของ SDKตัวอย่างตัวรับ PHP, Python และ Node ที่ให้มาจะรวมรายการตาม project + invoice_id + sequence ประมวลผลสถานะที่บันทึกโดยไม่ขึ้นกับ event_type ดึงใบแจ้งหนี้ปัจจุบัน และดำเนินการครั้งเดียวหากเป็น settled อย่าเพิ่มตัวกรองเฉพาะ invoice.settled หลังการรวมนี้

การลองใหม่คง event_id และเนื้อหาเดิมไว้ อีเวนต์ต่างกันอาจมี sequence เดียวกันแต่ event_id ต่างกัน สำหรับการจัดการตามอีเวนต์ ให้ตัดการส่งซ้ำด้วย event_id ที่ลงนาม และป้องกันการดำเนินการซ้ำแยกอีกชั้นด้วยระบบติดตั้ง/โปรเจกต์ที่ตั้งค่า + invoice_id และคำสั่งซื้อของคุณ การชำระเสร็จสิ้นซ้ำในภายหลังต้องไม่เพิ่มเครดิตคำสั่งซื้อสองครั้ง

HTTP receiver:
  Verify raw-body signature, timestamp and configured project/store scope.
  Save to a durable inbox; deduplicate the signed event_id.
  Return HTTP 2xx only after persistence succeeds.

Event-based background worker:
  Other events go to status/reconciliation handling, not fulfilment.
  Continue here only for event_type = invoice.settled and status = settled.
  Fetch the current invoice from your configured API origin.
  Check settled status, project/store, order, amount, currency and review policy.
  In one database transaction:
    Lock the order and check the scoped invoice has not been fulfilled.
    Credit/complete once and save the fulfilment record.
    Queue any external fulfilment with the same business idempotency key.

SDK order-state worker:
  Use the same current-invoice checks and fulfil-once transaction.
  Do not filter event_type after collapsing events by invoice revision.

เป็นรหัสเทียม ไม่ใช่ตัวรับที่นำไปใช้ได้ทันที

สถานะใบแจ้งหนี้และข้อยกเว้นการชำระเงินทั้งหมด
ฟิลด์ค่าความหมาย
statusnew, processing, settled, expired, invalid, cancelledสถานะใบแจ้งหนี้เมื่อสร้างอีเวนต์ ไม่จำเป็นต้องเป็นสถานะปัจจุบันขณะส่งถึง
amount_statusnone, partial, paid, overpaidจำนวนเงินที่รับ รวมส่วนต่างที่ยอมรับ paid ไม่ใช่ความเป็นที่สุดของการยืนยัน
timing_statuson_time, lateการชำระทันกำหนดของใบแจ้งหนี้หรือไม่
resolutionautomatic, manually_settled, manually_invalidatedผลลัพธ์ถูกกำหนดโดยกฎปกติหรือการยอมรับ/ปฏิเสธด้วยตนเอง
requires_reviewfalse, trueข้อมูลชี้ข้อยกเว้น ไม่ใช่สถานะใบแจ้งหนี้เพิ่มเติมหรือการอนุญาตให้ดำเนินการ/คืนเงินอัตโนมัติ
สถานการณ์การจัดการ
ชำระขาด / ส่วนต่างที่ยอมรับภายใต้กฎอัตโนมัติ partial จะไม่ชำระเสร็จสิ้น paid อาจรวมยอดขาดที่ยอมรับได้ แต่ยังต้องมีความเป็นที่สุด ใช้สถานะใบแจ้งหนี้ ไม่ใช่การเทียบจำนวนเงินเพียงอย่างเดียว
ชำระเกินoverpaid อาจอยู่ร่วมกับ settled และ requires_review = true ใช้นโยบายจัดการยอดเกินของคุณ ห้ามเพิ่มเครดิตคำสั่งซื้อสองครั้งหรือคืนเงินอัตโนมัติไปยังที่อยู่ที่ยังไม่ตรวจสอบ
ชำระล่าช้าexpired อาจเปลี่ยนภายหลังขณะที่ยังติดตามอยู่ timing_status = late แจ้งให้ตรวจสอบ อย่าเปิดใหม่หรือจัดส่งคำสั่งซื้อที่ยกเลิกแล้วโดยอัตโนมัติ
การยอมรับด้วยตนเองinvoice.settled อาจมี resolution = manually_settled โดยไม่มีเงินบนเชนที่ผ่านเกณฑ์ ตัดสินใจว่าการเชื่อมต่อของคุณยอมรับการข้ามกฎนี้หรือไม่ ฟิลด์สรุปการชำระเงินอาจเป็น null
การจัดเชนใหม่ / การทำให้ไม่ถูกต้องรุ่นแก้ไขใหม่อาจทำให้หลักฐานการชำระเงินเดิมใช้ไม่ได้ ดึงสถานะปัจจุบันใหม่และจัดการการย้อนกลับผ่านการกระทบยอด อย่ามองข้ามเพียงเพราะคำสั่งซื้อเคยชำระเสร็จสิ้นแล้ว
ศูนย์การยืนยัน / จำนวนเงินศูนย์การชำระเสร็จสิ้นแบบศูนย์การยืนยันอาจเกิดทันทีที่ตรวจพบและมีความเสี่ยงจากการจัดเชนใหม่ ใบแจ้งหนี้จำนวนศูนย์ที่อนุญาตอย่างชัดเจนจะเสร็จสิ้นโดยไม่ชำระเงิน ทั้งสองกรณีไม่จำเป็นต้องมีอีเวนต์ payment.received ก่อน

ใช้ status = settled เพื่อดำเนินการตามคำสั่งซื้อ ไม่ใช่ amount_status = paid หรือการเปลี่ยนเส้นทางจากหน้าชำระเงิน หากกำหนดศูนย์การยืนยัน อาจชำระเสร็จสิ้นทันทีที่ตรวจพบ ซึ่งมีความเสี่ยงจากการจัดเชนใหม่

ชำระขาดคือ amount_status = partial; ชำระเกินคือ overpaid ส่วน paid หมายถึงได้รับขั้นต่ำที่ยอมรับแล้ว รวมส่วนต่างชำระขาดที่ใบแจ้งหนี้ยอมรับ ค่าเหล่านี้เป็นสถานะจำนวนเงิน ไม่ใช่สถานะใบแจ้งหนี้ late เป็น timing_status ไม่ใช่อีเวนต์แยก

ลำดับทั่วไปคือ new → processing → settled แต่อาจข้ามสถานะระหว่างทางได้ ใบแจ้งหนี้จำนวนศูนย์ที่อนุญาตอย่างชัดเจนจะเสร็จสิ้นโดยไม่ชำระเงินและคง amount_status = none การยอมรับด้วยตนเองระบุเป็น manually_settled

Callback เป็นภาพข้อมูลที่แก้ไขไม่ได้ ไม่ใช่การตอบสถานะสด อาจมาช้า ไม่ตามลำดับ หรือมากกว่าหนึ่งครั้ง อีเวนต์การชำระเงินและสถานะอาจมี sequence ของใบแจ้งหนี้และฟิลด์สถานะเหมือนกัน แต่ค่า event_id และ event_type ที่ลงนามต่างกัน จำนวนการยืนยันไม่ได้รับประกันว่าจะมี callback ทุกบล็อก

สิ่งที่คุณได้รับ

{
  "invoice_id": "11111111-2222-4333-8444-555555555555",
  "status": "settled",
  "amount_status": "paid",
  "timing_status": "on_time",
  "resolution": "automatic",
  "sequence": 3,
  "amount": "49.9",
  "currency": "EUR",
  "order_id": "order-1042",
  "payload_version": 2,
  "event_id": "aaaaaaaa-aaaa-4aaa-8aaa-aaaaaaaaaaaa",
  "event_type": "invoice.settled",
  "occurred_at": "2026-09-14T12:05:00Z",
  "project_id": "11111111-1111-4111-8111-111111111111",
  "store_id": "22222222-2222-4222-8222-222222222222",
  "description": "Annual plan",
  "email": "ada@example.test",
  "customer": {
    "firstname": "Ada",
    "lastname": "Lovelace",
    "countryiso2": "GB"
  },
  "metadata": {
    "firstname": "Ada",
    "lastname": "Lovelace",
    "countryiso2": "GB",
    "cart_id": "cart-681"
  },
  "created_at": "2026-09-14T12:00:00Z",
  "updated_at": "2026-09-14T12:05:00Z",
  "expires_at": "2026-09-14T12:15:00Z",
  "monitoring_expires_at": "2026-09-21T12:15:00Z",
  "settled_at": "2026-09-14T12:05:00Z",
  "paid_chain": "ethereum",
  "paid_asset": "USDC",
  "paid_asset_amount": "58.17342",
  "paid_asset_amount_received": "58.17342",
  "paid_payment_method_id": "33333333-3333-4333-8333-333333333333",
  "settlement_exchange_rate": {
    "rate": "1.17",
    "units": "asset_per_invoice_currency",
    "currency": "EUR",
    "symbol": "USDC",
    "observed_at": "2026-09-14T12:05:00Z",
    "as_of": "2026-09-14T12:04:30Z",
    "pricing_provider": "kraken",
    "asset_provider": "kraken",
    "pricing_fetched_at": "2026-09-14T12:04:30Z",
    "asset_fetched_at": "2026-09-14T12:04:30Z",
    "stale": false,
    "is_fixed": false,
    "reference_currency": "USD",
    "uses_reference_proxy": false
  },
  "cancelled_at": null,
  "exchange_rate_spread_percent": "0.5",
  "underpayment_tolerance_percent": "1",
  "reason_code": "payment_confirmed",
  "requires_review": false,
  "links": {
    "checkout": "https://pay.example.com/invoice/11111111-2222-4333-8444-555555555555",
    "invoice": "https://api.example.com/v1/projects/11111111-1111-4111-8111-111111111111/invoices/11111111-2222-4333-8444-555555555555",
    "payments": "https://api.example.com/v1/projects/11111111-1111-4111-8111-111111111111/invoices/11111111-2222-4333-8444-555555555555/payments"
  },
  "payment_info": {
    "active_payment_method_id": "33333333-3333-4333-8333-333333333333",
    "method_count": 1,
    "methods_truncated": false,
    "methods": [
      {
        "payment_method_id": "33333333-3333-4333-8333-333333333333",
        "payment_rail": "onchain",
        "chain_slug": "ethereum",
        "network": "mainnet",
        "caip_network_id": "eip155:1",
        "asset_id": "44444444-4444-4444-8444-444444444444",
        "asset_key": "eip155:1/erc20:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
        "caip_asset_id": "eip155:1/erc20:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
        "asset_name": "USD Coin",
        "symbol": "USDC",
        "asset_kind": "token",
        "asset_decimals": 6,
        "contract_address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
        "token_standard": "erc20",
        "destination_address": "0x1111111111111111111111111111111111111111",
        "destination_tag": null,
        "status": "paid",
        "amounts": {
          "expected_amount": "58.17342",
          "expected_amount_atomic": "58173420",
          "received_amount": "58.17342",
          "received_amount_atomic": "58173420",
          "confirmed_amount": "58.17342",
          "confirmed_amount_atomic": "58173420",
          "unconfirmed_amount": "0",
          "unconfirmed_amount_atomic": "0",
          "minimum_payment_amount": "57.591686",
          "minimum_payment_amount_atomic": "57591686",
          "remaining_amount": "0",
          "remaining_amount_atomic": "0",
          "remaining_to_full_amount": "0",
          "remaining_to_full_amount_atomic": "0",
          "overpaid_amount": "0",
          "overpaid_amount_atomic": "0"
        },
        "acceptance": {
          "finality_mode": "confirmations",
          "required_confirmations": 2,
          "observed_confirmations": 2,
          "underpayment_tolerance_percent": "1"
        },
        "quote": {
          "effective_rate": "1.1658",
          "reference_rate": "1.16",
          "units": "asset_per_invoice_currency",
          "currency": "EUR",
          "symbol": "USDC",
          "exchange_rate_spread_percent": "0.5",
          "quote_expires_at": "2026-09-14T12:15:00Z",
          "provenance_available": true,
          "rounding": "up",
          "unrounded_payment_amount": "58.17342",
          "rounding_adjustment": "0",
          "pricing_provider": "kraken",
          "asset_provider": "kraken",
          "pricing_fetched_at": "2026-09-14T11:59:30Z",
          "asset_fetched_at": "2026-09-14T11:59:30Z"
        },
        "market_rate_at_event": {
          "rate": "1.17",
          "units": "asset_per_invoice_currency",
          "currency": "EUR",
          "symbol": "USDC",
          "observed_at": "2026-09-14T12:05:00Z",
          "pricing_provider": "kraken",
          "asset_provider": "kraken",
          "pricing_fetched_at": "2026-09-14T12:04:30Z",
          "asset_fetched_at": "2026-09-14T12:04:30Z",
          "as_of": "2026-09-14T12:04:30Z",
          "stale": false,
          "is_fixed": false,
          "reference_currency": "USD",
          "uses_reference_proxy": false
        },
        "payment_count": 1,
        "payments_truncated": false,
        "payments": [
          {
            "payment_id": "55555555-5555-4555-8555-555555555555",
            "payment_method_id": "33333333-3333-4333-8333-333333333333",
            "transaction_id": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
            "payment_hash": null,
            "event_index": 0,
            "payment_rail": "onchain",
            "chain_slug": "ethereum",
            "network": "mainnet",
            "asset_id": "44444444-4444-4444-8444-444444444444",
            "asset_key": "eip155:1/erc20:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
            "caip_asset_id": "eip155:1/erc20:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
            "symbol": "USDC",
            "asset_decimals": 6,
            "amount": "58.17342",
            "amount_atomic": "58173420",
            "status": "final",
            "counts_towards_received": true,
            "confirmations": 2,
            "block_height": 26000000,
            "observed_at": "2026-09-14T12:04:30Z",
            "chain_time": "2026-09-14T12:04:20Z",
            "finalized_at": "2026-09-14T12:05:00Z",
            "explorer_name": "Etherscan",
            "explorer_url": "https://etherscan.io/tx/0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
          }
        ],
        "links": {
          "payments": "https://api.example.com/v1/projects/11111111-1111-4111-8111-111111111111/invoices/11111111-2222-4333-8444-555555555555/payments?payment_method_id=33333333-3333-4333-8333-333333333333"
        }
      }
    ]
  }
}

amount คือยอดรวมเดิมของใบแจ้งหนี้ payment_info อธิบายการโอนคริปโตที่ตรวจพบ จำนวนที่ยังขาด และอัตราที่ล็อกไว้ เวอร์ชัน 2 ยังลงนามชื่ออีเวนต์ ID อีเวนต์ และขอบเขตโปรเจกต์/ร้านค้าด้วย

ฟิลด์ callback ทั้งหมดและข้อมูลใบแจ้งหนี้เพิ่มเติม
ฟิลด์ชนิดความหมาย
invoice_idUUIDUUID สาธารณะของใบแจ้งหนี้ ใช้กับเส้นทางรายละเอียดใบแจ้งหนี้ที่ยืนยันตัวตน
statusstringสถานะใบแจ้งหนี้ในภาพข้อมูล: new, processing, settled, expired, invalid, cancelled
amount_statusstringnone, partial, paid หรือ overpaid; paid รวมส่วนต่างชำระขาดที่ยอมรับ ไม่ใช่ความเป็นที่สุดของการยืนยัน
timing_statusstringon_time หรือ late
resolutionstringautomatic, manually_settled หรือ manually_invalidated
sequenceintegerรุ่นแก้ไขของใบแจ้งหนี้ที่เพิ่มขึ้น อีเวนต์ต่างกันอาจใช้รุ่นแก้ไขเดียวกัน เปรียบเทียบโดยไม่สูญเสียความแม่นยำของจำนวนเต็ม
amountdecimal stringยอดรวมเดิมของใบแจ้งหนี้ ไม่ใช่จำนวนคริปโตที่รับ รักษาความแม่นยำของทศนิยม
currencystringสกุลเงินของ amount เช่น EUR สำหรับใบแจ้งหนี้ EUR ที่ชำระด้วย USDC
order_idstring | nullเลขอ้างอิงคำสั่งซื้อของผู้ค้า
payload_versioninteger2 สำหรับอีเวนต์ที่สร้างใหม่ใน 4.1.0+ ไม่มีค่านี้ในอีเวนต์รุ่นเก่าที่เก็บไว้
event_idUUIDตัวระบุอีเวนต์ที่ลงนาม ไม่เปลี่ยนเมื่อส่งซ้ำหรือลองใหม่ด้วยตนเอง
event_typestringหนึ่งในเจ็ดอีเวนต์ที่สมัครรับได้
occurred_attimestampเวลาที่สร้างอีเวนต์ซึ่งแก้ไขไม่ได้นี้ ไม่ใช่เวลาส่ง
project_idUUIDขอบเขตโปรเจกต์ของผู้ค้า ให้ตรงกับตัวรับที่ตั้งค่าไว้
store_idUUIDขอบเขตร้านค้าของผู้ค้า ให้ตรงกับตัวรับที่ตั้งค่าไว้
descriptionstring | nullคำอธิบายเดิมของใบแจ้งหนี้
emailstring | nullอีเมลลูกค้าที่อาจระบุไว้ขณะสร้างอีเวนต์
customerobjectฟิลด์ metadata ลูกค้าแบบไม่บังคับที่ระบบรู้จัก ไม่มีข้อมูลส่วนบุคคลที่คาดเดาหรือเสริมขึ้น
metadataobjectmetadata เดิมของผู้ค้าตามที่มีอยู่ขณะสร้างอีเวนต์
created_attimestampเวลาสร้างใบแจ้งหนี้
updated_attimestampเวลาอัปเดตสถานะใบแจ้งหนี้
expires_attimestampกำหนดชำระใบแจ้งหนี้
monitoring_expires_attimestampกำหนดสิ้นสุดการติดตามชำระล่าช้า
settled_attimestamp | nullเวลาชำระเสร็จสิ้น
paid_chainstring | null4.1.2+: slug ของเชนสำหรับวิธีที่พิสูจน์แล้วว่าทำให้ชำระเสร็จสิ้น เช่น ethereum; เป็น null หากไม่มีข้อมูลการชำระเสร็จสิ้นที่ผ่านเกณฑ์บันทึกไว้
paid_assetstring | null4.1.2+: ticker ของเหรียญหลักหรือโทเคน เช่น BTC, ETH หรือ USDC เป็นป้ายแสดงผล ไม่ใช่ตัวระบุสินทรัพย์ที่ไม่ซ้ำ
paid_asset_amountdecimal string | null5.0.1+: จำนวนทั้งหมดที่ล็อกไว้และเรียกเก็บในหน่วย paid_asset ก่อนหักส่วนต่างที่ยอมรับ บันทึกเมื่อชำระเสร็จสิ้น
paid_asset_amount_receiveddecimal string | null5.0.1+: ยอดรับที่ถูกต้องรวมของวิธีที่ทำให้ชำระเสร็จสิ้น ณ เวลานั้น รวมยอดขาด/เกินที่ยอมรับ ค่านี้ถูกตรึงไว้ ไม่ใช่ยอดคงเหลือสด
paid_payment_method_idUUID | null4.1.2+: ID ของ intent ที่ทำให้ชำระเสร็จสิ้น ตรงกับ payment_info.methods[].payment_method_id และเครือข่าย/คอนแทรกต์ที่แน่นอนของวิธีนั้น
settlement_exchange_rateobject | null4.1.2+: ภาพข้อมูลตลาดก่อนบวกสเปรดที่บันทึกเมื่อชำระเสร็จสิ้น มีหน่วย สกุลเงิน เวลาแหล่งข้อมูล และธงคุณภาพชัดเจน ไม่คำนวณราคาใหม่เมื่อส่ง
cancelled_attimestamp | nullเวลายกเลิก
exchange_rate_spread_percentdecimal stringสเปรดที่ล็อกไว้ ไม่ใช่ค่าเริ่มต้นปัจจุบันของร้านค้า
underpayment_tolerance_percentdecimal stringส่วนต่างที่ใบแจ้งหนี้ยอมรับซึ่งล็อกไว้ แต่ละวิธียังรายงานส่วนต่างที่มีผลจริงของตนเอง
reason_codestring | nullเหตุผลการเปลี่ยนสถานะที่เครื่องอ่านได้
requires_reviewbooleanข้อมูลชี้ข้อยกเว้นการชำระเงิน ไม่ใช่การอนุญาตให้ดำเนินการหรือคืนเงินอัตโนมัติ
linksobjectURL หน้าชำระเงิน ใบแจ้งหนี้ที่ต้องยืนยันตัวตน และรายการชำระเงิน ณ เวลาสร้างอีเวนต์ ใช้โดเมนที่เลือกใน ร้านค้า → พื้นฐาน ก่อน จากนั้นร้านค้าเริ่มต้น แล้วจึงโดเมนหลักส่วนกลาง ใช้เฉพาะโดเมนที่ใช้งานอยู่และตรงบทบาท การลองใหม่คงลิงก์เดิมที่ลงนามไว้ เป็น null หากไม่มีระเบียนโฮสต์ที่ใช้งานอยู่
payment_infoobjectวิธีที่ตรวจพบจริง จำนวนที่แน่นอน ราคาที่ล็อกไว้ ภาพข้อมูลตลาดประกอบการพิจารณา และข้อมูลการชำระที่ตรวจพบแบบจำกัดจำนวน ดูกลุ่มฟิลด์ด้านล่าง

สรุปการชำระเสร็จสิ้น: settlement_exchange_rate

ฟิลด์ชนิดความหมาย
rate / units / currency / symbolstringsหน่วยสินทรัพย์ก่อนบวกสเปรดต่อหนึ่งหน่วยสกุลเงินใบแจ้งหนี้ เป็นสตริงทศนิยม ไม่ใช่จำนวนชำระหรือการซื้อขายที่ดำเนินการแล้ว
observed_at / as_oftimestampsเวลาบันทึกการชำระเสร็จสิ้น / เวลาแหล่งข้อมูลที่เก่ากว่า อย่าถือว่าข้อมูลแคชเป็นราคาสด
pricing_provider / asset_provider / pricing_fetched_at / asset_fetched_atstrings / timestampsแหล่งราคาเงินเฟียตและสินทรัพย์พร้อมเวลาที่ดึง บันทึกเมื่อชำระเสร็จสิ้น
stale / is_fixed / uses_reference_proxy / reference_currencybooleans / stringใช้ธงคุณภาพเดียวกับ market_rate_at_event มีป้ายระบุราคาคงที่ของโปรเจกต์ สกุลเงินอ้างอิงคือ USD
Missing snapshot or pricenullไม่มีการเดาอัตราย้อนหลัง ก่อนชำระเสร็จสิ้นฟิลด์สรุปทั้งหมดเป็น null หากขาดเพียงราคา ตัวระบุ paid_* ที่พิสูจน์แล้วยังคงมีอยู่

วิธีชำระเงิน: payment_info

ฟิลด์ชนิดความหมาย
active_payment_method_idUUID | nullวิธีที่ทำให้ชำระเสร็จสิ้นหรือวิธีที่ตรวจพบและเลือกไว้ เป็น null ก่อนตรวจพบหรือหลังทำให้ไม่ถูกต้อง ไม่เดาวิธีเริ่มต้นขึ้นมา
method_count / methods_truncatedinteger / booleanจำนวนวิธีที่ตรวจพบทั้งหมดและรายการ methods ที่ฝังมาไม่ครบหรือไม่
methods[]object[]วิธีที่ตรวจพบไม่เกินแปดวิธี โดยวิธีที่ใช้งานอยู่มาก่อน ไม่มีการรวมยอดข้ามสินทรัพย์
payment_method_id / payment_railUUID / stringตัวระบุ intent ของใบแจ้งหนี้และช่องทาง onchain หรือ lightning
chain_slug / network / caip_network_idstringตัวระบุเครือข่าย จับคู่ตัวระบุโทเคนกับเครือข่ายเสมอ
asset_id / asset_key / caip_asset_idUUID / string / nullable stringตัวระบุในทะเบียนที่ตรวจสอบแล้ว สัญลักษณ์เพียงอย่างเดียวไม่เป็นเอกลักษณ์
asset_name / symbol / asset_kindstringชื่อแสดงผลของสินทรัพย์ ticker และชนิดเหรียญหลักหรือโทเคน
contract_address / token_standardstring | nullคอนแทรกต์หรือ mint ของโทเคนและมาตรฐาน เป็น null สำหรับสินทรัพย์เหรียญหลัก
asset_decimalsintegerความละเอียดของหน่วยย่อย Lightning BTC ใช้ 11
destination_address / destination_tagstring | nullที่อยู่รับเงินสาธารณะและ memo/tag ที่จำเป็น ที่อยู่เป็น null สำหรับ Lightning ไม่ใช่คีย์ส่วนตัวเด็ดขาด
statusstringสถานะวิธี: pending, partial, paid, overpaid, expired หรือ invalid การเป็น paid เพียงอย่างเดียวไม่ใช่การชำระเสร็จสิ้นของใบแจ้งหนี้
payment_count / payments_truncated / payments[]integer / boolean / object[]จำนวนข้อมูลที่ตรวจพบทั้งหมดและรายการล่าสุดไม่เกินห้ารายการ แต่ละรายการอธิบายด้านล่าง
links.paymentsHTTPS URL | nullประวัติแบ่งหน้าที่ต้องยืนยันตัวตนสำหรับวิธีนี้บน API origin ที่ตั้งค่าไว้

จำนวนที่แน่นอน: methods[].amounts

ฟิลด์ชนิดความหมาย
expected_amountdecimal stringราคาเต็มที่ล็อกไว้ หลังบวกสเปรดและปัดขึ้น
received_amount / confirmed_amountdecimal stringsเงินที่ตรวจพบและถูกต้อง / เงินที่ผ่านนโยบายการยืนยันหรือความเป็นที่สุดของวิธีนี้
unconfirmed_amountdecimal stringmax(received - confirmed, 0) ไม่ใช่จำนวนเพิ่มเติมที่ต้องส่ง
minimum_payment_amountdecimal stringเกณฑ์ยอมรับหลังหักส่วนต่างที่ยอมรับ อาจต่ำกว่าราคาเต็ม
remaining_amountdecimal stringmax(minimum accepted - received, 0) เงินเพิ่มที่ต้องรับเพื่อถึงเกณฑ์ยอมรับ ไม่ใช่ความคืบหน้าการยืนยัน
remaining_to_full_amountdecimal stringmax(full quote - received, 0) โดยไม่คำนึงถึงส่วนต่างที่ยอมรับ
overpaid_amountdecimal stringmax(received - full quote, 0) ไม่ได้อนุมัติการคืนเงินอัตโนมัติ
Every amount's *_atomic companioninteger stringค่าที่แน่นอนในหน่วยเล็กที่สุด ใช้ไลบรารีทศนิยมหรือจำนวนเต็ม ห้ามใช้ float หรือ JavaScript Number กับจำนวนเงิน

นโยบายการยืนยัน: methods[].acceptance

ฟิลด์ชนิดความหมาย
finality_mode / required_confirmationsstring / integerจำนวนการยืนยันหรือนโยบาย finalized ที่ล็อกไว้ ศูนย์การยืนยันเป็นสิ่งที่นโยบายผู้ค้าอนุญาตอย่างชัดเจน ไม่ใช่ความเป็นที่สุดสากลของเครือข่าย
observed_confirmationsinteger | nullค่าต่ำสุดจากข้อมูลที่ตรวจพบและถูกต้องทั้งหมด ไม่ใช่เฉพาะการโอนล่าสุด เป็น null สำหรับ Lightning หรือเมื่อไม่มีข้อมูลที่ถูกต้อง
underpayment_tolerance_percentdecimal stringส่วนต่างที่วิธีนี้ยอมรับจริง Lightning ใช้ศูนย์แม้ใบแจ้งหนี้จะมีส่วนต่างบนเชนมากกว่าศูนย์

อัตรา: methods[].quote และ market_rate_at_event

ฟิลด์ชนิดความหมาย
quote.effective_rate / units / currency / symbolstringsอัตรา asset_per_invoice_currency ที่ล็อกไว้รวมสเปรดแล้ว สกุลเงินและสัญลักษณ์ระบุทิศทางอย่างชัดเจน
quote.exchange_rate_spread_percent / quote_expires_atdecimal string / timestampสเปรดและกำหนดหมดอายุราคาที่ล็อกไว้ ไม่แทนที่ด้วยการตั้งค่าร้านค้าปัจจุบัน
quote.reference_rate / unrounded_payment_amount / rounding_adjustmentdecimal string | nullค่าอ้างอิงก่อนสเปรด จำนวนชำระก่อนปัดเศษ และส่วนปรับขึ้นในหน่วยสินทรัพย์
quote.pricing_provider / asset_provider / pricing_fetched_at / asset_fetched_atstring or timestamp | nullแหล่งราคาและเวลาเดิมของสกุลเงินกับสินทรัพย์ ไม่มีคีย์ API หรือข้อมูลรับรองผู้ให้บริการ
quote.provenance_available / roundingboolean / stringเป็น false สำหรับใบแจ้งหนี้เก่าที่ไม่มีภาพแหล่งข้อมูลบันทึกไว้ การปัดเศษเป็นการปัดขึ้น
market_rate_at_eventobject | nullภาพข้อมูลตลาดจากแคชเพื่อประกอบการพิจารณา ณ เวลาสร้างอีเวนต์ ข้อมูลที่ขาดยังเป็น null ไม่เปลี่ยนจำนวนเงินใบแจ้งหนี้และไม่รอการดึงข้อมูลจากเครือข่าย
market_rate_at_event.rate / units / currency / symbolstringsอัตราตลาดก่อนสเปรด โดยระบุทิศทางชัดเจนเช่นเดียวกับ quote
market_rate_at_event.observed_at / as_of / pricing_fetched_at / asset_fetched_attimestampsเวลาภาพข้อมูลอีเวนต์ / เวลาที่เก่ากว่าของสองแหล่ง / เวลาของแต่ละแหล่ง
market_rate_at_event.pricing_provider / asset_providerstringsแหล่งข้อมูลสกุลเงินและสินทรัพย์ที่แคชไว้ รวมราคาโทเคนกำหนดเองที่ตั้งค่าไว้
market_rate_at_event.stale / is_fixed / uses_reference_proxy / reference_currencybooleans / stringระบุว่าแคชเก่า ราคาโทเคนคงที่ หรือค่าอ้างอิง USD ใช้ stablecoin เป็นตัวแทนหรือไม่ สกุลเงินอ้างอิงคือ USD สถานะเก่าใช้ประกอบการพิจารณา ไม่ใช่ราคาเสนอใหม่

ระเบียนการโอน: methods[].payments[] และ GET …/payments

ฟิลด์ชนิดความหมาย
payment_id / payment_method_idUUIDตัวระบุข้อมูลที่ตรวจพบ / ตัวระบุ intent หลัก ใช้ payment_id ตัดรายการซ้ำในประวัติ
transaction_id / payment_hash / event_indexstring | null / integerแฮชบนเชนและดัชนี transfer/log/output หรือแฮช Lightning โดย Lightning ไม่มีธุรกรรมหรือลิงก์ explorer
payment_rail / chain_slug / network / asset_id / asset_key / caip_asset_id / symbol / asset_decimalsstrings / UUID / integerตัวระบุสินทรัพย์และเครือข่ายเดียวกับวิธีที่บรรจุรายการนี้
amount / amount_atomicdecimal / integer stringsมูลค่าที่แน่นอนของการโอนนี้ ไม่ใช่การแปลงเป็นเงินเฟียต
status / counts_towards_receivedstring / booleanนับ detected, confirming และ final แต่ไม่นับ reorged, replaced และ invalid เก็บประวัติที่ถูกทำให้ไม่ถูกต้องไว้เพื่อกระทบยอด
confirmations / block_heightinteger | nullข้อมูลบล็อกของรายการที่ตรวจพบ confirmations เป็น null สำหรับ Lightning
observed_at / chain_time / finalized_attimestamp | nullเวลาพบครั้งแรกในระบบ เวลาบนเชนที่เชื่อถือได้หากมี และเวลาที่ผ่านความเป็นที่สุดตามนโยบายหากถึงแล้ว
explorer_name / explorer_urlstring | nullลิงก์อ้างอิง block explorer สาธารณะที่ตรวจสอบแล้ว ในเครือข่ายที่รองรับ

Merchant 5.13.3 ไม่นับการโอนเติมแก๊สภายในที่ตรวจสอบแล้วในยอดชำระของลูกค้า payment_info, API รายการชำระใบแจ้งหนี้ วงเงินคืนเงิน และอีเวนต์ payment.received ระเบียนเชน/คลังเงินของรายการเหล่านั้นยังใช้ทำบัญชีกระเป๋าได้ การโอนปกติและยอดชำระเกินจริงยังนับอยู่ เนื้อหา callback ที่ลงนามแล้วจะไม่ถูกเขียนใหม่ หากการชำระเสร็จสิ้นในอดีตอาศัยเงินเติมภายในแทนเงินลูกค้า การกระทบยอดจะส่ง invoice.invalid พร้อม reason_code internal_gas_funding_excluded ให้ตรวจสอบแทนการดำเนินการตามคำสั่งซื้อซ้ำ

Merchant 4.1.0 เพิ่ม payload_version 2 โดยไม่ย้ายหรือเปลี่ยนเก้าฟิลด์เดิม อีเวนต์ที่เข้าคิวไว้ก่อนยังคงเนื้อหาเดิมและอาจไม่มี payload_version ตอนนี้ event_id, event_type และ ID โปรเจกต์/ร้านค้าอยู่ในเนื้อหาที่ลงนามแล้ว ส่วนเฮดเดอร์อีเวนต์/การส่งยังไม่ได้ลงนาม

payment_info อธิบายการชำระเงินที่ตรวจพบ ไม่ใช่ทุกตัวเลือกบนหน้าชำระเงิน ก่อนตรวจพบ active_payment_method_id เป็น null และ methods ว่าง ข้อมูลที่ reorged/invalid อาจยังอยู่ใน methods แม้วิธีที่ใช้งานจะกลายเป็น null แล้ว ห้ามบวกจำนวนเงินต่างสินทรัพย์หรือต่างเครือข่ายเข้าด้วยกัน

จำนวนเงิน จำนวนเต็มหน่วยย่อย อัตรา และเปอร์เซ็นต์ทั้งหมดเป็นสตริง received_amount รวมเงินที่ถูกต้องซึ่งรอยืนยัน ส่วน confirmed_amount ผ่านนโยบายความเป็นที่สุดของวิธีนั้นแล้ว remaining_amount คือ max(minimum_payment_amount ลบ received_amount, 0); remaining_to_full_amount คือ max(expected_amount ลบ received_amount, 0) ตัวอย่าง: เรียกเก็บ 100 USDC รับ 99 ยอมรับส่วนต่าง 1% จะได้ remaining_amount 0 และ remaining_to_full_amount 1 แต่ยังต้องผ่านความเป็นที่สุด

quote คือการคำนวณใบแจ้งหนี้ที่ล็อกไว้ เป็นหน่วยสินทรัพย์ต่อหนึ่งหน่วยสกุลเงินใบแจ้งหนี้ บวกสเปรดก่อนปัดขึ้น ใช้ expected_amount_atomic เพื่อเทียบการชำระอย่างแม่นยำ อัตราที่แสดงอย่างเดียวอาจคำนวณผลปัดขึ้นซ้ำไม่ได้ ใบแจ้งหนี้เก่าที่ไม่ได้เก็บที่มาของแหล่งข้อมูลจะแสดงฟิลด์ source/reference/rounding เป็น null และ provenance_available เป็น false ไม่ใช้ข้อมูลวันนี้แสดงเป็นราคาในอดีต

market_rate_at_event เป็นข้อมูลแคชก่อนสเปรดเพื่อประกอบการพิจารณา ตรึงไว้เมื่อสร้างอีเวนต์ มีเวลาแหล่งข้อมูล ธง stale และตัวแทนค่าอ้างอิง เป็น null หากไม่มีคู่ข้อมูลแคชที่ใช้ได้ การแจ้งเตือนไม่รอคำขอราคาสด และข้อมูลตลาดนี้ไม่เปลี่ยนยอดที่ต้องชำระ โทเคนกำหนดเองแบบราคาคงที่ระบุ is_fixed ส่วนโทเคน DEX ใช้แหล่งเฉพาะโปรเจกต์ ไม่ใช่โทเคนที่มีสัญลักษณ์เดียวกัน

paid_chain, paid_asset, paid_payment_method_id และ settlement_exchange_rate ระดับบนสุด (4.1.2+) ระบุวิธีที่พิสูจน์แล้วว่าทำให้ชำระเสร็จสิ้นหลังจากเสร็จสิ้น ไม่ใช่ตัวเลือกหน้าชำระเงินที่เลือกหรือผลรวมของหลายวิธี ก่อนชำระเสร็จสิ้น หลังทำให้ไม่ถูกต้อง สำหรับการชำระเสร็จสิ้นเก่าที่ไม่มีภาพข้อมูล หรือการยอมรับด้วยตนเองที่ไม่มีเงินผ่านนโยบายความเป็นที่สุด ฟิลด์สรุปจะเป็น null สัญลักษณ์เป็นป้ายแสดงผล ให้ตาม ID วิธีเพื่อระบุเครือข่าย/สินทรัพย์/คอนแทรกต์ที่แน่นอน

Merchant 5.0.1 เพิ่ม paid_asset_amount และ paid_asset_amount_received เป็นสตริงทศนิยมที่แน่นอนในหน่วย paid_asset โดย payload_version ยังเป็น 2 ค่า paid_asset_amount คือราคาเต็มที่ล็อกไว้ รวมสเปรดและการปัดขึ้น ไม่ใช่เกณฑ์ส่วนต่างที่ยอมรับหรือยอดที่เหลือ paid_asset_amount_received คือยอดรับที่ถูกต้องทั้งหมดของวิธีที่ทำให้ชำระเสร็จสิ้น ณ เวลานั้น รวมเงินรอยืนยันและยอดขาดหรือเกินที่ยอมรับ ตัวอย่าง: เสนอราคา 100 USDC รับ 99 และยอมรับด้วยส่วนต่าง จะได้ 100 กับ 99 ไม่ใช่ 99 กับ 99 ทั้งคู่ตรึงตามภาพข้อมูลการชำระเสร็จสิ้น ใช้ payment_info.methods[].amounts เพื่อดูยอดรับในแต่ละอีเวนต์ หรือ API รายการชำระเงินเพื่อดูระเบียนปัจจุบัน ทั้งสองค่าเป็น null หากไม่มีภาพข้อมูลที่ผ่านเกณฑ์และสำหรับภาพข้อมูลก่อน 5.0.1 เนื้อหาอีเวนต์เก่าที่เข้าคิวไม่เปลี่ยน ห้ามแปลงสตริงทศนิยมที่แน่นอนเป็นเลขทศนิยมลอยตัวเพื่อทำบัญชี

settlement_exchange_rate คือข้อมูลตลาดจากแคชก่อนสเปรดที่บันทึกพร้อมการชำระเสร็จสิ้น ไม่ใช่ราคาใบแจ้งหนี้ที่ล็อกไว้หรือการซื้อขายในเอ็กซ์เชนจ์ที่ดำเนินการแล้ว มีรูปแบบเดียวกับ market_rate_at_event ค่า 1.17 asset_per_invoice_currency กับ EUR/USDC หมายถึง 1 EUR = 1.17 USDC เวลาแหล่งข้อมูลและธง stale/fixed/proxy บอกคุณภาพ หากไม่มีคู่ราคา อัตราจะเป็น null แต่วิธีที่พิสูจน์แล้วยังมีฟิลด์ paid_* ค่านี้ไม่เปลี่ยนยอดที่ต้องชำระและไม่รอเรียกผู้ให้บริการสด การชำระภายหลังด้วยวิธีเดิม การลองใหม่ และการส่งซ้ำไม่สามารถแทนภาพข้อมูลที่บันทึกไว้ รวมถึงอัตรา null ที่บันทึกไว้ การชำระเสร็จสิ้นใหม่จริงหรือการเปลี่ยนวิธีที่ทำให้เสร็จสิ้นจะบันทึกภาพข้อมูลใหม่ observed_at ระบุการบันทึกนั้น ส่วน settled_at อาจคงเวลาชำระเสร็จสิ้นครั้งแรก เนื้อหาอีเวนต์เก่าไม่เปลี่ยน

รวมวิธีที่ตรวจพบไม่เกินแปดวิธีและข้อมูลการชำระล่าสุดไม่เกินห้ารายการต่อวิธี พร้อมจำนวนรวมและธงการตัดรายการ ขีดจำกัดขนาด payload อาจลดอาร์เรย์เหล่านี้อีก ข้อมูลการชำระหนึ่งรายการคือ transfer/log/เอาต์พุต UTXO หนึ่งรายการ ไม่จำเป็นต้องเป็นแฮชธุรกรรมที่ไม่ซ้ำ ใช้ GET /v1/projects/YOUR_PROJECT_ID/invoices/{invoice_id}/payments พร้อม payment_method_id, limit และ offset เพื่อดูประวัติปัจจุบันทั้งหมด รายละเอียดใบแจ้งหนี้เก็บทุกวิธีที่เสนอราคาและ quote_details ของแต่ละวิธี ลิงก์ API ต้องใช้โฮสต์และข้อมูลรับรองที่คุณตั้งค่าไว้ ห้ามส่งต่อ bearer token ไปยัง URL ใดก็ได้ที่ callback ให้มา

Lightning ใช้ payment_hash แทน transaction_id ที่อยู่รับเงิน explorer และจำนวนการยืนยันที่ตรวจพบเป็น null จำนวน BTC ที่แน่นอนใช้ทศนิยม 11 ตำแหน่ง (millisatoshis) และส่วนต่างที่ยอมรับจริงเป็นศูนย์ ไม่รวม preimage การชำระ BOLT11 คีย์กระเป๋า ซีเคร็ตลงนาม หรือข้อมูลรับรองผู้ให้บริการ ฟิลด์ลูกค้า/metadata มีได้เฉพาะในการตอบกลับผู้ค้าและ callback ที่ลงนาม ห้ามอยู่ในหน้าชำระเงินสาธารณะ อย่าใส่ข้อมูลรับรองใน metadata

ประวัติการชำระเงินแบบแบ่งหน้า →

รับข้อมูลอย่างปลอดภัย

  1. ตรวจสอบเนื้อหาดิบทุกไบต์ด้วยซีเคร็ตที่ตรงกันก่อนแยกวิเคราะห์ ร้านค้า → IPN ให้ซีเคร็ต IPN รวมถึงการส่งไป ipn_url ที่กำหนดเอง แต่ละเอนด์พอยต์ใน ร้านค้า → Webhooks มีซีเคร็ตของตนเอง ทั้งสองไม่ใช่โทเคน API การหมุนเวียนตัวหนึ่งไม่หมุนเวียนตัวอื่น
  2. ตรวจสอบเวลาที่ลงนาม (ค่าเริ่มต้น SDK: คลาดได้ห้านาทีทั้งก่อนและหลัง) และจับคู่ ID โปรเจกต์/ร้านค้าที่ลงนามกับการตั้งค่าตัวรับเมื่อมีค่า บันทึกลงคิวแบบถาวรก่อนคืน HTTP 2xx สำหรับประมวลผลรายอีเวนต์ event_id ของ v2 มีลายเซ็น ID ในเฮดเดอร์เพียงอย่างเดียวป้องกัน replay ไม่ได้เพราะเฮดเดอร์เหล่านั้นไม่ได้ลงนาม สำหรับกล่องรับสถานะคำสั่งซื้อ ให้ตัดซ้ำด้วย invoice_id และ sequence และเทียบฟิลด์สถานะใบแจ้งหนี้เดิม ไม่ใช่เนื้อหา v2 ทั้งก้อน เพราะชนิด/ID อีเวนต์ต่างกันอาจมีรุ่นแก้ไขเดียวกัน
  3. ใน worker ให้ดึงใบแจ้งหนี้ปัจจุบันจาก API origin ที่คุณตั้งค่า ไม่ใช่ลิงก์ callback ใดก็ได้ ตรวจให้ตรงกับคำสั่งซื้อ โปรเจกต์/ร้านค้า จำนวนเงิน และสกุลเงินที่บันทึกไว้ กำหนดให้สถานะปัจจุบันเป็น settled และใช้นโยบายการยอมรับด้วยตนเองกับข้อยกเว้นของคุณ ล็อกคำสั่งซื้อและดำเนินการครั้งเดียวในธุรกรรมฐานข้อมูล แยกจากการตัดอีเวนต์ซ้ำ
  4. ห้ามนำ sequence เก่ามาทับใหม่ อีเวนต์ต่างกันอาจมีรุ่นแก้ไขเดียวกัน อย่าใช้การตัดซ้ำระดับรุ่นแก้ไขร่วมกับตัวกรองเฉพาะ invoice.settled การเปิดใหม่/กระทบยอดอาจเปลี่ยนสถานะ ใช้ sequence จัดลำดับการอัปเดต ไม่ใช่ลำดับอันดับสถานะแบบตายตัว บันทึกการย้อนกลับไว้ตรวจสอบแทนการดำเนินการซ้ำ

ตัวอย่างตัวรับ: PHP · Python · Node.js / TypeScript.

การตรวจสอบลายเซ็นและกฎการส่ง
import { createHmac, timingSafeEqual } from "node:crypto";

export function verifyWhollySignature(rawBody, header, signingSecret, toleranceSeconds = 300) {
  const match = /^t=(\d+),v1=([0-9a-f]{64})$/.exec(header || "");
  if (!match) return false;

  const timestamp = Number(match[1]);
  if (!Number.isSafeInteger(timestamp)) return false;
  const now = Math.floor(Date.now() / 1000);
  if (Math.abs(now - timestamp) > toleranceSeconds) return false;

  // rawBody must be the exact request Buffer, before JSON parsing.
  const expected = createHmac("sha256", signingSecret)
    .update(String(timestamp))
    .update(".")
    .update(rawBody)
    .digest();
  const presented = Buffer.from(match[2], "hex");
  return timingSafeEqual(expected, presented);
}
กฎการส่งรายละเอียด
เฮดเดอร์Wholly-Signature, Wholly-Event-Id และ Wholly-Delivery-Id; Content-Type เป็น application/json
ลายเซ็นHMAC-SHA256 ของ <unix timestamp>.<exact raw body>; รูปแบบเฮดเดอร์คือ t=<timestamp>,v1=<64 lowercase hex>
สำเร็จการตอบกลับ HTTP 2xx ใดก็ได้ ไม่ตามการเปลี่ยนเส้นทาง การตอบกลับที่ไม่ใช่ 2xx ถือว่าล้มเหลว
การหมดเวลารอหมดเวลารอเชื่อมต่อที่ 5 วินาที และหมดเวลารอคำขอรวมที่ 10 วินาที
กำหนดการลองใหม่พยายามได้สูงสุด 8 ครั้งสำหรับความล้มเหลวที่ลองใหม่ได้: ทันที แล้วเว้นระยะ 10s, 1m, 5m, 15m, 1h, 6h และ 24h หลังความพยายามก่อนหน้าจบ IPN ลองใหม่อัตโนมัติ ส่วน webhook ปิดการลองใหม่อัตโนมัติแยกตามเอนด์พอยต์ได้
ความปลอดภัยของปลายทางเฉพาะ HTTPS สาธารณะ ตรวจสอบ DNS ใหม่และตรึงปลายทางก่อนส่ง ปฏิเสธปลายทาง local/private/reserved
การเก็บรักษาเหตุการณ์กำหนดเก็บ payload เหตุการณ์แจ้งเตือนและข้อมูลการส่งเป็นเวลา 90 วัน รายละเอียดที่เก็บจะถูกล้างเป็นชุดจำกัดขนาด
การตัดรายการซ้ำบันทึก invoice_id และ sequence ที่ลงนามแบบถาวร โดยจำกัดขอบเขตตามโปรเจกต์ที่ตั้งค่า Wholly-Event-Id ระบุเหตุการณ์; Wholly-Delivery-Id ระบุระเบียนการส่ง (การลองใหม่ใช้ค่าเดิม การส่งซ้ำด้วยตนเองสร้างรายการใหม่) เฮดเดอร์ ID ทั้งสองไม่ได้ลงนาม
การตั้งชื่อเหตุการณ์เวอร์ชัน 2 ลงนาม event_id และ event_type ในเนื้อหา เหตุการณ์รุ่นเก่าที่เข้าคิวไว้ไม่มีทั้งสองค่า เหตุการณ์ต่างชนิดอาจใช้ sequence ของใบแจ้งหนี้เดียวกัน ให้กระทบยอดสถานะใบแจ้งหนี้ตามรุ่นแก้ไข หรือตัดเหตุการณ์ซ้ำด้วย event_id ที่ลงนาม
การหมุนเวียนซีเคร็ตการหมุนเวียนไม่มีช่วงใช้งานทับซ้อนหรือเฮดเดอร์เวอร์ชัน และเปลี่ยนลายเซ็นทันทีสำหรับรายการที่เข้าคิว ลองใหม่ และส่งด้วยตนเอง
การส่งที่พักไว้เครดิตประมวลผลไม่เพียงพอทำให้ IPN/webhook หยุดพัก รวมถึงการลองใหม่ เงินขาเข้ายังรับต่อ การแจ้งเตือนในคิวจะส่งต่อหลังเติมเครดิตภายในช่วงเก็บรักษา payload

ผู้ช่วย AI · MCP

เชื่อมต่อผู้ช่วยกับระบบผู้ค้าของคุณ

Merchant 5.0.0 มีเซิร์ฟเวอร์ MCP แบบเลือกเปิดใช้บนโดเมน API ที่คุณตั้งค่า ทำงานภายในระบบของคุณ ไม่ได้ผ่านรีเลย์ Wholly Crypto ที่ใช้ร่วมกัน

  1. เปิด การตั้งค่า → การเข้าถึง API สร้างข้อมูลรับรองเฉพาะ กำหนดเฉพาะโปรเจกต์ที่ผู้ช่วยต้องใช้ และเริ่มด้วยสิทธิ์อ่านอย่างเดียว สำหรับบัญชีที่ผู้ดำเนินระบบโฮสต์ให้ ผู้ดำเนินระบบต้องเปิดบริการ MCP ของระบบก่อน คุณจัดการได้เฉพาะข้อมูลรับรองและสิทธิ์ของตนเอง
  2. ใน การเชื่อมต่อ AI · MCP ให้เปิด MCP เลือกข้อมูลรับรอง และบันทึกสิทธิ์ MCP ข้อมูลรับรองเดิมไม่มีสิทธิ์ MCP จนกว่าจะเปิดอย่างชัดเจน
  3. คัดลอก URL เซิร์ฟเวอร์ MCP ไปยังการตั้งค่าเซิร์ฟเวอร์ HTTP ระยะไกลของไคลเอนต์ หากใช้ OAuth ให้เข้าสู่คอนโซลผู้ค้า ตรวจสอบชื่อไคลเอนต์และที่อยู่ส่งกลับ เลือกข้อมูลรับรองแล้วอนุมัติ การป้องกัน Basic Auth และ TOTP เดิมยังมีผล
  4. การสร้างใบแจ้งหนี้ต้องมีข้อมูลรับรองอ่าน/เขียน นโยบาย MCP แบบอ่านและสร้างใบแจ้งหนี้ ขอบเขต OAuth mcp:invoice:create และการอนุมัติอย่างชัดเจนเพิ่มเติม การเชื่อมต่อ OAuth จะไม่ได้สิทธิ์ในโปรเจกต์ที่เพิ่มให้ข้อมูลรับรองภายหลังการอนุมัติ
{
  "mcpServers": {
    "whollycrypto": {
      "url": "https://api.example.com/mcp"
    }
  }
}

คู่มือตั้งค่า MCP →

เครื่องมือการเข้าถึงจุดประสงค์
list_projectsอ่านโปรเจกต์ที่เปิดใช้และกำหนดให้การเชื่อมต่อ แบ่งหน้าด้วย limit/offset
list_storesอ่านร้านค้า ID และสถานะเปิดใช้ภายใน project_id แบ่งหน้าด้วย limit/offset
list_payment_methodsอ่านวิธีชำระเชน โทเคน และ Lightning ที่ตั้งค่าไว้สำหรับ project_id + store_id
get_wallet_balancesอ่านที่อยู่รับเงินและยอดคงเหลือจากแคช พร้อมฟิลด์ความใหม่/ความพร้อมใช้งาน ไม่มีความลับของกระเป๋าเด็ดขาด
list_invoicesอ่านใบแจ้งหนี้ของโปรเจกต์ กรองตามร้านค้า สถานะ หรือคำค้น แบ่งหน้าด้วย limit/offset
get_invoiceอ่านรายละเอียดใบแจ้งหนี้ทั้งหมดและลิงก์หน้าชำระเงินโดยใช้ project_id + invoice_id
get_delivery_historyอ่านสถานะ IPN/webhook ของร้านค้า ความพยายามส่ง และผล HTTP กรอง invoice_id/kind ได้ ไม่มีซีเคร็ตหรือเนื้อหา callback
convert_amountอ่านการแปลงอ้างอิงจากแคชโดยใช้ from, to และ amount แบบสตริงทศนิยม ไม่ใช่ราคาเสนอของใบแจ้งหนี้
create_invoiceการเขียนที่อนุมัติชัดเจนproject_id, store_id, idempotency_key และ invoice (เนื้อหาสร้างใบแจ้งหนี้เดิม) invoice.payment_methods กรองวิธีที่ร้านค้าเปิดใช้; 5.4.0+ จะละเว้นตัวเลือกที่ไม่ใช้งาน/ไม่ยอมรับ และกลับไปใช้ค่าเริ่มต้นร้านค้าหากไม่ตรงเลย การระบุเฉพาะเชนจะเลือกทุกสินทรัพย์ที่เปิดใช้และยอมรับ รองรับ asset_tickers ที่จำกัดตามเชนตั้งแต่ 5.3.0 คืนการตอบกลับใบแจ้งหนี้ปกติ
โปรโตคอล OAuth และความปลอดภัย

ใช้ Streamable HTTP ผ่าน HTTPS ตกลงเวอร์ชันโปรโตคอลที่ประกาศรองรับ และใส่ MCP-Protocol-Version ใน POST ถัดไป ส่ง Content-Type: application/json และ Accept: application/json, text/event-stream การตอบกลับเป็น JSON ที่มีจุดสิ้นสุด การเชื่อมต่อใหม่ไม่ต้องใช้ ID เซสชัน MCP

OAuth ใช้โทเคนเข้าถึงอายุสั้น (15 นาที) รหัส S256 PKCE ใช้ครั้งเดียว (5 นาที) และโทเคนรีเฟรชแบบหมุนเวียน (อายุการเชื่อมต่อ 30 วัน) การใช้โทเคนรีเฟรชที่ใช้แล้วซ้ำจะเพิกถอนการเชื่อมต่อนั้น ให้เชื่อมต่อใหม่หลังหมดอายุ หมุนเวียนข้อมูลรับรอง เปลี่ยนนโยบาย หรือเปลี่ยนโดเมน API หลัก

OAuth discovery เปิดสาธารณะเฉพาะเมื่อเปิด MCP พารามิเตอร์ resource ต้องตรงกับ URL หลักที่ discovery คืนมา รวม /mcp รองรับการลงทะเบียนแบบไดนามิก แต่ไม่รองรับเอกสาร metadata client-ID ระยะไกลและ client secret

สำหรับไคลเอนต์ที่รองรับเฮดเดอร์ Authorization กำหนดเอง สามารถใช้โทเคน API ผู้ค้าที่เปิด MCP เป็น Bearer แทนได้ โทเคนยังคงสิทธิ์ REST แยกของตนเอง แนะนำ OAuth สำหรับการเชื่อมต่อที่จำกัดเฉพาะ MCP ห้ามวางข้อมูลรับรองในแชต URL อาร์กิวเมนต์เครื่องมือ หรือระบบควบคุมซอร์ส

MCP ใช้โควตา REST ต่อนาทีและข้อจำกัด IP ต้นทางแบบตรงตัวร่วมกับข้อมูลรับรอง รวมถึงข้อจำกัด IP ของโฮสต์ API OAuth ไม่ข้ามรายการอนุญาต สำหรับไคลเอนต์ AI ระยะไกล ให้อนุญาต IP ขาออกตามเอกสารของไคลเอนต์ หรือเลือกปิดข้อจำกัดนี้อย่างตั้งใจ ไม่ควรใช้การทดสอบความปลอดภัยเว็บหรือแคชกับเส้นทาง MCP/OAuth

ข้อผิดพลาด HTTP: 401 ต้องยืนยันตัวตน, 403 ปฏิเสธ origin/IP/สิทธิ์, 404 หมายถึงปิด MCP หรือใช้โฮสต์ผิด, 405 หมายถึงให้ใช้ POST, 413 หมายถึงเกินเนื้อหา 32 KiB, 429 มี Retry-After ข้อผิดพลาด JSON-RPC ใช้ error.code ความล้มเหลวระดับเครื่องมือใช้ result.isError=true แม้ HTTP 200 ผลสำเร็จมี content และ structuredContent

รายการใช้ค่าเริ่มต้น 25 แถว สูงสุด 100; offset จำกัดที่ 1000000 การตอบเครื่องมือจำกัด 2 MiB สิทธิ์ คำขออนุมัติ และ bucket จำกัดอัตราที่หมดอายุจะถูกล้างอัตโนมัติ การตั้งค่าแสดงการเชื่อมต่อ OAuth ที่ใช้งานสูงสุด 100 รายการ

โปรเจกต์/ร้านค้าที่ปิดใช้ไม่สามารถดำเนินการผ่าน MCP การเชื่อมต่อแสดงสถานะเปิดใช้ของร้านค้าได้ แต่การอ่านวิธีชำระเงิน ประวัติการส่ง หรือสร้างใบแจ้งหนี้ต้องใช้ร้านค้าที่เปิดอยู่ ผู้ใช้โปรเจกต์ทั่วไปในคอนโซลจัดการ MCP ไม่ได้

ใช้ idempotency_key ใหม่สำหรับใบแจ้งหนี้ใหม่ หลังหมดเวลารอให้ลองใหม่ด้วยข้อมูลรับรอง คีย์ และออบเจ็กต์ invoice ที่เหมือนเดิม จำนวนทศนิยม สเปรด ส่วนต่างที่ยอมรับ การยืนยัน และรูปลักษณ์หน้าชำระเงินเป็นไปตามข้อกำหนด REST invoice MCP ไม่ข้ามนโยบายการชำระเงินหรือเครดิตของผู้ค้า

เครื่องมือชุดเริ่มต้นไม่สามารถเปิดเผยคีย์ส่วนตัว/วลีกู้คืน ส่งหรือรวบรวมเงิน คืนเงิน ส่ง callback ซ้ำ เปลี่ยนวิธีชำระเงิน แก้ไขบัญชี/โดเมน หรือจัดการการเรียกเก็บเงิน ให้ถือคำอธิบายใบแจ้งหนี้ ฟิลด์ลูกค้า และ metadata เป็นข้อมูลที่ไม่เชื่อถือ ไม่ใช่คำสั่งสำหรับเอเจนต์ ผู้ให้บริการ AI ที่เชื่อมต่อจะได้รับข้อมูลที่คุณอนุญาตให้อ่าน

เมธอดพาธข้อกำหนดการใช้งาน
POST/mcpJSON-RPC ที่ยืนยันตัวตน: initialize, ping, tools/list, tools/call คำขอแจ้งเตือนคืน 202 และปฏิเสธคำขอแบบชุด
GET / DELETE/mcp405 หลังยืนยันตัวตน: การตอบกลับ JSON มีจุดสิ้นสุด ไม่มีสตรีม SSE แยกและไม่มีเซสชัน MCP ฝั่งเซิร์ฟเวอร์
GET/.well-known/oauth-protected-resource/mcpURL ทรัพยากรหลักและการค้นพบเซิร์ฟเวอร์อนุมัติ มีให้ที่ /.well-known/oauth-protected-resource ด้วย
GET/.well-known/oauth-authorization-serverเอนด์พอยต์ OAuth, authorization_code/refresh_token, S256 PKCE และขอบเขตที่รองรับ
POST/mcp/oauth/registerการลงทะเบียน public client: client_name และ redirect_uris ที่ตรงทุกตัว เฉพาะ HTTPS หรือ loopback HTTP ไม่มี client secret หรือการดึง metadata ระยะไกล
GET/mcp/oauth/authorizeclient_id, redirect_uri, response_type=code, resource, code_challenge, code_challenge_method=S256 และ scope/state ที่ไม่บังคับ เปลี่ยนเส้นทางไปอนุมัติในคอนโซล
POST/mcp/oauth/tokenเข้ารหัสแบบฟอร์มด้วย authorization_code + code + code_verifier + redirect_uri หรือ refresh_token + refresh_token ใส่ client_id และ resource เสมอ
POST/mcp/oauth/revokeclient_id และ token ที่เข้ารหัสแบบฟอร์ม เพิกถอนการเชื่อมต่อโทเคนเข้าถึง/รีเฟรชที่ตรงกัน
ตัวอย่างคำขอเครื่องมือโดยตรง

เริ่มต้นและตกลงโปรโตคอลผ่านไคลเอนต์ MCP ก่อน ตัวอย่างนี้เป็นคำขอหลังจากนั้น

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/mcp" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'MCP-Protocol-Version: 2025-11-25' \
  --header 'Accept: application/json, text/event-stream' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "list_invoices",
    "arguments": {
      "project_id": "YOUR_PROJECT_ID",
      "limit": 10
    }
  }
}'

API ของ Operator

จัดเตรียมผู้ค้าที่โฮสต์ให้ด้วยคีย์ฝั่งเซิร์ฟเวอร์ที่แยกกันและจำกัดขอบเขต

โฮสต์หลายธุรกิจและตั้งค่าให้อัตโนมัติผ่าน api.example.com/v1/operator ใช้ได้ตั้งแต่ 7.4.0 เฉพาะโหมด Operator ส่วน Merchant API ปกติไม่เปลี่ยน

  1. เปิด Operator → การตั้งค่า → Operator API แล้วเปิดใช้งาน (ค่าเริ่มต้นปิด) สร้างข้อมูลรับรองแยกที่มีเฉพาะสิทธิ์และผู้ค้าที่โฮสต์ซึ่งจำเป็น
  2. เก็บคีย์ wc_operator_ บนเซิร์ฟเวอร์ของคุณ ใช้โฮสต์เนม API ไม่ใช่โฮสต์เนมแผง Operator หรือคีย์ผู้ค้า
  3. บันทึก Idempotency-Key และเนื้อหาคำขอที่แน่นอนแบบถาวรก่อน Operator POST ทุกครั้ง อ่านบัญชีกลับมาตรวจหลังผลลัพธ์ไม่แน่นอน ห้ามเปลี่ยนคีย์เพียงเพื่อลองใหม่
  4. สร้างผู้ค้าด้วย onboarding: direct พร้อมรหัสผ่าน หรือ onboarding: invitation โดยไม่ใส่รหัสผ่าน จากนั้นสร้างโปรเจกต์/ร้านค้าและออกคีย์ผู้ค้าที่จำกัดขอบเขตโปรเจกต์สำหรับการเชื่อมต่อหน้าชำระเงิน
ขอบเขตการเข้าถึง
merchants.read / merchants.writeแสดงรายการ/อ่าน และสร้าง/อัปเดตผู้ค้าที่โฮสต์
users.read / users.write / users.securityอ่าน/สร้าง/อัปเดตผู้ใช้ เปลี่ยนรหัสผ่านหรือเพิกถอนเซสชันแยกกัน ไม่สร้างผู้ดูแล Operator เด็ดขาด
invitations.read / invitations.writeแสดงรายการ/อ่าน สร้าง แทนที่ และเพิกถอนลิงก์เชิญ/รีเซ็ตแบบใช้ครั้งเดียว ผู้ใช้ใหม่ต้องมี users.write เพิ่มเติม และการรีเซ็ตต้องมี users.security
credits.read / credits.write / fees.writeอ่านยอดคงเหลือ/บัญชีแยกประเภท ให้หรือแก้ไขเครดิตภายใน ตั้งค่าธรรมเนียมสำหรับอนาคต เครดิตเริ่มต้นที่ไม่ใช่ศูนย์ต้องมี credits.write
topups.read / topups.writeอ่านหรือสร้างคำขอหน้าชำระเติมเครดิตของผู้ค้าที่โฮสต์ ไม่มีการทำงาน API ใดทำเครื่องหมายว่าชำระแล้วได้
projects.read / projects.write / reports.readจัดเตรียมโปรเจกต์ ร้านค้า รูปลักษณ์ และการตั้งค่าชำระเงินของผู้ค้า อ่านใบแจ้งหนี้ ยอดกระเป๋า และรายงานการเงิน
merchant_credentials.read / merchant_credentials.writeจัดการคีย์ผู้ค้าปกติที่จำกัดขอบเขต สิทธิ์นี้มีอำนาจมาก เพราะคีย์เหล่านั้นทำงานอย่างอิสระหลังออกให้
events.read / webhooks.write / audit.read / health.readอ่านประวัติวงจรสถานะ ตั้งค่า callback วงจรสถานะที่ลงนาม อ่านบันทึกตรวจสอบ/ความสามารถ/สถานะโหนด
การเริ่มใช้งาน เครดิต สิทธิ์ และการลองใหม่อย่างปลอดภัย
หัวข้อกฎ
ข้อมูลรับรองกำหนดวันหมดอายุและรายการอนุญาต IPv4/IPv6 แบบตรงตัวได้ ค่าเริ่มต้น 60 คำขอ/นาที ปรับได้ 1–600 ทุกคำขอตรวจสอบผู้ดูแลที่ออกคีย์และขอบเขตสิทธิ์ปัจจุบัน HTTP 429 มี Retry-After
การแยกขอบเขตคีย์เข้าถึงได้เฉพาะผู้ค้าที่โฮสต์ซึ่งกำหนดไว้ การสร้างผู้ค้าและดูรายงานทั้งระบบต้องมีสิทธิ์เข้าถึงผู้ค้าทั้งหมด ไม่รวมธุรกิจของผู้ดำเนินระบบเอง
เข้าสู่ระบบครั้งแรกบัญชีแบบตรงยอมรับว่าผู้โฮสต์เข้าถึงคีย์กระเป๋าได้ require_password_change เพิ่มการเปลี่ยนรหัสผ่านเมื่อเข้าสู่ระบบครั้งแรก การตอบรับคำเชิญต้องยอมรับการถือครองคีย์อย่างชัดเจน แล้วจึงเข้าสู่ระบบตามปกติ Basic Auth และ TOTP เดิมยังมีผล
คำเชิญลิงก์ผู้ใช้ใหม่มีอายุ 48 ชั่วโมง ลิงก์รีเซ็ตรหัสผ่านหนึ่งชั่วโมง โทเคนใช้ครั้งเดียว การออกใหม่เพิกถอนลิงก์เก่า SMTP ยอมรับไม่ได้รับประกันว่าจะถึงกล่องจดหมาย ให้ตรวจ email_delivery
การลองใหม่อย่างปลอดภัยOperator POST ทุกครั้งต้องมีคีย์ 16–128 อักขระ (ตัวอักษร ตัวเลข -, _ หรือ .) คีย์เดิมและ URL/เนื้อหาเดิมทุกไบต์จะคืนผลที่บันทึกไว้ หากไบต์ต่างกันจะคืน 409 การเรียกซ้ำไม่คืนซีเคร็ต/ลิงก์ หากจำเป็นให้หมุนเวียนหรือออกใหม่ผ่านการดำเนินการใหม่ที่ชัดเจน
ผลลัพธ์ที่ไม่แน่นอนoperator_request_in_progress หมายถึงงานกำลังทำหรือถูกขัดจังหวะก่อนบันทึกใบรับ ตรวจสอบทรัพยากรและบันทึกตรวจสอบ อย่าส่งด้วยคีย์ใหม่โดยไม่ตรวจดู ใบรับที่เสร็จแล้วจะย่อเก็บหลัง 30 วัน แต่คีย์เก่ายังนำมารันซ้ำไม่ได้
เครดิตและค่าธรรมเนียมสตริงทศนิยมไม่เกินหกตำแหน่ง starting_credit เป็นเครดิตภายในที่ให้ครั้งเดียว การปรับต้องมีจำนวนเงินพร้อมเครื่องหมาย note และ request_id รวมถึงคีย์ลองใหม่ HTTP ค่า fee_bps=100 หมายถึง 1% การแก้ไขมีผลกับใบแจ้งหนี้ในอนาคต การให้เครดิตไม่เติมยอดชำระล่วงหน้าของระบบติดตั้งเอง
การหยุดพักenabled=false ปิดบัญชีที่โฮสต์และเพิกถอนเซสชันคอนโซล payments_paused=true หยุดใบแจ้งหนี้ใหม่ การติดตามชำระเงินเดิมยังดำเนินต่อ การสร้างโปรเจกต์/ร้านค้าและระบบอัตโนมัติยังอยู่ภายใต้นโยบายเครดิตของระบบติดตั้ง
สิ่งที่ไม่เปิดให้ใช้ไม่มีความลับกระเป๋า การลงนาม ส่งเงิน คืนเงิน ลบถาวร รีเซ็ต TOTP เปลี่ยนโดเมน หรือการตั้งค่าระดับเซิร์ฟเวอร์ คำขอใบแจ้งหนี้ปกติยังใช้คีย์ผู้ค้าและ Merchant API

Webhook วงจรสถานะ Operator

เหตุการณ์ข้อมูล
merchant.created / merchant.updatedmerchant_id, enabled, payments_paused, fee_bps
user.created / user.updatedmerchant_id, user_id, enabled เหตุการณ์อัปเดตครอบคลุมการเปลี่ยนอีเมล สถานะเปิดใช้ และบทบาทผู้ดูแล
invitation.accepted / password_reset.completedmerchant_id, user_id, invitation_id
topup.settled / credit.balance_changedmerchant_id, ledger_id, kind, amount และ balance อ่านสกุลเครดิตของผู้ค้าหรือรายละเอียดบัญชีแยกประเภทเมื่อกระทบยอด

เหตุการณ์วงจรสถานะ Operator แยกจาก IPN ใบแจ้งหนี้/webhook ร้านค้า การสมัครรับเป็นของข้อมูลรับรอง Operator ที่สร้าง โดยมีได้ไม่เกิน 10 เอนด์พอยต์ต่อคีย์ เข้าคิวเฉพาะเหตุการณ์ใหม่ที่ตรงเงื่อนไข ใช้ GET /events เพื่อดูประวัติที่เก็บไว้

เนื้อหามี event_id, event_type, merchant_id, occurred_at และ data ตรวจ Wholly-Signature จากเนื้อหาดิบทุกไบต์ด้วย signing_secret ของเอนด์พอยต์ที่แสดงครั้งเดียว: HMAC-SHA256(secret, timestamp + '.' + raw_body), เฮดเดอร์ t=...,v1=.... บังคับช่วงคลาดเคลื่อนเวลาสั้น ๆ

ใช้ตัวตรวจลายเซ็นทั่วไปของ SDK ไม่ใช่ตัวแยกวิเคราะห์แจ้งเตือนใบแจ้งหนี้ จากนั้นตรวจ merchant_id และ event_type บันทึก/ตัดซ้ำ event_id ภายในธุรกรรม และคืน 2xx หลังรับบันทึกแบบถาวรแล้วเท่านั้น Wholly-Event-Id ต้องตรงกับเนื้อหาที่ลงนาม อย่าถือเฮดเดอร์ที่ไม่ได้ลงนามเป็นข้อมูลธุรกิจ

ส่งอย่างน้อยหนึ่งครั้ง อาจมาผิดลำดับ และพยายามได้สูงสุด 8 ครั้ง อ่านทรัพยากรปัจจุบันเพื่อกระทบยอด occurred_at ไม่ใช่ลำดับที่เพิ่มขึ้นเสมอ ตรวจขอบเขตและการตั้งค่าเปิดใช้/หมดอายุอีกครั้งก่อนส่ง การสมัครรับที่ปิดใช้จะพักงานในคิว แต่ไม่เพิ่มเหตุการณ์ใหม่เข้าคิวระหว่างปิด

เก็บเหตุการณ์และประวัติการส่ง 30 วัน นโยบายระบบอัตโนมัติของระบบติดตั้งอาจพักการส่ง GET /webhooks/{id}/deliveries แสดงผลและ payload ที่แก้ไขไม่ได้ API สาธารณะไม่บังคับส่งระเบียนที่หมดอายุ

{
  "event_id": "55555555-5555-4555-8555-555555555555",
  "event_type": "merchant.created",
  "merchant_id": "11111111-1111-4111-8111-111111111111",
  "occurred_at": "2026-10-01T12:00:00Z",
  "data": {
    "merchant_id": "11111111-1111-4111-8111-111111111111",
    "enabled": true,
    "payments_paused": false,
    "fee_bps": 300
  }
}

สร้างผู้ค้า → · ตอบรับคำเชิญ →

API ของ Marketplace

หน้าชำระเงินเดียว พร้อมส่วนแบ่งผู้ขายที่คุ้มครองและการจ่ายเงินที่ควบคุมได้

ใบแจ้งหนี้ลูกค้าหนึ่งใบ ส่วนแบ่งผู้ขายที่แน่นอน และการจ่ายสินทรัพย์เดิมแบบควบคุม เลือกเปิดแยกตามโปรเจกต์ เวอร์ชัน 8.0.0 รองรับ Bitcoin mainnet และเหรียญหลัก EVM / โทเคน ERC-20 มาตรฐานที่ตั้งค่าและรองรับ ไม่ใช่ทุกเครือข่ายรับเงิน

  1. เปิด Marketplace ในโปรเจกต์ เลือกร้านค้าที่เข้าร่วม และพักการจ่ายเงินไว้ระหว่างตั้งค่า
  2. ลงทะเบียนผู้ขายและตรวจสอบที่อยู่รับเงินของพวกเขาอย่างอิสระ การสร้างปลายทางอยู่ในสถานะรอ การอนุมัติต้องใช้ destinations.approve
  3. สร้างข้อมูลรับรอง Marketplace แยกใน การตั้งค่า → การเข้าถึง API ข้อมูลรับรอง Merchant, Operator และ MCP ปกติใช้เงิน Marketplace ไม่ได้
  4. สร้างใบแจ้งหนี้พร้อมการจัดสรร 1–100 รายการที่เป็นสตริงทศนิยมบวก และรวมกันเท่ากับจำนวนใบแจ้งหนี้พอดี ผู้ขายทุกคนต้องมีปลายทางที่อนุมัติบนเครือข่ายร่วมที่ร้านค้ารองรับ
  5. รอให้ยอดจัดสรรที่ตรวจสอบแล้วพร้อมใช้ เตรียมการจ่ายเงิน อ่านผู้รับและขีดจำกัดต้นทุนที่แก้ไขไม่ได้ แล้วอนุมัติ revision และ plan_hash ที่ตรงทุกตัว ตรวจสถานะการจ่ายเงินเป็นระยะหรือตรวจเหตุการณ์ที่ลงนาม
หัวข้อกฎ
การถือครองคีย์และเงินเงินลูกค้าเข้ากระเป๋าที่โปรเจกต์ควบคุมก่อน เจ้าของ Marketplace/เซิร์ฟเวอร์ควบคุมคีย์จนกว่าจ่ายผู้ขายแล้ว นี่ไม่ใช่การจ่ายตรงจากลูกค้าถึงผู้ขาย เอสโครว์ หรือระบบล็อกอินผู้ขาย
ผู้ขายสามรายใบแจ้งหนี้ 300 USD แบ่งสามส่วนรายละ 100 USD และค่าคอมมิชชัน 4% จะจัดสรรคริปโตตามราคาเสนอเทียบเท่า 96 USD ให้แต่ละผู้ขาย เก็บค่าคอมมิชชันรวมเทียบเท่า 12 USD แผนรับประกันจำนวนหน่วยย่อยคริปโต ไม่ใช่มูลค่าเงินตราทั่วไปในอนาคต
ค่าธรรมเนียมค่าประมวลผลเดิมใช้ครั้งเดียวกับจำนวน/สกุลเงินเดิมของใบแจ้งหนี้ที่ชำระเสร็จสิ้น หากตั้ง 1% จะใช้เครดิตชำระล่วงหน้า 3 USD เหลือค่าคอมมิชชันเทียบเท่า 9 USD ก่อนค่าธรรมเนียมเชน การจ่ายผู้ขายไม่สร้างค่าธรรมเนียมการขายลูกค้าเพิ่ม
การจัดสรรการจัดสรรแบบเศษมากที่สุดรักษาทุกหน่วยย่อย ค่าคอมมิชชันปัดลง ยอดสุทธิผู้ขายคือส่วนที่เหลือ เก็บภาพข้อมูลค่า override ของการจัดสรร ใบแจ้งหนี้ ผู้ขาย และค่าเริ่มต้นร้านค้า/โปรเจกต์ ไม่ใช้อัตราแลกเปลี่ยนใหม่ตอนจ่ายเงิน
เงินที่คุ้มครองการส่ง รวบรวมเงิน ฝากศูนย์ซื้อขาย และเติมเครดิตอัตโนมัติแบบปกติไม่ใช้ที่อยู่รับเงิน Marketplace ค่าธรรมเนียมเครือข่ายและแก๊สโทเคนต้องมีเหรียญหลักที่ว่างแยกต่างหาก มูลค่ากระเป๋าจากแคชใช้ประกอบการพิจารณา ตรวจสอบเงินรองรับสดจากแหล่งอิสระก่อนลงนาม
ความเป็นที่สุดหลักฐานการจ่าย Marketplace ต้องมีขั้นต่ำการยืนยันของเชนมากกว่าศูนย์และผู้ให้บริการอิสระที่เข้ากันได้สองราย แม้หน้าชำระเงินยอมรับศูนย์การยืนยันหรือสแกนเนอร์เดียว ช่วงพักผู้ให้บริการเลื่อนการตรวจชำระ/จ่ายเงิน ไม่ได้ขัดขวางการสร้างใบแจ้งหนี้ที่ถูกต้องในด้านอื่น
ข้อยกเว้นยอดชำระขาดที่หน้าชำระเงินปกติยอมรับตามส่วนต่างจะถูกระงับ ไม่จัดสรรเกินเงิน การปล่อยโดยสิทธิ์พิเศษอาจอนุมัติส่วนแบ่งที่เล็กลงอย่างแน่นอนและมีเงินรองรับครบ การชำระเกินเพียงอย่างเดียวไม่ขัดขวางส่วนแบ่งผู้ขายตามราคาเสนอใน BTC หรือวิธี EVM เหรียญหลัก/ERC-20 ที่รองรับ ยอดเกินถูกระงับแยก Bitcoin คืนเงินทอนที่คุ้มครองไปยังที่อยู่ใบแจ้งหนี้ เงินโปรเจกต์แยกใช้จ่ายค่าธรรมเนียมและเติมให้ถึงขั้นต่ำ dust หากจำเป็น วิธีผสม การชำระล่าช้า/กำกวม/ถูกจัดเชนใหม่ และเงินรองรับที่ขาดต้องตรวจสอบ
การคืนเงินเตรียมคืนเงินเต็มจำนวนในสินทรัพย์เดิมจากวิธีรับเงินที่ยืนยันและไม่กำกวมหนึ่งวิธี จากนั้นอนุมัติแยกเป็นการจ่ายเงิน ยอดจัดสรรที่ยังไม่จ่ายและค่าคอมมิชชันจะถูกกลับรายการ เมื่อจ่ายผู้ขายทุกคนแล้ว ต้องเติมที่อยู่กระเป๋าหลักแยก ไม่มีการดึงเงินกลับ การจ่ายผู้ขายบางส่วนและการคืนหลายสินทรัพย์ต้องกระทบยอดก่อน เวอร์ชัน 8.0.0 ไม่เปิดให้คืนบางจำนวนหรือถอนค่าคอมมิชชัน
การลองใหม่ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
รุ่นแก้ไขระเบียนที่แก้ไขได้ต้องใช้ revision ปัจจุบัน การอนุมัติ/ดำเนินต่อยังต้องมี expected_plan_hash และ confirm:true การเตรียมสำรองเงิน 15 นาที การอนุมัติให้เวลาหนึ่งชั่วโมง งานหมดอายุที่ยังไม่ลงนามปล่อยเงินอย่างปลอดภัย การโอนที่ลงนามแล้ว/ไม่แน่นอนยังเก็บตัวระบุและยอดสำรอง
การจ่ายเงินอัตโนมัติปิดตามค่าเริ่มต้น นโยบายรายสินทรัพย์อนุมัติปลายทางที่อนุมัติแล้ว ขั้นต่ำบวก ขีดจำกัดเงินต้นต่อการจ่าย/ช่วง 24 ชั่วโมงย้อนหลังต่อเนื่อง และค่าธรรมเนียมเหรียญหลัก/แก๊ส พร้อมช่วงเวลาและการยืนยัน การเปลี่ยน/เพิกถอนอำนาจหยุดงานที่ยังไม่ส่ง แต่การติดตามต่อ ขีดจำกัดรวมแผนที่สำรองและไม่แน่นอน นโยบายที่พักเพราะการเรียกเก็บเงินจะจัดตารางใหม่อย่างเป็นธรรม ใบแจ้งหนี้ไม่ถูกต้องถูกระงับเพื่อตรวจสอบโดยไม่ขวางกลุ่มใบแจ้งหนี้อื่นที่มีสิทธิ์
การพักและกู้คืนเครดิตต่ำและกลไกความปลอดภัยการโอนยังพักการใช้เงิน การติดตามและกระทบยอดบัญชียังดำเนินต่อ การดำเนินต่อเป็นการตรวจแผนเดิมที่เก็บไว้ การ revert ของ EVM บนเชนหลักที่ยอมรับซึ่งผู้ให้บริการอิสระสองรายพิสูจน์แล้ว สามารถแทนที่หลังอนุมัติชัดเจนภายในงบค่าธรรมเนียมที่เหลือ โดยยังบันทึกแฮชและค่าธรรมเนียมเดิม ผลไม่ทราบแน่หรือยอดโทเคนส่งถึงไม่ตรงยังถูกระงับ สำรองฐานข้อมูลและคีย์ทั้งหมด หลังคืนค่าต้องกระทบยอดแฮชที่ส่งแล้วก่อนอนุญาตจ่ายเงิน
ตัวระบุและการแบ่งหน้าใช้ UUID โปรเจกต์จากการตั้งค่าโปรเจกต์ และ UUID ร้านค้าจาก ร้านค้า → พื้นฐาน → API IDs โดย API นี้คืน ID ผู้ขาย/การจ่าย/สินทรัพย์ invoice_id คือ UUID สาธารณะของใบแจ้งหนี้ ทรัพยากรแบ่งหน้าคืน data และ pagination {page,per_page,total,pages}; ค่าเริ่มต้น 1/25 สูงสุด 100 แถว ค่าจำนวนเงินที่แน่นอนเป็นสตริง
ขอบเขตข้อมูลรับรองคีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

สิทธิ์ Marketplace

marketplace.read · vendors.write · destinations.write · destinations.approve · invoices.write · policies.write · commissions.override · payouts.write · payouts.approve · webhooks.write · reconciliation.write

สถานะการจัดสรร

pending · held · available · reserved · paid · refunding · refunded · shortfall

สถานะการจ่ายเงิน

awaiting_approval · queued · funding_gas · sending · confirming · partially_paid · paid · needs_attention · cancelled · expired

อีเวนต์ Marketplace

ใช้ซีเคร็ตลงนาม Marketplace แยก โดยใช้เฮดเดอร์ลายเซ็น Wholly และอัลกอริทึม HMAC ตรวจเนื้อหาดิบเดียวกับ callback ใบแจ้งหนี้ ตรวจเวลา/ลายเซ็น ตัด event_id ซ้ำ และคืน 2xx โดยเร็ว ส่งอย่างน้อยหนึ่งครั้ง พยายามสูงสุดแปดครั้ง ประวัติส่งเหตุการณ์เดิมซ้ำได้ การแก้เอนด์พอยต์ยกเลิกรายการเก่าที่ยังไม่ส่งแทนการเปลี่ยนปลายทางข้อมูลลูกค้า การชำระเสร็จสิ้นของใบแจ้งหนี้ไม่ใช่การจ่ายผู้ขายเสร็จ ห้ามส่งเงินเพียงเพราะ callback ภายนอกสั่ง

  • marketplace.invoice.created
  • marketplace.allocations.available
  • marketplace.allocations.held
  • marketplace.payout.approved
  • marketplace.payout.broadcast
  • marketplace.payout.confirmed
  • marketplace.payout.partial
  • marketplace.payout.failed
  • marketplace.payout.cancelled
  • marketplace.refund.prepared
  • marketplace.refund.confirmed
{
  "event_id": "11111111-1111-4111-8111-111111111111",
  "event_type": "marketplace.payout.confirmed",
  "payload_version": 1,
  "project_id": "YOUR_PROJECT_ID",
  "occurred_at": "2026-10-06T12:00:00Z",
  "data": {
    "payout_id": "YOUR_PAYOUT_ID",
    "asset_id": "YOUR_ASSET_ID",
    "amount_atomic": "28800000",
    "transactions": [
      {
        "transaction_id": "EXAMPLE_TRANSACTION_ID",
        "explorer_url": "https://mempool.space/tx/EXAMPLE_TRANSACTION_ID"
      }
    ]
  }
}

ตั้งค่าการชำระเงินสำหรับผู้ขายหลายราย · สร้างใบแจ้งหนี้ Marketplace

ข้อผิดพลาดและขีดจำกัด

จัดการการตรวจสอบ โควตา และการลองใหม่อย่างคาดการณ์ได้

ตรวจสถานะ HTTP และ Content-Type ก่อนแยกวิเคราะห์การตอบกลับ สำหรับ 429ให้รออย่างน้อยตาม Retry-After ระยะเวลาก่อนลองใหม่

ขีดจำกัดรายละเอียด
อัตราคำขอโควตาต่อข้อมูลรับรอง: ค่าเริ่มต้น 120 คำขอต่อนาที UTC ตั้งได้ 1 ถึง 6000 ใน การตั้งค่า → API การอ่านและเขียน v1 ที่ยืนยันตัวตนทั้งหมด รวมการลองใหม่แบบ idempotent และความล้มเหลวของสิทธิ์/การตรวจสอบหลังยืนยันตัวตน ใช้โควตาร่วมข้ามโดเมน โปรเจกต์ และโปรเซส ข้อมูลรับรองไม่ถูกต้อง เส้นทางคอนโซล และหน้าชำระเงินสาธารณะไม่ใช้โควตานี้
เฮดเดอร์จำกัดอัตราการตอบกลับ v1 ที่ยืนยันตัวตนมี X-RateLimit-Limit, X-RateLimit-Remaining และ X-RateLimit-Reset (วินาที Unix ณ ขอบนาที UTC ถัดไป) คำขอเกินคืน JSON 429 rate_limit_exceeded และ Retry-After เป็นวินาทีจำนวนเต็ม รออย่างน้อยตามนั้นและสุ่มระยะเพิ่มก่อนลองใหม่ ช่วงเวลาคงที่ยอมให้ส่งเป็นชุดมากที่ขอบนาที นี่ไม่ใช่การรับประกันคำขอต่อวินาที
เนื้อหาคำขอ Merchantสูงสุด 32 KiB ที่เราเตอร์แอปพลิเคชัน ระบบขอบเครือข่ายอาจปฏิเสธคำขอใหญ่เกินก่อนสร้างโครงข้อผิดพลาด JSON
รายการใบแจ้งหนี้limit มีค่าเริ่มต้น 50 และรับ 1–100; offset รับ 0–1,000,000 คำค้นยาวไม่เกิน 100 อักขระ ผลเรียงใหม่สุดก่อนและมี metadata total/has_more
วิธีชำระของร้านค้าเลือกสินทรัพย์ได้ไม่เกิน 64 รายการต่อร้านค้า เพียงพอสำหรับเหรียญหลักทั้ง 30 เชนและแค็ตตาล็อกโทเคนที่ตรวจสอบแล้วซึ่งมีขีดจำกัด นโยบายโปรเจกต์ ความสามารถสแกนเนอร์ และกระเป๋าเชนที่พร้อมและสำรองแล้ว ยังคงเป็นเงื่อนไขการสร้างใบแจ้งหนี้
การค้นพบโทเคนจำนวนโทเคนผู้สมัครมีค่าเริ่มต้น 50 และรับ 1–100 ผลการค้นพบยังไม่เป็นสินทรัพย์รับชำระจนกว่าตรวจสอบบนเชนสำเร็จ
โทเคนโปรเจกต์ที่ลงทะเบียนแล้วมีสินทรัพย์โทเคนถาวรได้ไม่เกิน 20 รายการต่อโปรเจกต์ สินทรัพย์ที่ลงทะเบียนแล้วใช้ซ้ำได้โดยไม่กินช่องเพิ่ม
การทำซ้ำโดยไม่เกิดผลซ้ำจำเป็นสำหรับสร้างใบแจ้งหนี้ ใช้ ASCII ที่มองเห็นได้ 1–128 อักขระโดยไม่มีช่องว่าง คีย์ไม่ซ้ำภายในแต่ละร้านค้า และการเรียกซ้ำต้องใช้ข้อมูลรับรองเดิมกับเนื้อหาดิบเดิมทุกไบต์
Metadataเฉพาะออบเจ็กต์ JSON ขนาดเข้ารหัสสูงสุด 4,096 ไบต์และซ้อนกันได้ห้าระดับ
CallbackURL HTTPS สาธารณะยาวไม่เกิน 2,048 ไบต์ เนื้อหาคำขอแจ้งเตือนจำกัด 256 KiB ส่วน payload เหตุการณ์ใบแจ้งหนี้ที่เก็บไว้จำกัด 64 KiB พร้อมประวัติการชำระเงินจำกัดจำนวน
ไฟล์ประกอบหน้าชำระเงินการตอบกลับ QR SVG เป็น private และ no-store เพราะการชำระขาดเปลี่ยนยอดที่เหลืออย่างแน่นอน โลโก้ PNG ตามรุ่นแก้ไขแคชสาธารณะได้หนึ่งปีและแก้ไขไม่ได้
ระบบขอบเครือข่าย APIคำขอ upstream ของ API ที่จัดการไว้มีเวลารออ่าน 30 วินาที ออกแบบผู้เรียกให้กำหนดเวลารอที่สั้นกว่างบเวลาของงานอย่างชัดเจน
ความล้มเหลวที่ไม่ใช่ JSONการแยก UUID/query ที่ผิดรูปแบบ เมธอดผิด และตัวตรวจความยาว 32 KiB อาจคืนข้อความจากเฟรมเวิร์กหรือการตอบกลับว่าง ปัจจุบันพาธ /v1 ที่ไม่รู้จักคืน 404 พร้อม HTML คอนโซล ตรวจสถานะและ Content-Type ก่อนแยกวิเคราะห์

อ้างอิงข้อผิดพลาด

HTTPรหัสข้อผิดพลาดความหมาย
400invalid_reconciliation_actionตัวกรองสถานะข้อยกเว้น เหตุผล คำค้น หรือหน้าประวัติไม่ถูกต้อง
500reconciliation_unavailableโหลดคิวข้อยกเว้นหรือหลักฐานไม่ได้ ลองอ่านใหม่โดยเว้นระยะเพิ่มขึ้น
402billing_requiredทุกใบแจ้งหนี้ใหม่ต้องมีบัญชีเครดิตที่จับคู่และตรวจสอบแล้วพร้อมการอนุมัติสด เครดิตชำระล่วงหน้าไม่เพียงพอไม่ขัดขวางการสร้างหรือรับเงิน แต่พัก IPN, webhook และ Sweep แทน ขณะที่ค่าธรรมเนียมยังสะสม การสร้างยังถูกบล็อกสำหรับบัญชีระงับ การตรวจสอบการเรียกเก็บเงินหมดอายุ/ไม่ถูกต้อง บริการเครดิตเข้าถึงไม่ได้ หรือฐานเงินตราทั่วไปของใบแจ้งหนี้ไม่ได้รับอนุญาต ค่าธรรมเนียมใช้จำนวนเงินตราทั่วไปเดิมของใบแจ้งหนี้ ไม่ใช่คริปโตที่รับ สเปรด ยอดเกิน หรือค่าธรรมเนียมเครือข่าย จำนวนดังกล่าวและการแปลงอย่างอิสระถูกลงทะเบียนก่อนสร้างหน้าชำระเงิน การติดตามเดิมและดึงใบแจ้งหนี้ยังดำเนินต่อระหว่างบริการล่ม หลังเติมเครดิต การแจ้งเตือนในคิวส่งต่อภายในช่วงเก็บ payload ปกติ และกฎรวบรวมเงินที่เปิดไว้กลับมาทำงาน ตรวจ การตั้งค่า → ค่าธรรมเนียม และลองสร้างที่ล้มเหลวใหม่ด้วย Idempotency-Key เดิม
400invalid_jsonJSON ผิดรูปแบบ ฟิลด์ไม่รู้จัก หรือเนื้อหาไม่ตรงคำขอในเอกสาร
400idempotency_key_requiredคำขอสร้างใบแจ้งหนี้ไม่ได้ใส่ Idempotency-Key
400invalid_idempotency_keyคีย์ว่าง เกิน 128 ไบต์ ไม่ใช่ ASCII มีช่องว่าง หรือมีไบต์ควบคุม
400invalid_payment_requestฟิลด์ที่ตรวจสอบหรือวิธีที่เลือกและใช้งานอยู่ไม่ผ่าน อ่าน error.message และ error.details.payment_methods (PaymentMethodIssue[]) เพื่อดูสาเหตุที่ขัดขวางอย่างชัดเจน SDK 2.4.0+ เพิ่มสรุปข้อยกเว้นที่ปลอดภัยและนำไปแก้ได้ พร้อมตัวช่วย issue ส่วน PHP SDK รุ่นเก่าให้ getApiMessage()
400invalid_invoice_statusสถานะสำหรับแสดงรายการอยู่นอกหกสถานะใบแจ้งหนี้ในเอกสาร
400invalid_callback_urlปลายทาง IPN ที่มีผลไม่ผ่านการตรวจ HTTPS ที่อยู่สาธารณะ DNS หรือ SSRF
400invalid_wallet_requestข้อมูลเตรียมกระเป๋า/ที่อยู่ไม่ถูกต้อง
400invalid_token_assetเชนโทเคน คำค้นผู้สมัคร ตัวระบุ CoinGecko, metadata แค็ตตาล็อก หรือข้อมูลคอนแทรกต์/mint ไม่ถูกต้อง
401authentication_requiredไม่มี bearer token หรือรูปแบบผิด ปิดใช้ หมุนเวียนแล้ว หรือไม่รู้จัก
403source_ip_deniedข้อจำกัด IP ของข้อมูลรับรองไม่รวมที่อยู่ต้นทางสาธารณะตรงตัวของคำขอ
403source_ip_not_allowedข้อจำกัด IP ต้นทางของโฮสต์เนมไม่รวมไคลเอนต์นี้ ผู้ดูแลจัดการรายการอนุญาตของโฮสต์ที่ใช้งานได้ใน การตั้งค่า → ระบบ ซึ่งใช้เพิ่มเติมจากข้อจำกัด IP ของข้อมูลรับรอง
503source_access_unavailableการตรวจสิทธิ์เข้าถึงโฮสต์เนมไม่พร้อมชั่วคราว ลองภายหลัง หากตรวจไม่ได้จะปฏิเสธการเข้าถึง
403 / 409 / 500merchant_api_access_deniedการอนุมัติล้มเหลว: สิทธิ์/ขอบเขตโปรเจกต์อาจเป็น 403 โปรเจกต์/ร้านค้าที่ปิดอาจเป็น 409 และแบ็กเอนด์อนุมัติล้มเหลวอาจเป็น 500 กระเป๋ารับเงิน Operator สงวนให้แผง Operator ไม่ใช่ข้อมูลรับรอง API ผู้ค้าหรือ MCP แม้มีสิทธิ์โปรเจกต์ที่เคยให้ชัดเจนในรุ่นเก่า
403project_access_deniedการตรวจซ้ำขณะสร้างภายในธุรกรรมพบว่าข้อมูลรับรองไม่มีสิทธิ์เข้าถึงโปรเจกต์แล้ว
404invoice_not_foundไม่มีใบแจ้งหนี้ ID สาธารณะนั้นในโปรเจกต์ที่ได้รับอนุญาต หรือหน้าชำระเงินเปิดเผยไม่ได้
404payment_resource_not_foundโปรเจกต์ ร้านค้า สินทรัพย์ หรือกระเป๋าที่ต้องใช้เตรียมใบแจ้งหนี้ไม่มีอยู่แล้ว
404token_candidate_not_foundโปรเจกต์ไม่พร้อม หรือโทเคนไม่มีในแค็ตตาล็อกค้นพบที่ตรงกันปัจจุบันแล้ว
409idempotency_conflictคีย์ในขอบเขตร้านค้ามีอยู่แล้ว และข้อมูลรับรองหรือไบต์เนื้อหาดิบของคำขอต่างจากเดิม
409store_unavailableโปรเจกต์/ร้านค้าปิดใช้หรือไม่พร้อมใช้งาน
409no_ready_payment_methodsไม่มีวิธีของร้านค้าที่พร้อม อ่าน error.message และ error.details.payment_methods เพื่อดู chain_slug, asset_ticker และ reason_code การสำรอง/เปิดกระเป๋า อะแดปเตอร์ที่ติดตั้ง และราคาต้องถูกต้อง ตั้งแต่ 6.0.6 ช่วงพักสแกนเนอร์ ผลตรวจสุขภาพที่ล้มเหลวหรือเก่า และผู้ให้บริการไม่ครบองค์ประชุมไม่ขัดขวางการสร้าง
409payment_method_unavailableวิธีที่เลือกไม่พร้อมใช้งานระหว่างตรวจซ้ำแบบอะตอมมิกขณะสร้าง
409store_payment_method_not_selectedขอ override การยืนยันของร้านค้าสำหรับสินทรัพย์ที่ร้านค้านั้นยังไม่ได้เลือกอยู่
409wallet_unavailableกระเป๋ารับชำระไม่พร้อมใช้งานระหว่างตรวจซ้ำแบบอะตอมมิกขณะสร้าง
409ipn_secret_requiredมี IPN URL ที่มีผล แต่ร้านค้าไม่มีซีเคร็ตลงนาม IPN
409payment_resource_not_readyสินทรัพย์รับชำระหรือกระเป๋าที่จำเป็นปิดใช้ ยังไม่สำรอง รอหลักฐานเปิดบัญชีร่วม ใช้ความจุหมด หรือยังไม่พร้อมด้วยเหตุอื่น
409account_activation_unverifiedพิสูจน์การเปิดบัญชี XRP Ledger หรือ Stellar กับเอนด์พอยต์ mainnet ที่ทำงานปกติตามจำนวนที่ตั้งไว้ไม่ได้ (ค่าเริ่มต้น 2 เลือก 1 ได้) เติมเงินเข้าบัญชีที่ตรงกันแล้วลองตรวจสอบใหม่
400invalid_monero_wallet_rpcเอนด์พอยต์ HTTPS ที่อยู่หลัก mainnet แบบตรงตัว ป้ายชื่อ หรือข้อมูลยืนยันตัวตน Digest/Basic/header ที่ครบถ้วนไม่ถูกต้อง
404monero_wallet_rpc_not_foundไม่มีการผูก Monero wallet-RPC ในขอบเขตโปรเจกต์
409monero_wallet_rpc_not_readyสินทรัพย์ Monero องค์ประชุมสอง daemon การผูกที่แก้ไขไม่ได้ หรือคำรับรองการสำรอง/ดูอย่างเดียวอย่างชัดเจนยังไม่พร้อม
409monero_wallet_rpc_unavailableการสร้างใบแจ้งหนี้ต้องมีการผูก Monero wallet-RPC ของโปรเจกต์ที่เปิดใช้ ตรวจสอบและรับรองแล้ว พร้อมข้อมูลรับรองฝั่งเซิร์ฟเวอร์ที่ถูกต้อง
503lightning_unavailableวิธีเดียวที่ร้านค้าพร้อมคือ Lightning แต่ตรวจสอบกระเป๋าหรือราคาไม่ได้ ลองใหม่ด้วย idempotency key เดิม หากมีวิธีบนเชนอื่นที่พร้อม จะละเว้น Lightning ที่ไม่พร้อมแทน
422monero_wallet_rpc_verification_failedการตรวจสอบกระเป๋าที่ตรงตัว การตรึง HTTPS การซิงก์ องค์ประชุม daemon mainnet หรือหลักฐานเกตเวย์ปฏิเสธเมธอดล้มเหลว
503monero_wallet_rpc_failedwallet-RPC ภายนอกแบบ watch-only ไม่สามารถสร้างและอ่าน subaddress ใบแจ้งหนี้ซ้ำอย่างปลอดภัย ไม่สร้างที่อยู่สำรองขึ้นเอง
409token_chain_not_readyสินทรัพย์เหรียญหลักของเชนปิดใช้ การจับคู่การค้นพบเปลี่ยนระหว่างตรวจสอบ หรือโปรเจกต์มีสินทรัพย์โทเคนลงทะเบียนถึงสูงสุดปัจจุบัน 20 รายการแล้ว
503dex_price_unavailableผู้ให้บริการ DEX ไม่พร้อม ไม่ว่าง จำกัดอัตรา ตอบข้อมูลเก่า หรือข้อมูลผิดรูปแบบ ลองใหม่หลังหนึ่งนาที ราคาคงที่ยังใช้ได้
422invalid_dex_priceชุดโหมดราคาไม่ถูกต้อง หรือพูลที่เลือกให้ราคาที่ผ่านเกณฑ์สำหรับคอนแทรกต์ตรงตัวไม่ได้ เลือกพูลอื่นหรือราคาคงที่ USD
422token_verification_failedโหนดที่มีสิทธิ์ทั้งหมดไม่ผ่านการตรวจตัวตนเชน โค้ดคอนแทรกต์ ทศนิยม การค้นยอด หรือ mint
422invalid_store_confirmation_policyoverride ของร้านค้าใช้กับโหมดความเป็นที่สุดนี้ไม่ได้ อยู่นอกขอบเขตที่คืนมาตามเชน หรือขอยอมรับศูนย์การยืนยันที่ไม่รองรับ
409invoice_not_payableใบแจ้งหนี้บนหน้าชำระเงินอยู่ในสถานะสิ้นสุดหรือพ้นกำหนดชำระแล้ว
409invoice_payment_method_lockedการชำระที่ถูกต้องเลือกสินทรัพย์อื่นไว้แล้ว ให้ดำเนินต่อด้วย active_payment_method_id
409payment_method_not_payableวิธีที่เลือกเสร็จแล้วหรือไม่รับการชำระเพิ่มอีก
422payment_qr_unavailableคำขอชำระเงินใหญ่เกินกว่าจะเข้ารหัสเป็นรูป QR SVG
503payment_rates_unavailableไม่มีราคาเสนอใหม่ที่เชื่อถือได้สำหรับวิธีชำระเงินที่พร้อมใดเลย
500authentication_unavailableการยืนยันตัวตน bearer ไม่สามารถอ่านหรือตรวจสอบข้อมูลรับรองที่เก็บไว้อย่างปลอดภัย
429rate_limit_exceededข้อมูลรับรองนี้ใช้โควตานาที UTC ปัจจุบันหมดแล้ว รออย่างน้อย Retry-After วินาที และลองสร้างใบแจ้งหนี้ใหม่ด้วย idempotency key เดิม
500database_error / internal_errorความล้มเหลวชั่วคราวฝั่งเซิร์ฟเวอร์ ลองใหม่อย่างปลอดภัยด้วย idempotency key เดิม

ภาพรวม API

เลือกเอนด์พอยต์เพื่อดูฟิลด์ ตัวอย่าง และการตอบกลับ

ใบแจ้งหนี้

POSTสร้างใบแจ้งหนี้/v1/projects/{project_id}/stores/{store_id}/invoicesGETแสดงรายการใบแจ้งหนี้/v1/projects/{project_id}/invoicesGETดึงข้อมูลใบแจ้งหนี้/v1/projects/{project_id}/invoices/{invoice_id}GETแสดงรายการชำระเงินของใบแจ้งหนี้/v1/projects/{project_id}/invoices/{invoice_id}/payments

วิธีชำระเงิน

GETแสดงรายการสินทรัพย์รับชำระของโปรเจกต์/v1/projects/{project_id}/payment-assetsPUTอัปเดตนโยบายสินทรัพย์ของโปรเจกต์/v1/projects/{project_id}/payment-assets/{asset_id}GETเรียกดูโทเคนที่อาจใช้รับชำระได้/v1/projects/{project_id}/payment-token-candidatesPOSTตรวจสอบและลงทะเบียนโทเคน/v1/projects/{project_id}/payment-token-assetsGETค้นหาพูล DEX ของโทเคนกำหนดเอง/v1/projects/{project_id}/payment-token-dex-poolsPOSTเพิ่มหรือเปลี่ยนราคาโทเคนกำหนดเอง/v1/projects/{project_id}/payment-token-assets/customGETแสดงรายการวิธีชำระเงินของร้านค้า/v1/projects/{project_id}/stores/{store_id}/payment-assetsPUTแทนที่วิธีชำระเงินของร้านค้า/v1/projects/{project_id}/stores/{store_id}/payment-assetsPUTตั้งนโยบายการยืนยันของร้านค้า/v1/projects/{project_id}/stores/{store_id}/payment-assets/{asset_id}/confirmation-policy

กระเป๋า

GETแสดงรายการกระเป๋าและยอดคงเหลือของโปรเจกต์/v1/projects/{project_id}/wallets

การกระทบยอด

GETแสดงรายการข้อยกเว้นของการชำระเงิน/v1/projects/{project_id}/reconciliationGETอ่านหลักฐานการกระทบยอด/v1/projects/{project_id}/reconciliation/{invoice_id}

API ของ Marketplace

GETความสามารถ/v1/marketplace/capabilitiesGETรายงาน Marketplace/v1/marketplace/overviewGETการตั้งค่าโปรเจกต์/v1/marketplace/settingsPOSTบันทึกการตั้งค่าโปรเจกต์/v1/marketplace/settingsGETแสดงรายการผู้ขาย/v1/marketplace/vendorsPOSTสร้างผู้ขาย/v1/marketplace/vendorsGETดึงข้อมูลผู้ขาย/v1/marketplace/vendors/{vendor_id}POSTอัปเดตผู้ขาย/v1/marketplace/vendors/{vendor_id}/updatePOSTเก็บผู้ขายเข้าคลัง/v1/marketplace/vendors/{vendor_id}/archiveGETปลายทางของผู้ขาย/v1/marketplace/vendors/{vendor_id}/destinationsPOSTเพิ่มปลายทางจ่ายเงิน/v1/marketplace/vendors/{vendor_id}/destinationsPOSTอนุมัติปลายทาง/v1/marketplace/vendors/{vendor_id}/destinations/{destination_id}/approvePOSTปิดใช้งานปลายทาง/v1/marketplace/vendors/{vendor_id}/destinations/{destination_id}/disableGETยอดคงเหลือของผู้ขาย/v1/marketplace/vendors/{vendor_id}/balancesGETใบแจ้งหนี้ Marketplace/v1/marketplace/invoicesPOSTสร้างใบแจ้งหนี้หลายผู้ขาย/v1/marketplace/invoicesGETใบแจ้งหนี้และการจัดสรร/v1/marketplace/invoices/{invoice_id}GETหลักฐานการชำระใบแจ้งหนี้/v1/marketplace/invoices/{invoice_id}/paymentsGETการจัดสรรของใบแจ้งหนี้/v1/marketplace/invoices/{invoice_id}/allocationsPOSTยกเลิกใบแจ้งหนี้ที่ยังไม่ชำระ/v1/marketplace/invoices/{invoice_id}/cancelPOSTระงับการจัดสรร/v1/marketplace/invoices/{invoice_id}/allocations/holdPOSTตรวจสอบและปล่อยยอดจัดสรร/v1/marketplace/invoices/{invoice_id}/allocations/releasePOSTผูกปลายทางใหม่สำหรับยอดที่ยังไม่จ่าย/v1/marketplace/invoices/{invoice_id}/allocations/{allocation_id}/destinationPOSTเตรียมคืนเงินเต็มจำนวน/v1/marketplace/invoices/{invoice_id}/refundGETค้นหายอดจัดสรรสำหรับจ่ายเงิน/v1/marketplace/allocationsGETยอดคงเหลือในบัญชีแยกประเภทของโปรเจกต์/v1/marketplace/balancesGETสมุดรายวันที่แก้ไขย้อนหลังไม่ได้/v1/marketplace/ledgerGETประวัติการจ่ายเงิน/v1/marketplace/payoutsPOSTดูตัวอย่างแผนการจัดสรร/v1/marketplace/payouts/previewPOSTเตรียมการจ่ายเงิน/v1/marketplace/payoutsGETรายละเอียดการจ่ายเงิน/v1/marketplace/payouts/{payout_id}POSTอนุมัติและส่ง/v1/marketplace/payouts/{payout_id}/approvePOSTตรวจสอบและดำเนินการจ่ายเงินต่อ/v1/marketplace/payouts/{payout_id}/resumePOSTยกเลิกงานที่ยังไม่ได้ลงนาม/v1/marketplace/payouts/{payout_id}/cancelGETนโยบายจ่ายเงินอัตโนมัติ/v1/marketplace/policiesPOSTอนุมัตินโยบายจ่ายเงิน/v1/marketplace/policiesGETWebhook ของ Marketplace/v1/marketplace/webhooksPOSTสร้าง webhook ของ Marketplace/v1/marketplace/webhooksPOSTอัปเดต webhook ของ Marketplace/v1/marketplace/webhooks/{webhook_id}/updatePOSTปิดใช้งาน webhook ของ Marketplace/v1/marketplace/webhooks/{webhook_id}/disableGETอีเวนต์ Marketplace/v1/marketplace/eventsGETอ่านอีเวนต์ที่เก็บไว้/v1/marketplace/events/{event_id}GETประวัติการส่งของ Marketplace/v1/marketplace/webhook-deliveriesGETรายละเอียดการส่ง/v1/marketplace/webhook-deliveries/{delivery_id}POSTส่งอีเวนต์เดิมอีกครั้ง/v1/marketplace/webhook-deliveries/{delivery_id}/resend

API ของ Operator

GETความสามารถ/v1/operator/capabilitiesGETสถานะการทำงาน/v1/operator/healthGETแสดงรายการผู้ค้า/v1/operator/merchantsPOSTสร้างผู้ค้า/v1/operator/merchantsGETดึงข้อมูลผู้ค้า/v1/operator/merchants/{merchant_id}POSTอัปเดตผู้ค้า/v1/operator/merchants/{merchant_id}GETแสดงรายการผู้ใช้/v1/operator/merchants/{merchant_id}/usersPOSTสร้างผู้ใช้/v1/operator/merchants/{merchant_id}/usersGETดึงข้อมูลผู้ใช้/v1/operator/merchants/{merchant_id}/users/{user_id}POSTอัปเดตผู้ใช้/v1/operator/merchants/{merchant_id}/users/{user_id}POSTตั้งรหัสผ่านผู้ใช้/v1/operator/merchants/{merchant_id}/users/{user_id}/passwordPOSTเพิกถอนเซสชันผู้ใช้/v1/operator/merchants/{merchant_id}/users/{user_id}/revoke-sessionsGETแสดงรายการคำเชิญ/v1/operator/merchants/{merchant_id}/invitationsPOSTสร้างคำเชิญ/v1/operator/merchants/{merchant_id}/invitationsGETดึงข้อมูลคำเชิญ/v1/operator/invitations/{invitation_id}POSTส่งคำเชิญอีกครั้ง/v1/operator/invitations/{invitation_id}/resendPOSTเพิกถอนคำเชิญ/v1/operator/invitations/{invitation_id}/revokeGETดึงข้อมูลเครดิต/v1/operator/merchants/{merchant_id}/creditsGETแสดงรายการบัญชีแยกประเภทเครดิต/v1/operator/merchants/{merchant_id}/credits/ledgerPOSTปรับเครดิต/v1/operator/merchants/{merchant_id}/credits/adjustmentsGETแสดงรายการเติมเงิน/v1/operator/merchants/{merchant_id}/topupsPOSTสร้างรายการเติมเงิน/v1/operator/merchants/{merchant_id}/topupsGETดึงข้อมูลรายการเติมเงิน/v1/operator/merchants/{merchant_id}/topups/{topup_id}GETรายงาน/v1/operator/reportsGETแสดงรายการบันทึกตรวจสอบ/v1/operator/auditGETแสดงรายการอีเวนต์/v1/operator/eventsGETแสดงรายการ webhook/v1/operator/webhooksPOSTสร้าง webhook/v1/operator/webhooksPOSTอัปเดต webhook/v1/operator/webhooks/{webhook_id}POSTหมุนเวียนซีเคร็ต webhook/v1/operator/webhooks/{webhook_id}/rotateGETแสดงรายการส่ง webhook/v1/operator/webhooks/{webhook_id}/deliveriesGETแสดงรายการโปรเจกต์/v1/operator/merchants/{merchant_id}/projectsPOSTสร้างโปรเจกต์/v1/operator/merchants/{merchant_id}/projectsGETดึงข้อมูลโปรเจกต์/v1/operator/merchants/{merchant_id}/projects/{project_id}POSTอัปเดตโปรเจกต์/v1/operator/merchants/{merchant_id}/projects/{project_id}GETแสดงรายการร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/storesPOSTสร้างร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/storesGETดึงข้อมูลร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}POSTอัปเดตร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}GETดึงข้อมูลรูปลักษณ์ร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}/checkout-appearancePOSTอัปเดตรูปลักษณ์ร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}/checkout-appearanceGETแสดงรายการสินทรัพย์รับชำระของร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}/payment-assetsPOSTอัปเดตสินทรัพย์รับชำระของร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}/payment-assetsGETแสดงรายการ webhook ของร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}/webhooksPOSTสร้าง webhook ของร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}/webhooksPOSTอัปเดต webhook ของร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}/webhooks/{webhook_id}GETแสดงรายการใบแจ้งหนี้/v1/operator/merchants/{merchant_id}/projects/{project_id}/invoicesGETดึงข้อมูลใบแจ้งหนี้/v1/operator/merchants/{merchant_id}/projects/{project_id}/invoices/{invoice_id}GETแสดงรายการกระเป๋า/v1/operator/merchants/{merchant_id}/projects/{project_id}/walletsGETแสดงรายการที่อยู่กระเป๋า/v1/operator/merchants/{merchant_id}/projects/{project_id}/wallets/{wallet_id}/addressesGETแสดงรายการข้อมูลรับรองของผู้ค้า/v1/operator/merchants/{merchant_id}/api-credentialsPOSTสร้างข้อมูลรับรองผู้ค้า/v1/operator/merchants/{merchant_id}/api-credentialsPOSTอัปเดตข้อมูลรับรองผู้ค้า/v1/operator/merchants/{merchant_id}/api-credentials/{credential_id}POSTหมุนเวียนข้อมูลรับรองผู้ค้า/v1/operator/merchants/{merchant_id}/api-credentials/{credential_id}/rotatePOSTเพิกถอนข้อมูลรับรองผู้ค้า/v1/operator/merchants/{merchant_id}/api-credentials/{credential_id}/revokePOSTตรวจสอบโทเคนคำเชิญ/v1/onboarding/invitations/checkPOSTตอบรับคำเชิญหรือรีเซ็ตรหัสผ่าน/v1/onboarding/invitations/accept

หน้าชำระเงิน

GETโครงหน้าชำระเงิน/GETหน้าชำระเงินที่โฮสต์ไว้/invoice/{invoice_id}GETข้อมูลใบแจ้งหนี้ที่เปิดเผยบนหน้าชำระเงินได้อย่างปลอดภัย/checkout-api/invoices/{invoice_id}GETตัวอย่างหน้าชำระเงินของร้านค้า/invoice/preview/{project_id}GETข้อมูลตัวอย่างหน้าชำระเงิน/checkout-api/previews/{project_id}GETรูปภาพหน้าชำระเงินของร้านค้า/checkout-api/invoices/{invoice_id}/appearance-images/{kind}/{revision}/image.pngGETรูปภาพตัวอย่างร้านค้า/checkout-api/previews/{project_id}/stores/{store_id}/appearance-images/{kind}/{revision}/image.pngGETโลโก้ตัวอย่างตามรุ่นแก้ไข/checkout-api/previews/{project_id}/logo/{revision}/image.pngGETรูป QR ชำระเงิน/checkout-api/invoices/{invoice_id}/payment-methods/{intent_id}/qr.svgGETโลโก้หน้าชำระเงินตามรุ่นแก้ไข/checkout-api/invoices/{invoice_id}/logo/{revision}/image.png

บริการ

GETการค้นพบบริการ API/GETสถานะการทำงานของบริการ/healthz
GETความสามารถ/v1/operator/capabilitiesอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/capabilities" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "api_version": "v1",
  "operator_version": "7.4.0",
  "scopes": [
    "health.read"
  ],
  "all_merchants": false,
  "merchant_ids": [
    "11111111-1111-4111-8111-111111111111"
  ],
  "onboarding": [
    "direct",
    "invitation"
  ],
  "write_methods": [
    "POST"
  ],
  "idempotency_required": true
}

ฟิลด์การตอบกลับ

api_versionstring
operator_versionstring
scopes[]array
all_merchantsboolean
merchant_ids[]array
onboarding[]array
write_methods[]array
idempotency_requiredboolean
หมายเหตุการใช้งาน
  • ต้องมี health.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETสถานะการทำงาน/v1/operator/healthอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/health" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "version": "7.4.0",
  "nodes": []
}

ฟิลด์การตอบกลับ

versionstring
nodes[]array
หมายเหตุการใช้งาน
  • ต้องมี health.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการผู้ค้า/v1/operator/merchantsอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์ query

pageไม่บังคับ
หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเองรายละเอียด

หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "page": 1,
  "page_size": 25,
  "total": 0
}

ฟิลด์การตอบกลับ

data[]array
pageinteger
page_sizeinteger
totalinteger
หมายเหตุการใช้งาน
  • ต้องมี merchants.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTสร้างผู้ค้า/v1/operator/merchantsอ่าน + เขียน

สร้างผู้ค้าที่โฮสต์และผู้ดูแลคนแรกพร้อมกันแบบอะตอมมิก โดยตรงพร้อมรหัสผ่านหรือผ่านคำเชิญ

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "Example shop",
  "email": "admin@example.test",
  "onboarding": "direct",
  "password": "REPLACE_WITH_A_UNIQUE_TEMPORARY_PASSWORD",
  "require_password_change": true,
  "currency": "EUR",
  "starting_credit": "0",
  "external_id": "customer-1042"
}'

เนื้อหาคำขอ

namestringจำเป็น

ชื่อผู้ค้าและอีเมลผู้ดูแลคนแรกที่ไม่ซ้ำทั้งระบบ

emailstringจำเป็น

ชื่อผู้ค้าและอีเมลผู้ดูแลคนแรกที่ไม่ซ้ำทั้งระบบ

onboardingdirect | invitationจำเป็น

direct ต้องมี password และไม่ส่งอีเมลเชิญ ส่วน invitation ไม่ใส่ password

passwordstring · direct only

12–128 อักขระ (ไม่เกิน 512 ไบต์ UTF-8) ไม่คืนค่าหรือส่งอีเมล ใช้ require_password_change สำหรับรหัสผ่านชั่วคราว

require_password_changebooleanไม่บังคับ

บังคับตั้งรหัสผ่านใหม่เมื่อเข้าสู่ระบบครั้งแรก ทุกบัญชีที่สร้างโดยตรงต้องยอมรับการถือครองคีย์กระเป๋าโดยผู้โฮสต์

currencyfiat codeไม่บังคับ

สกุลเงินบัญชีชำระล่วงหน้า ค่าเริ่มต้นคือสกุลเงินภูมิภาค และเปลี่ยนภายหลังไม่ได้

fee_bpsintegerไม่บังคับ

0–10000; 100 หมายถึง 1% หากไม่ระบุจะใช้ค่าเริ่มต้น Operator ต้องมี fees.write

starting_creditdecimal stringไม่บังคับ

เครดิตภายในที่ให้ครั้งเดียวแบบจำนวนแน่นอน หากไม่ใช่ศูนย์ต้องมี credits.write ไม่เติมยอดระบบติดตั้งของผู้ดำเนินระบบ

external_idstringไม่บังคับ

เลขอ้างอิงการเชื่อมต่อที่ไม่ซ้ำ 1–120 อักขระ

default_timezoneIANA timezoneไม่บังคับ

ค่าเริ่มต้นคือเขตเวลาภูมิภาคของระบบติดตั้ง

send_invitation_emailbooleanไม่บังคับ

เฉพาะคำเชิญ ต้องตั้งค่า SMTP การตอบกลับแยกการยอมรับของรีเลย์ออกจากการสร้างบัญชี

การตอบกลับ 201 or 200 application/json

ตัวอย่างการตอบกลับ
{
  "merchant_id": "11111111-1111-4111-8111-111111111111",
  "user_id": "22222222-2222-4222-8222-222222222222",
  "merchant": {
    "id": "11111111-1111-4111-8111-111111111111",
    "name": "Example shop",
    "currency": "EUR",
    "balance": "0"
  },
  "onboarding": "direct",
  "access_link": null,
  "email_delivery": {
    "status": "not_requested"
  },
  "custody_acceptance_required": true
}

ฟิลด์การตอบกลับ

merchant_idstring
user_idstring
merchantobject
idstring
namestring
currencystring
balancestring
onboardingstring
email_deliveryobject
statusstring
custody_acceptance_requiredboolean
หมายเหตุการใช้งาน
  • ต้องมี merchants.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ต้องเข้าถึงผู้ค้าทั้งหมด การ override ค่าธรรมเนียมชัดเจนยังต้องมี fees.write; starting_credit ที่ไม่ใช่ศูนย์ต้องมี credits.write การเริ่มใช้งานด้วยคำเชิญยังต้องมี invitations.write ไม่มีการล็อกอินอัตโนมัติ ไม่ข้าม Basic Auth และไม่ให้เครดิตย้อนหลังเมื่อลองใหม่
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETดึงข้อมูลผู้ค้า/v1/operator/merchants/{merchant_id}อ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "11111111-1111-4111-8111-111111111111",
  "name": "Example shop",
  "currency": "EUR",
  "balance": "10",
  "fee_bps": 300,
  "enabled": true,
  "payments_paused": false,
  "external_id": "customer-1042"
}

ฟิลด์การตอบกลับ

idstring
namestring
currencystring
balancestring
fee_bpsinteger
enabledboolean
payments_pausedboolean
external_idstring
หมายเหตุการใช้งาน
  • ต้องมี merchants.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTอัปเดตผู้ค้า/v1/operator/merchants/{merchant_id}อ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "payments_paused": true
}'

เนื้อหาคำขอ

namefieldsไม่บังคับ
การปิดใช้เพิกถอนเซสชัน payments_paused บล็อกใบแจ้งหนี้ใหม่ ไม่หยุดสแกนการชำระเดิม การแก้ค่าธรรมเนียมต้องมี fees.write และมีผลต่อใบแจ้งหนี้ในอนาคต สกุลเงินบัญชีเปลี่ยนไม่ได้รายละเอียด

การปิดใช้เพิกถอนเซสชัน payments_paused บล็อกใบแจ้งหนี้ใหม่ ไม่หยุดสแกนการชำระเดิม การแก้ค่าธรรมเนียมต้องมี fees.write และมีผลต่อใบแจ้งหนี้ในอนาคต สกุลเงินบัญชีเปลี่ยนไม่ได้

enabledfieldsไม่บังคับ
การปิดใช้เพิกถอนเซสชัน payments_paused บล็อกใบแจ้งหนี้ใหม่ ไม่หยุดสแกนการชำระเดิม การแก้ค่าธรรมเนียมต้องมี fees.write และมีผลต่อใบแจ้งหนี้ในอนาคต สกุลเงินบัญชีเปลี่ยนไม่ได้รายละเอียด

การปิดใช้เพิกถอนเซสชัน payments_paused บล็อกใบแจ้งหนี้ใหม่ ไม่หยุดสแกนการชำระเดิม การแก้ค่าธรรมเนียมต้องมี fees.write และมีผลต่อใบแจ้งหนี้ในอนาคต สกุลเงินบัญชีเปลี่ยนไม่ได้

payments_pausedfieldsไม่บังคับ
การปิดใช้เพิกถอนเซสชัน payments_paused บล็อกใบแจ้งหนี้ใหม่ ไม่หยุดสแกนการชำระเดิม การแก้ค่าธรรมเนียมต้องมี fees.write และมีผลต่อใบแจ้งหนี้ในอนาคต สกุลเงินบัญชีเปลี่ยนไม่ได้รายละเอียด

การปิดใช้เพิกถอนเซสชัน payments_paused บล็อกใบแจ้งหนี้ใหม่ ไม่หยุดสแกนการชำระเดิม การแก้ค่าธรรมเนียมต้องมี fees.write และมีผลต่อใบแจ้งหนี้ในอนาคต สกุลเงินบัญชีเปลี่ยนไม่ได้

fee_bpsfieldsไม่บังคับ
การปิดใช้เพิกถอนเซสชัน payments_paused บล็อกใบแจ้งหนี้ใหม่ ไม่หยุดสแกนการชำระเดิม การแก้ค่าธรรมเนียมต้องมี fees.write และมีผลต่อใบแจ้งหนี้ในอนาคต สกุลเงินบัญชีเปลี่ยนไม่ได้รายละเอียด

การปิดใช้เพิกถอนเซสชัน payments_paused บล็อกใบแจ้งหนี้ใหม่ ไม่หยุดสแกนการชำระเดิม การแก้ค่าธรรมเนียมต้องมี fees.write และมีผลต่อใบแจ้งหนี้ในอนาคต สกุลเงินบัญชีเปลี่ยนไม่ได้

external_idfieldsไม่บังคับ
การปิดใช้เพิกถอนเซสชัน payments_paused บล็อกใบแจ้งหนี้ใหม่ ไม่หยุดสแกนการชำระเดิม การแก้ค่าธรรมเนียมต้องมี fees.write และมีผลต่อใบแจ้งหนี้ในอนาคต สกุลเงินบัญชีเปลี่ยนไม่ได้รายละเอียด

การปิดใช้เพิกถอนเซสชัน payments_paused บล็อกใบแจ้งหนี้ใหม่ ไม่หยุดสแกนการชำระเดิม การแก้ค่าธรรมเนียมต้องมี fees.write และมีผลต่อใบแจ้งหนี้ในอนาคต สกุลเงินบัญชีเปลี่ยนไม่ได้

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "11111111-1111-4111-8111-111111111111",
  "name": "Example shop",
  "currency": "EUR",
  "balance": "10",
  "fee_bps": 300,
  "enabled": true,
  "payments_paused": false
}

ฟิลด์การตอบกลับ

idstring
namestring
currencystring
balancestring
fee_bpsinteger
enabledboolean
payments_pausedboolean
หมายเหตุการใช้งาน
  • ต้องมี merchants.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการผู้ใช้/v1/operator/merchants/{merchant_id}/usersอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

พารามิเตอร์ query

pageไม่บังคับ
หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเองรายละเอียด

หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/users" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "page": 1,
  "page_size": 25,
  "total": 0
}

ฟิลด์การตอบกลับ

data[]array
pageinteger
page_sizeinteger
totalinteger
หมายเหตุการใช้งาน
  • ต้องมี users.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTสร้างผู้ใช้/v1/operator/merchants/{merchant_id}/usersอ่าน + เขียน

เพิ่มผู้ดูแลผู้ค้าหรือผู้ใช้ที่จำกัดเฉพาะโปรเจกต์ที่เลือก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/users" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "email": "staff@example.test",
  "display_name": "Store team",
  "onboarding": "invitation",
  "access_level": "projects",
  "project_ids": [
    "11111111-1111-4111-8111-111111111111"
  ],
  "send_invitation_email": false
}'

เนื้อหาคำขอ

emailstringsจำเป็น

อีเมลต้องไม่ซ้ำภายในระบบติดตั้ง

display_namestringsจำเป็น

อีเมลต้องไม่ซ้ำภายในระบบติดตั้ง

onboardingsame as merchant creation

การสร้างคำเชิญต้องมี invitations.write เพิ่มเติม

passwordsame as merchant creation

การสร้างคำเชิญต้องมี invitations.write เพิ่มเติม

require_password_changesame as merchant creation

การสร้างคำเชิญต้องมี invitations.write เพิ่มเติม

send_invitation_emailsame as merchant creation

การสร้างคำเชิญต้องมี invitations.write เพิ่มเติม

access_leveladmin | projectsไม่บังคับ

admin เป็นผู้ดูแลของผู้ค้ารายนี้เท่านั้น ไม่ใช่ผู้ดูแลระบบติดตั้ง/Operator

project_ids[]UUID[]

เฉพาะโปรเจกต์ที่ผู้ค้าเป็นเจ้าของ ต้องเลือกสำหรับสิทธิ์ที่จำกัดโปรเจกต์ ไม่ข้ามผู้เช่าเด็ดขาด

default_timezoneIANA timezoneไม่บังคับ

หากไม่ระบุใช้ค่าเริ่มต้นภูมิภาค

การตอบกลับ 201 or 200 application/json

ตัวอย่างการตอบกลับ
{
  "user": {
    "id": "22222222-2222-4222-8222-222222222222",
    "merchant_id": "11111111-1111-4111-8111-111111111111",
    "email": "admin@example.test",
    "display_name": "Shop administrator",
    "access_level": "admin",
    "project_ids": [],
    "enabled": true,
    "password_setup_required": false,
    "custody_acceptance_required": true,
    "password_change_required": true
  },
  "user_id": "22222222-2222-4222-8222-222222222222",
  "access_link": null,
  "email_delivery": {
    "status": "not_requested"
  },
  "merchant_id": "11111111-1111-4111-8111-111111111111"
}

ฟิลด์การตอบกลับ

userobject
idstring
merchant_idstring
emailstring
display_namestring
access_levelstring
project_ids[]array
enabledboolean
password_setup_requiredboolean
custody_acceptance_requiredboolean
password_change_requiredboolean
user_idstring
email_deliveryobject
statusstring
merchant_idstring
หมายเหตุการใช้งาน
  • ต้องมี users.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETดึงข้อมูลผู้ใช้/v1/operator/merchants/{merchant_id}/users/{user_id}อ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

user_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/users/YOUR_USER_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "22222222-2222-4222-8222-222222222222",
  "merchant_id": "11111111-1111-4111-8111-111111111111",
  "email": "admin@example.test",
  "display_name": "Shop administrator",
  "access_level": "admin",
  "project_ids": [],
  "enabled": true,
  "password_setup_required": false,
  "custody_acceptance_required": true,
  "password_change_required": true
}

ฟิลด์การตอบกลับ

idstring
merchant_idstring
emailstring
display_namestring
access_levelstring
project_ids[]array
enabledboolean
password_setup_requiredboolean
custody_acceptance_requiredboolean
password_change_requiredboolean
หมายเหตุการใช้งาน
  • ต้องมี users.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTอัปเดตผู้ใช้/v1/operator/merchants/{merchant_id}/users/{user_id}อ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

user_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/users/YOUR_USER_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "display_name": "Store manager"
}'

เนื้อหาคำขอ

emailfieldsไม่บังคับ

อัปเดตฟิลด์ที่ส่งมา การป้องกันผู้ดูแลคนสุดท้ายยังมีผล รหัสผ่านใช้การดำเนินการ users.security แยก

display_namefieldsไม่บังคับ

อัปเดตฟิลด์ที่ส่งมา การป้องกันผู้ดูแลคนสุดท้ายยังมีผล รหัสผ่านใช้การดำเนินการ users.security แยก

enabledfieldsไม่บังคับ

อัปเดตฟิลด์ที่ส่งมา การป้องกันผู้ดูแลคนสุดท้ายยังมีผล รหัสผ่านใช้การดำเนินการ users.security แยก

access_levelfieldsไม่บังคับ

อัปเดตฟิลด์ที่ส่งมา การป้องกันผู้ดูแลคนสุดท้ายยังมีผล รหัสผ่านใช้การดำเนินการ users.security แยก

project_idsfieldsไม่บังคับ

อัปเดตฟิลด์ที่ส่งมา การป้องกันผู้ดูแลคนสุดท้ายยังมีผล รหัสผ่านใช้การดำเนินการ users.security แยก

default_timezonefieldsไม่บังคับ

อัปเดตฟิลด์ที่ส่งมา การป้องกันผู้ดูแลคนสุดท้ายยังมีผล รหัสผ่านใช้การดำเนินการ users.security แยก

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "22222222-2222-4222-8222-222222222222",
  "merchant_id": "11111111-1111-4111-8111-111111111111",
  "email": "admin@example.test",
  "display_name": "Shop administrator",
  "access_level": "admin",
  "project_ids": [],
  "enabled": true,
  "password_setup_required": false,
  "custody_acceptance_required": true,
  "password_change_required": true
}

ฟิลด์การตอบกลับ

idstring
merchant_idstring
emailstring
display_namestring
access_levelstring
project_ids[]array
enabledboolean
password_setup_requiredboolean
custody_acceptance_requiredboolean
password_change_requiredboolean
หมายเหตุการใช้งาน
  • ต้องมี users.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTตั้งรหัสผ่านผู้ใช้/v1/operator/merchants/{merchant_id}/users/{user_id}/passwordอ่าน + เขียน

ตั้งรหัสผ่านบัญชีที่โฮสต์และเพิกถอนเซสชัน คง TOTP เดิมไว้

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

user_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/users/YOUR_USER_ID/password" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "password": "REPLACE_WITH_A_NEW_UNIQUE_PASSWORD",
  "require_password_change": true
}'

เนื้อหาคำขอ

passwordstringจำเป็น

เปลี่ยนรหัสผ่านและเพิกถอนเซสชันโดยคง TOTP ต้องมี users.security

require_password_changebooleanไม่บังคับ

ผู้ใช้ต้องตั้งรหัสผ่านของตนเองเมื่อเข้าสู่ระบบสำเร็จครั้งถัดไป

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "user_id": "11111111-1111-4111-8111-111111111111",
  "sessions_revoked": true,
  "totp_preserved": true
}

ฟิลด์การตอบกลับ

user_idstring
sessions_revokedboolean
totp_preservedboolean
หมายเหตุการใช้งาน
  • ต้องมี users.security เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTเพิกถอนเซสชันผู้ใช้/v1/operator/merchants/{merchant_id}/users/{user_id}/revoke-sessionsอ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

user_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/users/YOUR_USER_ID/revoke-sessions" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{}'

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "user_id": "11111111-1111-4111-8111-111111111111",
  "sessions_revoked": true,
  "totp_preserved": true
}

ฟิลด์การตอบกลับ

user_idstring
sessions_revokedboolean
totp_preservedboolean
หมายเหตุการใช้งาน
  • ต้องมี users.security เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการคำเชิญ/v1/operator/merchants/{merchant_id}/invitationsอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

พารามิเตอร์ query

pageไม่บังคับ
หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเองรายละเอียด

หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/invitations" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "page": 1,
  "page_size": 25,
  "total": 0
}

ฟิลด์การตอบกลับ

data[]array
pageinteger
page_sizeinteger
totalinteger
หมายเหตุการใช้งาน
  • ต้องมี invitations.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTสร้างคำเชิญ/v1/operator/merchants/{merchant_id}/invitationsอ่าน + เขียน

สร้างหรือแทนที่ลิงก์เชิญหรือรีเซ็ตรหัสผ่านแบบใช้ครั้งเดียว

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/invitations" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "user_id": "11111111-1111-4111-8111-111111111111",
  "send_email": false
}'

เนื้อหาคำขอ

user_idUUID, boolean

ออก/แทนที่ลิงก์ใช้ครั้งเดียวสำหรับบัญชีเดิม ผู้ใช้ที่เปิดใช้งานแล้วได้รับลิงก์รีเซ็ตหนึ่งชั่วโมงและต้องมี users.security

send_emailUUID, boolean

ออก/แทนที่ลิงก์ใช้ครั้งเดียวสำหรับบัญชีเดิม ผู้ใช้ที่เปิดใช้งานแล้วได้รับลิงก์รีเซ็ตหนึ่งชั่วโมงและต้องมี users.security

new user fieldsalternative to user_id

ใช้ email, display_name, access_level และ project_ids เพื่อสร้างผู้ใช้ที่ได้รับเชิญ ต้องมี users.write

การตอบกลับ 201 or 200 application/json

ตัวอย่างการตอบกลับ
{
  "user_id": "22222222-2222-4222-8222-222222222222",
  "email": "admin@example.test",
  "kind": "invitation",
  "expires_at": "2026-10-03T12:00:00Z",
  "url": "https://merchant.example.com/account-access.html#token=YOUR_PRIVATE_INVITATION_TOKEN"
}

ฟิลด์การตอบกลับ

user_idstring
emailstring
kindstring
expires_atstring
urlstring
หมายเหตุการใช้งาน
  • ต้องมี invitations.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETดึงข้อมูลคำเชิญ/v1/operator/invitations/{invitation_id}อ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

invitation_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/invitations/YOUR_INVITATION_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "44444444-4444-4444-8444-444444444444",
  "user_id": "22222222-2222-4222-8222-222222222222",
  "merchant_id": "11111111-1111-4111-8111-111111111111",
  "kind": "invitation",
  "status": "pending",
  "created_at": "2026-10-01T12:00:00Z",
  "expires_at": "2026-10-03T12:00:00Z"
}

ฟิลด์การตอบกลับ

idstring
user_idstring
merchant_idstring
kindstring
statusstring
created_atstring
expires_atstring
หมายเหตุการใช้งาน
  • ต้องมี invitations.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTส่งคำเชิญอีกครั้ง/v1/operator/invitations/{invitation_id}/resendอ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

invitation_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/invitations/YOUR_INVITATION_ID/resend" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "send_email": false
}'

เนื้อหาคำขอ

send_emailbooleanไม่บังคับ

แทนที่โทเคนเดิม ไม่เพิ่มเครดิต คืนลิงก์ที่สร้างใหม่ครั้งเดียว บัญชีที่เปิดใช้งานแล้วต้องมี users.security

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "user_id": "22222222-2222-4222-8222-222222222222",
  "email": "admin@example.test",
  "kind": "invitation",
  "expires_at": "2026-10-03T12:00:00Z",
  "url": "https://merchant.example.com/account-access.html#token=YOUR_PRIVATE_INVITATION_TOKEN"
}

ฟิลด์การตอบกลับ

user_idstring
emailstring
kindstring
expires_atstring
urlstring
หมายเหตุการใช้งาน
  • ต้องมี invitations.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTเพิกถอนคำเชิญ/v1/operator/invitations/{invitation_id}/revokeอ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

invitation_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/invitations/YOUR_INVITATION_ID/revoke" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{}'

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "revoked": true,
  "invitation_id": "44444444-4444-4444-8444-444444444444"
}

ฟิลด์การตอบกลับ

revokedboolean
invitation_idstring
หมายเหตุการใช้งาน
  • ต้องมี invitations.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETดึงข้อมูลเครดิต/v1/operator/merchants/{merchant_id}/creditsอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/credits" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "11111111-1111-4111-8111-111111111111",
  "name": "Example shop",
  "currency": "EUR",
  "balance": "10",
  "fee_bps": 300,
  "enabled": true,
  "payments_paused": false,
  "external_id": "customer-1042"
}

ฟิลด์การตอบกลับ

idstring
namestring
currencystring
balancestring
fee_bpsinteger
enabledboolean
payments_pausedboolean
external_idstring
หมายเหตุการใช้งาน
  • ต้องมี credits.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการบัญชีแยกประเภทเครดิต/v1/operator/merchants/{merchant_id}/credits/ledgerอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

พารามิเตอร์ query

pageไม่บังคับ
หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเองรายละเอียด

หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเอง

qไม่บังคับ
หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเองรายละเอียด

หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/credits/ledger" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "page": 1,
  "page_size": 25,
  "total": 0
}

ฟิลด์การตอบกลับ

data[]array
pageinteger
page_sizeinteger
totalinteger
หมายเหตุการใช้งาน
  • ต้องมี credits.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTปรับเครดิต/v1/operator/merchants/{merchant_id}/credits/adjustmentsอ่าน + เขียน

เพิ่มรายการให้เครดิตหรือแก้ไขพร้อมเหตุผลในบัญชีชำระล่วงหน้าของผู้ค้านี้

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/credits/adjustments" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "amount": "10.00",
  "note": "Promotional credit",
  "request_id": "11111111-1111-4111-8111-111111111111"
}'

เนื้อหาคำขอ

amountsigned decimal stringจำเป็น

ให้เครดิตจำนวนบวกหรือแก้ไขจำนวนลบ ทศนิยมไม่เกินหกตำแหน่งในสกุลเครดิตผู้ค้า ไม่ใช่การโอนบนเชน

notestringจำเป็น

เหตุผลที่เก็บในบัญชีแยกประเภทแบบเพิ่มได้อย่างเดียว

request_idUUIDจำเป็น

บันทึกถาวรพร้อมจำนวนและเหตุผล เพิ่มจาก HTTP Idempotency-Key

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "balance": "25"
}

ฟิลด์การตอบกลับ

balancestring
หมายเหตุการใช้งาน
  • ต้องมี credits.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการเติมเงิน/v1/operator/merchants/{merchant_id}/topupsอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

พารามิเตอร์ query

pageไม่บังคับ
หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเองรายละเอียด

หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/topups" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "page": 1,
  "page_size": 25,
  "total": 0
}

ฟิลด์การตอบกลับ

data[]array
pageinteger
page_sizeinteger
totalinteger
หมายเหตุการใช้งาน
  • ต้องมี topups.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTสร้างรายการเติมเงิน/v1/operator/merchants/{merchant_id}/topupsอ่าน + เขียน

สร้างหน้าชำระเติมเครดิตล่วงหน้า ห้ามทำเครื่องหมายว่าชำระแล้วด้วยตนเอง

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/topups" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "amount": "25.00",
  "request_id": "11111111-1111-4111-8111-111111111111"
}'

เนื้อหาคำขอ

amountdecimal stringจำเป็น

อย่างน้อยหนึ่งหน่วยของสกุลเครดิตผู้ค้า ต้องมีร้านค้ารับเงิน Operator ที่พร้อม

request_idUUIDจำเป็น

คงค่าไว้ข้ามการลองใหม่ คืนใบแจ้งหนี้เดิมหากสร้างแล้ว เพิ่มเครดิตหลังตรวจพบการชำระเสร็จสิ้นเท่านั้น

การตอบกลับ 201 or 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "44444444-4444-4444-8444-444444444444",
  "invoice_id": "33333333-3333-4333-8333-333333333333",
  "checkout_url": "https://pay.example.com/invoice/33333333-3333-4333-8333-333333333333"
}

ฟิลด์การตอบกลับ

idstring
invoice_idstring
checkout_urlstring
หมายเหตุการใช้งาน
  • ต้องมี topups.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETดึงข้อมูลรายการเติมเงิน/v1/operator/merchants/{merchant_id}/topups/{topup_id}อ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

topup_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/topups/YOUR_TOPUP_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "44444444-4444-4444-8444-444444444444",
  "merchant_id": "11111111-1111-4111-8111-111111111111",
  "invoice_id": "33333333-3333-4333-8333-333333333333",
  "amount": "25",
  "currency": "EUR",
  "status": "pending",
  "invoice_status": "new",
  "checkout_url": "https://pay.example.com/invoice/33333333-3333-4333-8333-333333333333"
}

ฟิลด์การตอบกลับ

idstring
merchant_idstring
invoice_idstring
amountstring
currencystring
statusstring
invoice_statusstring
checkout_urlstring
หมายเหตุการใช้งาน
  • ต้องมี topups.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETรายงาน/v1/operator/reportsอ่านอย่างเดียว

อ่านภาพรวมการเงิน Operator ต้องมีสิทธิ์เข้าถึงผู้ค้าที่โฮสต์ทั้งหมด

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์ query

periodไม่บังคับ

ตัวกรองการเงิน period มีค่าเริ่มต้น last30; ใช้ custom พร้อม start/end รูปแบบ YYYY-MM-DD เฉพาะข้อมูลรับรองที่เข้าถึงผู้ค้าทั้งหมด

startไม่บังคับ

ตัวกรองการเงิน period มีค่าเริ่มต้น last30; ใช้ custom พร้อม start/end รูปแบบ YYYY-MM-DD เฉพาะข้อมูลรับรองที่เข้าถึงผู้ค้าทั้งหมด

endไม่บังคับ

ตัวกรองการเงิน period มีค่าเริ่มต้น last30; ใช้ custom พร้อม start/end รูปแบบ YYYY-MM-DD เฉพาะข้อมูลรับรองที่เข้าถึงผู้ค้าทั้งหมด

currencyไม่บังคับ

ตัวกรองการเงิน period มีค่าเริ่มต้น last30; ใช้ custom พร้อม start/end รูปแบบ YYYY-MM-DD เฉพาะข้อมูลรับรองที่เข้าถึงผู้ค้าทั้งหมด

merchant_idไม่บังคับ

ตัวกรองการเงิน period มีค่าเริ่มต้น last30; ใช้ custom พร้อม start/end รูปแบบ YYYY-MM-DD เฉพาะข้อมูลรับรองที่เข้าถึงผู้ค้าทั้งหมด

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/reports" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "summary": {
    "fees": "10",
    "costs": "3",
    "margin": "7",
    "credits": "25",
    "pending": 0,
    "missing_rates": 0
  },
  "merchants": [],
  "filters": {
    "period": "last30",
    "currency": "EUR",
    "timezone": "UTC"
  },
  "basis": "first_settlement_latest_net_fees"
}

ฟิลด์การตอบกลับ

summaryobject
feesstring
costsstring
marginstring
creditsstring
pendinginteger
missing_ratesinteger
merchants[]array
filtersobject
periodstring
currencystring
timezonestring
basisstring
หมายเหตุการใช้งาน
  • ต้องมี reports.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัดแถว ต้นทุน และจำนวนของธุรกิจเจ้าของเองก่อนคำนวณยอดรวม ตัวกรอง merchant_id ของธุรกิจเจ้าของคืน 404 รายงานใช้เขตเวลาของระบบติดตั้ง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการบันทึกตรวจสอบ/v1/operator/auditอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์ query

merchant_idไม่บังคับ

กรองผู้ค้าที่ได้รับอนุญาต ชนิดเหตุการณ์แบบตรงตัว (events) หรือข้อความการกระทำ (audit) เก็บเหตุการณ์ 30 วัน

pageไม่บังคับ
หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเองรายละเอียด

หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/audit" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "page": 1,
  "page_size": 25,
  "total": 0
}

ฟิลด์การตอบกลับ

data[]array
pageinteger
page_sizeinteger
totalinteger
หมายเหตุการใช้งาน
  • ต้องมี audit.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการอีเวนต์/v1/operator/eventsอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์ query

merchant_idไม่บังคับ

กรองผู้ค้าที่ได้รับอนุญาต ชนิดเหตุการณ์แบบตรงตัว (events) หรือข้อความการกระทำ (audit) เก็บเหตุการณ์ 30 วัน

event_typeไม่บังคับ

กรองผู้ค้าที่ได้รับอนุญาต ชนิดเหตุการณ์แบบตรงตัว (events) หรือข้อความการกระทำ (audit) เก็บเหตุการณ์ 30 วัน

pageไม่บังคับ
หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเองรายละเอียด

หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/events" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "page": 1,
  "page_size": 25,
  "total": 0
}

ฟิลด์การตอบกลับ

data[]array
pageinteger
page_sizeinteger
totalinteger
หมายเหตุการใช้งาน
  • ต้องมี events.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการ webhook/v1/operator/webhooksอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์ query

pageไม่บังคับ
หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเองรายละเอียด

หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/webhooks" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "page": 1,
  "page_size": 25,
  "total": 0
}

ฟิลด์การตอบกลับ

data[]array
pageinteger
page_sizeinteger
totalinteger
หมายเหตุการใช้งาน
  • ต้องมี events.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTสร้าง webhook/v1/operator/webhooksอ่าน + เขียน

สมัครรับเหตุการณ์วงจรสถานะ Operator ในอนาคต ไม่ใช่ webhook การชำระของร้านค้า

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/webhooks" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "url": "https://shop.example.test/operator-events",
  "events": [
    "merchant.created",
    "topup.settled"
  ],
  "merchant_ids": [],
  "enabled": true
}'

เนื้อหาคำขอ

urlpublic HTTPS URLจำเป็น

ไม่มีข้อมูลรับรอง IP ส่วนตัว หรือการเปลี่ยนเส้นทาง ตรวจ DNS/IP อีกครั้งเมื่อส่ง

events[]string[]จำเป็น

เลือกเหตุการณ์วงจรสถานะในคู่มือ Operator ไม่ใช่ callback ใบแจ้งหนี้

merchant_ids[]UUID[]ไม่บังคับ

ค่าว่างหมายถึงผู้ค้าทั้งหมดที่ข้อมูลรับรองนี้อนุญาต ตรวจข้อจำกัดขอบเขตปัจจุบันซ้ำ

enabledbooleanไม่บังคับ

เอนด์พอยต์ที่พักเก็บรายการส่งในคิวไว้ เมื่อเปิดใหม่จะดำเนินงานที่เก็บและยังถูกต้องต่อ

การตอบกลับ 201 or 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "11111111-1111-4111-8111-111111111111",
  "signing_secret": "wco_whsec_EXAMPLE_ONLY_SAVE_ONCE"
}

ฟิลด์การตอบกลับ

idstring
signing_secretstring
หมายเหตุการใช้งาน
  • ต้องมี webhooks.write + events.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTอัปเดต webhook/v1/operator/webhooks/{webhook_id}อ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

webhook_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/webhooks/YOUR_WEBHOOK_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "url": "https://shop.example.test/operator-events",
  "events": [
    "topup.settled"
  ],
  "merchant_ids": [],
  "enabled": false
}'

เนื้อหาคำขอ

urlpublic HTTPS URLจำเป็น

ไม่มีข้อมูลรับรอง IP ส่วนตัว หรือการเปลี่ยนเส้นทาง ตรวจ DNS/IP อีกครั้งเมื่อส่ง

events[]string[]จำเป็น

เลือกเหตุการณ์วงจรสถานะในคู่มือ Operator ไม่ใช่ callback ใบแจ้งหนี้

merchant_ids[]UUID[]ไม่บังคับ

ค่าว่างหมายถึงผู้ค้าทั้งหมดที่ข้อมูลรับรองนี้อนุญาต ตรวจข้อจำกัดขอบเขตปัจจุบันซ้ำ

enabledbooleanไม่บังคับ

เอนด์พอยต์ที่พักเก็บรายการส่งในคิวไว้ เมื่อเปิดใหม่จะดำเนินงานที่เก็บและยังถูกต้องต่อ

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "44444444-4444-4444-8444-444444444444",
  "signing_secret": null
}

ฟิลด์การตอบกลับ

idstring
signing_secretJSON | null
หมายเหตุการใช้งาน
  • ต้องมี webhooks.write + events.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTหมุนเวียนซีเคร็ต webhook/v1/operator/webhooks/{webhook_id}/rotateอ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

webhook_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/webhooks/YOUR_WEBHOOK_ID/rotate" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{}'

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "11111111-1111-4111-8111-111111111111",
  "signing_secret": "wco_whsec_EXAMPLE_ONLY_SAVE_ONCE"
}

ฟิลด์การตอบกลับ

idstring
signing_secretstring
หมายเหตุการใช้งาน
  • ต้องมี webhooks.write + events.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการส่ง webhook/v1/operator/webhooks/{webhook_id}/deliveriesอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

webhook_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

พารามิเตอร์ query

pageไม่บังคับ
หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเองรายละเอียด

หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/webhooks/YOUR_WEBHOOK_ID/deliveries" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "page": 1,
  "page_size": 25,
  "total": 0
}

ฟิลด์การตอบกลับ

data[]array
pageinteger
page_sizeinteger
totalinteger
หมายเหตุการใช้งาน
  • ต้องมี events.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการโปรเจกต์/v1/operator/merchants/{merchant_id}/projectsอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

พารามิเตอร์ query

pageไม่บังคับ
หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเองรายละเอียด

หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "page": 1,
  "page_size": 25,
  "total": 0
}

ฟิลด์การตอบกลับ

data[]array
pageinteger
page_sizeinteger
totalinteger
หมายเหตุการใช้งาน
  • ต้องมี projects.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTสร้างโปรเจกต์/v1/operator/merchants/{merchant_id}/projectsอ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "Online shop",
  "slug": "online-shop",
  "enabled": false
}'

เนื้อหาคำขอ

namestringsจำเป็น

ชื่อและตัวระบุโปรเจกต์ที่คงที่และไม่ซ้ำ สร้างกระเป๋าภายในด้วยกระบวนการเริ่มโปรเจกต์เดิม ไม่โอนเงินเด็ดขาด

slugstringsจำเป็น

ชื่อและตัวระบุโปรเจกต์ที่คงที่และไม่ซ้ำ สร้างกระเป๋าภายในด้วยกระบวนการเริ่มโปรเจกต์เดิม ไม่โอนเงินเด็ดขาด

enabledไม่บังคับ

enabled มีค่าเริ่มต้น true แนะนำให้สร้างแบบพักไว้และตั้งค่าร้านค้าก่อน

reporting_timezoneไม่บังคับ

enabled มีค่าเริ่มต้น true แนะนำให้สร้างแบบพักไว้และตั้งค่าร้านค้าก่อน

checkout_titleไม่บังคับ

enabled มีค่าเริ่มต้น true แนะนำให้สร้างแบบพักไว้และตั้งค่าร้านค้าก่อน

checkout_descriptionไม่บังคับ

enabled มีค่าเริ่มต้น true แนะนำให้สร้างแบบพักไว้และตั้งค่าร้านค้าก่อน

checkout_themeไม่บังคับ

enabled มีค่าเริ่มต้น true แนะนำให้สร้างแบบพักไว้และตั้งค่าร้านค้าก่อน

checkout_accent_colorไม่บังคับ

enabled มีค่าเริ่มต้น true แนะนำให้สร้างแบบพักไว้และตั้งค่าร้านค้าก่อน

การตอบกลับ 201 or 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "33333333-3333-4333-8333-333333333333",
  "slug": "example-shop",
  "name": "Example shop",
  "enabled": false,
  "reporting_currency": "EUR",
  "reporting_timezone": "Europe/Berlin",
  "stores": []
}

ฟิลด์การตอบกลับ

idstring
slugstring
namestring
enabledboolean
reporting_currencystring
reporting_timezonestring
stores[]array
หมายเหตุการใช้งาน
  • ต้องมี projects.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETดึงข้อมูลโปรเจกต์/v1/operator/merchants/{merchant_id}/projects/{project_id}อ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

project_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects/YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "33333333-3333-4333-8333-333333333333",
  "slug": "example-shop",
  "name": "Example shop",
  "enabled": false,
  "reporting_currency": "EUR",
  "reporting_timezone": "Europe/Berlin",
  "stores": []
}

ฟิลด์การตอบกลับ

idstring
slugstring
namestring
enabledboolean
reporting_currencystring
reporting_timezonestring
stores[]array
หมายเหตุการใช้งาน
  • ต้องมี projects.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTอัปเดตโปรเจกต์/v1/operator/merchants/{merchant_id}/projects/{project_id}อ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

project_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects/YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "enabled": true
}'

เนื้อหาคำขอ

nameไม่บังคับ

อัปเดตบางส่วน ตัวระบุและผู้ค้าเจ้าของเปลี่ยนไม่ได้

enabledไม่บังคับ

อัปเดตบางส่วน ตัวระบุและผู้ค้าเจ้าของเปลี่ยนไม่ได้

reporting_currencyไม่บังคับ

อัปเดตบางส่วน ตัวระบุและผู้ค้าเจ้าของเปลี่ยนไม่ได้

reporting_timezoneไม่บังคับ

อัปเดตบางส่วน ตัวระบุและผู้ค้าเจ้าของเปลี่ยนไม่ได้

checkout_titleไม่บังคับ

อัปเดตบางส่วน ตัวระบุและผู้ค้าเจ้าของเปลี่ยนไม่ได้

checkout_descriptionไม่บังคับ

อัปเดตบางส่วน ตัวระบุและผู้ค้าเจ้าของเปลี่ยนไม่ได้

checkout_themeไม่บังคับ

อัปเดตบางส่วน ตัวระบุและผู้ค้าเจ้าของเปลี่ยนไม่ได้

checkout_accent_colorไม่บังคับ

อัปเดตบางส่วน ตัวระบุและผู้ค้าเจ้าของเปลี่ยนไม่ได้

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "33333333-3333-4333-8333-333333333333",
  "slug": "example-shop",
  "name": "Example shop",
  "enabled": false,
  "reporting_currency": "EUR",
  "reporting_timezone": "Europe/Berlin",
  "stores": []
}

ฟิลด์การตอบกลับ

idstring
slugstring
namestring
enabledboolean
reporting_currencystring
reporting_timezonestring
stores[]array
หมายเหตุการใช้งาน
  • ต้องมี projects.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/storesอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

project_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

พารามิเตอร์ query

pageไม่บังคับ
หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเองรายละเอียด

หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects/YOUR_PROJECT_ID/stores" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "page": 1,
  "page_size": 25,
  "total": 0
}

ฟิลด์การตอบกลับ

data[]array
pageinteger
page_sizeinteger
totalinteger
หมายเหตุการใช้งาน
  • ต้องมี projects.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTสร้างร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/storesอ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

project_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects/YOUR_PROJECT_ID/stores" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "Web checkout",
  "slug": "web-checkout",
  "default_currency": "EUR",
  "enabled": false
}'

เนื้อหาคำขอ

namestringsจำเป็น

ชื่อร้านค้าและตัวระบุที่คงที่

slugstringsจำเป็น

ชื่อร้านค้าและตัวระบุที่คงที่

default_currencyไม่บังคับ

ใช้สตริงทศนิยมสำหรับเปอร์เซ็นต์ ร้านค้าใหม่ใช้รูปลักษณ์ร้านค้าเริ่มต้นของโปรเจกต์

invoice_expiry_minutesไม่บังคับ

ใช้สตริงทศนิยมสำหรับเปอร์เซ็นต์ ร้านค้าใหม่ใช้รูปลักษณ์ร้านค้าเริ่มต้นของโปรเจกต์

exchange_rate_spread_percentไม่บังคับ

ใช้สตริงทศนิยมสำหรับเปอร์เซ็นต์ ร้านค้าใหม่ใช้รูปลักษณ์ร้านค้าเริ่มต้นของโปรเจกต์

underpayment_tolerance_percentไม่บังคับ

ใช้สตริงทศนิยมสำหรับเปอร์เซ็นต์ ร้านค้าใหม่ใช้รูปลักษณ์ร้านค้าเริ่มต้นของโปรเจกต์

enabledไม่บังคับ

ตั้งสินทรัพย์ที่ยอมรับด้วย payment-assets ใบแจ้งหนี้จำนวนศูนย์ปิดตามค่าเริ่มต้น

is_defaultไม่บังคับ

ตั้งสินทรัพย์ที่ยอมรับด้วย payment-assets ใบแจ้งหนี้จำนวนศูนย์ปิดตามค่าเริ่มต้น

allow_zero_amount_invoicesไม่บังคับ

ตั้งสินทรัพย์ที่ยอมรับด้วย payment-assets ใบแจ้งหนี้จำนวนศูนย์ปิดตามค่าเริ่มต้น

allow_underpaymentsไม่บังคับ

ตั้งสินทรัพย์ที่ยอมรับด้วย payment-assets ใบแจ้งหนี้จำนวนศูนย์ปิดตามค่าเริ่มต้น

allow_overpaymentsไม่บังคับ

ตั้งสินทรัพย์ที่ยอมรับด้วย payment-assets ใบแจ้งหนี้จำนวนศูนย์ปิดตามค่าเริ่มต้น

allowed_chain_slugsไม่บังคับ

ตั้งสินทรัพย์ที่ยอมรับด้วย payment-assets ใบแจ้งหนี้จำนวนศูนย์ปิดตามค่าเริ่มต้น

ipn_enabledไม่บังคับ

IPN และ URL ส่งกลับผ่านการตรวจ URL เดิม ไม่อนุญาต HTML/JavaScript ตามอำเภอใจ

default_ipn_urlไม่บังคับ

IPN และ URL ส่งกลับผ่านการตรวจ URL เดิม ไม่อนุญาต HTML/JavaScript ตามอำเภอใจ

default_redirect_urlไม่บังคับ

IPN และ URL ส่งกลับผ่านการตรวจ URL เดิม ไม่อนุญาต HTML/JavaScript ตามอำเภอใจ

default_cancel_urlไม่บังคับ

IPN และ URL ส่งกลับผ่านการตรวจ URL เดิม ไม่อนุญาต HTML/JavaScript ตามอำเภอใจ

redirect_automaticallyไม่บังคับ

IPN และ URL ส่งกลับผ่านการตรวจ URL เดิม ไม่อนุญาต HTML/JavaScript ตามอำเภอใจ

checkout_languageไม่บังคับ

ใช้ภาษาที่รองรับและโดเมนตามบทบาทที่ใช้งาน ตั้ง origin สำหรับฝังอย่างชัดเจน

embed_enabledไม่บังคับ

ใช้ภาษาที่รองรับและโดเมนตามบทบาทที่ใช้งาน ตั้ง origin สำหรับฝังอย่างชัดเจน

allowed_embed_originsไม่บังคับ

ใช้ภาษาที่รองรับและโดเมนตามบทบาทที่ใช้งาน ตั้ง origin สำหรับฝังอย่างชัดเจน

domainsไม่บังคับ

ใช้ภาษาที่รองรับและโดเมนตามบทบาทที่ใช้งาน ตั้ง origin สำหรับฝังอย่างชัดเจน

การตอบกลับ 201 or 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "44444444-4444-4444-8444-444444444444",
  "project_id": "33333333-3333-4333-8333-333333333333",
  "slug": "online",
  "name": "Online shop",
  "enabled": false,
  "default_currency": "EUR",
  "invoice_expiry_minutes": 60
}

ฟิลด์การตอบกลับ

idstring
project_idstring
slugstring
namestring
enabledboolean
default_currencystring
invoice_expiry_minutesinteger
หมายเหตุการใช้งาน
  • ต้องมี projects.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETดึงข้อมูลร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}อ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

project_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

store_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects/YOUR_PROJECT_ID/stores/YOUR_STORE_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "44444444-4444-4444-8444-444444444444",
  "project_id": "33333333-3333-4333-8333-333333333333",
  "slug": "online",
  "name": "Online shop",
  "enabled": false,
  "default_currency": "EUR",
  "invoice_expiry_minutes": 60
}

ฟิลด์การตอบกลับ

idstring
project_idstring
slugstring
namestring
enabledboolean
default_currencystring
invoice_expiry_minutesinteger
หมายเหตุการใช้งาน
  • ต้องมี projects.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTอัปเดตร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}อ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

project_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

store_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects/YOUR_PROJECT_ID/stores/YOUR_STORE_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "enabled": true
}'

เนื้อหาคำขอ

store fieldsไม่บังคับ

ตั้งค่าที่แก้ได้เหมือนการสร้างร้านค้า ยกเว้น slug เปลี่ยนเฉพาะฟิลด์ที่ส่งมา

enabledboolean

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "44444444-4444-4444-8444-444444444444",
  "project_id": "33333333-3333-4333-8333-333333333333",
  "slug": "online",
  "name": "Online shop",
  "enabled": false,
  "default_currency": "EUR",
  "invoice_expiry_minutes": 60
}

ฟิลด์การตอบกลับ

idstring
project_idstring
slugstring
namestring
enabledboolean
default_currencystring
invoice_expiry_minutesinteger
หมายเหตุการใช้งาน
  • ต้องมี projects.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETดึงข้อมูลรูปลักษณ์ร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}/checkout-appearanceอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

project_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

store_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects/YOUR_PROJECT_ID/stores/YOUR_STORE_ID/checkout-appearance" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "revision": 1,
  "settings": {
    "inherit_default_store": true
  },
  "effective": {
    "title": "Pay securely"
  }
}

ฟิลด์การตอบกลับ

revisioninteger
settingsobject
inherit_default_storeboolean
effectiveobject
titlestring
หมายเหตุการใช้งาน
  • ต้องมี projects.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTอัปเดตรูปลักษณ์ร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}/checkout-appearanceอ่าน + เขียน

บันทึกดีไซน์ร้านค้าที่ตรวจสอบและป้องกันด้วยรุ่นแก้ไข

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

project_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

store_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects/YOUR_PROJECT_ID/stores/YOUR_STORE_ID/checkout-appearance" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "revision": 1,
  "settings": {
    "inherit_default_store": false,
    "title": "Pay securely",
    "theme": "light"
  }
}'

เนื้อหาคำขอ

revisionintegerจำเป็น

อ่าน revision ปัจจุบันด้วย GET ก่อน รุ่นแก้ไขเก่าจะล้มเหลวโดยไม่ทับงานผู้แก้ไขคนอื่น

settingsobjectจำเป็น
รูปลักษณ์หน้าชำระเงินที่ตรวจสอบแล้ว รวม inherit_default_store, แบรนด์ ข้อความนำ/ท้าย ขนาดตัวอักษร และการแสดงผล ไม่อนุญาต HTML/JavaScript ตามอำเภอใจ อัปโหลดไบต์รูปภาพได้เฉพาะคอนโซลรายละเอียด

รูปลักษณ์หน้าชำระเงินที่ตรวจสอบแล้ว รวม inherit_default_store, แบรนด์ ข้อความนำ/ท้าย ขนาดตัวอักษร และการแสดงผล ไม่อนุญาต HTML/JavaScript ตามอำเภอใจ อัปโหลดไบต์รูปภาพได้เฉพาะคอนโซล

inherit_default_storeboolean
titlestring
themestring

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "settings": {
    "inherit_default_store": false,
    "title": "Pay securely",
    "theme": "light"
  },
  "revision": 2
}

ฟิลด์การตอบกลับ

settingsobject
inherit_default_storeboolean
titlestring
themestring
revisioninteger
หมายเหตุการใช้งาน
  • ต้องมี projects.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการสินทรัพย์รับชำระของร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}/payment-assetsอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

project_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

store_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects/YOUR_PROJECT_ID/stores/YOUR_STORE_ID/payment-assets" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": []
}

ฟิลด์การตอบกลับ

data[]array
หมายเหตุการใช้งาน
  • ต้องมี projects.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTอัปเดตสินทรัพย์รับชำระของร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}/payment-assetsอ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

project_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

store_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects/YOUR_PROJECT_ID/stores/YOUR_STORE_ID/payment-assets" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "assets": [
    {
      "asset_id": "11111111-1111-4111-8111-111111111111",
      "display_order": 0
    }
  ]
}'

เนื้อหาคำขอ

assets[]object[]จำเป็น
แทนที่วิธีบนเชนทั้งหมดด้วย UUID asset_id และ display_order ค่า [] ล้างสินทรัพย์บนเชนที่ยอมรับ ใช้เฉพาะสินทรัพย์โปรเจกต์ที่ตรวจสอบแล้ว ไม่ตั้งค่า Lightningรายละเอียด

แทนที่วิธีบนเชนทั้งหมดด้วย UUID asset_id และ display_order ค่า [] ล้างสินทรัพย์บนเชนที่ยอมรับ ใช้เฉพาะสินทรัพย์โปรเจกต์ที่ตรวจสอบแล้ว ไม่ตั้งค่า Lightning

asset_idstring
display_orderinteger

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": []
}

ฟิลด์การตอบกลับ

data[]array
หมายเหตุการใช้งาน
  • ต้องมี projects.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการ webhook ของร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}/webhooksอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

project_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

store_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

พารามิเตอร์ query

pageไม่บังคับ
หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเองรายละเอียด

หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects/YOUR_PROJECT_ID/stores/YOUR_STORE_ID/webhooks" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "page": 1,
  "page_size": 25,
  "total": 0
}

ฟิลด์การตอบกลับ

data[]array
pageinteger
page_sizeinteger
totalinteger
หมายเหตุการใช้งาน
  • ต้องมี projects.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTสร้าง webhook ของร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}/webhooksอ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

project_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

store_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects/YOUR_PROJECT_ID/stores/YOUR_STORE_ID/webhooks" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "Orders",
  "url": "https://shop.example.test/payments",
  "event_types": [
    "invoice.settled"
  ],
  "enabled": true,
  "automatic_redelivery": true
}'

เนื้อหาคำขอ

namestrings / arrayจำเป็น

ตัวรับ HTTPS สาธารณะและชื่อเหตุการณ์ใบแจ้งหนี้จากเอกสาร IPN และ webhook

urlstrings / arrayจำเป็น

ตัวรับ HTTPS สาธารณะและชื่อเหตุการณ์ใบแจ้งหนี้จากเอกสาร IPN และ webhook

event_types[]strings / arrayจำเป็น

ตัวรับ HTTPS สาธารณะและชื่อเหตุการณ์ใบแจ้งหนี้จากเอกสาร IPN และ webhook

enabledbooleansไม่บังคับ

การสร้างคืนซีเคร็ตลงนามครั้งเดียว นี่คือ callback การชำระของร้านค้า ไม่ใช่เหตุการณ์วงจรสถานะ Operator

automatic_redeliverybooleansไม่บังคับ

การสร้างคืนซีเคร็ตลงนามครั้งเดียว นี่คือ callback การชำระของร้านค้า ไม่ใช่เหตุการณ์วงจรสถานะ Operator

การตอบกลับ 201 or 200 application/json

ตัวอย่างการตอบกลับ
{
  "signing_secret": "EXAMPLE_ONLY_SAVE_ONCE",
  "endpoint": {
    "id": "44444444-4444-4444-8444-444444444444",
    "name": "Orders",
    "enabled": true
  },
  "secret_visible_once": true
}

ฟิลด์การตอบกลับ

signing_secretstring
endpointobject
idstring
namestring
enabledboolean
secret_visible_onceboolean
หมายเหตุการใช้งาน
  • ต้องมี projects.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTอัปเดต webhook ของร้านค้า/v1/operator/merchants/{merchant_id}/projects/{project_id}/stores/{store_id}/webhooks/{webhook_id}อ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

project_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

store_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

webhook_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects/YOUR_PROJECT_ID/stores/YOUR_STORE_ID/webhooks/YOUR_WEBHOOK_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "Orders",
  "url": "https://shop.example.test/payments",
  "event_types": [
    "invoice.settled"
  ],
  "enabled": false,
  "automatic_redelivery": true
}'

เนื้อหาคำขอ

namestrings / arrayจำเป็น

ตัวรับ HTTPS สาธารณะและชื่อเหตุการณ์ใบแจ้งหนี้จากเอกสาร IPN และ webhook

urlstrings / arrayจำเป็น

ตัวรับ HTTPS สาธารณะและชื่อเหตุการณ์ใบแจ้งหนี้จากเอกสาร IPN และ webhook

event_types[]strings / arrayจำเป็น

ตัวรับ HTTPS สาธารณะและชื่อเหตุการณ์ใบแจ้งหนี้จากเอกสาร IPN และ webhook

enabledbooleansไม่บังคับ

การสร้างคืนซีเคร็ตลงนามครั้งเดียว นี่คือ callback การชำระของร้านค้า ไม่ใช่เหตุการณ์วงจรสถานะ Operator

automatic_redeliverybooleansไม่บังคับ

การสร้างคืนซีเคร็ตลงนามครั้งเดียว นี่คือ callback การชำระของร้านค้า ไม่ใช่เหตุการณ์วงจรสถานะ Operator

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "44444444-4444-4444-8444-444444444444",
  "name": "Orders",
  "enabled": true
}

ฟิลด์การตอบกลับ

idstring
namestring
enabledboolean
หมายเหตุการใช้งาน
  • ต้องมี projects.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการใบแจ้งหนี้/v1/operator/merchants/{merchant_id}/projects/{project_id}/invoicesอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

project_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

พารามิเตอร์ query

limitไม่บังคับ

การแบ่งหน้าและตัวกรองใบแจ้งหนี้ เหมือนรายการใบแจ้งหนี้ของโปรเจกต์

offsetไม่บังคับ

การแบ่งหน้าและตัวกรองใบแจ้งหนี้ เหมือนรายการใบแจ้งหนี้ของโปรเจกต์

statusไม่บังคับ

การแบ่งหน้าและตัวกรองใบแจ้งหนี้ เหมือนรายการใบแจ้งหนี้ของโปรเจกต์

store_idไม่บังคับ

การแบ่งหน้าและตัวกรองใบแจ้งหนี้ เหมือนรายการใบแจ้งหนี้ของโปรเจกต์

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects/YOUR_PROJECT_ID/invoices" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "pagination": {
    "limit": 25,
    "offset": 0,
    "total": 0,
    "has_more": false
  }
}

ฟิลด์การตอบกลับ

data[]array
paginationobject
limitinteger
offsetinteger
totalinteger
has_moreboolean
หมายเหตุการใช้งาน
  • ต้องมี reports.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETดึงข้อมูลใบแจ้งหนี้/v1/operator/merchants/{merchant_id}/projects/{project_id}/invoices/{invoice_id}อ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

project_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

invoice_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects/YOUR_PROJECT_ID/invoices/YOUR_INVOICE_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "invoice_id": "44444444-4444-4444-8444-444444444444",
  "project_id": "33333333-3333-4333-8333-333333333333",
  "amount": "25",
  "currency": "EUR",
  "status": "new",
  "metadata": {},
  "payment_intents": []
}

ฟิลด์การตอบกลับ

invoice_idstring
project_idstring
amountstring
currencystring
statusstring
metadataobject
payment_intents[]array
หมายเหตุการใช้งาน
  • ต้องมี reports.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้
  • invoice_id คือ ID สาธารณะของใบแจ้งหนี้ที่คืนเมื่อสร้างและใน callback ไม่ใช่ id ภายใน

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการกระเป๋า/v1/operator/merchants/{merchant_id}/projects/{project_id}/walletsอ่านอย่างเดียว

อ่านยอดคงเหลือสาธารณะของกระเป๋าจากแคช ไม่อ่านคีย์ส่วนตัวหรือวลีกู้คืนเด็ดขาด

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

project_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

พารามิเตอร์ query

pageไม่บังคับ
หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเองรายละเอียด

หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects/YOUR_PROJECT_ID/wallets" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "page": 1,
  "page_size": 25,
  "total": 0
}

ฟิลด์การตอบกลับ

data[]array
pageinteger
page_sizeinteger
totalinteger
หมายเหตุการใช้งาน
  • ต้องมี reports.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ยอดคงเหลือเป็นข้อมูลที่ตรวจพบและแคชไว้พร้อมฟิลด์ความใหม่ ไม่รับประกันยอดที่ใช้จ่ายได้ API นี้ส่งเงินหรือส่งออกคีย์ไม่ได้
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการที่อยู่กระเป๋า/v1/operator/merchants/{merchant_id}/projects/{project_id}/wallets/{wallet_id}/addressesอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

project_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

wallet_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

พารามิเตอร์ query

limitไม่บังคับ
Limit 1–50 ค่าเริ่มต้น 25 ส่ง next_cursor เป็น before เพื่ออ่านหน้าถัดไป ไม่ใส่ before สำหรับหน้า 1 ใช้ has_balance=false และ hide_small_balances=false เพื่อรวมยอดว่าง/ยอดน้อยรายละเอียด

Limit 1–50 ค่าเริ่มต้น 25 ส่ง next_cursor เป็น before เพื่ออ่านหน้าถัดไป ไม่ใส่ before สำหรับหน้า 1 ใช้ has_balance=false และ hide_small_balances=false เพื่อรวมยอดว่าง/ยอดน้อย

beforeไม่บังคับ
Limit 1–50 ค่าเริ่มต้น 25 ส่ง next_cursor เป็น before เพื่ออ่านหน้าถัดไป ไม่ใส่ before สำหรับหน้า 1 ใช้ has_balance=false และ hide_small_balances=false เพื่อรวมยอดว่าง/ยอดน้อยรายละเอียด

Limit 1–50 ค่าเริ่มต้น 25 ส่ง next_cursor เป็น before เพื่ออ่านหน้าถัดไป ไม่ใส่ before สำหรับหน้า 1 ใช้ has_balance=false และ hide_small_balances=false เพื่อรวมยอดว่าง/ยอดน้อย

has_balanceไม่บังคับ
Limit 1–50 ค่าเริ่มต้น 25 ส่ง next_cursor เป็น before เพื่ออ่านหน้าถัดไป ไม่ใส่ before สำหรับหน้า 1 ใช้ has_balance=false และ hide_small_balances=false เพื่อรวมยอดว่าง/ยอดน้อยรายละเอียด

Limit 1–50 ค่าเริ่มต้น 25 ส่ง next_cursor เป็น before เพื่ออ่านหน้าถัดไป ไม่ใส่ before สำหรับหน้า 1 ใช้ has_balance=false และ hide_small_balances=false เพื่อรวมยอดว่าง/ยอดน้อย

hide_small_balancesไม่บังคับ
Limit 1–50 ค่าเริ่มต้น 25 ส่ง next_cursor เป็น before เพื่ออ่านหน้าถัดไป ไม่ใส่ before สำหรับหน้า 1 ใช้ has_balance=false และ hide_small_balances=false เพื่อรวมยอดว่าง/ยอดน้อยรายละเอียด

Limit 1–50 ค่าเริ่มต้น 25 ส่ง next_cursor เป็น before เพื่ออ่านหน้าถัดไป ไม่ใส่ before สำหรับหน้า 1 ใช้ has_balance=false และ hide_small_balances=false เพื่อรวมยอดว่าง/ยอดน้อย

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/projects/YOUR_PROJECT_ID/wallets/YOUR_WALLET_ID/addresses" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "wallet": {
    "id": "22222222-2222-4222-8222-222222222222",
    "chain_slug": "ethereum"
  },
  "items": [],
  "total": 0,
  "total_pages": 1,
  "next_cursor": null,
  "reporting_currency": "EUR",
  "has_balance": true,
  "hide_small_balances": true,
  "small_balance_threshold": {
    "amount": "0.20",
    "currency": "EUR"
  }
}

ฟิลด์การตอบกลับ

walletobject
idstring
chain_slugstring
items[]array
totalinteger
total_pagesinteger
next_cursorJSON | null
reporting_currencystring
has_balanceboolean
hide_small_balancesboolean
small_balance_thresholdobject
amountstring
currencystring
หมายเหตุการใช้งาน
  • ต้องมี reports.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการข้อมูลรับรองของผู้ค้า/v1/operator/merchants/{merchant_id}/api-credentialsอ่านอย่างเดียว

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

พารามิเตอร์ query

pageไม่บังคับ
หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเองรายละเอียด

หน้าเริ่มที่ 1 หน้าละ 25 รายการ ค้นหาได้ในผู้ค้า ผู้ใช้ โปรเจกต์ ร้านค้า กระเป๋า ข้อมูลรับรอง และ webhook รายการเหตุการณ์เฉพาะใช้ตัวกรองของตนเอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/api-credentials" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "page": 1,
  "page_size": 25,
  "total": 0
}

ฟิลด์การตอบกลับ

data[]array
pageinteger
page_sizeinteger
totalinteger
หมายเหตุการใช้งาน
  • ต้องมี merchant_credentials.read เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTสร้างข้อมูลรับรองผู้ค้า/v1/operator/merchants/{merchant_id}/api-credentialsอ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/api-credentials" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "Store integration",
  "access_level": "read_only",
  "enabled": true,
  "ip_restriction_enabled": false,
  "allowed_ips": [],
  "project_ids": [
    "11111111-1111-4111-8111-111111111111"
  ]
}'

เนื้อหาคำขอ

namestringจำเป็น

ป้ายชื่อสำหรับคีย์ผู้ค้าปกติใหม่ ไม่ใช่คีย์ Operator

access_levelread_only | read_writeไม่บังคับ

สิทธิ์อ่าน/เขียนเปิดความสามารถตามข้อกำหนด API ผู้ค้าเดิม

project_ids[]UUID[]

เฉพาะโปรเจกต์ของผู้ค้าที่เลือก รายการว่างใช้นโยบายเดิมที่เข้าถึงทุกโปรเจกต์ของผู้ค้า

enabledไม่บังคับ

ตัวควบคุมคีย์ผู้ค้าเดิม ซีเคร็ตคืนเพียงครั้งเดียว ต้องมี merchant_credentials.write

ip_restriction_enabledไม่บังคับ

ตัวควบคุมคีย์ผู้ค้าเดิม ซีเคร็ตคืนเพียงครั้งเดียว ต้องมี merchant_credentials.write

allowed_ips[]ไม่บังคับ

ตัวควบคุมคีย์ผู้ค้าเดิม ซีเคร็ตคืนเพียงครั้งเดียว ต้องมี merchant_credentials.write

requests_per_minuteไม่บังคับ

ตัวควบคุมคีย์ผู้ค้าเดิม ซีเคร็ตคืนเพียงครั้งเดียว ต้องมี merchant_credentials.write

การตอบกลับ 201 or 200 application/json

ตัวอย่างการตอบกลับ
{
  "credential": {
    "id": "22222222-2222-4222-8222-222222222222",
    "name": "Checkout",
    "access_level": "read_only",
    "project_ids": [
      "33333333-3333-4333-8333-333333333333"
    ],
    "enabled": true
  },
  "token": "wc_live_EXAMPLE_ONLY_SAVE_ONCE"
}

ฟิลด์การตอบกลับ

credentialobject
idstring
namestring
access_levelstring
project_ids[]array
enabledboolean
tokenstring
หมายเหตุการใช้งาน
  • ต้องมี merchant_credentials.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTอัปเดตข้อมูลรับรองผู้ค้า/v1/operator/merchants/{merchant_id}/api-credentials/{credential_id}อ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

credential_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/api-credentials/YOUR_CREDENTIAL_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "Checkout",
  "access_level": "read_only",
  "enabled": true,
  "ip_restriction_enabled": false,
  "allowed_ips": [],
  "project_ids": [
    "33333333-3333-4333-8333-333333333333"
  ]
}'

เนื้อหาคำขอ

namefieldsจำเป็น

ส่งการตั้งค่าข้อมูลรับรองปัจจุบันทั้งหมดพร้อมการเปลี่ยนแปลง project_ids มีค่าเริ่มต้น []; requests_per_minute ใช้โควตา API ผู้ค้าเป็นค่าเริ่มต้น

access_levelfieldsจำเป็น

ส่งการตั้งค่าข้อมูลรับรองปัจจุบันทั้งหมดพร้อมการเปลี่ยนแปลง project_ids มีค่าเริ่มต้น []; requests_per_minute ใช้โควตา API ผู้ค้าเป็นค่าเริ่มต้น

enabledfieldsจำเป็น

ส่งการตั้งค่าข้อมูลรับรองปัจจุบันทั้งหมดพร้อมการเปลี่ยนแปลง project_ids มีค่าเริ่มต้น []; requests_per_minute ใช้โควตา API ผู้ค้าเป็นค่าเริ่มต้น

ip_restriction_enabledfieldsจำเป็น

ส่งการตั้งค่าข้อมูลรับรองปัจจุบันทั้งหมดพร้อมการเปลี่ยนแปลง project_ids มีค่าเริ่มต้น []; requests_per_minute ใช้โควตา API ผู้ค้าเป็นค่าเริ่มต้น

allowed_ips[]fieldsจำเป็น

ส่งการตั้งค่าข้อมูลรับรองปัจจุบันทั้งหมดพร้อมการเปลี่ยนแปลง project_ids มีค่าเริ่มต้น []; requests_per_minute ใช้โควตา API ผู้ค้าเป็นค่าเริ่มต้น

project_ids[]array

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "id": "22222222-2222-4222-8222-222222222222",
  "name": "Checkout",
  "access_level": "read_only",
  "project_ids": [
    "33333333-3333-4333-8333-333333333333"
  ],
  "enabled": true
}

ฟิลด์การตอบกลับ

idstring
namestring
access_levelstring
project_ids[]array
enabledboolean
หมายเหตุการใช้งาน
  • ต้องมี merchant_credentials.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTหมุนเวียนข้อมูลรับรองผู้ค้า/v1/operator/merchants/{merchant_id}/api-credentials/{credential_id}/rotateอ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

credential_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/api-credentials/YOUR_CREDENTIAL_ID/rotate" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{}'

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "credential": {
    "id": "22222222-2222-4222-8222-222222222222",
    "name": "Checkout",
    "access_level": "read_only",
    "project_ids": [
      "33333333-3333-4333-8333-333333333333"
    ],
    "enabled": true
  },
  "token": "wc_live_EXAMPLE_ONLY_SAVE_ONCE"
}

ฟิลด์การตอบกลับ

credentialobject
idstring
namestring
access_levelstring
project_ids[]array
enabledboolean
tokenstring
หมายเหตุการใช้งาน
  • ต้องมี merchant_credentials.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTเพิกถอนข้อมูลรับรองผู้ค้า/v1/operator/merchants/{merchant_id}/api-credentials/{credential_id}/revokeอ่าน + เขียน

จัดการหรือตรวจทรัพยากรผู้ค้าที่โฮสต์ตามชื่อ โดยใช้ข้อมูลรับรอง Operator แยก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_OPERATOR_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรสำหรับการดำเนินการนี้

พารามิเตอร์พาธ

merchant_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

credential_idUUIDจำเป็น

UUID ทรัพยากรรูปแบบมาตรฐานตัวพิมพ์เล็ก ต้องอยู่ในขอบเขตผู้ค้าของข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/operator/merchants/YOUR_MERCHANT_ID/api-credentials/YOUR_CREDENTIAL_ID/revoke" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: operator-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{}'

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "revoked": true
}

ฟิลด์การตอบกลับ

revokedboolean
หมายเหตุการใช้งาน
  • ต้องมี merchant_credentials.write เฉพาะผู้ค้าที่โฮสต์และได้รับอนุญาต คีย์ Operator ไม่เข้าถึงพื้นที่ธุรกิจของเจ้าของเอง
  • บันทึก Idempotency-Key ที่ไม่ซ้ำและเนื้อหาเดิมทุกไบต์แบบถาวรก่อนส่ง การลองใหม่ไม่ทำซ้ำการกระทำที่ commit แล้ว การเรียกซ้ำละเว้นฟิลด์ซีเคร็ต หากการตอบกลับซีเคร็ตสูญหาย ให้ตรวจทรัพยากรที่สร้างแล้วหมุนเวียน/ออกใหม่อย่างชัดเจน 409 operator_request_in_progress อาจหมายถึงคำขอถูกขัดจังหวะและไม่ทราบผล ตรวจทรัพยากร/บันทึกตรวจสอบ อย่าลองด้วยคีย์ใหม่โดยไม่ตรวจดู
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTตรวจสอบโทเคนคำเชิญ/v1/onboarding/invitations/checkสาธารณะ

เริ่มใช้งานด้วยโทเคนเท่านั้น ไม่รับคีย์ Operator หรือเข้าสู่ระบบอัตโนมัติ การล็อกอินคอนโซลยังต้องผ่าน Basic Auth ของไซต์และ TOTP เดิม

การยืนยันตัวตนและเฮดเดอร์

สาธารณะ

คำขอ

curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/onboarding/invitations/check" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "token": "YOUR_PRIVATE_INVITATION_TOKEN"
}'

เนื้อหาคำขอ

tokenstringจำเป็น

ซีเคร็ตจาก fragment ของ URL คำเชิญ ห้ามบันทึกลง log

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "kind": "invitation",
  "email": "admin@example.test",
  "merchant_name": "Example shop"
}

ฟิลด์การตอบกลับ

kindstring
emailstring
merchant_namestring
หมายเหตุการใช้งาน
  • คำเชิญ 48 ชั่วโมง ลิงก์รีเซ็ตรหัสผ่านหนึ่งชั่วโมง โทเคนแฮชใช้ครั้งเดียว ออกใหม่จะเพิกถอนลิงก์ก่อนหน้า การตอบรับคง TOTP และเพิกถอนเซสชันเก่า
  • ไม่มีการลองใหม่อัตโนมัติ หากตอบรับแล้วหมดเวลารอ ให้ตรวจสถานะลิงก์และลองเข้าสู่ระบบ อย่าคิดว่าล้มเหลว จำกัดอัตราตาม IP ต้นทางที่เห็น ผู้รับต้องยอมรับเงื่อนไขการถือครองคีย์ด้วยตนเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTตอบรับคำเชิญหรือรีเซ็ตรหัสผ่าน/v1/onboarding/invitations/acceptสาธารณะ

เริ่มใช้งานด้วยโทเคนเท่านั้น ไม่รับคีย์ Operator หรือเข้าสู่ระบบอัตโนมัติ การล็อกอินคอนโซลยังต้องผ่าน Basic Auth ของไซต์และ TOTP เดิม

การยืนยันตัวตนและเฮดเดอร์

สาธารณะ

คำขอ

curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/onboarding/invitations/accept" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "token": "YOUR_PRIVATE_INVITATION_TOKEN",
  "password": "REPLACE_WITH_YOUR_OWN_UNIQUE_PASSWORD",
  "custody_acknowledged": true
}'

เนื้อหาคำขอ

tokenstringจำเป็น

ซีเคร็ตจาก fragment ของ URL คำเชิญ ห้ามบันทึกลง log

passwordstringจำเป็น

รหัสผ่านใหม่ 12–128 อักขระ (ไม่เกิน 512 ไบต์ UTF-8)

custody_acknowledgedboolean

ต้องเป็น true เมื่อตอบรับคำเชิญกระเป๋าที่โฮสต์ใหม่

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "password_set": true
}

ฟิลด์การตอบกลับ

password_setboolean
หมายเหตุการใช้งาน
  • คำเชิญ 48 ชั่วโมง ลิงก์รีเซ็ตรหัสผ่านหนึ่งชั่วโมง โทเคนแฮชใช้ครั้งเดียว ออกใหม่จะเพิกถอนลิงก์ก่อนหน้า การตอบรับคง TOTP และเพิกถอนเซสชันเก่า
  • ไม่มีการลองใหม่อัตโนมัติ หากตอบรับแล้วหมดเวลารอ ให้ตรวจสถานะลิงก์และลองเข้าสู่ระบบ อย่าคิดว่าล้มเหลว จำกัดอัตราตาม IP ต้นทางที่เห็น ผู้รับต้องยอมรับเงื่อนไขการถือครองคีย์ด้วยตนเอง
  • ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือกไว้ ให้ถือฟิลด์เพิ่มเติมในการตอบกลับเป็นการเพิ่มที่รองรับได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETความสามารถ/v1/marketplace/capabilitiesอ่านอย่างเดียว

ร้านค้าที่เข้าร่วม สินทรัพย์ที่ตั้งค่า ช่องทางจ่ายเงินที่รองรับ สินทรัพย์เหรียญหลักสำหรับค่าธรรมเนียม และเหตุผลความพร้อม ความพร้อมชั่วคราวของสแกนเนอร์ไม่ได้ขยายชุดสินทรัพย์ที่อนุญาต

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/capabilities?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETรายงาน Marketplace/v1/marketplace/overviewอ่านอย่างเดียว

กรอง store_id, asset_id, from และ to (รวมวันต้น/ปลาย รูปแบบ YYYY-MM-DD, UTC; ค่าเริ่มต้น 30 วันล่าสุด; สูงสุดสิบปี) แสดงยอดบัญชีที่แน่นอน ณ วันสิ้นสุดและการเปลี่ยนแปลงระหว่างช่วง ไม่มีรายได้เงินตราทั่วไปแบบประมาณ ตัวกรองร้านค้าไม่รวมค่าธรรมเนียมระดับโปรเจกต์ที่ไม่มีใบแจ้งหนี้

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/overview?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETการตั้งค่าโปรเจกต์/v1/marketplace/settingsอ่านอย่างเดียว

คืน enabled, payouts_paused, commission_percent, revision และร้านค้าที่เข้าร่วม

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/settings?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTบันทึกการตั้งค่าโปรเจกต์/v1/marketplace/settingsอ่าน + เขียน

แทนที่การเลือกร้านค้าที่เข้าร่วม revision 0 เริ่มการตั้งค่า การแก้ไขภายหลังต้องใช้ revision ที่คืนมา ค่าคอมมิชชันเป็นเปอร์เซ็นต์ทศนิยม 0–100 ไม่เกินสองตำแหน่ง

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopepolicies.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/settings" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "revision": 0,
  "enabled": true,
  "payouts_paused": true,
  "commission_percent": "4",
  "stores": [
    {
      "store_id": "YOUR_STORE_ID",
      "enabled": true,
      "commission_percent": null
    }
  ]
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

revision

0

enabled

true

payouts_paused

true

commission_percent

"4"

stores[]object[]

[{"store_id":"YOUR_STORE_ID","enabled":true,"commission_percent":null}]

store_idstring
enabledboolean
commission_percentJSON | null

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี policies.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการผู้ขาย/v1/marketplace/vendorsอ่านอย่างเดียว

ผู้ขายแบบแบ่งหน้า ค้น q จากชื่อ ID ภายนอก หรืออีเมล; status เป็น active, suspended หรือ archived

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/vendors?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "pagination": {
    "page": 1,
    "per_page": 25,
    "total": 0,
    "pages": 1
  }
}

ฟิลด์การตอบกลับ

data[]array
paginationobject
pageinteger
per_pageinteger
totalinteger
pagesinteger
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTสร้างผู้ขาย/v1/marketplace/vendorsอ่าน + เขียน

ต้องมีชื่อ (160 อักขระ); external_id ไม่บังคับและไม่ซ้ำในโปรเจกต์ (128); email ไม่บังคับ (254); description สูงสุด 2000 ค่า commission_percent null ใช้ค่าร้านค้า override ที่ไม่ใช่ null ต้องมี commissions.override ด้วย ผู้ขายไม่ใช่บัญชีผู้ค้าที่โฮสต์

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopevendors.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/vendors" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "name": "Example vendor",
  "external_id": "vendor-1042",
  "email": "vendor@example.com",
  "description": "",
  "status": "active",
  "commission_percent": null
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

name

"ผู้ขายตัวอย่าง"

external_id

"vendor-1042"

email

"vendor@example.com"

description

""

status

"active"

commission_percent

null

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี vendors.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETดึงข้อมูลผู้ขาย/v1/marketplace/vendors/{vendor_id}อ่านอย่างเดียว

คืนผู้ขายหนึ่งราย revision และค่า override คอมมิชชัน

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/vendors/YOUR_VENDOR_ID?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTอัปเดตผู้ขาย/v1/marketplace/vendors/{vendor_id}/updateอ่าน + เขียน

อัปเดตรายละเอียดผู้ขาย; status เป็น active หรือ suspended การเปลี่ยนหรือลบ commission_percent ต้องมี commissions.override ด้วย ค่าที่ไม่เปลี่ยนต้องมีเพียง vendors.write การคืนผู้ขายที่เก็บเข้าคลังต้องมี reconciliation.write เพิ่ม การแก้ไขการเงินในคอนโซลต้องยืนยันบัญชีซ้ำ ยอดจัดสรรเดิมคงค่าคอมมิชชันและปลายทางเดิม

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopevendors.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/vendors/YOUR_VENDOR_ID/update" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "name": "Example vendor",
  "external_id": "vendor-1042",
  "email": "vendor@example.com",
  "description": "",
  "status": "active",
  "commission_percent": null,
  "revision": 1
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

name

"ผู้ขายตัวอย่าง"

external_id

"vendor-1042"

email

"vendor@example.com"

description

""

status

"active"

commission_percent

null

revision

1

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี vendors.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTเก็บผู้ขายเข้าคลัง/v1/marketplace/vendors/{vendor_id}/archiveอ่าน + เขียน

เก็บเข้าคลังได้ต่อเมื่อแก้ภาระยอดยังไม่จ่ายและใบแจ้งหนี้ที่เปิดอยู่แล้ว มิฉะนั้นคืน 409 vendor_has_obligations เก็บประวัติไว้ ใช้สถานะ suspended ชั่วคราว หรือคืนผู้ขายเก่าจากคลังด้วยเส้นทางอัปเดตและ reconciliation.write

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopevendors.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/vendors/YOUR_VENDOR_ID/archive" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "revision": 1
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

revision

1

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี vendors.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETปลายทางของผู้ขาย/v1/marketplace/vendors/{vendor_id}/destinationsอ่านอย่างเดียว

ปลายทางมีเวอร์ชันและสถานะ pending/approved/disabled การอนุมัติไม่ได้พิสูจน์ความเป็นเจ้าของ

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/vendors/YOUR_VENDOR_ID/destinations?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "pagination": {
    "page": 1,
    "per_page": 25,
    "total": 0,
    "pages": 1
  }
}

ฟิลด์การตอบกลับ

data[]array
paginationobject
pageinteger
per_pageinteger
totalinteger
pagesinteger
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTเพิ่มปลายทางจ่ายเงิน/v1/marketplace/vendors/{vendor_id}/destinationsอ่าน + เขียน

ลงทะเบียนที่อยู่ BTC mainnet หรือ EVM ที่รองรับและถูกต้อง เพื่อรออนุมัติ ปฏิเสธที่อยู่ของโปรเจกต์เอง เครือข่ายผิด และที่อยู่ EVM ศูนย์

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopedestinations.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/vendors/YOUR_VENDOR_ID/destinations" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "chain_slug": "bitcoin",
  "network": "mainnet",
  "address": "VERIFIED_VENDOR_BTC_ADDRESS",
  "label": "Vendor BTC"
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

chain_slug

"bitcoin"

network

"mainnet"

address

"VERIFIED_VENDOR_BTC_ADDRESS"

label

"BTC ของผู้ขาย"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี destinations.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTอนุมัติปลายทาง/v1/marketplace/vendors/{vendor_id}/destinations/{destination_id}/approveอ่าน + เขียน

ตรวจความเป็นเจ้าของอย่างอิสระก่อน ปิดปลายทางที่อนุมัติอยู่ของผู้ขาย/เครือข่ายนี้ก่อน ภาพข้อมูลเก่าไม่ถูกเปลี่ยนปลายทาง

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopedestinations.approve

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/vendors/YOUR_VENDOR_ID/destinations/YOUR_DESTINATION_ID/approve" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "revision": 1
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

revision

1

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี destinations.approve ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTปิดใช้งานปลายทาง/v1/marketplace/vendors/{vendor_id}/destinations/{destination_id}/disableอ่าน + เขียน

หยุดงานใหม่/ยังไม่ส่งที่ใช้เวอร์ชันนี้ ธุรกรรมที่ลงนามแล้วเพิกถอนไม่ได้

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopedestinations.approve

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/vendors/YOUR_VENDOR_ID/destinations/YOUR_DESTINATION_ID/disable" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "revision": 1
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

revision

1

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี destinations.approve ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETยอดคงเหลือของผู้ขาย/v1/marketplace/vendors/{vendor_id}/balancesอ่านอย่างเดียว

จำนวนที่แน่นอนในบัญชีแยกประเภทที่เก็บไว้ จัดกลุ่มตามตัวระบุสินทรัพย์ที่แก้ไขไม่ได้และชนิดบัญชี ไม่ใช่ยอดกระเป๋าสดที่ใช้จ่ายได้

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/vendors/YOUR_VENDOR_ID/balances?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETใบแจ้งหนี้ Marketplace/v1/marketplace/invoicesอ่านอย่างเดียว

ใบแจ้งหนี้แบบแบ่งหน้า q ค้นคำสั่งซื้อ อีเมล คำอธิบาย metadata และ UUID ใบแจ้งหนี้ กรอง store_id, vendor_id และสถานะ Marketplace ไม่รวมใบแจ้งหนี้ปกติ

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/invoices?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "pagination": {
    "page": 1,
    "per_page": 25,
    "total": 0,
    "pages": 1
  }
}

ฟิลด์การตอบกลับ

data[]array
paginationobject
pageinteger
per_pageinteger
totalinteger
pagesinteger
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTสร้างใบแจ้งหนี้หลายผู้ขาย/v1/marketplace/invoicesอ่าน + เขียน

ใช้ฟิลด์ InvoiceCreateInput ปกติร่วมกับ store_id และ allocations ผู้ขายแต่ละรายปรากฏครั้งเดียว มีส่วนแบ่งบวก 1–100 รายการ รวมเท่ากับ amount พอดี commission_percent ระดับใบแจ้งหนี้/รายจัดสรรแบบไม่บังคับต้องมี commissions.override และคำขอผ่านเซสชันต้องยืนยันตัวตนคอนโซลซ้ำ คืน data.invoice_id และ links.checkout หากไม่มีวิธีร่วมที่เข้ากันได้จะคืนข้อผิดพลาดละเอียด ไม่ใช้สินทรัพย์ที่ไม่เข้ากันเป็นตัวสำรอง

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopeinvoices.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/invoices" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "store_id": "YOUR_STORE_ID",
  "amount": "300.00",
  "currency": "USD",
  "order_id": "cart-1042",
  "allocations": [
    {
      "vendor_id": "VENDOR_A_UUID",
      "gross_amount": "100.00"
    },
    {
      "vendor_id": "VENDOR_B_UUID",
      "gross_amount": "100.00"
    },
    {
      "vendor_id": "VENDOR_C_UUID",
      "gross_amount": "100.00"
    }
  ]
}'

เนื้อหาคำขอ

amountstringจำเป็น
สตริงทศนิยมธรรมดาไม่มีเครื่องหมาย ไม่มีเลขยกกำลัง มีหลักจำนวนเต็มไม่เกิน 48 หลักและทศนิยม 30 ตำแหน่ง ค่าเริ่มต้นต้องเป็นบวก ร้านค้าอนุญาตใบแจ้งหนี้จำนวนศูนย์ได้ใน ร้านค้า → ใบแจ้งหนี้ ยอดศูนย์ชำระเสร็จสิ้นโดยไม่รับเงิน จัดสรรที่อยู่ หรือเสียค่าประมวลผลรายละเอียด

สตริงทศนิยมธรรมดาไม่มีเครื่องหมาย ไม่มีเลขยกกำลัง มีหลักจำนวนเต็มไม่เกิน 48 หลักและทศนิยม 30 ตำแหน่ง ค่าเริ่มต้นต้องเป็นบวก ร้านค้าอนุญาตใบแจ้งหนี้จำนวนศูนย์ได้ใน ร้านค้า → ใบแจ้งหนี้ ยอดศูนย์ชำระเสร็จสิ้นโดยไม่รับเงิน จัดสรรที่อยู่ หรือเสียค่าประมวลผล

currencystring | nullไม่บังคับ
รหัสสกุลเงินตราทั่วไปสามตัวอักษรที่รองรับ ปรับเป็นตัวพิมพ์ใหญ่ หากไม่ระบุหรือเป็น null ใช้สกุลเงินใบแจ้งหนี้ของร้านค้า การสร้างยังต้องมีอัตราแปลงการเรียกเก็บเงินที่พร้อมอย่างอิสระรายละเอียด

รหัสสกุลเงินตราทั่วไปสามตัวอักษรที่รองรับ ปรับเป็นตัวพิมพ์ใหญ่ หากไม่ระบุหรือเป็น null ใช้สกุลเงินใบแจ้งหนี้ของร้านค้า การสร้างยังต้องมีอัตราแปลงการเรียกเก็บเงินที่พร้อมอย่างอิสระ

payment_methods[]object[] | nullไม่บังคับ
เลือกวิธีที่ร้านค้าเปิดใช้สำหรับใบแจ้งหนี้นี้ Merchant 5.4.0+: ละเว้นตัวเลือกที่ไม่รู้จัก/ไม่ใช้งาน/ไม่ยอมรับ หากไม่ตรงเลยใช้ค่าเริ่มต้นร้านค้า ไม่ระบุ/null ก็ใช้ค่าเริ่มต้นร้านค้า; [] ไม่ถูกต้อง ไม่เปิดวิธีหรือเปลี่ยนการตั้งค่าร้านค้า ดูโครงสร้างการเลือกด้านล่างรายละเอียด

เลือกวิธีที่ร้านค้าเปิดใช้สำหรับใบแจ้งหนี้นี้ Merchant 5.4.0+: ละเว้นตัวเลือกที่ไม่รู้จัก/ไม่ใช้งาน/ไม่ยอมรับ หากไม่ตรงเลยใช้ค่าเริ่มต้นร้านค้า ไม่ระบุ/null ก็ใช้ค่าเริ่มต้นร้านค้า; [] ไม่ถูกต้อง ไม่เปิดวิธีหรือเปลี่ยนการตั้งค่าร้านค้า ดูโครงสร้างการเลือกด้านล่าง

chain_slugstringจำเป็น
คัดลอก chain_slug ใน โปรเจกต์ → ร้านค้า → วิธีชำระเงิน หรืออ่านจาก GET /v1/projects/{project_id}/stores/{store_id}/payment-assets เช่น ethereum, base หรือ bitcoin คู่ chain/rail ปรากฏได้ครั้งเดียวรายละเอียด

คัดลอก chain_slug ใน โปรเจกต์ → ร้านค้า → วิธีชำระเงิน หรืออ่านจาก GET /v1/projects/{project_id}/stores/{store_id}/payment-assets เช่น ethereum, base หรือ bitcoin คู่ chain/rail ปรากฏได้ครั้งเดียว

asset_ids[]UUID[] | nullไม่บังคับ
UUID asset.id บนเชน ไม่ใช่ที่อยู่คอนแทรกต์หรือ ID วิธีชำระของใบแจ้งหนี้ ใช้ค่านี้หรือ asset_tickers อย่างใดอย่างหนึ่ง ไม่ใส่ทั้งสองตัวเลือกเพื่อเลือกทุกสินทรัพย์ที่ใช้งานและยอมรับบนเชนนี้ [] และ ID ซ้ำ/ศูนย์ไม่ถูกต้อง ใน 5.4.0+ ละเว้น ID ที่ไม่ใช้งาน/ไม่ยอมรับบนเชนนี้ในร้านค้านี้ หากไม่ตรงทั้งหมดจะใช้ค่าเริ่มต้นร้านค้ารายละเอียด

UUID asset.id บนเชน ไม่ใช่ที่อยู่คอนแทรกต์หรือ ID วิธีชำระของใบแจ้งหนี้ ใช้ค่านี้หรือ asset_tickers อย่างใดอย่างหนึ่ง ไม่ใส่ทั้งสองตัวเลือกเพื่อเลือกทุกสินทรัพย์ที่ใช้งานและยอมรับบนเชนนี้ [] และ ID ซ้ำ/ศูนย์ไม่ถูกต้อง ใน 5.4.0+ ละเว้น ID ที่ไม่ใช้งาน/ไม่ยอมรับบนเชนนี้ในร้านค้านี้ หากไม่ตรงทั้งหมดจะใช้ค่าเริ่มต้นร้านค้า

asset_tickers[]string[] | nullไม่บังคับ
Merchant 5.3.0+ สัญลักษณ์เช่น BTC, USDC หรือ PEPE ในขอบเขต chain_slug และร้านค้านี้ ticker ไม่ซ้ำ 1–64 ค่า ตัดช่องว่างขอบ/ไม่แยกตัวพิมพ์เล็กใหญ่ ใช้ตัวอักษร ASCII/ตัวเลข/จุด/ขีดล่าง/ขีดกลาง 1–40 ตัว ใช้ค่านี้หรือ asset_ids อย่างใดอย่างหนึ่ง ใน 5.4.0+ ละเว้น ticker ที่ไม่รู้จัก/ไม่ใช้งาน/ไม่ยอมรับ สัญลักษณ์ที่ยอมรับแต่กำกวมยังล้มเหลว ให้ใช้ asset_ids วิธีที่เลือกและเปิดใช้ต้องมีกระเป๋ากับราคาที่ถูกต้อง สแกนเนอร์บนเชนล่มชั่วคราวไม่บล็อกการสร้างตั้งแต่ 6.0.6 Lightning รับ ticker ได้เฉพาะ BTC หากระบุรายละเอียด

Merchant 5.3.0+ สัญลักษณ์เช่น BTC, USDC หรือ PEPE ในขอบเขต chain_slug และร้านค้านี้ ticker ไม่ซ้ำ 1–64 ค่า ตัดช่องว่างขอบ/ไม่แยกตัวพิมพ์เล็กใหญ่ ใช้ตัวอักษร ASCII/ตัวเลข/จุด/ขีดล่าง/ขีดกลาง 1–40 ตัว ใช้ค่านี้หรือ asset_ids อย่างใดอย่างหนึ่ง ใน 5.4.0+ ละเว้น ticker ที่ไม่รู้จัก/ไม่ใช้งาน/ไม่ยอมรับ สัญลักษณ์ที่ยอมรับแต่กำกวมยังล้มเหลว ให้ใช้ asset_ids วิธีที่เลือกและเปิดใช้ต้องมีกระเป๋ากับราคาที่ถูกต้อง สแกนเนอร์บนเชนล่มชั่วคราวไม่บล็อกการสร้างตั้งแต่ 6.0.6 Lightning รับ ticker ได้เฉพาะ BTC หากระบุ

payment_railonchain | lightningไม่บังคับ
ค่าเริ่มต้น onchain หากเลือก Bitcoin Lightning ใช้ {chain_slug: bitcoin, payment_rail: lightning} โดยไม่มี asset_ids; asset_tickers อาจเป็น [BTC] ได้ Bitcoin บนเชนไม่รวม Lightning การเชื่อมต่อ Lightning ของร้านค้าต้องเปิดและพร้อมแล้วรายละเอียด

ค่าเริ่มต้น onchain หากเลือก Bitcoin Lightning ใช้ {chain_slug: bitcoin, payment_rail: lightning} โดยไม่มี asset_ids; asset_tickers อาจเป็น [BTC] ได้ Bitcoin บนเชนไม่รวม Lightning การเชื่อมต่อ Lightning ของร้านค้าต้องเปิดและพร้อมแล้ว

order_idstring | nullไม่บังคับ

เลขอ้างอิงคำสั่งซื้อผู้ค้า 1–128 อักขระหลังตัดช่องว่างขอบ ปฏิเสธอักขระควบคุม

emailstring | nullไม่บังคับ

อีเมลลูกค้าสำหรับผู้ค้าเท่านั้น ปรับเป็นที่อยู่ ASCII ที่ใช้ได้จริงไม่เกิน 254 อักขระ ไม่ระบุหรือ null จะไม่เก็บอีเมล

descriptionstring | nullไม่บังคับ

คำอธิบายให้ลูกค้าเห็น 1–500 อักขระ อนุญาตขึ้นบรรทัดใหม่และแท็บ

expires_in_secondsinteger | nullไม่บังคับ

อายุราคาเสนอใบแจ้งหนี้ 300 ถึง 86,400 วินาที ไม่ระบุหรือ null ใช้นโยบายร้านค้า

exchange_rate_spread_percentdecimal string | nullไม่บังคับ
ส่วนเพิ่มราคา 0 ถึง 100 ทศนิยมไม่เกินสองตำแหน่ง ไม่ระบุหรือ null ใช้ค่าเริ่มต้นร้านค้า; "0" ปิดสำหรับใบแจ้งหนี้นี้ ใช้ก่อนปัดขึ้นแล้วล็อกไว้ ไม่เปลี่ยนจำนวนเงินตราทั่วไปของใบแจ้งหนี้หรือฐานค่าประมวลผลรายละเอียด

ส่วนเพิ่มราคา 0 ถึง 100 ทศนิยมไม่เกินสองตำแหน่ง ไม่ระบุหรือ null ใช้ค่าเริ่มต้นร้านค้า; "0" ปิดสำหรับใบแจ้งหนี้นี้ ใช้ก่อนปัดขึ้นแล้วล็อกไว้ ไม่เปลี่ยนจำนวนเงินตราทั่วไปของใบแจ้งหนี้หรือฐานค่าประมวลผล

underpayment_tolerance_percentdecimal string | nullไม่บังคับ

ยอดขาดที่ยอมรับ 0 ถึง 99.99 ทศนิยมไม่เกินสองตำแหน่ง ไม่ระบุหรือ null ใช้ค่าเริ่มต้นร้านค้า

ipn_urlstring | nullไม่บังคับ

callback HTTPS สาธารณะไม่เกิน 2,048 ไบต์ ไม่มีข้อมูลรับรองหรือ fragment ใช้แทนค่าเริ่มต้นร้านค้า; null/ไม่ระบุใช้ค่าเดิม

redirect_urlstring | nullไม่บังคับ

URL HTTPS สำเร็จที่ใช้หลังชำระเสร็จสิ้น ไม่เกิน 2,048 ไบต์และไม่มีข้อมูลรับรองฝังอยู่ ไม่ระบุหรือ null ใช้ค่าเริ่มต้นร้านค้าและล้างค่าไม่ได้

cancel_urlstring | nullไม่บังคับ

URL HTTPS ส่งกลับเมื่อหน้าชำระเงินจบโดยไม่ชำระสำเร็จ ไม่ระบุหรือ null ใช้ค่าเริ่มต้นร้านค้าและล้างค่าไม่ได้

redirect_automaticallyboolean | nullไม่บังคับ

ไม่ระบุหรือ null ใช้นโยบายร้านค้า true ต้องมี redirect_url ที่มีผล

languagestring | nullไม่บังคับ
ภาษาลูกค้า: en, de, es, pt-BR, it, ru, zh-CN, fr, ko หรือ ja โดย pt หมายถึงโปรตุเกสบราซิล และ zh หมายถึงจีนตัวย่อ แท็กภูมิภาคที่รองรับ เช่น de-DE จะปรับเป็นภาษาในรายการ ไม่ระบุหรือ null ใช้ภาษาร้านค้า ภาษาคอนโซลแยกต่างหากรายละเอียด

ภาษาลูกค้า: en, de, es, pt-BR, it, ru, zh-CN, fr, ko หรือ ja โดย pt หมายถึงโปรตุเกสบราซิล และ zh หมายถึงจีนตัวย่อ แท็กภูมิภาคที่รองรับ เช่น de-DE จะปรับเป็นภาษาในรายการ ไม่ระบุหรือ null ใช้ภาษาร้านค้า ภาษาคอนโซลแยกต่างหาก

checkout_appearanceobject | nullไม่บังคับ
การตั้งค่าการแสดงผลบางส่วนสำหรับใบแจ้งหนี้นี้ ไม่ระบุ/null ใช้ดีไซน์ปัจจุบันของร้านค้า ออบเจ็กต์รวมถึง {} จะตรึงดีไซน์และรูปภาพที่คำนวณได้เมื่อสร้าง ดูโครงสร้าง override ด้านล่าง ไม่มีการตั้งค่าการเงิน HTML, CSS, JavaScript หรือ URL รูปภาพภายนอกรายละเอียด

การตั้งค่าการแสดงผลบางส่วนสำหรับใบแจ้งหนี้นี้ ไม่ระบุ/null ใช้ดีไซน์ปัจจุบันของร้านค้า ออบเจ็กต์รวมถึง {} จะตรึงดีไซน์และรูปภาพที่คำนวณได้เมื่อสร้าง ดูโครงสร้าง override ด้านล่าง ไม่มีการตั้งค่าการเงิน HTML, CSS, JavaScript หรือ URL รูปภาพภายนอก

inherit_default_storebooleanไม่บังคับ
true เลือกดีไซน์ร้านค้าเริ่มต้นของโปรเจกต์เป็นฐาน มิฉะนั้นใช้ดีไซน์ที่มีผลของร้านค้าเป้าหมาย จากนั้นใช้ override และบันทึกแยก ธงในใบแจ้งหนี้หลังคำนวณเป็น falseรายละเอียด

true เลือกดีไซน์ร้านค้าเริ่มต้นของโปรเจกต์เป็นฐาน มิฉะนั้นใช้ดีไซน์ที่มีผลของร้านค้าเป้าหมาย จากนั้นใช้ override และบันทึกแยก ธงในใบแจ้งหนี้หลังคำนวณเป็น false

titlestringไม่บังคับ

หัวข้อหน้าชำระเงิน ไม่เกิน 120 อักขระ ค่าว่างใช้หัวข้อมาตรฐาน

introstringไม่บังคับ
ข้อความธรรมดาแต่ละส่วนไม่เกิน 2,000 อักขระ Intro อยู่ด้านบน Outro ด้านล่างทุกสถานะ คงบรรทัดใหม่ URL ข้อความที่ปลอดภัยกลายเป็นลิงก์ สตริงว่างล้างค่า ยอมรับ customer_message เดิมเป็นชื่อแทน intro อย่าส่งทั้งสองรายละเอียด

ข้อความธรรมดาแต่ละส่วนไม่เกิน 2,000 อักขระ Intro อยู่ด้านบน Outro ด้านล่างทุกสถานะ คงบรรทัดใหม่ URL ข้อความที่ปลอดภัยกลายเป็นลิงก์ สตริงว่างล้างค่า ยอมรับ customer_message เดิมเป็นชื่อแทน intro อย่าส่งทั้งสอง

outrostringไม่บังคับ
ข้อความธรรมดาแต่ละส่วนไม่เกิน 2,000 อักขระ Intro อยู่ด้านบน Outro ด้านล่างทุกสถานะ คงบรรทัดใหม่ URL ข้อความที่ปลอดภัยกลายเป็นลิงก์ สตริงว่างล้างค่า ยอมรับ customer_message เดิมเป็นชื่อแทน intro อย่าส่งทั้งสองรายละเอียด

ข้อความธรรมดาแต่ละส่วนไม่เกิน 2,000 อักขระ Intro อยู่ด้านบน Outro ด้านล่างทุกสถานะ คงบรรทัดใหม่ URL ข้อความที่ปลอดภัยกลายเป็นลิงก์ สตริงว่างล้างค่า ยอมรับ customer_message เดิมเป็นชื่อแทน intro อย่าส่งทั้งสอง

intro_font_sizeintegerไม่บังคับ

พิกเซล: 12, 14, 16, 18, 20 หรือ 24 ค่าเริ่มต้น 16 เว้นแต่สืบทอดค่าต่างออกไป

outro_font_sizeintegerไม่บังคับ

พิกเซล: 12, 14, 16, 18, 20 หรือ 24 ค่าเริ่มต้น 16 เว้นแต่สืบทอดค่าต่างออกไป

themesystem | light | dim | darkไม่บังคับ

ตามอุปกรณ์ลูกค้าหรือใช้ธีมคงที่

accent_colorstringไม่บังคับ

#RRGGBB พื้นหลัง การ์ด และปุ่มอาจว่างเพื่อใช้สีอัตโนมัติ คอนทราสต์ข้อความเป็นอัตโนมัติ

background_colorstringไม่บังคับ

#RRGGBB พื้นหลัง การ์ด และปุ่มอาจว่างเพื่อใช้สีอัตโนมัติ คอนทราสต์ข้อความเป็นอัตโนมัติ

card_colorstringไม่บังคับ

#RRGGBB พื้นหลัง การ์ด และปุ่มอาจว่างเพื่อใช้สีอัตโนมัติ คอนทราสต์ข้อความเป็นอัตโนมัติ

button_colorstringไม่บังคับ

#RRGGBB พื้นหลัง การ์ด และปุ่มอาจว่างเพื่อใช้สีอัตโนมัติ คอนทราสต์ข้อความเป็นอัตโนมัติ

logo_sizestringไม่บังคับ

small, medium หรือ large; left หรือ center

logo_alignmentstringไม่บังคับ

small, medium หรือ large; left หรือ center

imagesobjectไม่บังคับ
คีย์ logo_light, logo_dark, favicon ไม่ระบุคีย์จะคงรูปฐาน; null ลบรูป ออบเจ็กต์ {store_id: UUID, kind?: logo_light|logo_dark|favicon} ใช้รูปอัปโหลดที่มีผลของร้านค้านั้นซ้ำในโปรเจกต์เดียวกันเท่านั้น kind มีค่าเริ่มต้นเป็นคีย์เป้าหมาย อัปโหลดใน ร้านค้า → หน้าชำระเงิน ก่อน คัดลอก Store API ID จาก พื้นฐาน → API IDs รูปไม่มีหรือ ID ข้ามโปรเจกต์คืน 400 ไม่รับ URL ภายนอกหรือข้อมูลรูปภาพรายละเอียด

คีย์ logo_light, logo_dark, favicon ไม่ระบุคีย์จะคงรูปฐาน; null ลบรูป ออบเจ็กต์ {store_id: UUID, kind?: logo_light|logo_dark|favicon} ใช้รูปอัปโหลดที่มีผลของร้านค้านั้นซ้ำในโปรเจกต์เดียวกันเท่านั้น kind มีค่าเริ่มต้นเป็นคีย์เป้าหมาย อัปโหลดใน ร้านค้า → หน้าชำระเงิน ก่อน คัดลอก Store API ID จาก พื้นฐาน → API IDs รูปไม่มีหรือ ID ข้ามโปรเจกต์คืน 400 ไม่รับ URL ภายนอกหรือข้อมูลรูปภาพ

logo_lightobject | nullไม่บังคับ
store_idUUIDจำเป็น
kindlogo_light | logo_dark | faviconไม่บังคับ
logo_darkobject | nullไม่บังคับ
store_idUUIDจำเป็น
kindlogo_light | logo_dark | faviconไม่บังคับ
faviconobject | nullไม่บังคับ
store_idUUIDจำเป็น
kindlogo_light | logo_dark | faviconไม่บังคับ
show_order_idbooleanไม่บังคับ

แสดงรายละเอียด ID คำสั่งซื้อและคำอธิบายข้อความธรรมดาใต้หัวข้อ details_expanded เปิดรายละเอียด ID คำสั่งซื้อตั้งแต่แรก เป็นเพียงการแสดงผล ไม่ใช่การปกปิดข้อมูล

show_descriptionbooleanไม่บังคับ

แสดงรายละเอียด ID คำสั่งซื้อและคำอธิบายข้อความธรรมดาใต้หัวข้อ details_expanded เปิดรายละเอียด ID คำสั่งซื้อตั้งแต่แรก เป็นเพียงการแสดงผล ไม่ใช่การปกปิดข้อมูล

details_expandedbooleanไม่บังคับ

แสดงรายละเอียด ID คำสั่งซื้อและคำอธิบายข้อความธรรมดาใต้หัวข้อ details_expanded เปิดรายละเอียด ID คำสั่งซื้อตั้งแต่แรก เป็นเพียงการแสดงผล ไม่ใช่การปกปิดข้อมูล

show_project_namebooleanไม่บังคับ
Merchant 5.6.0+: แสดงหรือซ่อนแต่ละชื่อในหัวหน้าชำระเงินของลูกค้า ทั้งคู่มีค่าเริ่มต้น true มีใน ร้านค้า → หน้าชำระเงิน ด้วย สืบทอดและเก็บภาพข้อมูลในใบแจ้งหนี้เหมือนการตั้งค่ารูปลักษณ์อื่น เป็นเพียงการแสดงผล ไม่ใช่การปกปิดข้อมูลรายละเอียด

Merchant 5.6.0+: แสดงหรือซ่อนแต่ละชื่อในหัวหน้าชำระเงินของลูกค้า ทั้งคู่มีค่าเริ่มต้น true มีใน ร้านค้า → หน้าชำระเงิน ด้วย สืบทอดและเก็บภาพข้อมูลในใบแจ้งหนี้เหมือนการตั้งค่ารูปลักษณ์อื่น เป็นเพียงการแสดงผล ไม่ใช่การปกปิดข้อมูล

show_store_namebooleanไม่บังคับ
Merchant 5.6.0+: แสดงหรือซ่อนแต่ละชื่อในหัวหน้าชำระเงินของลูกค้า ทั้งคู่มีค่าเริ่มต้น true มีใน ร้านค้า → หน้าชำระเงิน ด้วย สืบทอดและเก็บภาพข้อมูลในใบแจ้งหนี้เหมือนการตั้งค่ารูปลักษณ์อื่น เป็นเพียงการแสดงผล ไม่ใช่การปกปิดข้อมูลรายละเอียด

Merchant 5.6.0+: แสดงหรือซ่อนแต่ละชื่อในหัวหน้าชำระเงินของลูกค้า ทั้งคู่มีค่าเริ่มต้น true มีใน ร้านค้า → หน้าชำระเงิน ด้วย สืบทอดและเก็บภาพข้อมูลในใบแจ้งหนี้เหมือนการตั้งค่ารูปลักษณ์อื่น เป็นเพียงการแสดงผล ไม่ใช่การปกปิดข้อมูล

featured_chains[]string[]ไม่บังคับ
slug เชนเรียงลำดับ ไม่เกิน 60 ค่าที่ไม่ซ้ำ (ตัวพิมพ์เล็ก ตัวเลข ขีดกลาง ไม่เกิน 64 อักขระ) [] ล้างค่า เรียงใหม่เฉพาะวิธีที่มีในใบแจ้งหนี้รายละเอียด

slug เชนเรียงลำดับ ไม่เกิน 60 ค่าที่ไม่ซ้ำ (ตัวพิมพ์เล็ก ตัวเลข ขีดกลาง ไม่เกิน 64 อักขระ) [] ล้างค่า เรียงใหม่เฉพาะวิธีที่มีในใบแจ้งหนี้

featured_asset_ids[]UUID[]ไม่บังคับ
ID สินทรัพย์เรียงลำดับไม่ซ้ำสูงสุด 100 ค่า; [] ล้างค่า สินทรัพย์เริ่มต้นเป็น null ได้ ID มาจาก payment-assets ไม่ใช่ ID payment-intent ค่าเหล่านี้ไม่เปิดวิธีชำระ การชำระที่รับแล้วและค่าที่ลูกค้าเลือกอย่างถูกต้องมีลำดับสำคัญกว่ารายละเอียด

ID สินทรัพย์เรียงลำดับไม่ซ้ำสูงสุด 100 ค่า; [] ล้างค่า สินทรัพย์เริ่มต้นเป็น null ได้ ID มาจาก payment-assets ไม่ใช่ ID payment-intent ค่าเหล่านี้ไม่เปิดวิธีชำระ การชำระที่รับแล้วและค่าที่ลูกค้าเลือกอย่างถูกต้องมีลำดับสำคัญกว่า

default_asset_idUUID|nullไม่บังคับ
ID สินทรัพย์เรียงลำดับไม่ซ้ำสูงสุด 100 ค่า; [] ล้างค่า สินทรัพย์เริ่มต้นเป็น null ได้ ID มาจาก payment-assets ไม่ใช่ ID payment-intent ค่าเหล่านี้ไม่เปิดวิธีชำระ การชำระที่รับแล้วและค่าที่ลูกค้าเลือกอย่างถูกต้องมีลำดับสำคัญกว่ารายละเอียด

ID สินทรัพย์เรียงลำดับไม่ซ้ำสูงสุด 100 ค่า; [] ล้างค่า สินทรัพย์เริ่มต้นเป็น null ได้ ID มาจาก payment-assets ไม่ใช่ ID payment-intent ค่าเหล่านี้ไม่เปิดวิธีชำระ การชำระที่รับแล้วและค่าที่ลูกค้าเลือกอย่างถูกต้องมีลำดับสำคัญกว่า

messagesobjectไม่บังคับ
ออบเจ็กต์ภาษามีคีย์ en, de, es, pt-BR, it, ru, zh-CN, fr, ko หรือ ja พร้อมสตริงธรรมดา waiting, confirming, paid, underpaid, expired (แต่ละค่า 500 อักขระ) เปลี่ยนเฉพาะภาษา/สถานะที่ส่งมา; {} ล้างข้อความทั้งหมด, {en:{}} ล้างภาษาอังกฤษ และสตริงสถานะว่างล้างสถานะนั้น ใช้ภาษาอังกฤษเป็นค่าทดแทน ไม่แทนที่สถานะจริงรายละเอียด

ออบเจ็กต์ภาษามีคีย์ en, de, es, pt-BR, it, ru, zh-CN, fr, ko หรือ ja พร้อมสตริงธรรมดา waiting, confirming, paid, underpaid, expired (แต่ละค่า 500 อักขระ) เปลี่ยนเฉพาะภาษา/สถานะที่ส่งมา; {} ล้างข้อความทั้งหมด, {en:{}} ล้างภาษาอังกฤษ และสตริงสถานะว่างล้างสถานะนั้น ใช้ภาษาอังกฤษเป็นค่าทดแทน ไม่แทนที่สถานะจริง

enobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
deobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
esobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
pt-BRobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
itobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
ruobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
zh-CNobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
frobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
koobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
jaobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
support_emailstringไม่บังคับ

อีเมล ASCII ไม่เกิน 254 อักขระ ค่าว่างล้างค่า

support_urlstringไม่บังคับ

URL HTTPS ไม่เกิน 2,048 อักขระ ไม่มีข้อมูลรับรอง ค่าว่างล้างค่า ลิงก์เปิดหน้าต่างใหม่

terms_urlstringไม่บังคับ

URL HTTPS ไม่เกิน 2,048 อักขระ ไม่มีข้อมูลรับรอง ค่าว่างล้างค่า ลิงก์เปิดหน้าต่างใหม่

privacy_urlstringไม่บังคับ

URL HTTPS ไม่เกิน 2,048 อักขระ ไม่มีข้อมูลรับรอง ค่าว่างล้างค่า ลิงก์เปิดหน้าต่างใหม่

return_button_textstringไม่บังคับ

ป้ายชื่อไม่เกิน 60 อักขระ ใช้ redirect_url/cancel_url/redirect_automatically/language ระดับบนสุดเพื่อกำหนดพฤติกรรมใบแจ้งหนี้

show_return_buttonbooleanไม่บังคับ
แสดงปุ่มกลับไปยังผู้ค้า/ยกเลิกแบบกดเองในหน้าชำระเงิน รวมสถานะสิ้นสุด ไม่ระบุจะใช้รูปลักษณ์ร้านค้า (ค่าเริ่มต้น true); false ซ่อนปุ่ม ไม่ยกเลิกใบแจ้งหนี้ ไม่ซ่อน URL ใน JSON และไม่ปิดการเปลี่ยนเส้นทางเมื่อสำเร็จอัตโนมัติ หากต้องการให้ตั้ง redirect_automatically ระดับบนสุดเป็น false แยก ต้องใช้ merchant 8.1.4 หรือใหม่กว่ารายละเอียด

แสดงปุ่มกลับไปยังผู้ค้า/ยกเลิกแบบกดเองในหน้าชำระเงิน รวมสถานะสิ้นสุด ไม่ระบุจะใช้รูปลักษณ์ร้านค้า (ค่าเริ่มต้น true); false ซ่อนปุ่ม ไม่ยกเลิกใบแจ้งหนี้ ไม่ซ่อน URL ใน JSON และไม่ปิดการเปลี่ยนเส้นทางเมื่อสำเร็จอัตโนมัติ หากต้องการให้ตั้ง redirect_automatically ระดับบนสุดเป็น false แยก ต้องใช้ merchant 8.1.4 หรือใหม่กว่า

metadataobject | nullไม่บังคับ
ออบเจ็กต์ JSON เฉพาะผู้ค้า ไม่ระบุหรือ null กลายเป็น {} ขนาดเข้ารหัสสูงสุด 4,096 ไบต์และซ้อนห้าระดับ firstname, lastname, street, street2, zip, city, country, countryiso2, company และ vatid จะถูกตรวจ ปรับรูปแบบ และนำไปแสดงในฟิลด์สรุปลูกค้ารายละเอียด

ออบเจ็กต์ JSON เฉพาะผู้ค้า ไม่ระบุหรือ null กลายเป็น {} ขนาดเข้ารหัสสูงสุด 4,096 ไบต์และซ้อนห้าระดับ firstname, lastname, street, street2, zip, city, country, countryiso2, company และ vatid จะถูกตรวจ ปรับรูปแบบ และนำไปแสดงในฟิลด์สรุปลูกค้า

firstnamestringไม่บังคับ
lastnamestringไม่บังคับ
streetstringไม่บังคับ
street2stringไม่บังคับ
zipstringไม่บังคับ
citystringไม่บังคับ
countrystringไม่บังคับ
countryiso2stringไม่บังคับ
companystringไม่บังคับ
vatidstringไม่บังคับ
project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

store_id

"YOUR_STORE_ID"

allocations[]object[]
[{"vendor_id":"VENDOR_A_UUID","gross_amount":"100.00"},{"vendor_id":"VENDOR_B_UUID","gross_amount":"100.00"},{"vendor_id":"VENDOR_C_UUID","gross_amount":"100.00"}]รายละเอียด

[{"vendor_id":"VENDOR_A_UUID","gross_amount":"100.00"},{"vendor_id":"VENDOR_B_UUID","gross_amount":"100.00"},{"vendor_id":"VENDOR_C_UUID","gross_amount":"100.00"}]

vendor_idstring
gross_amountstring

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {
    "invoice_id": "YOUR_INVOICE_ID",
    "status": "new",
    "marketplace": {
      "state": "pending",
      "allocations": []
    }
  },
  "links": {
    "checkout": "https://pay.example.com/invoice/YOUR_INVOICE_ID"
  }
}

ฟิลด์การตอบกลับ

dataobject
invoice_idstring
statusstring
marketplaceobject
statestring
allocations[]array
หมายเหตุการใช้งาน
  • ต้องมี invoices.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETใบแจ้งหนี้และการจัดสรร/v1/marketplace/invoices/{invoice_id}อ่านอย่างเดียว

รายละเอียดใบแจ้งหนี้ปกติพร้อมสถานะ Marketplace, revision, hold_reason, ยอดจัดสรรที่ตรึงไว้ ภาพข้อมูลนโยบาย การชำระล่าสุด 200 รายการ และการจ่ายที่เกี่ยวข้องล่าสุด 100 รายการพร้อมธงการตัดรายการ หน้าชำระเงินสาธารณะไม่เปิดเผยข้อมูลผู้ขาย

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/invoices/YOUR_INVOICE_ID?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETหลักฐานการชำระใบแจ้งหนี้/v1/marketplace/invoices/{invoice_id}/paymentsอ่านอย่างเดียว

หลักฐานชำระเงินปกติพร้อม page/per_page ข้อมูลที่ตรวจพบไม่ใช่การจ่ายผู้ขาย

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/invoices/YOUR_INVOICE_ID/payments?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETการจัดสรรของใบแจ้งหนี้/v1/marketplace/invoices/{invoice_id}/allocationsอ่านอย่างเดียว

ภาพข้อมูลส่วนแบ่ง/คอมมิชชัน/ปลายทางที่แก้ไขไม่ได้ และค่าหน่วยย่อยที่แน่นอนของยอดรวม คอมมิชชัน และยอดสุทธิหลังชำระเสร็จสิ้นตามเกณฑ์

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/invoices/YOUR_INVOICE_ID/allocations?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTยกเลิกใบแจ้งหนี้ที่ยังไม่ชำระ/v1/marketplace/invoices/{invoice_id}/cancelอ่าน + เขียน

เฉพาะใบแจ้งหนี้ new หรือ expired ที่ยังไม่ชำระ ยอดรับล่าช้าถูกระงับเพื่อตรวจสอบ revision คือรุ่นแก้ไขใบแจ้งหนี้ Marketplace

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopeinvoices.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/invoices/YOUR_INVOICE_ID/cancel" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "revision": 1
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

revision

1

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี invoices.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTระงับการจัดสรร/v1/marketplace/invoices/{invoice_id}/allocations/holdอ่าน + เขียน

ระงับยอดจัดสรรที่ยังไม่ลงนามโดยไม่ลบภาระผูกพัน การจ่ายที่ลงนามหรือไม่แน่นอนยังติดตามต่อ

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopereconciliation.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/invoices/YOUR_INVOICE_ID/allocations/hold" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "revision": 1,
  "reason": "Verify customer request"
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

revision

1

reason

"ตรวจสอบคำขอลูกค้า"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี reconciliation.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTตรวจสอบและปล่อยยอดจัดสรร/v1/marketplace/invoices/{invoice_id}/allocations/releaseอ่าน + เขียน

ตรวจเงินรองรับ/ความเป็นที่สุดใหม่ approved_amount_atomic แบบไม่บังคับยอมรับส่วนแบ่งที่ลดลงและมีเงินรองรับครบอย่างชัดเจนก่อนตรึงการจัดสรร ไม่สร้างยอดรับขึ้นเอง

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopereconciliation.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/invoices/YOUR_INVOICE_ID/allocations/release" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "revision": 1,
  "reason": "Verified payment evidence"
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

revision

1

reason

"หลักฐานชำระเงินที่ตรวจสอบแล้ว"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี reconciliation.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTผูกปลายทางใหม่สำหรับยอดที่ยังไม่จ่าย/v1/marketplace/invoices/{invoice_id}/allocations/{allocation_id}/destinationอ่าน + เขียน

ต้องมี revision การจัดสรร เฉพาะงานที่ยังไม่สำรอง/ลงนามและปลายทางเวอร์ชันที่อนุมัติแยกของผู้ขายเดิมบนเครือข่ายเดิม มีบันทึกตรวจสอบ งานลงนามแล้วเปลี่ยนไม่ได้

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopereconciliation.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/invoices/YOUR_INVOICE_ID/allocations/YOUR_ALLOCATION_ID/destination" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "revision": 1,
  "destination_id": "YOUR_DESTINATION_ID",
  "reason": "Vendor verified replacement address"
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

revision

1

destination_id

"YOUR_DESTINATION_ID"

reason

"ที่อยู่ใหม่ที่ผู้ขายยืนยันแล้ว"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี reconciliation.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTเตรียมคืนเงินเต็มจำนวน/v1/marketplace/invoices/{invoice_id}/refundอ่าน + เขียน

เตรียมคืนยอดรับเต็มจำนวนในสินทรัพย์เดิมที่ต้องอนุมัติแยก ก่อนจ่ายผู้ขายจะสำรองเงินที่ยังไม่จ่ายและกลับรายการคอมมิชชันเมื่อยืนยัน หลังจ่ายผู้ขายครบให้ใช้เงินว่างแยกที่ที่อยู่หลัก ห้ามอนุมานที่อยู่คืนเงินลูกค้าจากผู้ส่ง

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopereconciliation.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/invoices/YOUR_INVOICE_ID/refund" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "revision": 1,
  "payment_method_id": "YOUR_PAYMENT_METHOD_ID",
  "destination_address": "VERIFIED_CUSTOMER_REFUND_ADDRESS",
  "reason": "Customer cancellation",
  "maximum_network_fee_atomic": "10000",
  "maximum_gas_funding_atomic": "0",
  "fee_tier": "medium"
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

revision

1

payment_method_id

"YOUR_PAYMENT_METHOD_ID"

destination_address

"VERIFIED_CUSTOMER_REFUND_ADDRESS"

reason

"ลูกค้ายกเลิก"

maximum_network_fee_atomic

"10000"

maximum_gas_funding_atomic

"0"

fee_tier

"medium"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี reconciliation.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETค้นหายอดจัดสรรสำหรับจ่ายเงิน/v1/marketplace/allocationsอ่านอย่างเดียว

รายการผู้สมัครแบบแบ่งหน้า กรอง status (available เป็นต้น), asset_id, vendor_id, store_id และ q (ผู้ขาย/คำสั่งซื้อ/ใบแจ้งหนี้)

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/allocations?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "pagination": {
    "page": 1,
    "per_page": 25,
    "total": 0,
    "pages": 1
  }
}

ฟิลด์การตอบกลับ

data[]array
paginationobject
pageinteger
per_pageinteger
totalinteger
pagesinteger
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETยอดคงเหลือในบัญชีแยกประเภทของโปรเจกต์/v1/marketplace/balancesอ่านอย่างเดียว

ยอดรวมสินทรัพย์/บัญชีที่แน่นอนตามกลุ่ม รวม held, available, reserved, paid, commission, refunds และค่าธรรมเนียมเครือข่าย ไม่รวมบัญชีปรับสมดุลภายนอก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/balances?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETสมุดรายวันที่แก้ไขย้อนหลังไม่ได้/v1/marketplace/ledgerอ่านอย่างเดียว

ความเคลื่อนไหวแบบเพิ่มได้อย่างเดียวและแบ่งหน้า q ค้นอ้างอิง/บัญชี พร้อมตัวกรอง asset_id และ vendor_id จำนวนใช้สตริงหน่วยย่อย ไม่มีรายการใดแก้ไขหรือทำเครื่องหมายว่าจ่ายด้วยตนเองได้

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/ledger?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "pagination": {
    "page": 1,
    "per_page": 25,
    "total": 0,
    "pages": 1
  }
}

ฟิลด์การตอบกลับ

data[]array
paginationobject
pageinteger
per_pageinteger
totalinteger
pagesinteger
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETประวัติการจ่ายเงิน/v1/marketplace/payoutsอ่านอย่างเดียว

รายการหลักแบบแบ่งหน้า กรอง state, asset_id, vendor_id หรือ q เป็น ID/สัญลักษณ์ Paid หมายถึงยืนยันอย่างอิสระ ไม่ใช่เพียงเผยแพร่ธุรกรรม

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/payouts?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "pagination": {
    "page": 1,
    "per_page": 25,
    "total": 0,
    "pages": 1
  }
}

ฟิลด์การตอบกลับ

data[]array
paginationobject
pageinteger
per_pageinteger
totalinteger
pagesinteger
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTดูตัวอย่างแผนการจัดสรร/v1/marketplace/payouts/previewอ่าน + เขียน

แผนบัญชีแบบอ่านอย่างเดียว ไม่สำรองเงินหรือให้อำนาจใช้จ่าย ค่าธรรมเนียมสูงสุดเป็นเพดานผู้ใช้ ไม่ใช่ประมาณการค่าธรรมเนียมจริง ขั้นเตรียมจะตรวจสดภายหลัง

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopepayouts.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/payouts/preview" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "allocation_ids": [
    "YOUR_ALLOCATION_ID"
  ],
  "maximum_network_fee_atomic": "10000",
  "maximum_gas_funding_atomic": "0",
  "fee_tier": "medium"
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

allocation_ids[]

["YOUR_ALLOCATION_ID"]

maximum_network_fee_atomic

"10000"

maximum_gas_funding_atomic

"0"

fee_tier

"medium"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี payouts.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTเตรียมการจ่ายเงิน/v1/marketplace/payoutsอ่าน + เขียน

สำรอง ID ยอดจัดสรรที่พร้อม 1–100 รายการในสินทรัพย์/กระเป๋าเดียว BTC ต้องรวมทุกส่วนที่ยังไม่จ่ายของแต่ละใบแจ้งหนี้ที่เลือกในชุดหลายเอาต์พุตเดียว งบเป็นสตริงหน่วยย่อยของสินทรัพย์เหรียญหลักสำหรับค่าธรรมเนียม สร้างแผน awaiting_approval ยังไม่เผยแพร่ธุรกรรม

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopepayouts.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/payouts" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "allocation_ids": [
    "YOUR_ALLOCATION_ID"
  ],
  "maximum_network_fee_atomic": "10000",
  "maximum_gas_funding_atomic": "0",
  "fee_tier": "medium"
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

allocation_ids[]

["YOUR_ALLOCATION_ID"]

maximum_network_fee_atomic

"10000"

maximum_gas_funding_atomic

"0"

fee_tier

"medium"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {
    "id": "YOUR_PAYOUT_ID",
    "state": "awaiting_approval",
    "revision": 1,
    "plan_hash": "RETAINED_PLAN_HASH",
    "plan": {
      "amount_atomic": "28800000",
      "maximum_network_fee_atomic": "10000",
      "maximum_gas_funding_atomic": "0",
      "items": []
    },
    "transactions": []
  }
}

ฟิลด์การตอบกลับ

dataobject
idstring
statestring
revisioninteger
plan_hashstring
planobject
amount_atomicstring
maximum_network_fee_atomicstring
maximum_gas_funding_atomicstring
items[]array
transactions[]array
หมายเหตุการใช้งาน
  • ต้องมี payouts.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETรายละเอียดการจ่ายเงิน/v1/marketplace/payouts/{payout_id}อ่านอย่างเดียว

แผน/แฮชที่แก้ไขไม่ได้ revision วันหมดอายุ รายการผู้รับ ความพยายามย่อยที่เก็บไว้ ความคืบหน้า ค่าธรรมเนียมแน่นอน และลิงก์ explorer ไม่มีคีย์ส่วนตัวหรือไบต์ที่ลงนามแล้ว

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/payouts/YOUR_PAYOUT_ID?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {
    "id": "YOUR_PAYOUT_ID",
    "state": "awaiting_approval",
    "revision": 1,
    "plan_hash": "RETAINED_PLAN_HASH",
    "plan": {
      "amount_atomic": "28800000",
      "maximum_network_fee_atomic": "10000",
      "maximum_gas_funding_atomic": "0",
      "items": []
    },
    "transactions": []
  }
}

ฟิลด์การตอบกลับ

dataobject
idstring
statestring
revisioninteger
plan_hashstring
planobject
amount_atomicstring
maximum_network_fee_atomicstring
maximum_gas_funding_atomicstring
items[]array
transactions[]array
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTอนุมัติและส่ง/v1/marketplace/payouts/{payout_id}/approveอ่าน + เขียน

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

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopepayouts.approve

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/payouts/YOUR_PAYOUT_ID/approve" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "revision": 1,
  "expected_plan_hash": "COPY_EXACT_PLAN_HASH_FROM_PREPARE",
  "confirm": true
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

revision

1

expected_plan_hash

"COPY_EXACT_PLAN_HASH_FROM_PREPARE"

confirm

true

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี payouts.approve ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTตรวจสอบและดำเนินการจ่ายเงินต่อ/v1/marketplace/payouts/{payout_id}/resumeอ่าน + เขียน

เฉพาะ needs_attention ใช้แผน/แฮชที่เก็บไว้ซ้ำ ไม่ส่งให้ผู้รับที่ยืนยันแล้วอีก ผู้ให้บริการอิสระสองรายต้องพิสูจน์ EVM revert บนเชนหลักที่ยอมรับและยืนยันเพียงพอ ก่อนแทนงานย่อยที่ล้มเหลว ค่าธรรมเนียมก่อนหน้ายังใช้จากงบอนุมัติและทุกแฮชคงอยู่ในประวัติ การส่งโทเคนที่ไม่ทราบผล/ถึงบางส่วนคืน payout_recovery_unverified และยังระงับยอดสำรอง

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopepayouts.approve

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/payouts/YOUR_PAYOUT_ID/resume" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "revision": 1,
  "expected_plan_hash": "COPY_EXACT_PLAN_HASH_FROM_PREPARE",
  "confirm": true
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

revision

1

expected_plan_hash

"COPY_EXACT_PLAN_HASH_FROM_PREPARE"

confirm

true

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี payouts.approve ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTยกเลิกงานที่ยังไม่ได้ลงนาม/v1/marketplace/payouts/{payout_id}/cancelอ่าน + เขียน

ปล่อยเฉพาะยอดสำรองที่มั่นใจว่ายังไม่ลงนาม/ส่ง ผู้รับที่ยืนยันแล้วและบันทึกตรวจสอบยังอยู่ งานลงนาม/ไม่แน่นอนยกเลิกไม่ได้ revert ที่พิสูจน์และกู้คืนอย่างชัดเจนแล้วจะไม่ขวางการยกเลิกงานที่เหลือซึ่งยังไม่ลงนาม

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopepayouts.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/payouts/YOUR_PAYOUT_ID/cancel" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "revision": 1
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

revision

1

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี payouts.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETนโยบายจ่ายเงินอัตโนมัติ/v1/marketplace/policiesอ่านอย่างเดียว

อ่านนโยบายรายสินทรัพย์ revision, next_attempt_at, last_checked_at และ last_error ที่ปลอดภัย เมื่อการเตรียมหรืออนุมัติต้องตรวจสอบ

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/policies?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": []
}

ฟิลด์การตอบกลับ

data[]array
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTอนุมัตินโยบายจ่ายเงิน/v1/marketplace/policiesอ่าน + เขียน

สตริงหน่วยย่อยที่แน่นอน; minimum <= transfer <= daily principal และเพดาน fee/gas <= งบรายวันของแต่ละส่วน interval_seconds 60–604800; minimum_confirmations 1–100000 ภายใต้ขั้นต่ำเชน revision 0 ใช้สร้าง นโยบายเปิดใช้อาจส่งโดยไม่ต้องคลิกเพิ่ม คง false ไว้จนตรวจสอบแล้ว

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopepolicies.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/policies" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "asset_id": "YOUR_ASSET_ID",
  "revision": 0,
  "enabled": false,
  "minimum_atomic": "100000",
  "transfer_limit_atomic": "10000000",
  "daily_limit_atomic": "30000000",
  "fee_limit_atomic": "10000",
  "daily_fee_limit_atomic": "30000",
  "gas_limit_atomic": "0",
  "daily_gas_limit_atomic": "0",
  "interval_seconds": 3600,
  "minimum_confirmations": 2
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

asset_id

"YOUR_ASSET_ID"

revision

0

enabled

false

minimum_atomic

"100000"

transfer_limit_atomic

"10000000"

daily_limit_atomic

"30000000"

fee_limit_atomic

"10000"

daily_fee_limit_atomic

"30000"

gas_limit_atomic

"0"

daily_gas_limit_atomic

"0"

interval_seconds

3600

minimum_confirmations

2

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี policies.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETWebhook ของ Marketplace/v1/marketplace/webhooksอ่านอย่างเดียว

สูงสุด 20 เอนด์พอยต์พร้อม event_types ที่รองรับ ไม่คืนซีเคร็ตลงนามทั้งแบบเข้ารหัสหรือข้อความธรรมดา

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/webhooks?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {
    "endpoints": [],
    "event_types": [
      "marketplace.invoice.created",
      "marketplace.allocations.available",
      "marketplace.allocations.held",
      "marketplace.payout.approved",
      "marketplace.payout.broadcast",
      "marketplace.payout.confirmed",
      "marketplace.payout.partial",
      "marketplace.payout.failed",
      "marketplace.payout.cancelled",
      "marketplace.refund.prepared",
      "marketplace.refund.confirmed"
    ]
  }
}

ฟิลด์การตอบกลับ

dataobject
endpoints[]array
event_types[]array
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTสร้าง webhook ของ Marketplace/v1/marketplace/webhooksอ่าน + เขียน

เฉพาะ HTTPS สาธารณะ ไม่มีข้อมูลรับรอง ปลายทางส่วนตัว หรือการเปลี่ยนเส้นทาง คืน signing_secret หนึ่งครั้งต่อการตอบกลับสร้างแบบ idempotent ที่เก็บไว้ ให้เก็บอย่างปลอดภัย แยกจากซีเคร็ต IPN ร้านค้า

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopewebhooks.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/webhooks" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "url": "https://shop.example.com/marketplace-events",
  "enabled": true,
  "events": [
    "marketplace.payout.confirmed",
    "marketplace.payout.failed"
  ]
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

url

"https://shop.example.com/marketplace-events"

enabled

true

events[]

["marketplace.payout.confirmed","marketplace.payout.failed"]

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี webhooks.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTอัปเดต webhook ของ Marketplace/v1/marketplace/webhooks/{webhook_id}/updateอ่าน + เขียน

การเปลี่ยนแปลงยกเลิกการส่งเก่าที่ยังไม่ส่ง ซีเคร็ตไม่เปลี่ยน payload เก่าที่แก้ไขไม่ได้ไม่ถูกเปลี่ยนปลายทางไป URL ใหม่

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopewebhooks.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/webhooks/YOUR_WEBHOOK_ID/update" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "revision": 1,
  "url": "https://shop.example.com/marketplace-events",
  "enabled": true,
  "events": [
    "marketplace.payout.confirmed"
  ]
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

revision

1

url

"https://shop.example.com/marketplace-events"

enabled

true

events[]

["marketplace.payout.confirmed"]

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี webhooks.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTปิดใช้งาน webhook ของ Marketplace/v1/marketplace/webhooks/{webhook_id}/disableอ่าน + เขียน

หยุดการส่งใหม่ ประวัติเหตุการณ์ที่เก็บไว้ยังอยู่

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopewebhooks.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/webhooks/YOUR_WEBHOOK_ID/disable" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "revision": 1
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

revision

1

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี webhooks.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETอีเวนต์ Marketplace/v1/marketplace/eventsอ่านอย่างเดียว

ข้อมูลอ้างอิงเหตุการณ์ที่แก้ไขไม่ได้แบบแบ่งหน้า q ค้นชนิด/อ้างอิง; status กรอง event_type

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/events?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "pagination": {
    "page": 1,
    "per_page": 25,
    "total": 0,
    "pages": 1
  }
}

ฟิลด์การตอบกลับ

data[]array
paginationobject
pageinteger
per_pageinteger
totalinteger
pagesinteger
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETอ่านอีเวนต์ที่เก็บไว้/v1/marketplace/events/{event_id}อ่านอย่างเดียว

คืน payload เหตุการณ์ต้นฉบับที่แก้ไขไม่ได้ ไม่สร้างใหม่จากยอดปัจจุบัน

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/events/YOUR_EVENT_ID?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {
    "event_id": "11111111-1111-4111-8111-111111111111",
    "event_type": "marketplace.payout.confirmed",
    "payload_version": 1,
    "project_id": "YOUR_PROJECT_ID",
    "occurred_at": "2026-10-06T12:00:00Z",
    "data": {
      "payout_id": "YOUR_PAYOUT_ID",
      "asset_id": "YOUR_ASSET_ID",
      "amount_atomic": "28800000",
      "transactions": [
        {
          "transaction_id": "EXAMPLE_TRANSACTION_ID",
          "explorer_url": "https://mempool.space/tx/EXAMPLE_TRANSACTION_ID"
        }
      ]
    }
  }
}

ฟิลด์การตอบกลับ

dataobject
event_idstring
event_typestring
payload_versioninteger
project_idstring
occurred_atstring
dataobject
payout_idstring
asset_idstring
amount_atomicstring
transactions[]object[]
transaction_idstring
explorer_urlstring
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETประวัติการส่งของ Marketplace/v1/marketplace/webhook-deliveriesอ่านอย่างเดียว

รายการส่งแบบแบ่งหน้า ชนิดเหตุการณ์ จำนวนครั้ง และผลล่าสุด กรอง status pending/sending/succeeded/failed/cancelled; q ค้นชนิดเหตุการณ์

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/webhook-deliveries?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [],
  "pagination": {
    "page": 1,
    "per_page": 25,
    "total": 0,
    "pages": 1
  }
}

ฟิลด์การตอบกลับ

data[]array
paginationobject
pageinteger
per_pageinteger
totalinteger
pagesinteger
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETรายละเอียดการส่ง/v1/marketplace/webhook-deliveries/{delivery_id}อ่านอย่างเดียว

URL เดิม payload ที่เก็บไว้ ผล HTTP และข้อผิดพลาดที่ปลอดภัย ไม่มีซีเคร็ตลงนาม

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopemarketplace.read

พารามิเตอร์ query

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

per_pageไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

qไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

statusไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

store_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

vendor_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

asset_idไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

fromไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

toไม่บังคับ

ใช้เฉพาะตัวกรองที่มีเอกสารสำหรับทรัพยากรนี้ รายการแบ่งหน้ามีค่าเริ่มต้น 25 และอนุญาตสูงสุด 100 แถว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/marketplace/webhook-deliveries/YOUR_DELIVERY_ID?project_id=YOUR_PROJECT_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี marketplace.read ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTส่งอีเวนต์เดิมอีกครั้ง/v1/marketplace/webhook-deliveries/{delivery_id}/resendอ่าน + เขียน

เฉพาะการส่งที่จบแล้วและเอนด์พอยต์ที่เปิดอยู่โดยไม่เปลี่ยน ลองใหม่ด้วยตนเองได้สูงสุด 20 ครั้ง ใช้ event_id เดิม การแจ้งเตือนล้มเหลวไม่อนุมัติการชำระครั้งที่สอง

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MARKETPLACE_API_TOKEN
Idempotency-Keyจำเป็น16–128 อักขระเป็นตัวอักษร ตัวเลข -, _ หรือ . บันทึกถาวรพร้อมคำขอที่ตรงกันนี้
พารามิเตอร์ชนิด / ตำแหน่งกฎ
permissioncredential scopewebhooks.write

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new operation.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/marketplace/webhook-deliveries/YOUR_DELIVERY_ID/resend" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: marketplace-request-1042' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "project_id": "YOUR_PROJECT_ID",
  "confirm": true
}'

เนื้อหาคำขอ

project_idUUIDจำเป็น

โปรเจกต์ที่ได้รับอนุญาต ต้องระบุทุกคำขอ รวม URL รายรายการ

confirm

true

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {}
}

ฟิลด์การตอบกลับ

dataobject
หมายเหตุการใช้งาน
  • ต้องมี webhooks.write ตัวอย่างการตอบกลับแสดงฟิลด์ที่เลือก ใช้ GET ทรัพยากรเพื่อดูหลักฐานที่เก็บไว้ทั้งหมด
  • ทุก POST ต้องมี Idempotency-Key 16–128 อักขระที่บันทึกถาวร (ตัวอักษร ตัวเลข -, _ หรือ .) หลังหมดเวลารอ ใช้คีย์และคำสั่ง JSON เดิม คำสั่งต่างกันคืน 409 เก็บการตอบกลับที่เสร็จแล้ว 30 วัน คีย์เก่ากลายเป็นระเบียนห้ามใช้ซ้ำ ห้ามเปลี่ยนคีย์เพียงเพื่อข้ามผลลัพธ์ที่ไม่แน่นอน
  • คีย์มีรายการโปรเจกต์ ข้อจำกัดร้านค้าของใบแจ้งหนี้ที่เลือกได้ วันหมดอายุ รายการอนุญาต IP และโควตา 1–600/นาที (ค่าเริ่มต้น 60) HTTP 429 มี Retry-After คีย์จำกัดร้านค้าไม่เห็นผู้ขาย ยอดโปรเจกต์ บัญชีแยกประเภท การจ่ายเงิน หรือการตั้งค่า เก็บข้อมูลรับรองใช้เงินไว้เฉพาะเซิร์ฟเวอร์ที่เชื่อถือ ห้ามอยู่ในเบราว์เซอร์หรือแอปมือถือที่แจกจ่าย

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการข้อยกเว้นของการชำระเงิน/v1/projects/{project_id}/reconciliationอ่านอย่างเดียว

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

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MERCHANT_API_TOKEN

พารามิเตอร์พาธ

project_idUUIDจำเป็น

โปรเจกต์ที่กำหนดให้ข้อมูลรับรองนี้

พารามิเตอร์ query

statusstring

open (ค่าเริ่มต้น), resolved หรือ all

reasonstring

underpaid, overpaid, late, reorged, ambiguous, delivery_failed, disabled_method หรือ expired_method

store_idUUID

ตัวกรองร้านค้าแบบไม่บังคับ

pageinteger

1–40001 คงที่หน้าละ 25 กรณี

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/projects/YOUR_PROJECT_ID/reconciliation?status=open&page=1" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{"data":[],"pagination":{"page":1,"per_page":25,"total":0,"has_more":false},"counts":{"open":0,"resolved":0}}

ฟิลด์การตอบกลับ

data[]object[]เสมอ

กรณีที่อัปเดตล่าสุดมาก่อน ใช้ invoice_id ไม่ใช่ id ภายใน ใน URL รายละเอียดผู้ค้า

idUUIDเสมอ

ID ระเบียนภายใน / UUID ใบแจ้งหนี้ที่ลูกค้าเห็น invoice_id ตรงกับ payload callback

invoice_idUUIDเสมอ

ID ระเบียนภายใน / UUID ใบแจ้งหนี้ที่ลูกค้าเห็น invoice_id ตรงกับ payload callback

store_idUUIDเสมอ

ร้านค้าเจ้าของ

store_namestringเสมอ

ร้านค้าเจ้าของ

order_idstring | nullเสมอ

เลขอ้างอิงคำสั่งซื้อส่วนตัวของผู้ค้าและอีเมลลูกค้า

emailstring | nullเสมอ

เลขอ้างอิงคำสั่งซื้อส่วนตัวของผู้ค้าและอีเมลลูกค้า

amountdecimal stringเสมอ

จำนวนและสกุลเงินตราทั่วไปเดิมของใบแจ้งหนี้

currencystringเสมอ

จำนวนและสกุลเงินตราทั่วไปเดิมของใบแจ้งหนี้

invoice_statusinvoice statusเสมอ

สถานะวงจรการชำระเงินปัจจุบัน

statusopen|resolvedเสมอ

สถานะกรณีและชนิดข้อยกเว้นตามรายการตัวกรอง reason

reasons[]string[]เสมอ

สถานะกรณีและชนิดข้อยกเว้นตามรายการตัวกรอง reason

revisionintegerเสมอ

รุ่นแก้ไขการตรวจสอบปัจจุบันและเวลาอัปเดต

updated_attimestampเสมอ

รุ่นแก้ไขการตรวจสอบปัจจุบันและเวลาอัปเดต

paginationobjectเสมอ

page (1–40001), per_page (25), จำนวนแถวตรงเงื่อนไขทั้งหมด, has_more

pageinteger
per_pageinteger
totalinteger
has_moreboolean
countsobjectเสมอ

ยอดรวม open และ resolved ทั้งโปรเจกต์ ไม่ขึ้นกับตัวกรองปัจจุบัน

openinteger
resolvedinteger
หมายเหตุการใช้งาน
  • อ่านอย่างเดียว จำกัดขอบเขตโปรเจกต์ และใช้โควตาข้อมูลรับรอง การตัดสินใจทางการเงินและคืนเงินยังทำได้เฉพาะคอนโซล
  • แต่ละแถวมี id (UUID ภายใน), invoice_id (UUID สาธารณะเดียวกับ callback), ข้อมูลร้านค้า จำนวน/สกุลเงินตราทั่วไปเดิม invoice_status, สถานะกรณี เหตุผล revision และ updated_at ใช้ invoice_id ในเอนด์พอยต์รายละเอียดผู้ค้า
  • การตรวจพบอัตโนมัติใช้ช่วงติดตามเดิมของใบแจ้งหนี้ Rescan ขยายการติดตามหนึ่งชั่วโมงโดยไม่เปิดหน้าชำระเงิน วิธีหลังชำระเสร็จสิ้น/ยกเลิกยังติดตามภายในช่วงนั้น

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETอ่านหลักฐานการกระทบยอด/v1/projects/{project_id}/reconciliation/{invoice_id}อ่านอย่างเดียว

คืนใบแจ้งหนี้ กรณี ยอดรวมวิธีที่แน่นอนและจำนวนคืนได้ ธุรกรรมที่ตรวจพบ ประวัติการส่ง การตัดสินใจของผู้ค้า และการโอนคืนเงินที่เชื่อมโยง ไม่เปิดเผยคีย์ลงนามหรือซีเคร็ต callback

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MERCHANT_API_TOKEN

พารามิเตอร์พาธ

project_idUUIDจำเป็น

โปรเจกต์ที่กำหนดไว้

invoice_idUUIDจำเป็น

UUID สาธารณะของใบแจ้งหนี้ ไม่ใช่ id ภายใน

พารามิเตอร์ query

pageinteger

หน้าประวัติการตัดสินใจ เริ่มที่ 1 หน้าละ 25 การตัดสินใจ

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/projects/YOUR_PROJECT_ID/reconciliation/YOUR_PUBLIC_INVOICE_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{"invoice":{"invoice_id":"YOUR_PUBLIC_INVOICE_ID","status":"processing"},"case":{"status":"open","reasons":["underpaid"],"revision":1},"methods":[],"history":[],"history_pagination":{"page":1,"per_page":25,"total":0},"refunds":[],"observations":[],"deliveries":[]}

ฟิลด์การตอบกลับ

invoiceobjectเสมอ

ใบแจ้งหนี้ผู้ค้าฉบับเต็ม: ฟิลด์สรุป metadata ส่วนตัว และ payment_intents ไม่ห่อใน data

idUUIDเสมอ

UUID ภายในของใบแจ้งหนี้ อย่าใช้ในพาธรายละเอียดผู้ค้าหรือหน้าชำระเงิน

invoice_idUUIDเสมอ

UUID สาธารณะของใบแจ้งหนี้ที่ใช้ในพาธรายละเอียดผู้ค้าและหน้าชำระเงิน

project_idUUIDเสมอ

โปรเจกต์เจ้าของ

store_idUUIDเสมอ

ร้านค้าเจ้าของ

sourcemanual | apiเสมอ

วิธีที่สร้างใบแจ้งหนี้

order_idstring | nullเสมอ

เลขอ้างอิงคำสั่งซื้อของผู้ค้า

emailstring | nullเสมอ

อีเมลลูกค้าสำหรับผู้ค้าเท่านั้น ไม่คืนผ่านหน้าชำระเงินสาธารณะ

customer_namestring | nullเสมอ

ชื่อแสดงผลที่ได้จาก metadata ส่วนตัว firstname, lastname และ company

customer_addressstring | nullเสมอ

ที่อยู่บรรทัดเดียวในข้อมูลผู้ค้า ซึ่งได้จาก metadata ส่วนตัว company, street, street2, zip, city, country, countryiso2 และ vatid

descriptionstring | nullเสมอ

คำอธิบายที่ลูกค้าเห็น

amountdecimal stringเสมอ

จำนวนใบแจ้งหนี้รูปแบบมาตรฐาน

currencystringเสมอ

รหัสสกุลเงิน/สินทรัพย์ใบแจ้งหนี้ที่ปรับรูปแบบแล้ว

exchange_rate_spread_percentdecimal stringเสมอ

สเปรดราคาเสนอที่ล็อกไว้: ค่า override ตอนสร้าง หรือค่าเริ่มต้นร้านค้าหากไม่ระบุ ใช้ก่อนปัดขึ้นและไม่เปลี่ยนในใบแจ้งหนี้นี้

underpayment_tolerance_percentdecimal stringเสมอ

เปอร์เซ็นต์ยอดขาดที่ยอมรับแบบแก้ไขไม่ได้ เก็บภาพข้อมูลเมื่อสร้างใบแจ้งหนี้

statusinvoice statusเสมอ

new, processing, settled, expired, invalid หรือ cancelled

amount_statusamount statusเสมอ

none, partial, paid หรือ overpaid ใบแจ้งหนี้จำนวนศูนย์ที่อนุญาตชัดเจนชำระเสร็จสิ้นด้วย none และไม่มีวิธีชำระเงิน

timing_statustiming statusเสมอ

on_time หรือ late

resolutionresolutionเสมอ

automatic, manually_settled หรือ manually_invalidated

sequenceintegerเสมอ

ลำดับสถานะใบแจ้งหนี้ที่เพิ่มขึ้นเสมอ เริ่มที่ 1

winning_payment_intent_idUUID | nullเสมอ

วิธีชำระเงินที่ตัดสินผลใบแจ้งหนี้ เมื่อเลือกแล้ว

expires_atRFC 3339 timestampเสมอ

กำหนดหมดอายุราคาเสนอ/ชำระเงิน

monitoring_expires_atRFC 3339 timestampเสมอ

เวลาสิ้นสุดการติดตามล่าช้าที่ช้าที่สุดตามการตั้งค่าในทุกวิธีชำระเงิน

settled_attimestamp | nullเสมอ

เวลาชำระเสร็จสิ้นเมื่อสถานะ settled

cancelled_attimestamp | nullเสมอ

เวลายกเลิกเมื่อสถานะ cancelled

archived_attimestamp | nullเสมอ

เวลาเก็บเข้าคลังเมื่อเก็บเข้าคลังแล้ว

created_atRFC 3339 timestampเสมอ

เวลาสร้าง

updated_atRFC 3339 timestampเสมอ

เวลาอัปเดตสถานะล่าสุด

ipn_urlstring | nullเสมอ

ปลายทาง IPN ที่มีผลต่อใบแจ้งหนี้ คืนเฉพาะผู้ค้า ไม่รวมในหน้าชำระเงินสาธารณะ

redirect_urlstring | nullเสมอ

URL สำเร็จที่มีผลและใช้หลังชำระเสร็จสิ้น

cancel_urlstring | nullเสมอ

URL ส่งกลับที่มีผลเมื่อหน้าชำระเงินจบโดยไม่ชำระสำเร็จ

redirect_automaticallybooleanเสมอ

หน้าชำระเงินควรเปลี่ยนเส้นทางอัตโนมัติหลังสำเร็จหรือไม่

checkout_languagestringเสมอ

แท็กภาษาหน้าชำระเงินที่มีผล

metadataobjectเสมอ
metadata ผู้ค้า ไม่คืนผ่านหน้าชำระเงินสาธารณะ เครื่องมือชำระเงินในคอนโซลเพิ่มข้อมูลที่มา payment_tool (id, kind, title, pricing, requested_amount, request_id) ซึ่งไม่พิสูจน์การชำระเงิน ยืนยัน callback และดำเนินการ invoice.settled ครั้งเดียวต่อ invoice_idรายละเอียด

metadata ผู้ค้า ไม่คืนผ่านหน้าชำระเงินสาธารณะ เครื่องมือชำระเงินในคอนโซลเพิ่มข้อมูลที่มา payment_tool (id, kind, title, pricing, requested_amount, request_id) ซึ่งไม่พิสูจน์การชำระเงิน ยืนยัน callback และดำเนินการ invoice.settled ครั้งเดียวต่อ invoice_id

payment_intents[]object[]เสมอ

วิธีชำระเงินที่เสนอราคาและสถานะติดตาม

idUUIDเสมอ

ตัวระบุ payment intent ใช้เป็น intent_id ของ QR หน้าชำระเงินด้วย

payment_railonchain | lightningเสมอ
ช่องทางของใบแจ้งหนี้ Bitcoin บนเชนและ Lightning อาจใช้ asset_id เดียวกัน ให้ใช้ intent id ร่วมกับฟิลด์นี้ ไม่ใช่สัญลักษณ์อย่างเดียว ต่างจาก payment_rail ของสแกนเนอร์ในแค็ตตาล็อกสินทรัพย์รายละเอียด

ช่องทางของใบแจ้งหนี้ Bitcoin บนเชนและ Lightning อาจใช้ asset_id เดียวกัน ให้ใช้ intent id ร่วมกับฟิลด์นี้ ไม่ใช่สัญลักษณ์อย่างเดียว ต่างจาก payment_rail ของสแกนเนอร์ในแค็ตตาล็อกสินทรัพย์

bolt11string | nullเสมอ

คำขอชำระ Lightning มิฉะนั้นเป็น null ชำระคำขอนี้ด้วยกระเป๋า Lightning ห้ามส่งเงินบนเชนไปยัง payment hash

asset_idUUIDเสมอ

ตัวระบุสินทรัพย์รับชำระที่ตั้งค่าไว้

asset_keystringเสมอ

คีย์สินทรัพย์รูปแบบ CAIP มาตรฐาน

chain_slugstringเสมอ

ตัวระบุเชน Wholly Crypto

networkstringเสมอ

เครือข่ายที่ตั้งค่า ปัจจุบันเป็น mainnet สำหรับสินทรัพย์รับชำระที่รองรับ

caip_network_idstringเสมอ

ตัวระบุเครือข่าย CAIP-2 มาตรฐาน

caip_asset_idstring | nullเสมอ

ตัวระบุ CAIP-19 มาตรฐานเมื่อมีการลงทะเบียน

symbolstringเสมอ

สัญลักษณ์สินทรัพย์

asset_decimalsintegerเสมอ

ความละเอียดหน่วยย่อย Lightning BTC ใช้ 11 (millisatoshis) ไม่ใช่ 8 ของ Bitcoin บนเชน ราคาเสนอเป็น satoshi เต็มหน่วย ยอดรับคงความละเอียด millisatoshi

statusintent statusเสมอ

pending, partial, paid, overpaid, expired หรือ invalid

finality_modeconfirmations | finalizedเสมอ

นโยบายความเป็นที่สุด

required_confirmationsintegerเสมอ

จำนวนการยืนยันที่ต้องการเมื่อใช้ได้

quote_ratedecimal stringเสมอ

หน่วยสินทรัพย์ต่อหนึ่งหน่วยสกุลเงินใบแจ้งหนี้ รวมสเปรดที่ล็อกไว้ เช่น 1.02 USDC ต่อ USD ไม่ใช่อัตรากลับด้าน

quote_detailsobject | nullเสมอ
ที่มาราคาเสนอที่ล็อกไว้: reference_rate ก่อนสเปรด, unrounded_payment_amount, rounding_adjustment, pricing_provider, asset_provider, pricing_fetched_at และ asset_fetched_at เป็น null ในใบแจ้งหนี้เก่า ไม่สร้างค่าย้อนหลังขึ้นเองรายละเอียด

ที่มาราคาเสนอที่ล็อกไว้: reference_rate ก่อนสเปรด, unrounded_payment_amount, rounding_adjustment, pricing_provider, asset_provider, pricing_fetched_at และ asset_fetched_at เป็น null ในใบแจ้งหนี้เก่า ไม่สร้างค่าย้อนหลังขึ้นเอง

expected_amountdecimal stringเสมอ
จำนวนสินทรัพย์ที่แน่นอนและล็อกไว้ให้ชำระหลังสเปรดและปัดขึ้น ตั้งแต่ 4.1.1 stablecoin อิงเงินตราทั่วไปที่รู้จักและตรวจสอบแล้ว (เช่น USDC, USDT, DAI, USDS, EURC) ปัดขึ้นให้มีทศนิยมไม่เกินสองตำแหน่ง; 1.321 เป็น 1.33 ไม่ใช่ 1.32 นี่คือจำนวนที่คาดหวังแม้ยอมรับส่วนต่างศูนย์ สินทรัพย์อื่นใช้ความละเอียดปรับตามค่า ไม่คำนวณราคาใหม่ให้ใบแจ้งหนี้เดิมรายละเอียด

จำนวนสินทรัพย์ที่แน่นอนและล็อกไว้ให้ชำระหลังสเปรดและปัดขึ้น ตั้งแต่ 4.1.1 stablecoin อิงเงินตราทั่วไปที่รู้จักและตรวจสอบแล้ว (เช่น USDC, USDT, DAI, USDS, EURC) ปัดขึ้นให้มีทศนิยมไม่เกินสองตำแหน่ง; 1.321 เป็น 1.33 ไม่ใช่ 1.32 นี่คือจำนวนที่คาดหวังแม้ยอมรับส่วนต่างศูนย์ สินทรัพย์อื่นใช้ความละเอียดปรับตามค่า ไม่คำนวณราคาใหม่ให้ใบแจ้งหนี้เดิม

expected_amount_atomicinteger stringเสมอ

จำนวนที่แน่นอนในหน่วยเล็กที่สุดของสินทรัพย์

minimum_payment_amountdecimal stringเสมอ

จำนวนต่ำสุดที่ยอมรับว่าชำระแล้วหลังใช้ส่วนต่างใบแจ้งหนี้

minimum_payment_amount_atomicinteger stringเสมอ

เกณฑ์ยอมรับที่แน่นอนในหน่วยเล็กที่สุดของสินทรัพย์

received_amountdecimal stringเสมอ

จำนวนที่ตรวจพบ

received_amount_atomicinteger stringเสมอ

จำนวนหน่วยย่อยที่ตรวจพบ

confirmed_amountdecimal stringเสมอ

จำนวนที่ยืนยัน/เป็นที่สุด

confirmed_amount_atomicinteger stringเสมอ

จำนวนหน่วยย่อยที่ยืนยัน/เป็นที่สุด

destination_addressstringเสมอ

ที่อยู่รับเงินบนเชน หรือ payment hash 64 อักขระสำหรับ Lightning ใช้ bolt11 ชำระ Lightning แฮชไม่ใช่ที่อยู่ Bitcoin

destination_tagstring | nullเสมอ

เลขอ้างอิงชำระเงินสาธารณะที่จำเป็นเมื่อช่องทางใช้: destination tag ของ XRP, memo ID ของ Stellar หรือคอมเมนต์ใบแจ้งหนี้ TON เป็น null สำหรับช่องทางที่ใช้ที่อยู่ไม่ซ้ำ

derivation_indexintegerเสมอ

ดัชนีลูกของกระเป๋าที่สำรองไว้ เฉพาะรายละเอียดผู้ค้า

quote_expires_atRFC 3339 timestampเสมอ

เวลาหมดอายุราคาเสนอ

monitoring_expires_atRFC 3339 timestampเสมอ

กำหนดสิ้นสุดการติดตามล่าช้าสำหรับวิธีนี้

next_check_attimestamp | nullเสมอ

กำหนดตรวจเชนครั้งถัดไป

last_checked_attimestamp | nullเสมอ

การตรวจเชนล่าสุด

last_chain_heightinteger | nullเสมอ

ความสูงล่าสุดที่เชื่อถือได้ซึ่งตัวติดตามพบ

last_anchor_hashstring | nullเสมอ

จุดอ้างอิง/แฮชบล็อกล่าสุดของตัวติดตาม

last_monitor_errorstring | nullเสมอ

ข้อมูลวินิจฉัยการติดตามที่ปลอดภัยสำหรับผู้ดำเนินระบบ

first_payment_attimestamp | nullเสมอ

เวลาตรวจพบการชำระครั้งแรก

fully_paid_attimestamp | nullเสมอ

เวลาที่ถึงจำนวนขั้นต่ำที่ยอมรับเป็นครั้งแรก

finalized_attimestamp | nullเสมอ

เวลาที่การชำระผ่านนโยบายความเป็นที่สุด

caseobject | nullเสมอ

กรณีปัจจุบันพร้อม status, reasons, revision และเวลา เป็น null เมื่อไม่มีข้อยกเว้น ไม่รวมหลักฐานภายใน

statusstring
reasons[]array
revisioninteger
methods[]object[]เสมอ
id, wallet_id, asset_id, symbol, chain, decimals, expected_atomic, received_atomic, confirmed_atomic, refundable_atomic, address, tag, monitor_error, last_checked_at, monitoring_expires_at และ spending_supported จำนวนหน่วยย่อยเป็นสตริงรายละเอียด

id, wallet_id, asset_id, symbol, chain, decimals, expected_atomic, received_atomic, confirmed_atomic, refundable_atomic, address, tag, monitor_error, last_checked_at, monitoring_expires_at และ spending_supported จำนวนหน่วยย่อยเป็นสตริง

history[]object[]เสมอ

การตัดสินใจล่าสุด 25 รายการของหน้านี้: id, action, note, actor, result, created_at

history_paginationobjectเสมอ

page, per_page (25), total มีเฉพาะประวัติการตัดสินใจที่แบ่งด้วย page

pageinteger
per_pageinteger
totalinteger
refunds[]object[]เสมอ
การคืนเงินล่าสุด 100 รายการ: id, payment_intent_id, amount_atomic, destination, status, request, treasury_intent_id, transfer_status, created_at และ transactions (id/status) ส่งคำขอคืนเงินได้เฉพาะคอนโซลรายละเอียด

การคืนเงินล่าสุด 100 รายการ: id, payment_intent_id, amount_atomic, destination, status, request, treasury_intent_id, transfer_status, created_at และ transactions (id/status) ส่งคำขอคืนเงินได้เฉพาะคอนโซล

observations[]object[]เสมอ
ล่าสุด 100 รายการ: payment_intent_id, transaction_id, event_index, amount, status, confirmations, observed_at, symbol, chain และ disabled_at_detection มี explorer_name/explorer_url เมื่อรองรับรายละเอียด

ล่าสุด 100 รายการ: payment_intent_id, transaction_id, event_index, amount, status, confirmations, observed_at, symbol, chain และ disabled_at_detection มี explorer_name/explorer_url เมื่อรองรับ

deliveries[]object[]เสมอ

ล่าสุด 50 รายการ: id, kind, status, attempts, response_status, error, next_attempt_at, event_type และ created_at ไม่มีซีเคร็ต callback

หมายเหตุการใช้งาน
  • case เป็น null เมื่อใบแจ้งหนี้ยังไม่เกิดข้อยกเว้น คืนข้อมูลที่ตรวจพบล่าสุด 100 รายการและการส่งล่าสุด 50 รายการ ประวัติการตัดสินใจแบ่งหน้า
  • refundable_atomic ต้องมีอย่างน้อยหนึ่งการยืนยันเครือข่าย ไม่รวมยอดสำรองคืนเงินเดิม และไม่รับประกันเงินกระเป๋าที่ใช้จ่ายได้ ราคาเสนอสดยังตรวจความพร้อมกระเป๋า ยอดต้นทาง และค่าธรรมเนียมเพิ่มเติม
  • การคืนเงินสถานะ broadcast หมายถึงส่งให้เอนด์พอยต์เชนแล้ว ไม่ใช่ยืนยันอย่างอิสระว่าลูกค้าได้รับ ค่าธรรมเนียมคิดเพิ่ม และค่าประมวลผลในเงินตราทั่วไปไม่คืนเครดิตอัตโนมัติเพียงเพราะออกเงินคืน
  • เมนูโปรเจกต์ในคอนโซล → ต้องตรวจสอบ มีการยกเลิก ยอมรับ ปฏิเสธ เปิดใหม่ ตรวจทาน บันทึกหมายเหตุ Rescan ลองส่งใหม่ และคืนเงินบนเชนที่รองรับ การตัดสินใจใช้เซสชันป้องกัน CSRF, request_id ที่ไม่ซ้ำ, revision กรณีปัจจุบัน หมายเหตุที่จำเป็น และการยืนยันชัดเจน bearer token เรียกการเปลี่ยนแปลงเหล่านี้ไม่ได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETการค้นพบบริการ API/สาธารณะ

การตอบกลับจากขอบเครือข่ายของโฮสต์ API ที่จัดการไว้ ยืนยันบทบาท API สาธารณะ v1 การตอบนี้สร้างโดยพร็อกซีที่จัดการ ไม่ใช่เราเตอร์ Axum ของผู้ค้า

การยืนยันตัวตนและเฮดเดอร์

สาธารณะ

คำขอ

curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "service": "Wholly Crypto API",
  "status": "ready",
  "version": "v1"
}

ฟิลด์การตอบกลับ

servicestring
statusstring
versionstring
หมายเหตุการใช้งาน
  • ไม่ต้องใช้ bearer token
  • มีเฉพาะโฮสต์เนม API ที่จัดการไว้ซึ่งรับประกันการตอบกลับรากแบบนี้ทุกประการ

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETสถานะการทำงานของบริการ/healthzสาธารณะ

ตรวจว่าเข้าถึงแอปพลิเคชันได้และ ping ฐานข้อมูลภายในสองวินาที ใช้ติดตามการทำงาน ไม่ใช่แทนสถานะใบแจ้งหนี้

การยืนยันตัวตนและเฮดเดอร์

สาธารณะ

คำขอ

curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/healthz"

การตอบกลับ 200 healthy; 503 database unavailable

ตัวอย่างการตอบกลับ
{
  "status": "ok",
  "database": "ok",
  "version": "0.1.0"
}

ฟิลด์การตอบกลับ

statusstring
databasestring
versionstring
หมายเหตุการใช้งาน
  • ไม่ต้องใช้ bearer token
  • ค่า version คือเวอร์ชันแพ็กเกจที่กำลังทำงาน ไม่ใช่เวอร์ชันพาธ API

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการสินทรัพย์รับชำระของโปรเจกต์/v1/projects/{project_id}/payment-assetsอ่านอย่างเดียว

แสดงเหรียญหลักและโทเคนที่ตรวจสอบแล้วพร้อมนโยบายโปรเจกต์ ความพร้อมกระเป๋าเชน และความสามารถสแกนเนอร์/ยอดคงเหลือที่ติดตั้ง scanner_ready เป็นเงื่อนไขอะแดปเตอร์ใน build ไม่ใช่ผลองค์ประชุมเอนด์พอยต์สด ตั้งแต่ 6.0.6 การสร้างคงวิธีที่ตั้งไว้ระหว่างสแกนเนอร์หยุด การตรวจรับเงินยังต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามเกณฑ์ที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้)

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MERCHANT_API_TOKEN
Acceptแนะนำapplication/json

พารามิเตอร์พาธ

project_idUUIDจำเป็น

โปรเจกต์ที่เปิดใช้และกำหนดให้ข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/projects/YOUR_PROJECT_ID/payment-assets" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Accept: application/json'

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [
    {
      "asset": {
        "id": "10000000-0000-4000-8000-000000000003",
        "asset_key": "eip155:1/slip44:60",
        "chain_slug": "ethereum",
        "network": "mainnet",
        "caip_network_id": "eip155:1",
        "caip_asset_id": "eip155:1/slip44:60",
        "asset_kind": "native",
        "payment_rail": "evm-native",
        "symbol": "ETH",
        "name": "Ethereum",
        "decimals": 18,
        "contract_address": null,
        "coingecko_id": "ethereum",
        "icon_path": "/assets/coingecko/ethereum.png",
        "token_standard": null,
        "metadata_verified_at": null,
        "payment_supported": true,
        "scanner_ready": true,
        "balance_ready": true,
        "default_finality_mode": "confirmations",
        "default_required_confirmations": 12,
        "default_monitoring_minutes": 60
      },
      "policy": {
        "enabled": true,
        "finality_mode": "confirmations",
        "required_confirmations": 12,
        "monitoring_minutes": 60,
        "late_monitoring_days": 30
      },
      "wallet": null,
      "wallet_readiness": "wallet_missing",
      "receive_readiness": { "ready": false, "invoice_creatable": false, "checked_at": "2026-09-16T09:00:00Z", "issues": [{ "chain_slug": "ethereum", "asset_id": "10000000-0000-4000-8000-000000000003", "asset_ticker": "ETH", "reason_code": "wallet_missing", "message": "ethereum / ETH: Create a project wallet for this chain.", "action": "wallets" }] }
    }
  ]
}

ฟิลด์การตอบกลับ

data[]object[]
assetobjectเสมอ

สินทรัพย์เหรียญหลักหรือโทเคนที่ตรวจสอบแล้วซึ่งเก็บถาวร

idUUIDเสมอ

ตัวระบุสินทรัพย์รับชำระถาวรที่เส้นทางนโยบายโปรเจกต์และร้านค้าใช้

asset_keystringเสมอ

ตัวระบุเหรียญหลักหรือสินทรัพย์คอนแทรกต์แบบ CAIP มาตรฐาน

chain_slugstringเสมอ

ตัวระบุเชน Wholly Crypto และเครือข่ายที่ตั้งค่า

networkstringเสมอ

ตัวระบุเชน Wholly Crypto และเครือข่ายที่ตั้งค่า

caip_network_idstringเสมอ

ตัวระบุเครือข่ายและสินทรัพย์มาตรฐาน

caip_asset_idstring|nullเสมอ

ตัวระบุเครือข่ายและสินทรัพย์มาตรฐาน

asset_kindnative | tokenเสมอ

การชำระเสร็จสิ้นใช้สกุลเหรียญของเชนหรือคอนแทรกต์/mint ที่ตรวจสอบแล้ว

payment_railstringเสมอ

ช่องทางรันไทม์: utxo, evm-native, solana-native, account-native, privacy-native หรือ token-transfer

symbolstringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อยที่แน่นอน

namestringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อยที่แน่นอน

decimalsintegerเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อยที่แน่นอน

contract_addressstring | nullเสมอ

คอนแทรกต์ ERC-20 หรือ mint SPL มาตรฐานสำหรับโทเคน เป็น null สำหรับเหรียญหลัก

coingecko_idstring | nullเสมอ

ตัวระบุการค้นพบ/ราคา เป็น null สำหรับคอนแทรกต์กำหนดเอง ห้ามอนุมานราคาตลาดจาก ticker metadata ของ CoinGecko เพียงอย่างเดียวไม่ทำให้เลือกโทเคนได้

custom_tokenbooleanเสมอ

คอนแทรกต์กำหนดเองที่ตรวจสอบบนเชน พร้อมราคาคงที่ USD หรือราคาพูล DEX ที่เลือกในขอบเขตโปรเจกต์

icon_pathpath | nullเสมอ

ไอคอนโทเคนที่แคชภายในเมื่อมี

token_standarderc20 | spl-token | nullเสมอ

มาตรฐานโทเคนที่รันไทม์ตรวจสอบแล้ว เป็น null สำหรับเหรียญหลัก

metadata_verified_attimestamp | nullเสมอ

เวลาตรวจสอบ metadata บนเชนของโทเคนที่ขึ้นทะเบียน

payment_supportedbooleanเสมอ
เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้วรายละเอียด

เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้ว

scanner_readybooleanเสมอ
เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้วรายละเอียด

เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้ว

balance_readybooleanเสมอ
เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้วรายละเอียด

เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้ว

default_finality_modeconfirmations | finalizedเสมอ

รูปแบบความเป็นที่สุดเริ่มต้นที่นโยบายโปรเจกต์ใหม่สืบทอด

default_required_confirmationsintegerเสมอ

นโยบายการยืนยันและติดตามเริ่มต้น

default_monitoring_minutesintegerเสมอ

นโยบายการยืนยันและติดตามเริ่มต้น

policyobject | nullเสมอ
นโยบายเปิดใช้/ความเป็นที่สุดของโปรเจกต์ หรือ null หากยังไม่ตั้ง รวม custom_price_mode (fixed/dex), custom_price_usd (สตริงทศนิยมคงที่หรือ null), custom_dex_pair (พูลที่เลือกหรือ null) และ custom_dex (dex_id, quote_symbol, price_usd ปัจจุบันหรือ null, liquidity_usd, fetched_at, last_error) ราคากำหนดเองใช้ร่วมกันโดยร้านค้าในโปรเจกต์นี้รายละเอียด

นโยบายเปิดใช้/ความเป็นที่สุดของโปรเจกต์ หรือ null หากยังไม่ตั้ง รวม custom_price_mode (fixed/dex), custom_price_usd (สตริงทศนิยมคงที่หรือ null), custom_dex_pair (พูลที่เลือกหรือ null) และ custom_dex (dex_id, quote_symbol, price_usd ปัจจุบันหรือ null, liquidity_usd, fetched_at, last_error) ราคากำหนดเองใช้ร่วมกันโดยร้านค้าในโปรเจกต์นี้

enabledbooleanจำเป็น

เปิดหรือปิดสินทรัพย์สำหรับโปรเจกต์ ต้องเปิดเชนเหรียญหลักก่อนโทเคนใด ๆ

finality_modeconfirmations | finalizedจำเป็น

นโยบายความเป็นที่สุดที่ช่องทางสินทรัพย์รองรับ finalized ต้องมี required_confirmations=1

required_confirmationsintegerจำเป็น
ช่องทาง Bitcoin และ EVM รับศูนย์ได้ ช่องทางแบบยืนยันอื่นต้องอย่างน้อยหนึ่ง ช่องทาง finalized-only ต้องหนึ่งพอดี และ EVM จำกัด 0–48 เพื่อให้ทุกการโอนอยู่ในช่วงเล่นธุรกรรมย้อนหลังรายละเอียด

ช่องทาง Bitcoin และ EVM รับศูนย์ได้ ช่องทางแบบยืนยันอื่นต้องอย่างน้อยหนึ่ง ช่องทาง finalized-only ต้องหนึ่งพอดี และ EVM จำกัด 0–48 เพื่อให้ทุกการโอนอยู่ในช่วงเล่นธุรกรรมย้อนหลัง

monitoring_minutesintegerจำเป็น

ช่วงตรวจซ้ำ 1–10,080 นาทีขณะใบแจ้งหนี้ยังใช้งาน

late_monitoring_daysintegerจำเป็น

ติดตาม 0–3,650 วันหลังใบแจ้งหนี้หมดอายุ

walletobject | nullเสมอ

กระเป๋าโปรเจกต์แบบผู้ใช้ถือครองคีย์ของเชน โทเคนใช้กระเป๋าร่วมกับเหรียญหลักของเชน

idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

project_idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

native_asset_idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

chain_slugstringเสมอ

เชนและเครือข่ายของกระเป๋า

networkstringเสมอ

เชนและเครือข่ายของกระเป๋า

asset_symbolstringเสมอ

ข้อมูลแสดงเหรียญหลักของเชน

asset_namestringเสมอ

ข้อมูลแสดงเหรียญหลักของเชน

statuspending | active | disabled | errorเสมอ

สถานะการทำงานกระเป๋า

labelstringเสมอ

ป้ายชื่อจากผู้ดำเนินระบบ

public_keystring | nullเสมอ

ข้อมูลระบุกระเป๋าสาธารณะ ไม่เปิดเผยวลี seed หรือคีย์ส่วนตัว

primary_addressstring | nullเสมอ

ข้อมูลระบุกระเป๋าสาธารณะ ไม่เปิดเผยวลี seed หรือคีย์ส่วนตัว

derivation_schemestring | nullเสมอ

นโยบายและรูปแบบที่อยู่

address_formatstring | nullเสมอ

นโยบายและรูปแบบที่อยู่

backup_confirmed_attimestamp | nullเสมอ

ไม่เป็น null หลังผู้ดำเนินระบบยืนยันสำรองข้อมูลกู้คืน

activation_requiredbooleanเสมอ
บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้รายละเอียด

บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้

activation_verified_attimestamp|nullเสมอ
บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้รายละเอียด

บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้

receive_readinessobject | null5.5.0+
รวมในการแสดงรายการกระเป๋า: การตั้งค่ารับเงินของโปรเจกต์และข้อกำหนดสแกนเนอร์เชน แยกจากยอดคงเหลือ แก๊สโทเคน และความพร้อมส่ง การตอบกระเป๋าแบบอื่นอาจปล่อยเป็น nullรายละเอียด

รวมในการแสดงรายการกระเป๋า: การตั้งค่ารับเงินของโปรเจกต์และข้อกำหนดสแกนเนอร์เชน แยกจากยอดคงเหลือ แก๊สโทเคน และความพร้อมส่ง การตอบกระเป๋าแบบอื่นอาจปล่อยเป็น null

readybooleanเสมอ

ผ่านการตรวจตั้งค่ารับเงิน ไม่บอกความพร้อมใช้จ่าย แก๊ส การรีเฟรชยอด หรือรับประกันราคาเสนอในอนาคต

invoice_creatableboolean6.0.6+
การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัยรายละเอียด

การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัย

checked_attimestampเสมอ

เวลาประเมิน การแสดงรายการไม่ส่งคำขอเครือข่ายหรือจัดสรรที่อยู่

issues[]object[]เสมอ
ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้รายละเอียด

ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้

chain_slugstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_idUUIDเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_tickerstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

reason_codestringเสมอ
scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_acceptedรายละเอียด

scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_accepted

messagestringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

actionstringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

required_endpoint_rolestring | nullบนเชน
บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระรายละเอียด

บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระ

accepted_endpoint_roles[]string[] | nullบนเชน
รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์รายละเอียด

รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์

healthy_endpointsintegerบนเชน

เอนด์พอยต์ที่ทำงานปกติและตรงเงื่อนไข ไม่ใช่จำนวนผู้ให้บริการอิสระ

usable_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

required_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

last_checked_attimestamp | nullบนเชน

การตรวจสุขภาพเอนด์พอยต์ที่ตรงเงื่อนไขล่าสุด แยกจากเวลาประเมิน

monero_wallet_rpcMoneroWalletRpcBinding | nullเสมอ
สถานะการผูก wallet-RPC ภายนอกแบบดูอย่างเดียวสำหรับ Monero ที่ตัดข้อมูลอ่อนไหวแล้ว รวมเอนด์พอยต์ โหมดการยืนยันตัวตน ที่อยู่หลัก account-0 ธง/ความสูงหลักฐานทางเทคนิค และเวลารับรองของผู้ดำเนินระบบ ไม่ serialize ข้อมูลรับรอง คีย์กระเป๋า หรือไฟล์กระเป๋ารายละเอียด

สถานะการผูก wallet-RPC ภายนอกแบบดูอย่างเดียวสำหรับ Monero ที่ตัดข้อมูลอ่อนไหวแล้ว รวมเอนด์พอยต์ โหมดการยืนยันตัวตน ที่อยู่หลัก account-0 ธง/ความสูงหลักฐานทางเทคนิค และเวลารับรองของผู้ดำเนินระบบ ไม่ serialize ข้อมูลรับรอง คีย์กระเป๋า หรือไฟล์กระเป๋า

last_secret_revealed_attimestamp|nullเสมอ

metadata บันทึกตรวจสอบการเปิดเผยซีเคร็ตฝั่งคอนโซล

secret_reveal_countintegerเสมอ

metadata บันทึกตรวจสอบการเปิดเผยซีเคร็ตฝั่งคอนโซล

next_receive_indexintegerเสมอ

ดัชนีที่อยู่ลูกถัดไปที่สำรองไว้

last_scanned_heightinteger|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

last_scanned_attimestamp|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

last_errorstring|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

balances[]object[]เสมอ
ยอดแคชสำหรับช่องทางเหรียญหลักทั้ง 30 เชน พร้อมสินทรัพย์ ERC-20 และ SPL ที่ตรวจสอบแล้ว Monero ต้องตั้ง wallet-RPC ภายนอกแบบดูอย่างเดียวรายละเอียด

ยอดแคชสำหรับช่องทางเหรียญหลักทั้ง 30 เชน พร้อมสินทรัพย์ ERC-20 และ SPL ที่ตรวจสอบแล้ว Monero ต้องตั้ง wallet-RPC ภายนอกแบบดูอย่างเดียว

wallet_idUUIDเสมอ

ตัวระบุกระเป๋าและสินทรัพย์ถาวร

asset_idUUIDเสมอ

ตัวระบุกระเป๋าและสินทรัพย์ถาวร

project_enabledbooleanเสมอ

นโยบายสินทรัพย์ของโปรเจกต์เปิดสินทรัพย์นี้อยู่หรือไม่

active_store_countintegerเสมอ

จำนวนร้านค้าที่เปิดใช้และเลือกสินทรัพย์นี้อยู่ เป็นมุมมองการยอมรับ การติดตามยอดแบบอ่านอย่างเดียวยังเป็นอิสระ

active_store_ids[]UUID[]เสมอ

ร้านค้าที่เปิดในโปรเจกต์นี้และยอมรับสินทรัพย์อยู่ ช่วยกรองร้านค้าในระบบอย่างแม่นยำโดยไม่เรียก API เพิ่ม

tracking_activebooleanเสมอ
กระเป๋าที่อ่านได้และสินทรัพย์เชนเดียวกันที่ลงทะเบียนนี้มีสิทธิ์รีเฟรชยอดเบื้องหลังหรือไม่ สวิตช์ยอมรับของโปรเจกต์และวิธีชำระไม่พักการติดตามแบบอ่านอย่างเดียวรายละเอียด

กระเป๋าที่อ่านได้และสินทรัพย์เชนเดียวกันที่ลงทะเบียนนี้มีสิทธิ์รีเฟรชยอดเบื้องหลังหรือไม่ สวิตช์ยอมรับของโปรเจกต์และวิธีชำระไม่พักการติดตามแบบอ่านอย่างเดียว

asset_kindnative | tokenเสมอ

เหรียญหลักหรือสินทรัพย์คอนแทรกต์/mint ที่ตรวจสอบแล้ว

contract_addressstring | nullเสมอ

สัญญาโทเคนหรือ mint เป็น null สำหรับเหรียญหลัก

symbolstringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

namestringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

decimalsintegerเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

coingecko_idstring | nullเสมอ

ตัวระบุราคาเมื่อมีการจับคู่

balancedecimal string|nullเสมอ

ยอดแสดงผลและหน่วยย่อยที่แน่นอนรวมที่อยู่หลักกระเป๋าและที่อยู่ใบแจ้งหนี้ที่ออกแล้ว เป็น null ขณะที่ไม่มีค่าครบถ้วน

balance_atomicinteger string|nullเสมอ

ยอดแสดงผลและหน่วยย่อยที่แน่นอนรวมที่อยู่หลักกระเป๋าและที่อยู่ใบแจ้งหนี้ที่ออกแล้ว เป็น null ขณะที่ไม่มีค่าครบถ้วน

price_usddecimal string | nullเสมอ

ราคาต่อหน่วย USD จากแคชเพื่อประกอบการตีมูลค่า

value_usddecimal string | nullเสมอ

มูลค่าเงินตราทั่วไปประกอบการพิจารณาเมื่อมีอัตราปัจจุบัน

statuspending | refreshing | fresh | stale | errorเสมอ
สถานะสแกนจากแคช refreshing อาจคงยอดที่สแกนเสร็จแล้ว ใช้ checked_at ดูอายุ Pending หมายถึงยังไม่มีภาพข้อมูลที่เสร็จ ไม่มีสถานะใดพิสูจน์ว่าการโอนกำลังรอหรือใบแจ้งหนี้ชำระเสร็จสิ้นรายละเอียด

สถานะสแกนจากแคช refreshing อาจคงยอดที่สแกนเสร็จแล้ว ใช้ checked_at ดูอายุ Pending หมายถึงยังไม่มีภาพข้อมูลที่เสร็จ ไม่มีสถานะใดพิสูจน์ว่าการโอนกำลังรอหรือใบแจ้งหนี้ชำระเสร็จสิ้น

checked_attimestamp | nullเสมอ

เวลาที่การสแกนยอดเสร็จแล้วแสดงถึง

last_errorstring | nullเสมอ

ข้อมูลวินิจฉัยที่ปลอดภัยสำหรับผู้ดำเนินระบบ

total_value_usddecimal string | nullเสมอ

ผลรวมยอดที่มีราคา USD ปัจจุบันเพื่อประกอบการพิจารณา

balance_statuspending | refreshing | fresh | stale | error | unknownเสมอ

ความใหม่แคชรวม unknown เป็นค่าทดแทนเพื่อความปลอดภัย และไม่มีสถานะใดพิสูจน์การชำระเสร็จสิ้นของใบแจ้งหนี้

balance_checked_attimestamp | nullเสมอ

เวลาตรวจยอดสำเร็จที่เก่าที่สุดซึ่งเกี่ยวข้องและรวมอยู่ในยอดรวม

recent_payments[]object[]เสมอ

ข้อมูลล่าสุดที่ถูกต้องในสถานะ detected, confirming หรือ final ไม่เกินสามรายการที่ระบุว่าเป็นของกระเป๋านี้ตรงตัว

invoice_public_idUUIDเสมอ

ตัวระบุใบแจ้งหนี้ที่ลูกค้าเห็นและสัมพันธ์กับข้อมูลที่ตรวจพบ

chain_slugstringเสมอ

เชนและสัญลักษณ์แสดงเหรียญหลักหรือโทเคนที่ตรวจสอบแล้ว

symbolstringเสมอ

เชนและสัญลักษณ์แสดงเหรียญหลักหรือโทเคนที่ตรวจสอบแล้ว

transaction_idstringเสมอ

ตัวระบุธุรกรรมและเหตุการณ์โอนแบบมาตรฐาน

event_indexintegerเสมอ

ตัวระบุธุรกรรมและเหตุการณ์โอนแบบมาตรฐาน

amountdecimal stringเสมอ

จำนวนสินทรัพย์ที่ตรวจพบอย่างแน่นอนโดยไม่แปลงเป็นเลขทศนิยมลอยตัว

statusdetected | confirming | finalเสมอ

สถานะข้อมูลที่ตรวจพบและยังถูกต้อง ไม่รวม reorged, replaced และ invalid

confirmationsintegerเสมอ

จำนวนการยืนยันล่าสุดที่ตรวจพบ

observed_atRFC 3339 timestampเสมอ

เวลาที่ Wholly Crypto ตรวจพบการชำระครั้งแรก

created_atRFC 3339 timestampเสมอ

เวลาสร้างและอัปเดตกระเป๋าล่าสุด

updated_atRFC 3339 timestampเสมอ

เวลาสร้างและอัปเดตกระเป๋าล่าสุด

wallet_readinessreadiness enumเสมอ
unsupported, project_disabled, project_asset_disabled, store_disabled, store_asset_disabled, wallet_missing, wallet_pending, wallet_disabled, wallet_error, backup_required, account_activation_required, external_wallet_rpc_required หรือ readyรายละเอียด

unsupported, project_disabled, project_asset_disabled, store_disabled, store_asset_disabled, wallet_missing, wallet_pending, wallet_disabled, wallet_error, backup_required, account_activation_required, external_wallet_rpc_required หรือ ready

receive_readinessobject | null5.5.0+
การประเมินตั้งค่ารับเงินร่วมของโปรเจกต์ รวมการตรวจกระเป๋าและผู้ให้บริการสแกนเนอร์อิสระ แยกจากความใหม่ยอดและแก๊สส่ง เป็น null หากไม่มีนโยบายโปรเจกต์ ตรวจสกุลเงิน/อัตราของใบแจ้งหนี้เมื่อสร้างรายละเอียด

การประเมินตั้งค่ารับเงินร่วมของโปรเจกต์ รวมการตรวจกระเป๋าและผู้ให้บริการสแกนเนอร์อิสระ แยกจากความใหม่ยอดและแก๊สส่ง เป็น null หากไม่มีนโยบายโปรเจกต์ ตรวจสกุลเงิน/อัตราของใบแจ้งหนี้เมื่อสร้าง

readybooleanเสมอ

ผ่านการตรวจตั้งค่ารับเงิน ไม่บอกความพร้อมใช้จ่าย แก๊ส การรีเฟรชยอด หรือรับประกันราคาเสนอในอนาคต

invoice_creatableboolean6.0.6+
การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัยรายละเอียด

การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัย

checked_attimestampเสมอ

เวลาประเมิน การแสดงรายการไม่ส่งคำขอเครือข่ายหรือจัดสรรที่อยู่

issues[]object[]เสมอ
ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้รายละเอียด

ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้

chain_slugstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_idUUIDเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_tickerstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

reason_codestringเสมอ
scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_acceptedรายละเอียด

scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_accepted

messagestringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

actionstringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

required_endpoint_rolestring | nullบนเชน
บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระรายละเอียด

บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระ

accepted_endpoint_roles[]string[] | nullบนเชน
รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์รายละเอียด

รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์

healthy_endpointsintegerบนเชน

เอนด์พอยต์ที่ทำงานปกติและตรงเงื่อนไข ไม่ใช่จำนวนผู้ให้บริการอิสระ

usable_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

required_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

last_checked_attimestamp | nullบนเชน

การตรวจสุขภาพเอนด์พอยต์ที่ตรงเงื่อนไขล่าสุด แยกจากเวลาประเมิน

หมายเหตุการใช้งาน
  • โทเคนอาจอยู่ในรายการส่วนกลางแต่ยังเลือกไม่ได้เมื่อ scanner_ready หรือ payment_supported เป็น false
  • ตารางความสามารถของผู้ดำเนินระบบยังต้องการบทบาทเอนด์พอยต์ที่ตรงกับสแกนเนอร์ เอนด์พอยต์ทำงานปกติแต่ให้ API ไม่เข้ากันจะไม่นับ
  • โทเคนใช้กระเป๋าโปรเจกต์ร่วมกับเชนของเหรียญหลัก ไม่สร้างวลี seed อีกชุด
  • สรุปกระเป๋าที่ฝังมาบอกเฉพาะความพร้อมและปล่อยยอดว่าง ใช้ GET /v1/projects/{project_id}/wallets เพื่อดูยอดพร้อมข้อมูลเพิ่มเติม

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

PUTอัปเดตนโยบายสินทรัพย์ของโปรเจกต์/v1/projects/{project_id}/payment-assets/{asset_id}อ่าน + เขียน

สร้างหรือแทนที่นโยบายโปรเจกต์สำหรับสินทรัพย์ถาวรหนึ่งรายการและคืนรายการสินทรัพย์โปรเจกต์ที่รีเฟรชแล้ว ปิดเชนเหรียญหลักทำให้เหรียญหลักและโทเคนของเชนนั้นใช้กับใบแจ้งหนี้ใหม่ไม่ได้ แต่คงนโยบายโทเคน กระเป๋า และรายการเลือกของร้านค้าไว้เพื่อกลับมาใช้ภายหลัง

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MERCHANT_API_TOKEN
Content-Typeจำเป็นapplication/json
Acceptแนะนำapplication/json

พารามิเตอร์พาธ

project_idUUIDจำเป็น

โปรเจกต์ที่เปิดใช้และกำหนดให้ข้อมูลรับรอง

asset_idUUIDจำเป็น

id สินทรัพย์ที่คืนจากรายการสินทรัพย์โปรเจกต์หรือการลงทะเบียนโทเคน

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request PUT \
  --url "https://api.example.com/v1/projects/YOUR_PROJECT_ID/payment-assets/YOUR_ASSET_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "enabled": true,
  "finality_mode": "confirmations",
  "required_confirmations": 2,
  "monitoring_minutes": 60,
  "late_monitoring_days": 30
}'

เนื้อหาคำขอ

enabledbooleanจำเป็น

เปิดหรือปิดสินทรัพย์สำหรับโปรเจกต์ ต้องเปิดเชนเหรียญหลักก่อนโทเคนใด ๆ

finality_modeconfirmations | finalizedจำเป็น

นโยบายความเป็นที่สุดที่ช่องทางสินทรัพย์รองรับ finalized ต้องมี required_confirmations=1

required_confirmationsintegerจำเป็น
ช่องทาง Bitcoin และ EVM รับศูนย์ได้ ช่องทางแบบยืนยันอื่นต้องอย่างน้อยหนึ่ง ช่องทาง finalized-only ต้องหนึ่งพอดี และ EVM จำกัด 0–48 เพื่อให้ทุกการโอนอยู่ในช่วงเล่นธุรกรรมย้อนหลังรายละเอียด

ช่องทาง Bitcoin และ EVM รับศูนย์ได้ ช่องทางแบบยืนยันอื่นต้องอย่างน้อยหนึ่ง ช่องทาง finalized-only ต้องหนึ่งพอดี และ EVM จำกัด 0–48 เพื่อให้ทุกการโอนอยู่ในช่วงเล่นธุรกรรมย้อนหลัง

monitoring_minutesintegerจำเป็น

ช่วงตรวจซ้ำ 1–10,080 นาทีขณะใบแจ้งหนี้ยังใช้งาน

late_monitoring_daysintegerจำเป็น

ติดตาม 0–3,650 วันหลังใบแจ้งหนี้หมดอายุ

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [
    { "asset": { "id": "ASSET_UUID", "symbol": "USDC", "asset_kind": "token", "scanner_ready": true }, "policy": { "enabled": true, "finality_mode": "confirmations", "required_confirmations": 2, "monitoring_minutes": 60, "late_monitoring_days": 30 }, "wallet_readiness": "ready" }
  ]
}

ฟิลด์การตอบกลับ

data[]object[]
assetobjectเสมอ

สินทรัพย์เหรียญหลักหรือโทเคนที่ตรวจสอบแล้วซึ่งเก็บถาวร

idUUIDเสมอ

ตัวระบุสินทรัพย์รับชำระถาวรที่เส้นทางนโยบายโปรเจกต์และร้านค้าใช้

asset_keystringเสมอ

ตัวระบุเหรียญหลักหรือสินทรัพย์คอนแทรกต์แบบ CAIP มาตรฐาน

chain_slugstringเสมอ

ตัวระบุเชน Wholly Crypto และเครือข่ายที่ตั้งค่า

networkstringเสมอ

ตัวระบุเชน Wholly Crypto และเครือข่ายที่ตั้งค่า

caip_network_idstringเสมอ

ตัวระบุเครือข่ายและสินทรัพย์มาตรฐาน

caip_asset_idstring|nullเสมอ

ตัวระบุเครือข่ายและสินทรัพย์มาตรฐาน

asset_kindnative | tokenเสมอ

การชำระเสร็จสิ้นใช้สกุลเหรียญของเชนหรือคอนแทรกต์/mint ที่ตรวจสอบแล้ว

payment_railstringเสมอ

ช่องทางรันไทม์: utxo, evm-native, solana-native, account-native, privacy-native หรือ token-transfer

symbolstringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อยที่แน่นอน

namestringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อยที่แน่นอน

decimalsintegerเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อยที่แน่นอน

contract_addressstring | nullเสมอ

คอนแทรกต์ ERC-20 หรือ mint SPL มาตรฐานสำหรับโทเคน เป็น null สำหรับเหรียญหลัก

coingecko_idstring | nullเสมอ

ตัวระบุการค้นพบ/ราคา เป็น null สำหรับคอนแทรกต์กำหนดเอง ห้ามอนุมานราคาตลาดจาก ticker metadata ของ CoinGecko เพียงอย่างเดียวไม่ทำให้เลือกโทเคนได้

custom_tokenbooleanเสมอ

คอนแทรกต์กำหนดเองที่ตรวจสอบบนเชน พร้อมราคาคงที่ USD หรือราคาพูล DEX ที่เลือกในขอบเขตโปรเจกต์

icon_pathpath | nullเสมอ

ไอคอนโทเคนที่แคชภายในเมื่อมี

token_standarderc20 | spl-token | nullเสมอ

มาตรฐานโทเคนที่รันไทม์ตรวจสอบแล้ว เป็น null สำหรับเหรียญหลัก

metadata_verified_attimestamp | nullเสมอ

เวลาตรวจสอบ metadata บนเชนของโทเคนที่ขึ้นทะเบียน

payment_supportedbooleanเสมอ
เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้วรายละเอียด

เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้ว

scanner_readybooleanเสมอ
เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้วรายละเอียด

เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้ว

balance_readybooleanเสมอ
เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้วรายละเอียด

เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้ว

default_finality_modeconfirmations | finalizedเสมอ

รูปแบบความเป็นที่สุดเริ่มต้นที่นโยบายโปรเจกต์ใหม่สืบทอด

default_required_confirmationsintegerเสมอ

นโยบายการยืนยันและติดตามเริ่มต้น

default_monitoring_minutesintegerเสมอ

นโยบายการยืนยันและติดตามเริ่มต้น

policyobject | nullเสมอ
นโยบายเปิดใช้/ความเป็นที่สุดของโปรเจกต์ หรือ null หากยังไม่ตั้ง รวม custom_price_mode (fixed/dex), custom_price_usd (สตริงทศนิยมคงที่หรือ null), custom_dex_pair (พูลที่เลือกหรือ null) และ custom_dex (dex_id, quote_symbol, price_usd ปัจจุบันหรือ null, liquidity_usd, fetched_at, last_error) ราคากำหนดเองใช้ร่วมกันโดยร้านค้าในโปรเจกต์นี้รายละเอียด

นโยบายเปิดใช้/ความเป็นที่สุดของโปรเจกต์ หรือ null หากยังไม่ตั้ง รวม custom_price_mode (fixed/dex), custom_price_usd (สตริงทศนิยมคงที่หรือ null), custom_dex_pair (พูลที่เลือกหรือ null) และ custom_dex (dex_id, quote_symbol, price_usd ปัจจุบันหรือ null, liquidity_usd, fetched_at, last_error) ราคากำหนดเองใช้ร่วมกันโดยร้านค้าในโปรเจกต์นี้

enabledbooleanจำเป็น

เปิดหรือปิดสินทรัพย์สำหรับโปรเจกต์ ต้องเปิดเชนเหรียญหลักก่อนโทเคนใด ๆ

finality_modeconfirmations | finalizedจำเป็น

นโยบายความเป็นที่สุดที่ช่องทางสินทรัพย์รองรับ finalized ต้องมี required_confirmations=1

required_confirmationsintegerจำเป็น
ช่องทาง Bitcoin และ EVM รับศูนย์ได้ ช่องทางแบบยืนยันอื่นต้องอย่างน้อยหนึ่ง ช่องทาง finalized-only ต้องหนึ่งพอดี และ EVM จำกัด 0–48 เพื่อให้ทุกการโอนอยู่ในช่วงเล่นธุรกรรมย้อนหลังรายละเอียด

ช่องทาง Bitcoin และ EVM รับศูนย์ได้ ช่องทางแบบยืนยันอื่นต้องอย่างน้อยหนึ่ง ช่องทาง finalized-only ต้องหนึ่งพอดี และ EVM จำกัด 0–48 เพื่อให้ทุกการโอนอยู่ในช่วงเล่นธุรกรรมย้อนหลัง

monitoring_minutesintegerจำเป็น

ช่วงตรวจซ้ำ 1–10,080 นาทีขณะใบแจ้งหนี้ยังใช้งาน

late_monitoring_daysintegerจำเป็น

ติดตาม 0–3,650 วันหลังใบแจ้งหนี้หมดอายุ

walletobject | nullเสมอ

กระเป๋าโปรเจกต์แบบผู้ใช้ถือครองคีย์ของเชน โทเคนใช้กระเป๋าร่วมกับเหรียญหลักของเชน

idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

project_idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

native_asset_idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

chain_slugstringเสมอ

เชนและเครือข่ายของกระเป๋า

networkstringเสมอ

เชนและเครือข่ายของกระเป๋า

asset_symbolstringเสมอ

ข้อมูลแสดงเหรียญหลักของเชน

asset_namestringเสมอ

ข้อมูลแสดงเหรียญหลักของเชน

statuspending | active | disabled | errorเสมอ

สถานะการทำงานกระเป๋า

labelstringเสมอ

ป้ายชื่อจากผู้ดำเนินระบบ

public_keystring | nullเสมอ

ข้อมูลระบุกระเป๋าสาธารณะ ไม่เปิดเผยวลี seed หรือคีย์ส่วนตัว

primary_addressstring | nullเสมอ

ข้อมูลระบุกระเป๋าสาธารณะ ไม่เปิดเผยวลี seed หรือคีย์ส่วนตัว

derivation_schemestring | nullเสมอ

นโยบายและรูปแบบที่อยู่

address_formatstring | nullเสมอ

นโยบายและรูปแบบที่อยู่

backup_confirmed_attimestamp | nullเสมอ

ไม่เป็น null หลังผู้ดำเนินระบบยืนยันสำรองข้อมูลกู้คืน

activation_requiredbooleanเสมอ
บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้รายละเอียด

บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้

activation_verified_attimestamp|nullเสมอ
บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้รายละเอียด

บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้

receive_readinessobject | null5.5.0+
รวมในการแสดงรายการกระเป๋า: การตั้งค่ารับเงินของโปรเจกต์และข้อกำหนดสแกนเนอร์เชน แยกจากยอดคงเหลือ แก๊สโทเคน และความพร้อมส่ง การตอบกระเป๋าแบบอื่นอาจปล่อยเป็น nullรายละเอียด

รวมในการแสดงรายการกระเป๋า: การตั้งค่ารับเงินของโปรเจกต์และข้อกำหนดสแกนเนอร์เชน แยกจากยอดคงเหลือ แก๊สโทเคน และความพร้อมส่ง การตอบกระเป๋าแบบอื่นอาจปล่อยเป็น null

readybooleanเสมอ

ผ่านการตรวจตั้งค่ารับเงิน ไม่บอกความพร้อมใช้จ่าย แก๊ส การรีเฟรชยอด หรือรับประกันราคาเสนอในอนาคต

invoice_creatableboolean6.0.6+
การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัยรายละเอียด

การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัย

checked_attimestampเสมอ

เวลาประเมิน การแสดงรายการไม่ส่งคำขอเครือข่ายหรือจัดสรรที่อยู่

issues[]object[]เสมอ
ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้รายละเอียด

ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้

chain_slugstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_idUUIDเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_tickerstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

reason_codestringเสมอ
scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_acceptedรายละเอียด

scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_accepted

messagestringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

actionstringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

required_endpoint_rolestring | nullบนเชน
บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระรายละเอียด

บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระ

accepted_endpoint_roles[]string[] | nullบนเชน
รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์รายละเอียด

รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์

healthy_endpointsintegerบนเชน

เอนด์พอยต์ที่ทำงานปกติและตรงเงื่อนไข ไม่ใช่จำนวนผู้ให้บริการอิสระ

usable_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

required_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

last_checked_attimestamp | nullบนเชน

การตรวจสุขภาพเอนด์พอยต์ที่ตรงเงื่อนไขล่าสุด แยกจากเวลาประเมิน

monero_wallet_rpcMoneroWalletRpcBinding | nullเสมอ
สถานะการผูก wallet-RPC ภายนอกแบบดูอย่างเดียวสำหรับ Monero ที่ตัดข้อมูลอ่อนไหวแล้ว รวมเอนด์พอยต์ โหมดการยืนยันตัวตน ที่อยู่หลัก account-0 ธง/ความสูงหลักฐานทางเทคนิค และเวลารับรองของผู้ดำเนินระบบ ไม่ serialize ข้อมูลรับรอง คีย์กระเป๋า หรือไฟล์กระเป๋ารายละเอียด

สถานะการผูก wallet-RPC ภายนอกแบบดูอย่างเดียวสำหรับ Monero ที่ตัดข้อมูลอ่อนไหวแล้ว รวมเอนด์พอยต์ โหมดการยืนยันตัวตน ที่อยู่หลัก account-0 ธง/ความสูงหลักฐานทางเทคนิค และเวลารับรองของผู้ดำเนินระบบ ไม่ serialize ข้อมูลรับรอง คีย์กระเป๋า หรือไฟล์กระเป๋า

last_secret_revealed_attimestamp|nullเสมอ

metadata บันทึกตรวจสอบการเปิดเผยซีเคร็ตฝั่งคอนโซล

secret_reveal_countintegerเสมอ

metadata บันทึกตรวจสอบการเปิดเผยซีเคร็ตฝั่งคอนโซล

next_receive_indexintegerเสมอ

ดัชนีที่อยู่ลูกถัดไปที่สำรองไว้

last_scanned_heightinteger|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

last_scanned_attimestamp|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

last_errorstring|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

balances[]object[]เสมอ
ยอดแคชสำหรับช่องทางเหรียญหลักทั้ง 30 เชน พร้อมสินทรัพย์ ERC-20 และ SPL ที่ตรวจสอบแล้ว Monero ต้องตั้ง wallet-RPC ภายนอกแบบดูอย่างเดียวรายละเอียด

ยอดแคชสำหรับช่องทางเหรียญหลักทั้ง 30 เชน พร้อมสินทรัพย์ ERC-20 และ SPL ที่ตรวจสอบแล้ว Monero ต้องตั้ง wallet-RPC ภายนอกแบบดูอย่างเดียว

wallet_idUUIDเสมอ

ตัวระบุกระเป๋าและสินทรัพย์ถาวร

asset_idUUIDเสมอ

ตัวระบุกระเป๋าและสินทรัพย์ถาวร

project_enabledbooleanเสมอ

นโยบายสินทรัพย์ของโปรเจกต์เปิดสินทรัพย์นี้อยู่หรือไม่

active_store_countintegerเสมอ

จำนวนร้านค้าที่เปิดใช้และเลือกสินทรัพย์นี้อยู่ เป็นมุมมองการยอมรับ การติดตามยอดแบบอ่านอย่างเดียวยังเป็นอิสระ

active_store_ids[]UUID[]เสมอ

ร้านค้าที่เปิดในโปรเจกต์นี้และยอมรับสินทรัพย์อยู่ ช่วยกรองร้านค้าในระบบอย่างแม่นยำโดยไม่เรียก API เพิ่ม

tracking_activebooleanเสมอ
กระเป๋าที่อ่านได้และสินทรัพย์เชนเดียวกันที่ลงทะเบียนนี้มีสิทธิ์รีเฟรชยอดเบื้องหลังหรือไม่ สวิตช์ยอมรับของโปรเจกต์และวิธีชำระไม่พักการติดตามแบบอ่านอย่างเดียวรายละเอียด

กระเป๋าที่อ่านได้และสินทรัพย์เชนเดียวกันที่ลงทะเบียนนี้มีสิทธิ์รีเฟรชยอดเบื้องหลังหรือไม่ สวิตช์ยอมรับของโปรเจกต์และวิธีชำระไม่พักการติดตามแบบอ่านอย่างเดียว

asset_kindnative | tokenเสมอ

เหรียญหลักหรือสินทรัพย์คอนแทรกต์/mint ที่ตรวจสอบแล้ว

contract_addressstring | nullเสมอ

สัญญาโทเคนหรือ mint เป็น null สำหรับเหรียญหลัก

symbolstringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

namestringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

decimalsintegerเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

coingecko_idstring | nullเสมอ

ตัวระบุราคาเมื่อมีการจับคู่

balancedecimal string|nullเสมอ

ยอดแสดงผลและหน่วยย่อยที่แน่นอนรวมที่อยู่หลักกระเป๋าและที่อยู่ใบแจ้งหนี้ที่ออกแล้ว เป็น null ขณะที่ไม่มีค่าครบถ้วน

balance_atomicinteger string|nullเสมอ

ยอดแสดงผลและหน่วยย่อยที่แน่นอนรวมที่อยู่หลักกระเป๋าและที่อยู่ใบแจ้งหนี้ที่ออกแล้ว เป็น null ขณะที่ไม่มีค่าครบถ้วน

price_usddecimal string | nullเสมอ

ราคาต่อหน่วย USD จากแคชเพื่อประกอบการตีมูลค่า

value_usddecimal string | nullเสมอ

มูลค่าเงินตราทั่วไปประกอบการพิจารณาเมื่อมีอัตราปัจจุบัน

statuspending | refreshing | fresh | stale | errorเสมอ
สถานะสแกนจากแคช refreshing อาจคงยอดที่สแกนเสร็จแล้ว ใช้ checked_at ดูอายุ Pending หมายถึงยังไม่มีภาพข้อมูลที่เสร็จ ไม่มีสถานะใดพิสูจน์ว่าการโอนกำลังรอหรือใบแจ้งหนี้ชำระเสร็จสิ้นรายละเอียด

สถานะสแกนจากแคช refreshing อาจคงยอดที่สแกนเสร็จแล้ว ใช้ checked_at ดูอายุ Pending หมายถึงยังไม่มีภาพข้อมูลที่เสร็จ ไม่มีสถานะใดพิสูจน์ว่าการโอนกำลังรอหรือใบแจ้งหนี้ชำระเสร็จสิ้น

checked_attimestamp | nullเสมอ

เวลาที่การสแกนยอดเสร็จแล้วแสดงถึง

last_errorstring | nullเสมอ

ข้อมูลวินิจฉัยที่ปลอดภัยสำหรับผู้ดำเนินระบบ

total_value_usddecimal string | nullเสมอ

ผลรวมยอดที่มีราคา USD ปัจจุบันเพื่อประกอบการพิจารณา

balance_statuspending | refreshing | fresh | stale | error | unknownเสมอ

ความใหม่แคชรวม unknown เป็นค่าทดแทนเพื่อความปลอดภัย และไม่มีสถานะใดพิสูจน์การชำระเสร็จสิ้นของใบแจ้งหนี้

balance_checked_attimestamp | nullเสมอ

เวลาตรวจยอดสำเร็จที่เก่าที่สุดซึ่งเกี่ยวข้องและรวมอยู่ในยอดรวม

recent_payments[]object[]เสมอ

ข้อมูลล่าสุดที่ถูกต้องในสถานะ detected, confirming หรือ final ไม่เกินสามรายการที่ระบุว่าเป็นของกระเป๋านี้ตรงตัว

invoice_public_idUUIDเสมอ

ตัวระบุใบแจ้งหนี้ที่ลูกค้าเห็นและสัมพันธ์กับข้อมูลที่ตรวจพบ

chain_slugstringเสมอ

เชนและสัญลักษณ์แสดงเหรียญหลักหรือโทเคนที่ตรวจสอบแล้ว

symbolstringเสมอ

เชนและสัญลักษณ์แสดงเหรียญหลักหรือโทเคนที่ตรวจสอบแล้ว

transaction_idstringเสมอ

ตัวระบุธุรกรรมและเหตุการณ์โอนแบบมาตรฐาน

event_indexintegerเสมอ

ตัวระบุธุรกรรมและเหตุการณ์โอนแบบมาตรฐาน

amountdecimal stringเสมอ

จำนวนสินทรัพย์ที่ตรวจพบอย่างแน่นอนโดยไม่แปลงเป็นเลขทศนิยมลอยตัว

statusdetected | confirming | finalเสมอ

สถานะข้อมูลที่ตรวจพบและยังถูกต้อง ไม่รวม reorged, replaced และ invalid

confirmationsintegerเสมอ

จำนวนการยืนยันล่าสุดที่ตรวจพบ

observed_atRFC 3339 timestampเสมอ

เวลาที่ Wholly Crypto ตรวจพบการชำระครั้งแรก

created_atRFC 3339 timestampเสมอ

เวลาสร้างและอัปเดตกระเป๋าล่าสุด

updated_atRFC 3339 timestampเสมอ

เวลาสร้างและอัปเดตกระเป๋าล่าสุด

wallet_readinessreadiness enumเสมอ
unsupported, project_disabled, project_asset_disabled, store_disabled, store_asset_disabled, wallet_missing, wallet_pending, wallet_disabled, wallet_error, backup_required, account_activation_required, external_wallet_rpc_required หรือ readyรายละเอียด

unsupported, project_disabled, project_asset_disabled, store_disabled, store_asset_disabled, wallet_missing, wallet_pending, wallet_disabled, wallet_error, backup_required, account_activation_required, external_wallet_rpc_required หรือ ready

receive_readinessobject | null5.5.0+
การประเมินตั้งค่ารับเงินร่วมของโปรเจกต์ รวมการตรวจกระเป๋าและผู้ให้บริการสแกนเนอร์อิสระ แยกจากความใหม่ยอดและแก๊สส่ง เป็น null หากไม่มีนโยบายโปรเจกต์ ตรวจสกุลเงิน/อัตราของใบแจ้งหนี้เมื่อสร้างรายละเอียด

การประเมินตั้งค่ารับเงินร่วมของโปรเจกต์ รวมการตรวจกระเป๋าและผู้ให้บริการสแกนเนอร์อิสระ แยกจากความใหม่ยอดและแก๊สส่ง เป็น null หากไม่มีนโยบายโปรเจกต์ ตรวจสกุลเงิน/อัตราของใบแจ้งหนี้เมื่อสร้าง

readybooleanเสมอ

ผ่านการตรวจตั้งค่ารับเงิน ไม่บอกความพร้อมใช้จ่าย แก๊ส การรีเฟรชยอด หรือรับประกันราคาเสนอในอนาคต

invoice_creatableboolean6.0.6+
การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัยรายละเอียด

การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัย

checked_attimestampเสมอ

เวลาประเมิน การแสดงรายการไม่ส่งคำขอเครือข่ายหรือจัดสรรที่อยู่

issues[]object[]เสมอ
ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้รายละเอียด

ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้

chain_slugstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_idUUIDเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_tickerstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

reason_codestringเสมอ
scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_acceptedรายละเอียด

scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_accepted

messagestringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

actionstringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

required_endpoint_rolestring | nullบนเชน
บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระรายละเอียด

บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระ

accepted_endpoint_roles[]string[] | nullบนเชน
รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์รายละเอียด

รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์

healthy_endpointsintegerบนเชน

เอนด์พอยต์ที่ทำงานปกติและตรงเงื่อนไข ไม่ใช่จำนวนผู้ให้บริการอิสระ

usable_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

required_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

last_checked_attimestamp | nullบนเชน

การตรวจสุขภาพเอนด์พอยต์ที่ตรงเงื่อนไขล่าสุด แยกจากเวลาประเมิน

หมายเหตุการใช้งาน
  • เนื้อหาแทนที่นโยบายทั้งหมดและปฏิเสธฟิลด์ที่ไม่รู้จัก
  • การเปิดในโปรเจกต์ไม่ได้เลือกสินทรัพย์ให้ร้านค้าใดโดยตัวมันเอง

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETเรียกดูโทเคนที่อาจใช้รับชำระได้/v1/projects/{project_id}/payment-token-candidatesอ่านอย่างเดียว

ค้นเฉพาะการจับคู่คอนแทรกต์ CoinGecko ที่แคชภายใน บนเชนที่มีสแกนเนอร์ใบแจ้งหนี้โทเคนและอะแดปเตอร์ยอดคงเหลือแล้ว ผลเป็นโทเคนผู้สมัครจากการค้นพบ ไม่ใช่สินทรัพย์รับชำระที่เชื่อถือได้

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MERCHANT_API_TOKEN
Acceptแนะนำapplication/json

พารามิเตอร์พาธ

project_idUUIDจำเป็น

โปรเจกต์ที่เปิดใช้และกำหนดให้ข้อมูลรับรอง

พารามิเตอร์ query

chain_slugstring

ต้องระบุ slug เชน EVM ที่รองรับหรือ solana

qstring

ชื่อ สัญลักษณ์ id CoinGecko คอนแทรกต์ หรือส่วนของ mint แบบไม่บังคับ ไม่เกิน 80 อักขระ

limitinteger

ไม่บังคับ 1–100 ค่าเริ่มต้น 50

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/projects/YOUR_PROJECT_ID/payment-token-candidates?chain_slug=ethereum&q=USDC&limit=50" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [
    {
      "coingecko_id": "usd-coin",
      "chain_slug": "ethereum",
      "symbol": "USDC",
      "name": "USDC",
      "contract_address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
      "market_cap_rank": 7,
      "icon_path": "/assets/coingecko/usd-coin.png",
      "current_price_usd": "1.0001",
      "token_standard": "erc20",
      "scanner_ready": true,
      "registered_asset_id": null,
      "project_enabled": false
    }
  ]
}

ฟิลด์การตอบกลับ

data[]object[]
coingecko_idstringเสมอ

ตัวระบุการค้นพบ CoinGecko ที่คำขอลงทะเบียนใช้

chain_slugstringเสมอ

เชน Wholly Crypto ที่จับคู่ได้

symbolstringเสมอ

ข้อมูลแสดงสินทรัพย์ในแค็ตตาล็อก

namestringเสมอ

ข้อมูลแสดงสินทรัพย์ในแค็ตตาล็อก

contract_addressstringเสมอ

คอนแทรกต์หรือ mint ที่จับคู่ได้ จะตรวจบนเชนก่อนลงทะเบียน

market_cap_rankinteger | nullเสมอ

อันดับการค้นพบ ไม่ใช่สัญญาณความน่าเชื่อถือหรือความพร้อมรับชำระ

icon_pathpathเสมอ

พาธไอคอน CoinGecko ที่แคชภายใน

current_price_usddecimal string | nullเสมอ

ราคา USD จากแคชประกอบการพิจารณา

token_standarderc20 | spl-tokenเสมอ

มาตรฐานโทเคนที่อะแดปเตอร์เชนที่เลือกรองรับ

scanner_readybooleanเสมอ

เป็น true เฉพาะผู้สมัครบนช่องทางโทเคนที่ build นี้มีการใช้งาน

registered_asset_idUUID | nullเสมอ

สินทรัพย์ถาวรเดิมหากขึ้นทะเบียนแล้ว

project_enabledbooleanเสมอ

สินทรัพย์ที่ลงทะเบียนเปิดใช้สำหรับโปรเจกต์นี้หรือไม่

หมายเหตุการใช้งาน
  • อะแดปเตอร์โทเคนที่รองรับ: ERC-20 บน Ethereum, Base, BNB Chain, HyperEVM, Avalanche, Polygon, Arbitrum และ Optimism; SPL บน Solana
  • เชนในแค็ตตาล็อกที่ไม่รองรับถูกปฏิเสธแทนการแสดงให้เลือก
  • อันดับ ไอคอน และราคา CoinGecko เป็นข้อมูลการค้นพบประกอบการพิจารณา

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTตรวจสอบและลงทะเบียนโทเคน/v1/projects/{project_id}/payment-token-assetsอ่าน + เขียน

นำผู้สมัครปัจจุบันหนึ่งรายการเข้าสู่ทะเบียนรับชำระถาวร ต่อเมื่อโหนดที่ตั้งค่าตรวจตัวตนเชน ตัวตนคอนแทรกต์/mint ทศนิยม และคำขออ่านยอดที่ใช้ได้แล้ว การลงทะเบียนไม่เชื่อ metadata CoinGecko เพียงอย่างเดียว และแต่ละโปรเจกต์จำกัดสินทรัพย์โทเคนลงทะเบียน 20 รายการ

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MERCHANT_API_TOKEN
Content-Typeจำเป็นapplication/json
Acceptแนะนำapplication/json

พารามิเตอร์พาธ

project_idUUIDจำเป็น

โปรเจกต์ที่เปิดใช้และกำหนดให้ข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/projects/YOUR_PROJECT_ID/payment-token-assets" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "chain_slug": "ethereum",
  "coingecko_id": "usd-coin",
  "enabled": true
}'

เนื้อหาคำขอ

chain_slugstringจำเป็น

ethereum, base, bnb-chain, hyperliquid, avalanche, polygon, arbitrum, optimism หรือ solana

coingecko_idstringจำเป็น
ตัวระบุผู้สมัครแบบตรงตัวจากการค้นโทเคน รักษาขีดล่างหรือขีดกลางนำหน้า เช่น _ หรือ -6 อย่าสร้าง ID นี้จากชื่อหรือ ticker โทเคนรายละเอียด

ตัวระบุผู้สมัครแบบตรงตัวจากการค้นโทเคน รักษาขีดล่างหรือขีดกลางนำหน้า เช่น _ หรือ -6 อย่าสร้าง ID นี้จากชื่อหรือ ticker โทเคน

enabledbooleanไม่บังคับ

สถานะนโยบายโปรเจกต์หลังตรวจสอบ ค่าเริ่มต้น true

การตอบกลับ 201 application/json

ตัวอย่างการตอบกลับ
{
  "data": {
    "asset_id": "44444444-4444-4444-8444-444444444444",
    "chain_slug": "ethereum",
    "coingecko_id": "usd-coin",
    "contract_address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
    "token_standard": "erc20",
    "symbol": "USDC",
    "name": "USDC",
    "decimals": 6,
    "enabled": true,
    "metadata_verified_at": "2026-08-31T18:00:00Z"
  }
}

ฟิลด์การตอบกลับ

dataobject
asset_idUUIDเสมอ

ตัวระบุสินทรัพย์รับชำระถาวร

chain_slugstringเสมอ

เชนที่ตรวจสอบแล้วและตัวระบุการค้นพบ/ราคาที่เก็บไว้

coingecko_idstringเสมอ

เชนที่ตรวจสอบแล้วและตัวระบุการค้นพบ/ราคาที่เก็บไว้

contract_addressstringเสมอ

คอนแทรกต์หรือ mint มาตรฐานที่ตรวจสอบแล้ว

token_standarderc20 | spl-tokenเสมอ

มาตรฐานโทเคนที่รันไทม์ตรวจสอบแล้ว

symbolstringเสมอ

ข้อมูลแสดงสินทรัพย์ที่ขึ้นทะเบียนและความละเอียดแน่นอน

namestringเสมอ

ข้อมูลแสดงสินทรัพย์ที่ขึ้นทะเบียนและความละเอียดแน่นอน

decimalsintegerเสมอ

ข้อมูลแสดงสินทรัพย์ที่ขึ้นทะเบียนและความละเอียดแน่นอน

enabledbooleanเสมอ

สถานะนโยบายโปรเจกต์เริ่มต้น

metadata_verified_atRFC 3339 timestampเสมอ

เวลาตรวจสอบบนเชน

หมายเหตุการใช้งาน
  • เปิดสินทรัพย์เหรียญหลักของเชนในโปรเจกต์ก่อนลงทะเบียนโทเคน
  • โปรเจกต์ลงทะเบียนสินทรัพย์โทเคนได้ไม่เกิน 20 รายการ ผู้สมัครใหม่ที่เกินเพดานคืน token_chain_not_ready (409) ใช้สินทรัพย์ที่ลงทะเบียนแล้วซ้ำไม่กินช่องเพิ่ม
  • การตรวจโหนดอาจนานกว่าการอ่านแค็ตตาล็อก ให้กำหนดเวลารอไคลเอนต์อย่างชัดเจน
  • หลังลงทะเบียน เลือกสินทรัพย์ให้แต่ละร้านค้าที่ควรเสนอวิธีนี้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETค้นหาพูล DEX ของโทเคนกำหนดเอง/v1/projects/{project_id}/payment-token-dex-poolsอ่านอย่างเดียว

ค้นพูลที่เข้าเกณฑ์สูงสุด 12 พูลด้วยเชนและคอนแทรกต์โทเคนฐานแบบตรงตัวผ่าน DEX Screener เรียงตามสภาพคล่อง ไม่ลงทะเบียนหรือเปิดโทเคน

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MERCHANT_API_TOKEN

พารามิเตอร์พาธ

project_idUUIDจำเป็น

โปรเจกต์ที่กำหนดไว้

พารามิเตอร์ query

chain_slugstring

เชนโทเคน EVM ที่รองรับหรือ solana

contract_addressstring

คอนแทรกต์ ERC-20 หรือ mint classic SPL แบบตรงตัว

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/projects/YOUR_PROJECT_ID/payment-token-dex-pools?chain_slug=ethereum&contract_address=YOUR_TOKEN_CONTRACT" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{"data":[{"pair_address":"0x2222222222222222222222222222222222222222","dex_id":"uniswap","quote_symbol":"WETH","price_usd":"0.25","liquidity_usd":"250000.00","fetched_at":"2026-09-09T12:00:00Z","url":"https://dexscreener.com/ethereum/0x2222222222222222222222222222222222222222"}]}

ฟิลด์การตอบกลับ

data[]object[]
pair_addressstringเสมอ

ตัวระบุพูลที่แน่นอน ID ศูนย์ซื้อขาย (เช่น uniswap/pancakeswap) และ ticker คู่ที่ใช้แสดงเท่านั้น

dex_idstringเสมอ

ตัวระบุพูลที่แน่นอน ID ศูนย์ซื้อขาย (เช่น uniswap/pancakeswap) และ ticker คู่ที่ใช้แสดงเท่านั้น

quote_symbolstringเสมอ

ตัวระบุพูลที่แน่นอน ID ศูนย์ซื้อขาย (เช่น uniswap/pancakeswap) และ ticker คู่ที่ใช้แสดงเท่านั้น

price_usddecimal stringเสมอ

ราคา USD ของโทเคนฐานที่ขอและสภาพคล่องรวมของพูล ต้องมีสภาพคล่องอย่างน้อย $10,000 และมีการซื้อขายในชั่วโมงล่าสุด

liquidity_usddecimal stringเสมอ

ราคา USD ของโทเคนฐานที่ขอและสภาพคล่องรวมของพูล ต้องมีสภาพคล่องอย่างน้อย $10,000 และมีการซื้อขายในชั่วโมงล่าสุด

fetched_atRFC 3339 timestampเสมอ

เวลาที่เซิร์ฟเวอร์ดึงข้อมูลจากผู้ให้บริการ ไม่ใช่เวลาการซื้อขายบนเชน

urlHTTPS URLเสมอ

ลิงก์ DEX Screener ไปยังพูลนี้ที่ตรวจสอบแล้ว

หมายเหตุการใช้งาน
  • อาร์เรย์ data ว่างหมายถึงไม่พบพูลผ่านเกณฑ์ คืนเฉพาะพูลที่คอนแทรกต์ที่ขอตรงตัวเป็นโทเคนฐาน ไม่สมมติราคา USD ของฝั่ง quote
  • การมีชื่อใน DEX ไม่ใช่การตรวจสอบความปลอดภัย สภาพคล่องขั้นต่ำและกิจกรรมล่าสุดช่วยลดราคาเสนอที่ใช้ไม่ได้ แต่ไม่ป้องกันการปั่นราคา
  • รองรับ Uniswap, PancakeSwap และ DEX อื่นที่จัดทำดัชนี เมื่อสแกนเนอร์เชนเดิมรองรับโทเคน การเข้าถึง API ยังจำกัดโปรเจกต์และอัตรา การเรียกผู้ให้บริการยังจัดให้ทำทีละรายการและจำกัดความถี่

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTเพิ่มหรือเปลี่ยนราคาโทเคนกำหนดเอง/v1/projects/{project_id}/payment-token-assets/customอ่าน + เขียน

ตรวจคอนแทรกต์กำหนดเองด้วยโหนดเชนที่ตั้งไว้และลงทะเบียนโดยไม่ต้องมีใน CoinGecko ราคาคงที่ USD หรือพูล DEX อัตโนมัติที่เลือกเป็นของโปรเจกต์นี้ ไม่ใช่ของ ticker หรือโปรเจกต์อื่น ส่งตัวระบุเดิมซ้ำจะอัปเดตราคาโปรเจกต์โดยไม่เปลี่ยนนโยบายเปิด/ปิดเดิม

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MERCHANT_API_TOKEN
Content-Typeจำเป็นapplication/json

พารามิเตอร์พาธ

project_idUUIDจำเป็น

โปรเจกต์ที่กำหนดให้ข้อมูลรับรองที่เขียนได้นี้

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/projects/YOUR_PROJECT_ID/payment-token-assets/custom" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "chain_slug": "ethereum",
  "contract_address": "YOUR_VERIFIED_TOKEN_CONTRACT",
  "name": "Example token",
  "symbol": "EXAMPLE",
  "price_usd": "0.25"
}'

เนื้อหาคำขอ

chain_slugstringจำเป็น

ethereum, base, bnb-chain, hyperliquid, avalanche, polygon, arbitrum, optimism หรือ solana คงที่สำหรับคอนแทรกต์นี้

contract_addressstringจำเป็น
คอนแทรกต์ ERC-20 (0x ตามด้วยเลขฐานสิบหก 40 ตัว) หรือ mint classic SPL โหนดตรวจตัวตนเครือข่ายและทศนิยมที่แน่นอน ปฏิเสธทศนิยมและ URL RPC ที่ผู้เรียกส่งมารายละเอียด

คอนแทรกต์ ERC-20 (0x ตามด้วยเลขฐานสิบหก 40 ตัว) หรือ mint classic SPL โหนดตรวจตัวตนเครือข่ายและทศนิยมที่แน่นอน ปฏิเสธทศนิยมและ URL RPC ที่ผู้เรียกส่งมา

namestringจำเป็น
ชื่อแสดงผล (1–80 อักขระ) และ ticker (ตัวอักษร/ตัวเลข/จุด/ขีดล่าง/ขีดกลาง 1–16 ตัว ตัวแรกเป็นตัวอักษรหรือตัวเลข) เอนด์พอยต์นี้เปลี่ยนชื่อตัวระบุเดิมไม่ได้รายละเอียด

ชื่อแสดงผล (1–80 อักขระ) และ ticker (ตัวอักษร/ตัวเลข/จุด/ขีดล่าง/ขีดกลาง 1–16 ตัว ตัวแรกเป็นตัวอักษรหรือตัวเลข) เอนด์พอยต์นี้เปลี่ยนชื่อตัวระบุเดิมไม่ได้

symbolstringจำเป็น
ชื่อแสดงผล (1–80 อักขระ) และ ticker (ตัวอักษร/ตัวเลข/จุด/ขีดล่าง/ขีดกลาง 1–16 ตัว ตัวแรกเป็นตัวอักษรหรือตัวเลข) เอนด์พอยต์นี้เปลี่ยนชื่อตัวระบุเดิมไม่ได้รายละเอียด

ชื่อแสดงผล (1–80 อักขระ) และ ticker (ตัวอักษร/ตัวเลข/จุด/ขีดล่าง/ขีดกลาง 1–16 ตัว ตัวแรกเป็นตัวอักษรหรือตัวเลข) เอนด์พอยต์นี้เปลี่ยนชื่อตัวระบุเดิมไม่ได้

price_modefixed | dexไม่บังคับ

ค่าเริ่มต้น fixed เพื่อเข้ากันได้ย้อนหลัง DEX ใช้พูลเฉพาะที่ค้นพบสำหรับเชนและคอนแทรกต์ตรงตัว

price_usddecimal stringโหมด fixed

มูลค่า USD คงที่ของโทเคนหนึ่งหน่วย เป็นบวก ทศนิยมไม่เกิน 30 ตำแหน่ง สูงสุด 1000000000000000000000000 ไม่มีเลขยกกำลังหรือ float ไม่ใส่ในโหมด dex

dex_pair_addressstringโหมด dex
ที่อยู่พูลจาก payment-token-dex-pools จำเป็นในโหมด dex ไม่ใส่ในโหมด fixed เซิร์ฟเวอร์ตรวจตัวตนพูล ราคา สภาพคล่อง และกิจกรรมซ้ำทุกครั้งที่บันทึกรายละเอียด

ที่อยู่พูลจาก payment-token-dex-pools จำเป็นในโหมด dex ไม่ใส่ในโหมด fixed เซิร์ฟเวอร์ตรวจตัวตนพูล ราคา สภาพคล่อง และกิจกรรมซ้ำทุกครั้งที่บันทึก

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{"data":{"asset_id":"44444444-4444-4444-8444-444444444444"}}

ฟิลด์การตอบกลับ

dataobject
asset_idstring
หมายเหตุการใช้งาน
  • หลังลงทะเบียน เลือก asset_id ในเอนด์พอยต์ payment-assets ของร้านค้า การลงทะเบียนอย่างเดียวไม่เปิดวิธีร้านค้า
  • โทเคนกำหนดเองและจากแค็ตตาล็อกใช้เพดาน 20 โทเคนต่อโปรเจกต์ร่วมกัน คอนแทรกต์เดียวกันต่างเชนเป็นสินทรัพย์รับชำระคนละรายการ
  • คอนแทรกต์ที่มีในแค็ตตาล็อกแล้วคืน 409 ให้ใช้การลงทะเบียนแค็ตตาล็อกเพื่อคงอัตราตลาดอัตโนมัติ ticker กำหนดเองไม่ยืมราคาจากโทเคนชื่อเหมือน
  • ราคาคงที่เป็นการประเมินของผู้ดำเนินระบบ ราคา DEX อัตโนมัติเป็นข้อมูลสปอตจากพูลที่เลือกผ่าน DEX Screener ไม่ใช่ oracle ที่ต้านการปั่นราคา สเปรดร้านค้าและการปัดขึ้นยังมีผล พร้อมอัตราเงินตราทั่วไปใหม่ ราคาเสนอที่ออกแล้วไม่เปลี่ยน
  • สำหรับโหมด DEX ให้ค้นพูลก่อน แล้วส่ง price_mode: dex และ dex_pair_address โดยไม่ใส่ price_usd งานเบื้องหลังร่วมรีเฟรชพูลที่เลือกทุกนาที การตรวจล้มเหลวหรือราคาเก่ากว่าห้านาทีจะนำโทเคนนี้ออกจากราคาเสนอใหม่ ไม่มีการเปลี่ยนไปใช้ราคาคงที่หรือ ticker สำรองเงียบ ๆ
  • รับเฉพาะ ERC-20 มาตรฐานและ classic SPL ปฏิเสธ Token-2022/ส่วนขยายและเชนที่รับแต่เหรียญหลัก การตรวจทางเทคนิคไม่ใช่การตรวจความปลอดภัยผู้ออก/คอนแทรกต์ โทเคนหักค่าธรรมเนียมตอนโอน ปรับยอด rebasing หรือขึ้นบัญชีดำอาจทำงานไม่เข้ากัน
  • ใช้เวลารอไคลเอนต์อย่างน้อย 60 วินาที การตรวจมีขอบเขตและอาจลองโหนดสำรอง ข้อมูลไม่ถูกต้องคืน 400; ตรวจเชน/คอนแทรกต์ไม่ผ่านคืน 422; ตัวระบุขัดแย้งหรือเกินขีดจำกัดคืน 409

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการวิธีชำระเงินของร้านค้า/v1/projects/{project_id}/stores/{store_id}/payment-assetsอ่านอย่างเดียว

แสดงสินทรัพย์บนเชนใน data และความพร้อม Lightning แยกใน lightning วิธีบนเชนต้องมีกระเป๋าเชนพร้อม Lightning ใช้การเชื่อมต่อรับเงินภายนอกที่ตรวจสอบและเลือกในร้านค้า แยกจากกระเป๋า Bitcoin บนเชน

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MERCHANT_API_TOKEN
Acceptแนะนำapplication/json

พารามิเตอร์พาธ

project_idUUIDจำเป็น

โปรเจกต์ที่กำหนดให้ข้อมูลรับรอง อาจอยู่ในสถานะพัก

store_idUUIDจำเป็น

ร้านค้าที่อยู่ใน project_id อาจอยู่ในสถานะพัก

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/projects/YOUR_PROJECT_ID/stores/YOUR_STORE_ID/payment-assets" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [
    { "asset": { "id": "ASSET_UUID", "chain_slug": "ethereum", "symbol": "USDC", "asset_kind": "token", "token_standard": "erc20", "scanner_ready": true }, "project_policy": { "enabled": true, "required_confirmations": 12 }, "selected": true, "display_order": 0, "confirmation_policy": { "finality_mode": "confirmations", "project_required_confirmations": 12, "override_required_confirmations": 3, "effective_required_confirmations": 3, "editable": true, "minimum_required_confirmations": 0, "maximum_required_confirmations": 48 }, "wallet": { "id": "WALLET_UUID", "status": "active" }, "wallet_readiness": "ready" }
  ],
  "lightning": { "payment_rail": "lightning", "symbol": "BTC", "asset_decimals": 11, "enabled": true, "ready": true }
}

ฟิลด์การตอบกลับ

data[]object[]
assetobjectเสมอ

สินทรัพย์เหรียญหลักหรือโทเคนที่ตรวจสอบแล้วซึ่งโปรเจกต์เห็นได้

idUUIDเสมอ

ตัวระบุสินทรัพย์รับชำระถาวรที่เส้นทางนโยบายโปรเจกต์และร้านค้าใช้

asset_keystringเสมอ

ตัวระบุเหรียญหลักหรือสินทรัพย์คอนแทรกต์แบบ CAIP มาตรฐาน

chain_slugstringเสมอ

ตัวระบุเชน Wholly Crypto และเครือข่ายที่ตั้งค่า

networkstringเสมอ

ตัวระบุเชน Wholly Crypto และเครือข่ายที่ตั้งค่า

caip_network_idstringเสมอ

ตัวระบุเครือข่ายและสินทรัพย์มาตรฐาน

caip_asset_idstring|nullเสมอ

ตัวระบุเครือข่ายและสินทรัพย์มาตรฐาน

asset_kindnative | tokenเสมอ

การชำระเสร็จสิ้นใช้สกุลเหรียญของเชนหรือคอนแทรกต์/mint ที่ตรวจสอบแล้ว

payment_railstringเสมอ

ช่องทางรันไทม์: utxo, evm-native, solana-native, account-native, privacy-native หรือ token-transfer

symbolstringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อยที่แน่นอน

namestringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อยที่แน่นอน

decimalsintegerเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อยที่แน่นอน

contract_addressstring | nullเสมอ

คอนแทรกต์ ERC-20 หรือ mint SPL มาตรฐานสำหรับโทเคน เป็น null สำหรับเหรียญหลัก

coingecko_idstring | nullเสมอ

ตัวระบุการค้นพบ/ราคา เป็น null สำหรับคอนแทรกต์กำหนดเอง ห้ามอนุมานราคาตลาดจาก ticker metadata ของ CoinGecko เพียงอย่างเดียวไม่ทำให้เลือกโทเคนได้

custom_tokenbooleanเสมอ

คอนแทรกต์กำหนดเองที่ตรวจสอบบนเชน พร้อมราคาคงที่ USD หรือราคาพูล DEX ที่เลือกในขอบเขตโปรเจกต์

icon_pathpath | nullเสมอ

ไอคอนโทเคนที่แคชภายในเมื่อมี

token_standarderc20 | spl-token | nullเสมอ

มาตรฐานโทเคนที่รันไทม์ตรวจสอบแล้ว เป็น null สำหรับเหรียญหลัก

metadata_verified_attimestamp | nullเสมอ

เวลาตรวจสอบ metadata บนเชนของโทเคนที่ขึ้นทะเบียน

payment_supportedbooleanเสมอ
เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้วรายละเอียด

เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้ว

scanner_readybooleanเสมอ
เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้วรายละเอียด

เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้ว

balance_readybooleanเสมอ
เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้วรายละเอียด

เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้ว

default_finality_modeconfirmations | finalizedเสมอ

รูปแบบความเป็นที่สุดเริ่มต้นที่นโยบายโปรเจกต์ใหม่สืบทอด

default_required_confirmationsintegerเสมอ

นโยบายการยืนยันและติดตามเริ่มต้น

default_monitoring_minutesintegerเสมอ

นโยบายการยืนยันและติดตามเริ่มต้น

project_policyobject | nullเสมอ

นโยบายโปรเจกต์หลัก

enabledbooleanจำเป็น

เปิดหรือปิดสินทรัพย์สำหรับโปรเจกต์ ต้องเปิดเชนเหรียญหลักก่อนโทเคนใด ๆ

finality_modeconfirmations | finalizedจำเป็น

นโยบายความเป็นที่สุดที่ช่องทางสินทรัพย์รองรับ finalized ต้องมี required_confirmations=1

required_confirmationsintegerจำเป็น
ช่องทาง Bitcoin และ EVM รับศูนย์ได้ ช่องทางแบบยืนยันอื่นต้องอย่างน้อยหนึ่ง ช่องทาง finalized-only ต้องหนึ่งพอดี และ EVM จำกัด 0–48 เพื่อให้ทุกการโอนอยู่ในช่วงเล่นธุรกรรมย้อนหลังรายละเอียด

ช่องทาง Bitcoin และ EVM รับศูนย์ได้ ช่องทางแบบยืนยันอื่นต้องอย่างน้อยหนึ่ง ช่องทาง finalized-only ต้องหนึ่งพอดี และ EVM จำกัด 0–48 เพื่อให้ทุกการโอนอยู่ในช่วงเล่นธุรกรรมย้อนหลัง

monitoring_minutesintegerจำเป็น

ช่วงตรวจซ้ำ 1–10,080 นาทีขณะใบแจ้งหนี้ยังใช้งาน

late_monitoring_daysintegerจำเป็น

ติดตาม 0–3,650 วันหลังใบแจ้งหนี้หมดอายุ

selectedbooleanเสมอ
วิธีนี้อยู่ในชุดการตั้งค่าที่ร้านค้าต้องการและบันทึกไว้หรือไม่ จะเสนอเมื่อมีนโยบายโปรเจกต์ กระเป๋า อะแดปเตอร์ติดตั้ง และราคาที่ถูกต้อง สแกนเนอร์ล่มชั่วคราวไม่นำวิธีนี้ออกจากใบแจ้งหนี้ใหม่รายละเอียด

วิธีนี้อยู่ในชุดการตั้งค่าที่ร้านค้าต้องการและบันทึกไว้หรือไม่ จะเสนอเมื่อมีนโยบายโปรเจกต์ กระเป๋า อะแดปเตอร์ติดตั้ง และราคาที่ถูกต้อง สแกนเนอร์ล่มชั่วคราวไม่นำวิธีนี้ออกจากใบแจ้งหนี้ใหม่

display_orderinteger | nullเสมอ

ลำดับบนหน้าชำระเงินร้านค้าเมื่อเลือกไว้

confirmation_policyobject | nullเสมอ

นโยบายร้านค้าที่มีผลสำหรับสินทรัพย์ที่ตั้งในโปรเจกต์ เป็น null หากไม่มีนโยบายโปรเจกต์

finality_modeconfirmations | finalizedเสมอ

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

project_required_confirmationsintegerเสมอ

ค่าเริ่มต้นโปรเจกต์ปัจจุบันที่ใบแจ้งหนี้ในอนาคตใช้เมื่อไม่มี override ร้านค้า

override_required_confirmationsinteger | nullเสมอ

จำนวนเฉพาะร้านค้า หรือ null เพื่อสืบทอดค่าเริ่มต้นโปรเจกต์

effective_required_confirmationsintegerเสมอ

จำนวนที่ใบแจ้งหนี้ใหม่ของร้านค้าและสินทรัพย์นี้จะเก็บเป็นภาพข้อมูล

editablebooleanเสมอ

เป็น false สำหรับเครือข่าย finalized ที่เปลี่ยนนโยบายความเป็นที่สุดไม่ได้

minimum_required_confirmationsintegerเสมอ

ขอบเขตล่างรวมค่าปลายตามเชน แสดง 0 เฉพาะช่องทางที่ยอมรับเมื่อเริ่มตรวจพบได้

maximum_required_confirmationsintegerเสมอ

ขอบเขตบนรวมค่าปลายตามเชน

walletobject | nullเสมอ

กระเป๋าเชนที่เหรียญหลักและโทเคนใช้ร่วมกัน

idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

project_idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

native_asset_idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

chain_slugstringเสมอ

เชนและเครือข่ายของกระเป๋า

networkstringเสมอ

เชนและเครือข่ายของกระเป๋า

asset_symbolstringเสมอ

ข้อมูลแสดงเหรียญหลักของเชน

asset_namestringเสมอ

ข้อมูลแสดงเหรียญหลักของเชน

statuspending | active | disabled | errorเสมอ

สถานะการทำงานกระเป๋า

labelstringเสมอ

ป้ายชื่อจากผู้ดำเนินระบบ

public_keystring | nullเสมอ

ข้อมูลระบุกระเป๋าสาธารณะ ไม่เปิดเผยวลี seed หรือคีย์ส่วนตัว

primary_addressstring | nullเสมอ

ข้อมูลระบุกระเป๋าสาธารณะ ไม่เปิดเผยวลี seed หรือคีย์ส่วนตัว

derivation_schemestring | nullเสมอ

นโยบายและรูปแบบที่อยู่

address_formatstring | nullเสมอ

นโยบายและรูปแบบที่อยู่

backup_confirmed_attimestamp | nullเสมอ

ไม่เป็น null หลังผู้ดำเนินระบบยืนยันสำรองข้อมูลกู้คืน

activation_requiredbooleanเสมอ
บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้รายละเอียด

บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้

activation_verified_attimestamp|nullเสมอ
บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้รายละเอียด

บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้

receive_readinessobject | null5.5.0+
รวมในการแสดงรายการกระเป๋า: การตั้งค่ารับเงินของโปรเจกต์และข้อกำหนดสแกนเนอร์เชน แยกจากยอดคงเหลือ แก๊สโทเคน และความพร้อมส่ง การตอบกระเป๋าแบบอื่นอาจปล่อยเป็น nullรายละเอียด

รวมในการแสดงรายการกระเป๋า: การตั้งค่ารับเงินของโปรเจกต์และข้อกำหนดสแกนเนอร์เชน แยกจากยอดคงเหลือ แก๊สโทเคน และความพร้อมส่ง การตอบกระเป๋าแบบอื่นอาจปล่อยเป็น null

readybooleanเสมอ

ผ่านการตรวจตั้งค่ารับเงิน ไม่บอกความพร้อมใช้จ่าย แก๊ส การรีเฟรชยอด หรือรับประกันราคาเสนอในอนาคต

invoice_creatableboolean6.0.6+
การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัยรายละเอียด

การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัย

checked_attimestampเสมอ

เวลาประเมิน การแสดงรายการไม่ส่งคำขอเครือข่ายหรือจัดสรรที่อยู่

issues[]object[]เสมอ
ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้รายละเอียด

ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้

chain_slugstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_idUUIDเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_tickerstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

reason_codestringเสมอ
scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_acceptedรายละเอียด

scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_accepted

messagestringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

actionstringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

required_endpoint_rolestring | nullบนเชน
บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระรายละเอียด

บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระ

accepted_endpoint_roles[]string[] | nullบนเชน
รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์รายละเอียด

รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์

healthy_endpointsintegerบนเชน

เอนด์พอยต์ที่ทำงานปกติและตรงเงื่อนไข ไม่ใช่จำนวนผู้ให้บริการอิสระ

usable_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

required_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

last_checked_attimestamp | nullบนเชน

การตรวจสุขภาพเอนด์พอยต์ที่ตรงเงื่อนไขล่าสุด แยกจากเวลาประเมิน

monero_wallet_rpcMoneroWalletRpcBinding | nullเสมอ
สถานะการผูก wallet-RPC ภายนอกแบบดูอย่างเดียวสำหรับ Monero ที่ตัดข้อมูลอ่อนไหวแล้ว รวมเอนด์พอยต์ โหมดการยืนยันตัวตน ที่อยู่หลัก account-0 ธง/ความสูงหลักฐานทางเทคนิค และเวลารับรองของผู้ดำเนินระบบ ไม่ serialize ข้อมูลรับรอง คีย์กระเป๋า หรือไฟล์กระเป๋ารายละเอียด

สถานะการผูก wallet-RPC ภายนอกแบบดูอย่างเดียวสำหรับ Monero ที่ตัดข้อมูลอ่อนไหวแล้ว รวมเอนด์พอยต์ โหมดการยืนยันตัวตน ที่อยู่หลัก account-0 ธง/ความสูงหลักฐานทางเทคนิค และเวลารับรองของผู้ดำเนินระบบ ไม่ serialize ข้อมูลรับรอง คีย์กระเป๋า หรือไฟล์กระเป๋า

last_secret_revealed_attimestamp|nullเสมอ

metadata บันทึกตรวจสอบการเปิดเผยซีเคร็ตฝั่งคอนโซล

secret_reveal_countintegerเสมอ

metadata บันทึกตรวจสอบการเปิดเผยซีเคร็ตฝั่งคอนโซล

next_receive_indexintegerเสมอ

ดัชนีที่อยู่ลูกถัดไปที่สำรองไว้

last_scanned_heightinteger|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

last_scanned_attimestamp|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

last_errorstring|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

balances[]object[]เสมอ
ยอดแคชสำหรับช่องทางเหรียญหลักทั้ง 30 เชน พร้อมสินทรัพย์ ERC-20 และ SPL ที่ตรวจสอบแล้ว Monero ต้องตั้ง wallet-RPC ภายนอกแบบดูอย่างเดียวรายละเอียด

ยอดแคชสำหรับช่องทางเหรียญหลักทั้ง 30 เชน พร้อมสินทรัพย์ ERC-20 และ SPL ที่ตรวจสอบแล้ว Monero ต้องตั้ง wallet-RPC ภายนอกแบบดูอย่างเดียว

wallet_idUUIDเสมอ

ตัวระบุกระเป๋าและสินทรัพย์ถาวร

asset_idUUIDเสมอ

ตัวระบุกระเป๋าและสินทรัพย์ถาวร

project_enabledbooleanเสมอ

นโยบายสินทรัพย์ของโปรเจกต์เปิดสินทรัพย์นี้อยู่หรือไม่

active_store_countintegerเสมอ

จำนวนร้านค้าที่เปิดใช้และเลือกสินทรัพย์นี้อยู่ เป็นมุมมองการยอมรับ การติดตามยอดแบบอ่านอย่างเดียวยังเป็นอิสระ

active_store_ids[]UUID[]เสมอ

ร้านค้าที่เปิดในโปรเจกต์นี้และยอมรับสินทรัพย์อยู่ ช่วยกรองร้านค้าในระบบอย่างแม่นยำโดยไม่เรียก API เพิ่ม

tracking_activebooleanเสมอ
กระเป๋าที่อ่านได้และสินทรัพย์เชนเดียวกันที่ลงทะเบียนนี้มีสิทธิ์รีเฟรชยอดเบื้องหลังหรือไม่ สวิตช์ยอมรับของโปรเจกต์และวิธีชำระไม่พักการติดตามแบบอ่านอย่างเดียวรายละเอียด

กระเป๋าที่อ่านได้และสินทรัพย์เชนเดียวกันที่ลงทะเบียนนี้มีสิทธิ์รีเฟรชยอดเบื้องหลังหรือไม่ สวิตช์ยอมรับของโปรเจกต์และวิธีชำระไม่พักการติดตามแบบอ่านอย่างเดียว

asset_kindnative | tokenเสมอ

เหรียญหลักหรือสินทรัพย์คอนแทรกต์/mint ที่ตรวจสอบแล้ว

contract_addressstring | nullเสมอ

สัญญาโทเคนหรือ mint เป็น null สำหรับเหรียญหลัก

symbolstringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

namestringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

decimalsintegerเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

coingecko_idstring | nullเสมอ

ตัวระบุราคาเมื่อมีการจับคู่

balancedecimal string|nullเสมอ

ยอดแสดงผลและหน่วยย่อยที่แน่นอนรวมที่อยู่หลักกระเป๋าและที่อยู่ใบแจ้งหนี้ที่ออกแล้ว เป็น null ขณะที่ไม่มีค่าครบถ้วน

balance_atomicinteger string|nullเสมอ

ยอดแสดงผลและหน่วยย่อยที่แน่นอนรวมที่อยู่หลักกระเป๋าและที่อยู่ใบแจ้งหนี้ที่ออกแล้ว เป็น null ขณะที่ไม่มีค่าครบถ้วน

price_usddecimal string | nullเสมอ

ราคาต่อหน่วย USD จากแคชเพื่อประกอบการตีมูลค่า

value_usddecimal string | nullเสมอ

มูลค่าเงินตราทั่วไปประกอบการพิจารณาเมื่อมีอัตราปัจจุบัน

statuspending | refreshing | fresh | stale | errorเสมอ
สถานะสแกนจากแคช refreshing อาจคงยอดที่สแกนเสร็จแล้ว ใช้ checked_at ดูอายุ Pending หมายถึงยังไม่มีภาพข้อมูลที่เสร็จ ไม่มีสถานะใดพิสูจน์ว่าการโอนกำลังรอหรือใบแจ้งหนี้ชำระเสร็จสิ้นรายละเอียด

สถานะสแกนจากแคช refreshing อาจคงยอดที่สแกนเสร็จแล้ว ใช้ checked_at ดูอายุ Pending หมายถึงยังไม่มีภาพข้อมูลที่เสร็จ ไม่มีสถานะใดพิสูจน์ว่าการโอนกำลังรอหรือใบแจ้งหนี้ชำระเสร็จสิ้น

checked_attimestamp | nullเสมอ

เวลาที่การสแกนยอดเสร็จแล้วแสดงถึง

last_errorstring | nullเสมอ

ข้อมูลวินิจฉัยที่ปลอดภัยสำหรับผู้ดำเนินระบบ

total_value_usddecimal string | nullเสมอ

ผลรวมยอดที่มีราคา USD ปัจจุบันเพื่อประกอบการพิจารณา

balance_statuspending | refreshing | fresh | stale | error | unknownเสมอ

ความใหม่แคชรวม unknown เป็นค่าทดแทนเพื่อความปลอดภัย และไม่มีสถานะใดพิสูจน์การชำระเสร็จสิ้นของใบแจ้งหนี้

balance_checked_attimestamp | nullเสมอ

เวลาตรวจยอดสำเร็จที่เก่าที่สุดซึ่งเกี่ยวข้องและรวมอยู่ในยอดรวม

recent_payments[]object[]เสมอ

ข้อมูลล่าสุดที่ถูกต้องในสถานะ detected, confirming หรือ final ไม่เกินสามรายการที่ระบุว่าเป็นของกระเป๋านี้ตรงตัว

invoice_public_idUUIDเสมอ

ตัวระบุใบแจ้งหนี้ที่ลูกค้าเห็นและสัมพันธ์กับข้อมูลที่ตรวจพบ

chain_slugstringเสมอ

เชนและสัญลักษณ์แสดงเหรียญหลักหรือโทเคนที่ตรวจสอบแล้ว

symbolstringเสมอ

เชนและสัญลักษณ์แสดงเหรียญหลักหรือโทเคนที่ตรวจสอบแล้ว

transaction_idstringเสมอ

ตัวระบุธุรกรรมและเหตุการณ์โอนแบบมาตรฐาน

event_indexintegerเสมอ

ตัวระบุธุรกรรมและเหตุการณ์โอนแบบมาตรฐาน

amountdecimal stringเสมอ

จำนวนสินทรัพย์ที่ตรวจพบอย่างแน่นอนโดยไม่แปลงเป็นเลขทศนิยมลอยตัว

statusdetected | confirming | finalเสมอ

สถานะข้อมูลที่ตรวจพบและยังถูกต้อง ไม่รวม reorged, replaced และ invalid

confirmationsintegerเสมอ

จำนวนการยืนยันล่าสุดที่ตรวจพบ

observed_atRFC 3339 timestampเสมอ

เวลาที่ Wholly Crypto ตรวจพบการชำระครั้งแรก

created_atRFC 3339 timestampเสมอ

เวลาสร้างและอัปเดตกระเป๋าล่าสุด

updated_atRFC 3339 timestampเสมอ

เวลาสร้างและอัปเดตกระเป๋าล่าสุด

wallet_readinessreadiness enumเสมอ

เฉพาะสถานะกระเป๋า/นโยบาย ใช้ receive_readiness เพื่อดูข้อกำหนดสแกนเนอร์

receive_readinessobject | null5.5.0+
การตั้งค่ารับเงินร่วมพร้อมการยอมรับของร้านค้า ใช้ข้อมูลแคช ไม่ใช่การสำรองหรือรับประกัน การสร้างตรวจข้อกำหนดและอัตราแลกเปลี่ยนจริงของใบแจ้งหนี้ซ้ำรายละเอียด

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

readybooleanเสมอ

ผ่านการตรวจตั้งค่ารับเงิน ไม่บอกความพร้อมใช้จ่าย แก๊ส การรีเฟรชยอด หรือรับประกันราคาเสนอในอนาคต

invoice_creatableboolean6.0.6+
การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัยรายละเอียด

การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัย

checked_attimestampเสมอ

เวลาประเมิน การแสดงรายการไม่ส่งคำขอเครือข่ายหรือจัดสรรที่อยู่

issues[]object[]เสมอ
ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้รายละเอียด

ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้

chain_slugstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_idUUIDเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_tickerstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

reason_codestringเสมอ
scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_acceptedรายละเอียด

scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_accepted

messagestringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

actionstringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

required_endpoint_rolestring | nullบนเชน
บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระรายละเอียด

บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระ

accepted_endpoint_roles[]string[] | nullบนเชน
รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์รายละเอียด

รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์

healthy_endpointsintegerบนเชน

เอนด์พอยต์ที่ทำงานปกติและตรงเงื่อนไข ไม่ใช่จำนวนผู้ให้บริการอิสระ

usable_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

required_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

last_checked_attimestamp | nullบนเชน

การตรวจสุขภาพเอนด์พอยต์ที่ตรงเงื่อนไขล่าสุด แยกจากเวลาประเมิน

lightningobject
payment_railstring
symbolstring
asset_decimalsinteger
enabledboolean
readyboolean
หมายเหตุการใช้งาน
  • selected คือการตั้งค่าบนเชน ส่วน wallet_readiness เป็นเงื่อนไขความพร้อมปัจจุบัน
  • สมาชิก lightning ในการตอบกลับมี payment_rail: lightning, symbol: BTC, asset_decimals: 11, enabled และ ready ไม่มีข้อมูลรับรองโหนด ตั้งวิธีนี้ในคอนโซลร้านค้า การอัปเดตอาร์เรย์ assets ไม่เปลี่ยน Lightning
  • confirmation_policy ใช้เฉพาะวิธีบนเชน Lightning ชำระเสร็จสิ้นโดยไม่มีการยืนยันบล็อกและต้องชำระ BOLT11 เต็มจำนวน ไม่ยอมรับส่วนต่างการชำระบางส่วน
  • วิธีเหรียญหลักและโทเคนบนเชนเดียวใช้ปลายทางใบแจ้งหนี้เดียวกันสำหรับกระเป๋าเชนนั้น
  • สรุปกระเป๋าที่ฝังมาบอกเฉพาะความพร้อมและปล่อยยอดว่าง ใช้เส้นทางกระเป๋าโปรเจกต์โดยเฉพาะเพื่อดูค่าปัจจุบัน

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

PUTแทนที่วิธีชำระเงินของร้านค้า/v1/projects/{project_id}/stores/{store_id}/payment-assetsอ่าน + เขียน

แทนที่ชุดสินทรัพย์ที่เรียงลำดับทั้งหมดของร้านค้าแบบอะตอมมิกและคืนรายการรีเฟรชแล้ว สินทรัพย์ที่ไม่ส่งมาจะถูกยกเลิกเลือก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MERCHANT_API_TOKEN
Content-Typeจำเป็นapplication/json
Acceptแนะนำapplication/json

พารามิเตอร์พาธ

project_idUUIDจำเป็น

โปรเจกต์ที่กำหนดให้ข้อมูลรับรอง อาจอยู่ในสถานะพัก

store_idUUIDจำเป็น

ร้านค้าที่อยู่ใน project_id อาจอยู่ในสถานะพัก

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request PUT \
  --url "https://api.example.com/v1/projects/YOUR_PROJECT_ID/stores/YOUR_STORE_ID/payment-assets" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "assets": [
    {
      "asset_id": "YOUR_ASSET_ID",
      "display_order": 0
    }
  ]
}'

เนื้อหาคำขอ

assets[]object[]จำเป็น

รายการแทนที่ทั้งหมด ไม่เกิน 64 รายการ แต่ละรายการมี asset_id ไม่ซ้ำและ display_order ไม่ซ้ำจาก 0 ถึง 10,000

asset_idUUIDจำเป็น
display_orderintegerไม่บังคับ

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [
    { "asset": { "id": "44444444-4444-4444-8444-444444444444", "symbol": "USDC" }, "selected": true, "display_order": 0, "confirmation_policy": { "finality_mode": "confirmations", "project_required_confirmations": 12, "override_required_confirmations": null, "effective_required_confirmations": 12, "editable": true, "minimum_required_confirmations": 0, "maximum_required_confirmations": 48 }, "wallet_readiness": "ready" }
  ]
}

ฟิลด์การตอบกลับ

data[]object[]
assetobjectเสมอ

สินทรัพย์เหรียญหลักหรือโทเคนที่ตรวจสอบแล้วซึ่งโปรเจกต์เห็นได้

idUUIDเสมอ

ตัวระบุสินทรัพย์รับชำระถาวรที่เส้นทางนโยบายโปรเจกต์และร้านค้าใช้

asset_keystringเสมอ

ตัวระบุเหรียญหลักหรือสินทรัพย์คอนแทรกต์แบบ CAIP มาตรฐาน

chain_slugstringเสมอ

ตัวระบุเชน Wholly Crypto และเครือข่ายที่ตั้งค่า

networkstringเสมอ

ตัวระบุเชน Wholly Crypto และเครือข่ายที่ตั้งค่า

caip_network_idstringเสมอ

ตัวระบุเครือข่ายและสินทรัพย์มาตรฐาน

caip_asset_idstring|nullเสมอ

ตัวระบุเครือข่ายและสินทรัพย์มาตรฐาน

asset_kindnative | tokenเสมอ

การชำระเสร็จสิ้นใช้สกุลเหรียญของเชนหรือคอนแทรกต์/mint ที่ตรวจสอบแล้ว

payment_railstringเสมอ

ช่องทางรันไทม์: utxo, evm-native, solana-native, account-native, privacy-native หรือ token-transfer

symbolstringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อยที่แน่นอน

namestringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อยที่แน่นอน

decimalsintegerเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อยที่แน่นอน

contract_addressstring | nullเสมอ

คอนแทรกต์ ERC-20 หรือ mint SPL มาตรฐานสำหรับโทเคน เป็น null สำหรับเหรียญหลัก

coingecko_idstring | nullเสมอ

ตัวระบุการค้นพบ/ราคา เป็น null สำหรับคอนแทรกต์กำหนดเอง ห้ามอนุมานราคาตลาดจาก ticker metadata ของ CoinGecko เพียงอย่างเดียวไม่ทำให้เลือกโทเคนได้

custom_tokenbooleanเสมอ

คอนแทรกต์กำหนดเองที่ตรวจสอบบนเชน พร้อมราคาคงที่ USD หรือราคาพูล DEX ที่เลือกในขอบเขตโปรเจกต์

icon_pathpath | nullเสมอ

ไอคอนโทเคนที่แคชภายในเมื่อมี

token_standarderc20 | spl-token | nullเสมอ

มาตรฐานโทเคนที่รันไทม์ตรวจสอบแล้ว เป็น null สำหรับเหรียญหลัก

metadata_verified_attimestamp | nullเสมอ

เวลาตรวจสอบ metadata บนเชนของโทเคนที่ขึ้นทะเบียน

payment_supportedbooleanเสมอ
เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้วรายละเอียด

เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้ว

scanner_readybooleanเสมอ
เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้วรายละเอียด

เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้ว

balance_readybooleanเสมอ
เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้วรายละเอียด

เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้ว

default_finality_modeconfirmations | finalizedเสมอ

รูปแบบความเป็นที่สุดเริ่มต้นที่นโยบายโปรเจกต์ใหม่สืบทอด

default_required_confirmationsintegerเสมอ

นโยบายการยืนยันและติดตามเริ่มต้น

default_monitoring_minutesintegerเสมอ

นโยบายการยืนยันและติดตามเริ่มต้น

project_policyobject | nullเสมอ

นโยบายโปรเจกต์หลัก

enabledbooleanจำเป็น

เปิดหรือปิดสินทรัพย์สำหรับโปรเจกต์ ต้องเปิดเชนเหรียญหลักก่อนโทเคนใด ๆ

finality_modeconfirmations | finalizedจำเป็น

นโยบายความเป็นที่สุดที่ช่องทางสินทรัพย์รองรับ finalized ต้องมี required_confirmations=1

required_confirmationsintegerจำเป็น
ช่องทาง Bitcoin และ EVM รับศูนย์ได้ ช่องทางแบบยืนยันอื่นต้องอย่างน้อยหนึ่ง ช่องทาง finalized-only ต้องหนึ่งพอดี และ EVM จำกัด 0–48 เพื่อให้ทุกการโอนอยู่ในช่วงเล่นธุรกรรมย้อนหลังรายละเอียด

ช่องทาง Bitcoin และ EVM รับศูนย์ได้ ช่องทางแบบยืนยันอื่นต้องอย่างน้อยหนึ่ง ช่องทาง finalized-only ต้องหนึ่งพอดี และ EVM จำกัด 0–48 เพื่อให้ทุกการโอนอยู่ในช่วงเล่นธุรกรรมย้อนหลัง

monitoring_minutesintegerจำเป็น

ช่วงตรวจซ้ำ 1–10,080 นาทีขณะใบแจ้งหนี้ยังใช้งาน

late_monitoring_daysintegerจำเป็น

ติดตาม 0–3,650 วันหลังใบแจ้งหนี้หมดอายุ

selectedbooleanเสมอ
วิธีนี้อยู่ในชุดการตั้งค่าที่ร้านค้าต้องการและบันทึกไว้หรือไม่ จะเสนอเมื่อมีนโยบายโปรเจกต์ กระเป๋า อะแดปเตอร์ติดตั้ง และราคาที่ถูกต้อง สแกนเนอร์ล่มชั่วคราวไม่นำวิธีนี้ออกจากใบแจ้งหนี้ใหม่รายละเอียด

วิธีนี้อยู่ในชุดการตั้งค่าที่ร้านค้าต้องการและบันทึกไว้หรือไม่ จะเสนอเมื่อมีนโยบายโปรเจกต์ กระเป๋า อะแดปเตอร์ติดตั้ง และราคาที่ถูกต้อง สแกนเนอร์ล่มชั่วคราวไม่นำวิธีนี้ออกจากใบแจ้งหนี้ใหม่

display_orderinteger | nullเสมอ

ลำดับบนหน้าชำระเงินร้านค้าเมื่อเลือกไว้

confirmation_policyobject | nullเสมอ

นโยบายร้านค้าที่มีผลสำหรับสินทรัพย์ที่ตั้งในโปรเจกต์ เป็น null หากไม่มีนโยบายโปรเจกต์

finality_modeconfirmations | finalizedเสมอ

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

project_required_confirmationsintegerเสมอ

ค่าเริ่มต้นโปรเจกต์ปัจจุบันที่ใบแจ้งหนี้ในอนาคตใช้เมื่อไม่มี override ร้านค้า

override_required_confirmationsinteger | nullเสมอ

จำนวนเฉพาะร้านค้า หรือ null เพื่อสืบทอดค่าเริ่มต้นโปรเจกต์

effective_required_confirmationsintegerเสมอ

จำนวนที่ใบแจ้งหนี้ใหม่ของร้านค้าและสินทรัพย์นี้จะเก็บเป็นภาพข้อมูล

editablebooleanเสมอ

เป็น false สำหรับเครือข่าย finalized ที่เปลี่ยนนโยบายความเป็นที่สุดไม่ได้

minimum_required_confirmationsintegerเสมอ

ขอบเขตล่างรวมค่าปลายตามเชน แสดง 0 เฉพาะช่องทางที่ยอมรับเมื่อเริ่มตรวจพบได้

maximum_required_confirmationsintegerเสมอ

ขอบเขตบนรวมค่าปลายตามเชน

walletobject | nullเสมอ

กระเป๋าเชนที่เหรียญหลักและโทเคนใช้ร่วมกัน

idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

project_idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

native_asset_idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

chain_slugstringเสมอ

เชนและเครือข่ายของกระเป๋า

networkstringเสมอ

เชนและเครือข่ายของกระเป๋า

asset_symbolstringเสมอ

ข้อมูลแสดงเหรียญหลักของเชน

asset_namestringเสมอ

ข้อมูลแสดงเหรียญหลักของเชน

statuspending | active | disabled | errorเสมอ

สถานะการทำงานกระเป๋า

labelstringเสมอ

ป้ายชื่อจากผู้ดำเนินระบบ

public_keystring | nullเสมอ

ข้อมูลระบุกระเป๋าสาธารณะ ไม่เปิดเผยวลี seed หรือคีย์ส่วนตัว

primary_addressstring | nullเสมอ

ข้อมูลระบุกระเป๋าสาธารณะ ไม่เปิดเผยวลี seed หรือคีย์ส่วนตัว

derivation_schemestring | nullเสมอ

นโยบายและรูปแบบที่อยู่

address_formatstring | nullเสมอ

นโยบายและรูปแบบที่อยู่

backup_confirmed_attimestamp | nullเสมอ

ไม่เป็น null หลังผู้ดำเนินระบบยืนยันสำรองข้อมูลกู้คืน

activation_requiredbooleanเสมอ
บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้รายละเอียด

บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้

activation_verified_attimestamp|nullเสมอ
บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้รายละเอียด

บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้

receive_readinessobject | null5.5.0+
รวมในการแสดงรายการกระเป๋า: การตั้งค่ารับเงินของโปรเจกต์และข้อกำหนดสแกนเนอร์เชน แยกจากยอดคงเหลือ แก๊สโทเคน และความพร้อมส่ง การตอบกระเป๋าแบบอื่นอาจปล่อยเป็น nullรายละเอียด

รวมในการแสดงรายการกระเป๋า: การตั้งค่ารับเงินของโปรเจกต์และข้อกำหนดสแกนเนอร์เชน แยกจากยอดคงเหลือ แก๊สโทเคน และความพร้อมส่ง การตอบกระเป๋าแบบอื่นอาจปล่อยเป็น null

readybooleanเสมอ

ผ่านการตรวจตั้งค่ารับเงิน ไม่บอกความพร้อมใช้จ่าย แก๊ส การรีเฟรชยอด หรือรับประกันราคาเสนอในอนาคต

invoice_creatableboolean6.0.6+
การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัยรายละเอียด

การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัย

checked_attimestampเสมอ

เวลาประเมิน การแสดงรายการไม่ส่งคำขอเครือข่ายหรือจัดสรรที่อยู่

issues[]object[]เสมอ
ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้รายละเอียด

ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้

chain_slugstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_idUUIDเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_tickerstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

reason_codestringเสมอ
scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_acceptedรายละเอียด

scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_accepted

messagestringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

actionstringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

required_endpoint_rolestring | nullบนเชน
บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระรายละเอียด

บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระ

accepted_endpoint_roles[]string[] | nullบนเชน
รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์รายละเอียด

รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์

healthy_endpointsintegerบนเชน

เอนด์พอยต์ที่ทำงานปกติและตรงเงื่อนไข ไม่ใช่จำนวนผู้ให้บริการอิสระ

usable_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

required_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

last_checked_attimestamp | nullบนเชน

การตรวจสุขภาพเอนด์พอยต์ที่ตรงเงื่อนไขล่าสุด แยกจากเวลาประเมิน

monero_wallet_rpcMoneroWalletRpcBinding | nullเสมอ
สถานะการผูก wallet-RPC ภายนอกแบบดูอย่างเดียวสำหรับ Monero ที่ตัดข้อมูลอ่อนไหวแล้ว รวมเอนด์พอยต์ โหมดการยืนยันตัวตน ที่อยู่หลัก account-0 ธง/ความสูงหลักฐานทางเทคนิค และเวลารับรองของผู้ดำเนินระบบ ไม่ serialize ข้อมูลรับรอง คีย์กระเป๋า หรือไฟล์กระเป๋ารายละเอียด

สถานะการผูก wallet-RPC ภายนอกแบบดูอย่างเดียวสำหรับ Monero ที่ตัดข้อมูลอ่อนไหวแล้ว รวมเอนด์พอยต์ โหมดการยืนยันตัวตน ที่อยู่หลัก account-0 ธง/ความสูงหลักฐานทางเทคนิค และเวลารับรองของผู้ดำเนินระบบ ไม่ serialize ข้อมูลรับรอง คีย์กระเป๋า หรือไฟล์กระเป๋า

last_secret_revealed_attimestamp|nullเสมอ

metadata บันทึกตรวจสอบการเปิดเผยซีเคร็ตฝั่งคอนโซล

secret_reveal_countintegerเสมอ

metadata บันทึกตรวจสอบการเปิดเผยซีเคร็ตฝั่งคอนโซล

next_receive_indexintegerเสมอ

ดัชนีที่อยู่ลูกถัดไปที่สำรองไว้

last_scanned_heightinteger|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

last_scanned_attimestamp|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

last_errorstring|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

balances[]object[]เสมอ
ยอดแคชสำหรับช่องทางเหรียญหลักทั้ง 30 เชน พร้อมสินทรัพย์ ERC-20 และ SPL ที่ตรวจสอบแล้ว Monero ต้องตั้ง wallet-RPC ภายนอกแบบดูอย่างเดียวรายละเอียด

ยอดแคชสำหรับช่องทางเหรียญหลักทั้ง 30 เชน พร้อมสินทรัพย์ ERC-20 และ SPL ที่ตรวจสอบแล้ว Monero ต้องตั้ง wallet-RPC ภายนอกแบบดูอย่างเดียว

wallet_idUUIDเสมอ

ตัวระบุกระเป๋าและสินทรัพย์ถาวร

asset_idUUIDเสมอ

ตัวระบุกระเป๋าและสินทรัพย์ถาวร

project_enabledbooleanเสมอ

นโยบายสินทรัพย์ของโปรเจกต์เปิดสินทรัพย์นี้อยู่หรือไม่

active_store_countintegerเสมอ

จำนวนร้านค้าที่เปิดใช้และเลือกสินทรัพย์นี้อยู่ เป็นมุมมองการยอมรับ การติดตามยอดแบบอ่านอย่างเดียวยังเป็นอิสระ

active_store_ids[]UUID[]เสมอ

ร้านค้าที่เปิดในโปรเจกต์นี้และยอมรับสินทรัพย์อยู่ ช่วยกรองร้านค้าในระบบอย่างแม่นยำโดยไม่เรียก API เพิ่ม

tracking_activebooleanเสมอ
กระเป๋าที่อ่านได้และสินทรัพย์เชนเดียวกันที่ลงทะเบียนนี้มีสิทธิ์รีเฟรชยอดเบื้องหลังหรือไม่ สวิตช์ยอมรับของโปรเจกต์และวิธีชำระไม่พักการติดตามแบบอ่านอย่างเดียวรายละเอียด

กระเป๋าที่อ่านได้และสินทรัพย์เชนเดียวกันที่ลงทะเบียนนี้มีสิทธิ์รีเฟรชยอดเบื้องหลังหรือไม่ สวิตช์ยอมรับของโปรเจกต์และวิธีชำระไม่พักการติดตามแบบอ่านอย่างเดียว

asset_kindnative | tokenเสมอ

เหรียญหลักหรือสินทรัพย์คอนแทรกต์/mint ที่ตรวจสอบแล้ว

contract_addressstring | nullเสมอ

สัญญาโทเคนหรือ mint เป็น null สำหรับเหรียญหลัก

symbolstringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

namestringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

decimalsintegerเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

coingecko_idstring | nullเสมอ

ตัวระบุราคาเมื่อมีการจับคู่

balancedecimal string|nullเสมอ

ยอดแสดงผลและหน่วยย่อยที่แน่นอนรวมที่อยู่หลักกระเป๋าและที่อยู่ใบแจ้งหนี้ที่ออกแล้ว เป็น null ขณะที่ไม่มีค่าครบถ้วน

balance_atomicinteger string|nullเสมอ

ยอดแสดงผลและหน่วยย่อยที่แน่นอนรวมที่อยู่หลักกระเป๋าและที่อยู่ใบแจ้งหนี้ที่ออกแล้ว เป็น null ขณะที่ไม่มีค่าครบถ้วน

price_usddecimal string | nullเสมอ

ราคาต่อหน่วย USD จากแคชเพื่อประกอบการตีมูลค่า

value_usddecimal string | nullเสมอ

มูลค่าเงินตราทั่วไปประกอบการพิจารณาเมื่อมีอัตราปัจจุบัน

statuspending | refreshing | fresh | stale | errorเสมอ
สถานะสแกนจากแคช refreshing อาจคงยอดที่สแกนเสร็จแล้ว ใช้ checked_at ดูอายุ Pending หมายถึงยังไม่มีภาพข้อมูลที่เสร็จ ไม่มีสถานะใดพิสูจน์ว่าการโอนกำลังรอหรือใบแจ้งหนี้ชำระเสร็จสิ้นรายละเอียด

สถานะสแกนจากแคช refreshing อาจคงยอดที่สแกนเสร็จแล้ว ใช้ checked_at ดูอายุ Pending หมายถึงยังไม่มีภาพข้อมูลที่เสร็จ ไม่มีสถานะใดพิสูจน์ว่าการโอนกำลังรอหรือใบแจ้งหนี้ชำระเสร็จสิ้น

checked_attimestamp | nullเสมอ

เวลาที่การสแกนยอดเสร็จแล้วแสดงถึง

last_errorstring | nullเสมอ

ข้อมูลวินิจฉัยที่ปลอดภัยสำหรับผู้ดำเนินระบบ

total_value_usddecimal string | nullเสมอ

ผลรวมยอดที่มีราคา USD ปัจจุบันเพื่อประกอบการพิจารณา

balance_statuspending | refreshing | fresh | stale | error | unknownเสมอ

ความใหม่แคชรวม unknown เป็นค่าทดแทนเพื่อความปลอดภัย และไม่มีสถานะใดพิสูจน์การชำระเสร็จสิ้นของใบแจ้งหนี้

balance_checked_attimestamp | nullเสมอ

เวลาตรวจยอดสำเร็จที่เก่าที่สุดซึ่งเกี่ยวข้องและรวมอยู่ในยอดรวม

recent_payments[]object[]เสมอ

ข้อมูลล่าสุดที่ถูกต้องในสถานะ detected, confirming หรือ final ไม่เกินสามรายการที่ระบุว่าเป็นของกระเป๋านี้ตรงตัว

invoice_public_idUUIDเสมอ

ตัวระบุใบแจ้งหนี้ที่ลูกค้าเห็นและสัมพันธ์กับข้อมูลที่ตรวจพบ

chain_slugstringเสมอ

เชนและสัญลักษณ์แสดงเหรียญหลักหรือโทเคนที่ตรวจสอบแล้ว

symbolstringเสมอ

เชนและสัญลักษณ์แสดงเหรียญหลักหรือโทเคนที่ตรวจสอบแล้ว

transaction_idstringเสมอ

ตัวระบุธุรกรรมและเหตุการณ์โอนแบบมาตรฐาน

event_indexintegerเสมอ

ตัวระบุธุรกรรมและเหตุการณ์โอนแบบมาตรฐาน

amountdecimal stringเสมอ

จำนวนสินทรัพย์ที่ตรวจพบอย่างแน่นอนโดยไม่แปลงเป็นเลขทศนิยมลอยตัว

statusdetected | confirming | finalเสมอ

สถานะข้อมูลที่ตรวจพบและยังถูกต้อง ไม่รวม reorged, replaced และ invalid

confirmationsintegerเสมอ

จำนวนการยืนยันล่าสุดที่ตรวจพบ

observed_atRFC 3339 timestampเสมอ

เวลาที่ Wholly Crypto ตรวจพบการชำระครั้งแรก

created_atRFC 3339 timestampเสมอ

เวลาสร้างและอัปเดตกระเป๋าล่าสุด

updated_atRFC 3339 timestampเสมอ

เวลาสร้างและอัปเดตกระเป๋าล่าสุด

wallet_readinessreadiness enumเสมอ

เฉพาะสถานะกระเป๋า/นโยบาย ใช้ receive_readiness เพื่อดูข้อกำหนดสแกนเนอร์

receive_readinessobject | null5.5.0+
การตั้งค่ารับเงินร่วมพร้อมการยอมรับของร้านค้า ใช้ข้อมูลแคช ไม่ใช่การสำรองหรือรับประกัน การสร้างตรวจข้อกำหนดและอัตราแลกเปลี่ยนจริงของใบแจ้งหนี้ซ้ำรายละเอียด

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

readybooleanเสมอ

ผ่านการตรวจตั้งค่ารับเงิน ไม่บอกความพร้อมใช้จ่าย แก๊ส การรีเฟรชยอด หรือรับประกันราคาเสนอในอนาคต

invoice_creatableboolean6.0.6+
การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัยรายละเอียด

การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัย

checked_attimestampเสมอ

เวลาประเมิน การแสดงรายการไม่ส่งคำขอเครือข่ายหรือจัดสรรที่อยู่

issues[]object[]เสมอ
ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้รายละเอียด

ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้

chain_slugstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_idUUIDเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_tickerstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

reason_codestringเสมอ
scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_acceptedรายละเอียด

scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_accepted

messagestringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

actionstringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

required_endpoint_rolestring | nullบนเชน
บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระรายละเอียด

บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระ

accepted_endpoint_roles[]string[] | nullบนเชน
รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์รายละเอียด

รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์

healthy_endpointsintegerบนเชน

เอนด์พอยต์ที่ทำงานปกติและตรงเงื่อนไข ไม่ใช่จำนวนผู้ให้บริการอิสระ

usable_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

required_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

last_checked_attimestamp | nullบนเชน

การตรวจสุขภาพเอนด์พอยต์ที่ตรงเงื่อนไขล่าสุด แยกจากเวลาประเมิน

หมายเหตุการใช้งาน
  • อาร์เรย์รับสินทรัพย์และลำดับแสดงผลที่ไม่ซ้ำสูงสุด 64 รายการ
  • ตัวเลือกเป็นการตั้งค่าที่ต้องการและบันทึกไว้ จัดเตรียมก่อนสำรองกระเป๋าหรือขณะเชนพักได้ การสร้างใบแจ้งหนี้ยังเสนอเฉพาะวิธีที่นโยบายโปรเจกต์ นโยบายเหรียญหลักแม่ กระเป๋า และการตรวจรันไทม์พร้อม
  • ส่งอาร์เรย์ assets ว่างเพื่อตั้งว่าไม่มีวิธีชำระเงิน

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

PUTตั้งนโยบายการยืนยันของร้านค้า/v1/projects/{project_id}/stores/{store_id}/payment-assets/{asset_id}/confirmation-policyอ่าน + เขียน

ตั้งหรือล้าง override การยืนยันเฉพาะร้านค้าหนึ่งรายการ และคืนรายการวิธีชำระร้านค้าที่รีเฟรช สินทรัพย์ต้องถูกเลือกในร้านค้าแล้ว ยังตั้งค่าได้ขณะโปรเจกต์ ร้านค้า เชน หรือกระเป๋าพัก

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MERCHANT_API_TOKEN
Content-Typeจำเป็นapplication/json
Acceptแนะนำapplication/json

พารามิเตอร์พาธ

project_idUUIDจำเป็น

โปรเจกต์ที่กำหนดให้ข้อมูลรับรอง อาจอยู่ในสถานะพัก

store_idUUIDจำเป็น

ร้านค้าที่อยู่ใน project_id อาจอยู่ในสถานะพัก

asset_idUUIDจำเป็น

สินทรัพย์รับชำระที่ร้านค้าเลือกอยู่ซึ่งจะอัปเดต

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request PUT \
  --url "https://api.example.com/v1/projects/YOUR_PROJECT_ID/stores/YOUR_STORE_ID/payment-assets/YOUR_ASSET_ID/confirmation-policy" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "strategy": "custom",
  "required_confirmations": 0
}'

เนื้อหาคำขอ

strategyinherit | customจำเป็น

กลยุทธ์แบบระบุชนิด inherit ลบ override ร้านค้า; custom ต้องมี required_confirmations

required_confirmationsintegerเฉพาะ custom

จำนวนเต็มภายในค่าต่ำสุด/สูงสุดที่คืนสำหรับสินทรัพย์นี้ ปฏิเสธฟิลด์ที่ไม่รู้จักหรือเกินมา

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [
    {
      "asset": { "id": "YOUR_ASSET_ID", "chain_slug": "bitcoin", "symbol": "BTC" },
      "selected": true,
      "display_order": 0,
      "confirmation_policy": {
        "finality_mode": "confirmations",
        "project_required_confirmations": 2,
        "override_required_confirmations": 0,
        "effective_required_confirmations": 0,
        "editable": true,
        "minimum_required_confirmations": 0,
        "maximum_required_confirmations": 10000
      },
      "wallet_readiness": "ready"
    }
  ]
}

ฟิลด์การตอบกลับ

data[]object[]
assetobjectเสมอ

สินทรัพย์เหรียญหลักหรือโทเคนที่ตรวจสอบแล้วซึ่งโปรเจกต์เห็นได้

idUUIDเสมอ

ตัวระบุสินทรัพย์รับชำระถาวรที่เส้นทางนโยบายโปรเจกต์และร้านค้าใช้

asset_keystringเสมอ

ตัวระบุเหรียญหลักหรือสินทรัพย์คอนแทรกต์แบบ CAIP มาตรฐาน

chain_slugstringเสมอ

ตัวระบุเชน Wholly Crypto และเครือข่ายที่ตั้งค่า

networkstringเสมอ

ตัวระบุเชน Wholly Crypto และเครือข่ายที่ตั้งค่า

caip_network_idstringเสมอ

ตัวระบุเครือข่ายและสินทรัพย์มาตรฐาน

caip_asset_idstring|nullเสมอ

ตัวระบุเครือข่ายและสินทรัพย์มาตรฐาน

asset_kindnative | tokenเสมอ

การชำระเสร็จสิ้นใช้สกุลเหรียญของเชนหรือคอนแทรกต์/mint ที่ตรวจสอบแล้ว

payment_railstringเสมอ

ช่องทางรันไทม์: utxo, evm-native, solana-native, account-native, privacy-native หรือ token-transfer

symbolstringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อยที่แน่นอน

namestringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อยที่แน่นอน

decimalsintegerเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อยที่แน่นอน

contract_addressstring | nullเสมอ

คอนแทรกต์ ERC-20 หรือ mint SPL มาตรฐานสำหรับโทเคน เป็น null สำหรับเหรียญหลัก

coingecko_idstring | nullเสมอ

ตัวระบุการค้นพบ/ราคา เป็น null สำหรับคอนแทรกต์กำหนดเอง ห้ามอนุมานราคาตลาดจาก ticker metadata ของ CoinGecko เพียงอย่างเดียวไม่ทำให้เลือกโทเคนได้

custom_tokenbooleanเสมอ

คอนแทรกต์กำหนดเองที่ตรวจสอบบนเชน พร้อมราคาคงที่ USD หรือราคาพูล DEX ที่เลือกในขอบเขตโปรเจกต์

icon_pathpath | nullเสมอ

ไอคอนโทเคนที่แคชภายในเมื่อมี

token_standarderc20 | spl-token | nullเสมอ

มาตรฐานโทเคนที่รันไทม์ตรวจสอบแล้ว เป็น null สำหรับเหรียญหลัก

metadata_verified_attimestamp | nullเสมอ

เวลาตรวจสอบ metadata บนเชนของโทเคนที่ขึ้นทะเบียน

payment_supportedbooleanเสมอ
เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้วรายละเอียด

เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้ว

scanner_readybooleanเสมอ
เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้วรายละเอียด

เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้ว

balance_readybooleanเสมอ
เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้วรายละเอียด

เงื่อนไขทะเบียนขณะ build โดย scanner_ready หมายถึงติดตั้งรันไทม์สแกนการชำระแล้ว การยืนยันชำระต้องมีผู้ให้บริการทำงานปกติและตรงบทบาทตามจำนวนที่ตั้งไว้ (ค่าเริ่มต้น 2 เลือก 1 ได้) ความพร้อมชั่วคราวของสแกนเนอร์ไม่บล็อกการสร้างใบแจ้งหนี้ตั้งแต่ 6.0.6 ส่วน balance_ready เป็น true เฉพาะอะแดปเตอร์ยอดคงเหลือที่มีการใช้งานแล้ว

default_finality_modeconfirmations | finalizedเสมอ

รูปแบบความเป็นที่สุดเริ่มต้นที่นโยบายโปรเจกต์ใหม่สืบทอด

default_required_confirmationsintegerเสมอ

นโยบายการยืนยันและติดตามเริ่มต้น

default_monitoring_minutesintegerเสมอ

นโยบายการยืนยันและติดตามเริ่มต้น

project_policyobject | nullเสมอ

นโยบายโปรเจกต์หลัก

enabledbooleanจำเป็น

เปิดหรือปิดสินทรัพย์สำหรับโปรเจกต์ ต้องเปิดเชนเหรียญหลักก่อนโทเคนใด ๆ

finality_modeconfirmations | finalizedจำเป็น

นโยบายความเป็นที่สุดที่ช่องทางสินทรัพย์รองรับ finalized ต้องมี required_confirmations=1

required_confirmationsintegerจำเป็น
ช่องทาง Bitcoin และ EVM รับศูนย์ได้ ช่องทางแบบยืนยันอื่นต้องอย่างน้อยหนึ่ง ช่องทาง finalized-only ต้องหนึ่งพอดี และ EVM จำกัด 0–48 เพื่อให้ทุกการโอนอยู่ในช่วงเล่นธุรกรรมย้อนหลังรายละเอียด

ช่องทาง Bitcoin และ EVM รับศูนย์ได้ ช่องทางแบบยืนยันอื่นต้องอย่างน้อยหนึ่ง ช่องทาง finalized-only ต้องหนึ่งพอดี และ EVM จำกัด 0–48 เพื่อให้ทุกการโอนอยู่ในช่วงเล่นธุรกรรมย้อนหลัง

monitoring_minutesintegerจำเป็น

ช่วงตรวจซ้ำ 1–10,080 นาทีขณะใบแจ้งหนี้ยังใช้งาน

late_monitoring_daysintegerจำเป็น

ติดตาม 0–3,650 วันหลังใบแจ้งหนี้หมดอายุ

selectedbooleanเสมอ
วิธีนี้อยู่ในชุดการตั้งค่าที่ร้านค้าต้องการและบันทึกไว้หรือไม่ จะเสนอเมื่อมีนโยบายโปรเจกต์ กระเป๋า อะแดปเตอร์ติดตั้ง และราคาที่ถูกต้อง สแกนเนอร์ล่มชั่วคราวไม่นำวิธีนี้ออกจากใบแจ้งหนี้ใหม่รายละเอียด

วิธีนี้อยู่ในชุดการตั้งค่าที่ร้านค้าต้องการและบันทึกไว้หรือไม่ จะเสนอเมื่อมีนโยบายโปรเจกต์ กระเป๋า อะแดปเตอร์ติดตั้ง และราคาที่ถูกต้อง สแกนเนอร์ล่มชั่วคราวไม่นำวิธีนี้ออกจากใบแจ้งหนี้ใหม่

display_orderinteger | nullเสมอ

ลำดับบนหน้าชำระเงินร้านค้าเมื่อเลือกไว้

confirmation_policyobject | nullเสมอ

นโยบายร้านค้าที่มีผลสำหรับสินทรัพย์ที่ตั้งในโปรเจกต์ เป็น null หากไม่มีนโยบายโปรเจกต์

finality_modeconfirmations | finalizedเสมอ

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

project_required_confirmationsintegerเสมอ

ค่าเริ่มต้นโปรเจกต์ปัจจุบันที่ใบแจ้งหนี้ในอนาคตใช้เมื่อไม่มี override ร้านค้า

override_required_confirmationsinteger | nullเสมอ

จำนวนเฉพาะร้านค้า หรือ null เพื่อสืบทอดค่าเริ่มต้นโปรเจกต์

effective_required_confirmationsintegerเสมอ

จำนวนที่ใบแจ้งหนี้ใหม่ของร้านค้าและสินทรัพย์นี้จะเก็บเป็นภาพข้อมูล

editablebooleanเสมอ

เป็น false สำหรับเครือข่าย finalized ที่เปลี่ยนนโยบายความเป็นที่สุดไม่ได้

minimum_required_confirmationsintegerเสมอ

ขอบเขตล่างรวมค่าปลายตามเชน แสดง 0 เฉพาะช่องทางที่ยอมรับเมื่อเริ่มตรวจพบได้

maximum_required_confirmationsintegerเสมอ

ขอบเขตบนรวมค่าปลายตามเชน

walletobject | nullเสมอ

กระเป๋าเชนที่เหรียญหลักและโทเคนใช้ร่วมกัน

idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

project_idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

native_asset_idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

chain_slugstringเสมอ

เชนและเครือข่ายของกระเป๋า

networkstringเสมอ

เชนและเครือข่ายของกระเป๋า

asset_symbolstringเสมอ

ข้อมูลแสดงเหรียญหลักของเชน

asset_namestringเสมอ

ข้อมูลแสดงเหรียญหลักของเชน

statuspending | active | disabled | errorเสมอ

สถานะการทำงานกระเป๋า

labelstringเสมอ

ป้ายชื่อจากผู้ดำเนินระบบ

public_keystring | nullเสมอ

ข้อมูลระบุกระเป๋าสาธารณะ ไม่เปิดเผยวลี seed หรือคีย์ส่วนตัว

primary_addressstring | nullเสมอ

ข้อมูลระบุกระเป๋าสาธารณะ ไม่เปิดเผยวลี seed หรือคีย์ส่วนตัว

derivation_schemestring | nullเสมอ

นโยบายและรูปแบบที่อยู่

address_formatstring | nullเสมอ

นโยบายและรูปแบบที่อยู่

backup_confirmed_attimestamp | nullเสมอ

ไม่เป็น null หลังผู้ดำเนินระบบยืนยันสำรองข้อมูลกู้คืน

activation_requiredbooleanเสมอ
บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้รายละเอียด

บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้

activation_verified_attimestamp|nullเสมอ
บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้รายละเอียด

บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้

receive_readinessobject | null5.5.0+
รวมในการแสดงรายการกระเป๋า: การตั้งค่ารับเงินของโปรเจกต์และข้อกำหนดสแกนเนอร์เชน แยกจากยอดคงเหลือ แก๊สโทเคน และความพร้อมส่ง การตอบกระเป๋าแบบอื่นอาจปล่อยเป็น nullรายละเอียด

รวมในการแสดงรายการกระเป๋า: การตั้งค่ารับเงินของโปรเจกต์และข้อกำหนดสแกนเนอร์เชน แยกจากยอดคงเหลือ แก๊สโทเคน และความพร้อมส่ง การตอบกระเป๋าแบบอื่นอาจปล่อยเป็น null

readybooleanเสมอ

ผ่านการตรวจตั้งค่ารับเงิน ไม่บอกความพร้อมใช้จ่าย แก๊ส การรีเฟรชยอด หรือรับประกันราคาเสนอในอนาคต

invoice_creatableboolean6.0.6+
การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัยรายละเอียด

การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัย

checked_attimestampเสมอ

เวลาประเมิน การแสดงรายการไม่ส่งคำขอเครือข่ายหรือจัดสรรที่อยู่

issues[]object[]เสมอ
ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้รายละเอียด

ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้

chain_slugstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_idUUIDเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_tickerstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

reason_codestringเสมอ
scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_acceptedรายละเอียด

scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_accepted

messagestringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

actionstringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

required_endpoint_rolestring | nullบนเชน
บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระรายละเอียด

บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระ

accepted_endpoint_roles[]string[] | nullบนเชน
รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์รายละเอียด

รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์

healthy_endpointsintegerบนเชน

เอนด์พอยต์ที่ทำงานปกติและตรงเงื่อนไข ไม่ใช่จำนวนผู้ให้บริการอิสระ

usable_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

required_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

last_checked_attimestamp | nullบนเชน

การตรวจสุขภาพเอนด์พอยต์ที่ตรงเงื่อนไขล่าสุด แยกจากเวลาประเมิน

monero_wallet_rpcMoneroWalletRpcBinding | nullเสมอ
สถานะการผูก wallet-RPC ภายนอกแบบดูอย่างเดียวสำหรับ Monero ที่ตัดข้อมูลอ่อนไหวแล้ว รวมเอนด์พอยต์ โหมดการยืนยันตัวตน ที่อยู่หลัก account-0 ธง/ความสูงหลักฐานทางเทคนิค และเวลารับรองของผู้ดำเนินระบบ ไม่ serialize ข้อมูลรับรอง คีย์กระเป๋า หรือไฟล์กระเป๋ารายละเอียด

สถานะการผูก wallet-RPC ภายนอกแบบดูอย่างเดียวสำหรับ Monero ที่ตัดข้อมูลอ่อนไหวแล้ว รวมเอนด์พอยต์ โหมดการยืนยันตัวตน ที่อยู่หลัก account-0 ธง/ความสูงหลักฐานทางเทคนิค และเวลารับรองของผู้ดำเนินระบบ ไม่ serialize ข้อมูลรับรอง คีย์กระเป๋า หรือไฟล์กระเป๋า

last_secret_revealed_attimestamp|nullเสมอ

metadata บันทึกตรวจสอบการเปิดเผยซีเคร็ตฝั่งคอนโซล

secret_reveal_countintegerเสมอ

metadata บันทึกตรวจสอบการเปิดเผยซีเคร็ตฝั่งคอนโซล

next_receive_indexintegerเสมอ

ดัชนีที่อยู่ลูกถัดไปที่สำรองไว้

last_scanned_heightinteger|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

last_scanned_attimestamp|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

last_errorstring|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

balances[]object[]เสมอ
ยอดแคชสำหรับช่องทางเหรียญหลักทั้ง 30 เชน พร้อมสินทรัพย์ ERC-20 และ SPL ที่ตรวจสอบแล้ว Monero ต้องตั้ง wallet-RPC ภายนอกแบบดูอย่างเดียวรายละเอียด

ยอดแคชสำหรับช่องทางเหรียญหลักทั้ง 30 เชน พร้อมสินทรัพย์ ERC-20 และ SPL ที่ตรวจสอบแล้ว Monero ต้องตั้ง wallet-RPC ภายนอกแบบดูอย่างเดียว

wallet_idUUIDเสมอ

ตัวระบุกระเป๋าและสินทรัพย์ถาวร

asset_idUUIDเสมอ

ตัวระบุกระเป๋าและสินทรัพย์ถาวร

project_enabledbooleanเสมอ

นโยบายสินทรัพย์ของโปรเจกต์เปิดสินทรัพย์นี้อยู่หรือไม่

active_store_countintegerเสมอ

จำนวนร้านค้าที่เปิดใช้และเลือกสินทรัพย์นี้อยู่ เป็นมุมมองการยอมรับ การติดตามยอดแบบอ่านอย่างเดียวยังเป็นอิสระ

active_store_ids[]UUID[]เสมอ

ร้านค้าที่เปิดในโปรเจกต์นี้และยอมรับสินทรัพย์อยู่ ช่วยกรองร้านค้าในระบบอย่างแม่นยำโดยไม่เรียก API เพิ่ม

tracking_activebooleanเสมอ
กระเป๋าที่อ่านได้และสินทรัพย์เชนเดียวกันที่ลงทะเบียนนี้มีสิทธิ์รีเฟรชยอดเบื้องหลังหรือไม่ สวิตช์ยอมรับของโปรเจกต์และวิธีชำระไม่พักการติดตามแบบอ่านอย่างเดียวรายละเอียด

กระเป๋าที่อ่านได้และสินทรัพย์เชนเดียวกันที่ลงทะเบียนนี้มีสิทธิ์รีเฟรชยอดเบื้องหลังหรือไม่ สวิตช์ยอมรับของโปรเจกต์และวิธีชำระไม่พักการติดตามแบบอ่านอย่างเดียว

asset_kindnative | tokenเสมอ

เหรียญหลักหรือสินทรัพย์คอนแทรกต์/mint ที่ตรวจสอบแล้ว

contract_addressstring | nullเสมอ

สัญญาโทเคนหรือ mint เป็น null สำหรับเหรียญหลัก

symbolstringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

namestringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

decimalsintegerเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

coingecko_idstring | nullเสมอ

ตัวระบุราคาเมื่อมีการจับคู่

balancedecimal string|nullเสมอ

ยอดแสดงผลและหน่วยย่อยที่แน่นอนรวมที่อยู่หลักกระเป๋าและที่อยู่ใบแจ้งหนี้ที่ออกแล้ว เป็น null ขณะที่ไม่มีค่าครบถ้วน

balance_atomicinteger string|nullเสมอ

ยอดแสดงผลและหน่วยย่อยที่แน่นอนรวมที่อยู่หลักกระเป๋าและที่อยู่ใบแจ้งหนี้ที่ออกแล้ว เป็น null ขณะที่ไม่มีค่าครบถ้วน

price_usddecimal string | nullเสมอ

ราคาต่อหน่วย USD จากแคชเพื่อประกอบการตีมูลค่า

value_usddecimal string | nullเสมอ

มูลค่าเงินตราทั่วไปประกอบการพิจารณาเมื่อมีอัตราปัจจุบัน

statuspending | refreshing | fresh | stale | errorเสมอ
สถานะสแกนจากแคช refreshing อาจคงยอดที่สแกนเสร็จแล้ว ใช้ checked_at ดูอายุ Pending หมายถึงยังไม่มีภาพข้อมูลที่เสร็จ ไม่มีสถานะใดพิสูจน์ว่าการโอนกำลังรอหรือใบแจ้งหนี้ชำระเสร็จสิ้นรายละเอียด

สถานะสแกนจากแคช refreshing อาจคงยอดที่สแกนเสร็จแล้ว ใช้ checked_at ดูอายุ Pending หมายถึงยังไม่มีภาพข้อมูลที่เสร็จ ไม่มีสถานะใดพิสูจน์ว่าการโอนกำลังรอหรือใบแจ้งหนี้ชำระเสร็จสิ้น

checked_attimestamp | nullเสมอ

เวลาที่การสแกนยอดเสร็จแล้วแสดงถึง

last_errorstring | nullเสมอ

ข้อมูลวินิจฉัยที่ปลอดภัยสำหรับผู้ดำเนินระบบ

total_value_usddecimal string | nullเสมอ

ผลรวมยอดที่มีราคา USD ปัจจุบันเพื่อประกอบการพิจารณา

balance_statuspending | refreshing | fresh | stale | error | unknownเสมอ

ความใหม่แคชรวม unknown เป็นค่าทดแทนเพื่อความปลอดภัย และไม่มีสถานะใดพิสูจน์การชำระเสร็จสิ้นของใบแจ้งหนี้

balance_checked_attimestamp | nullเสมอ

เวลาตรวจยอดสำเร็จที่เก่าที่สุดซึ่งเกี่ยวข้องและรวมอยู่ในยอดรวม

recent_payments[]object[]เสมอ

ข้อมูลล่าสุดที่ถูกต้องในสถานะ detected, confirming หรือ final ไม่เกินสามรายการที่ระบุว่าเป็นของกระเป๋านี้ตรงตัว

invoice_public_idUUIDเสมอ

ตัวระบุใบแจ้งหนี้ที่ลูกค้าเห็นและสัมพันธ์กับข้อมูลที่ตรวจพบ

chain_slugstringเสมอ

เชนและสัญลักษณ์แสดงเหรียญหลักหรือโทเคนที่ตรวจสอบแล้ว

symbolstringเสมอ

เชนและสัญลักษณ์แสดงเหรียญหลักหรือโทเคนที่ตรวจสอบแล้ว

transaction_idstringเสมอ

ตัวระบุธุรกรรมและเหตุการณ์โอนแบบมาตรฐาน

event_indexintegerเสมอ

ตัวระบุธุรกรรมและเหตุการณ์โอนแบบมาตรฐาน

amountdecimal stringเสมอ

จำนวนสินทรัพย์ที่ตรวจพบอย่างแน่นอนโดยไม่แปลงเป็นเลขทศนิยมลอยตัว

statusdetected | confirming | finalเสมอ

สถานะข้อมูลที่ตรวจพบและยังถูกต้อง ไม่รวม reorged, replaced และ invalid

confirmationsintegerเสมอ

จำนวนการยืนยันล่าสุดที่ตรวจพบ

observed_atRFC 3339 timestampเสมอ

เวลาที่ Wholly Crypto ตรวจพบการชำระครั้งแรก

created_atRFC 3339 timestampเสมอ

เวลาสร้างและอัปเดตกระเป๋าล่าสุด

updated_atRFC 3339 timestampเสมอ

เวลาสร้างและอัปเดตกระเป๋าล่าสุด

wallet_readinessreadiness enumเสมอ

เฉพาะสถานะกระเป๋า/นโยบาย ใช้ receive_readiness เพื่อดูข้อกำหนดสแกนเนอร์

receive_readinessobject | null5.5.0+
การตั้งค่ารับเงินร่วมพร้อมการยอมรับของร้านค้า ใช้ข้อมูลแคช ไม่ใช่การสำรองหรือรับประกัน การสร้างตรวจข้อกำหนดและอัตราแลกเปลี่ยนจริงของใบแจ้งหนี้ซ้ำรายละเอียด

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

readybooleanเสมอ

ผ่านการตรวจตั้งค่ารับเงิน ไม่บอกความพร้อมใช้จ่าย แก๊ส การรีเฟรชยอด หรือรับประกันราคาเสนอในอนาคต

invoice_creatableboolean6.0.6+
การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัยรายละเอียด

การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัย

checked_attimestampเสมอ

เวลาประเมิน การแสดงรายการไม่ส่งคำขอเครือข่ายหรือจัดสรรที่อยู่

issues[]object[]เสมอ
ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้รายละเอียด

ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้

chain_slugstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_idUUIDเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_tickerstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

reason_codestringเสมอ
scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_acceptedรายละเอียด

scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_accepted

messagestringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

actionstringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

required_endpoint_rolestring | nullบนเชน
บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระรายละเอียด

บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระ

accepted_endpoint_roles[]string[] | nullบนเชน
รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์รายละเอียด

รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์

healthy_endpointsintegerบนเชน

เอนด์พอยต์ที่ทำงานปกติและตรงเงื่อนไข ไม่ใช่จำนวนผู้ให้บริการอิสระ

usable_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

required_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

last_checked_attimestamp | nullบนเชน

การตรวจสุขภาพเอนด์พอยต์ที่ตรงเงื่อนไขล่าสุด แยกจากเวลาประเมิน

หมายเหตุการใช้งาน
  • ใช้ {"strategy":"inherit"} เพื่อลบ override ร้านค้าและใช้ค่าเริ่มต้นโปรเจกต์ปัจจุบันสำหรับใบแจ้งหนี้ในอนาคต
  • เครือข่าย finalized คืน editable false และใช้ความเป็นที่สุดของเครือข่าย ไม่รับ override จำนวนบล็อกกำหนดเอง
  • ค่า 0 หมายถึงยอมรับเมื่อตรวจพบโดยไม่มีการยืนยันเครือข่ายหรือการป้องกันจัดเชนใหม่ ยอมรับได้เฉพาะที่ minimum_required_confirmations เป็น 0
  • การเปลี่ยนนโยบายมีผลเฉพาะใบแจ้งหนี้ใหม่ ใบแจ้งหนี้เดิมเก็บภาพนโยบายการยืนยันโปรเจกต์/ร้านค้า ณ เวลาสร้าง
  • อัปเดตทีละสินทรัพย์ จัดการแก้ไขพร้อมกันของสินทรัพย์ร้านค้าเดียวให้ทำตามลำดับ และใช้การตอบกลับที่รีเฟรชเป็นสถานะปัจจุบัน

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการกระเป๋าและยอดคงเหลือของโปรเจกต์/v1/projects/{project_id}/walletsอ่านอย่างเดียว

คืน metadata กระเป๋าสาธารณะพร้อมทุกสินทรัพย์ที่ลงทะเบียนและอ่านยอดได้บนเชนและเครือข่ายตรงกันของกระเป๋า ครอบคลุมช่องทางเหรียญหลักทั้ง 30 เชน และติดตาม ERC-20 กับ SPL ที่ตรวจสอบแล้วด้วย สินทรัพย์ปรากฏทันทีแม้ยังไม่สแกนครั้งแรกหรือไม่ได้ยอมรับชำระ project_enabled รายงานการยอมรับชำระ; tracking_active รายงานสิทธิ์รีเฟรชแบบอ่านอย่างเดียวอย่างอิสระ Monero ต้องมี wallet-RPC ภายนอกดูอย่างเดียวที่ผูกโปรเจกต์ คำสั่งสแกนยอดในคอนโซลจัดลำดับการอ่านแบบมีขอบเขต พร้อมความคืบหน้า/ข้อผิดพลาดรายสินทรัพย์ เฉพาะรอบที่ครบเท่านั้นอัปเดตยอดใหม่ การชำระเสร็จสิ้นของใบแจ้งหนี้ยังขึ้นกับการติดตามระดับธุรกรรมและนโยบายการยืนยัน ไม่ใช่ยอดแคชเหล่านี้

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MERCHANT_API_TOKEN
Acceptแนะนำapplication/json

พารามิเตอร์พาธ

project_idUUIDจำเป็น

โปรเจกต์ที่เปิดใช้และกำหนดให้ข้อมูลรับรอง

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/projects/YOUR_PROJECT_ID/wallets" \
  --header "Authorization: Bearer $WHOLLY_TOKEN"

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [
    {
      "id": "55555555-5555-4555-8555-555555555555",
      "project_id": "11111111-1111-4111-8111-111111111111",
      "native_asset_id": "10000000-0000-4000-8000-000000000003",
      "chain_slug": "ethereum",
      "network": "mainnet",
      "asset_symbol": "ETH",
      "asset_name": "Ethereum",
      "status": "active",
      "label": "Primary Ethereum wallet",
      "public_key": "0x…",
      "primary_address": "0x…",
      "derivation_scheme": "bip44",
      "address_format": "eip55",
      "backup_confirmed_at": "2026-08-31T17:00:00Z",
      "last_secret_revealed_at": null,
      "secret_reveal_count": 0,
      "next_receive_index": 43,
      "last_scanned_height": 23123456,
      "last_scanned_at": "2026-08-31T18:05:00Z",
      "last_error": null,
      "balances": [
        { "wallet_id": "55555555-5555-4555-8555-555555555555", "asset_id": "10000000-0000-4000-8000-000000000003", "project_enabled": true, "tracking_active": true, "asset_kind": "native", "contract_address": null, "symbol": "ETH", "name": "Ethereum", "decimals": 18, "coingecko_id": "ethereum", "balance": "0.125", "balance_atomic": "125000000000000000", "price_usd": "4500", "value_usd": "562.50", "status": "fresh", "checked_at": "2026-08-31T18:05:00Z", "last_error": null },
        { "wallet_id": "55555555-5555-4555-8555-555555555555", "asset_id": "10000000-0000-4000-8000-000000000099", "project_enabled": false, "tracking_active": true, "asset_kind": "token", "contract_address": "0xA0b86991c6218b36c1d19d4a2e9eb0cE3606eB48", "symbol": "USDC", "name": "USDC", "decimals": 6, "coingecko_id": "usd-coin", "balance": null, "balance_atomic": null, "price_usd": "1", "value_usd": null, "status": "pending", "checked_at": null, "last_error": null }
      ],
      "total_value_usd": "562.50",
      "balance_status": "fresh",
      "balance_checked_at": "2026-08-31T18:05:00Z",
      "recent_payments": [
        { "invoice_public_id": "0a6a98db-d93d-48ee-8c3c-fd45f90c4a50", "chain_slug": "ethereum", "symbol": "USDC", "transaction_id": "0x…", "event_index": 0, "amount": "25", "status": "final", "confirmations": 12, "observed_at": "2026-08-31T18:04:00Z" }
      ],
      "created_at": "2026-08-31T16:00:00Z",
      "updated_at": "2026-08-31T18:05:00Z"
    }
  ]
}

ฟิลด์การตอบกลับ

data[]object[]
idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

project_idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

native_asset_idUUIDเสมอ

ตัวระบุกระเป๋า โปรเจกต์เจ้าของ และสินทรัพย์เหรียญหลักของเชน

chain_slugstringเสมอ

เชนและเครือข่ายของกระเป๋า

networkstringเสมอ

เชนและเครือข่ายของกระเป๋า

asset_symbolstringเสมอ

ข้อมูลแสดงเหรียญหลักของเชน

asset_namestringเสมอ

ข้อมูลแสดงเหรียญหลักของเชน

statuspending | active | disabled | errorเสมอ

สถานะการทำงานกระเป๋า

labelstringเสมอ

ป้ายชื่อจากผู้ดำเนินระบบ

public_keystring | nullเสมอ

ข้อมูลระบุกระเป๋าสาธารณะ ไม่เปิดเผยวลี seed หรือคีย์ส่วนตัว

primary_addressstring | nullเสมอ

ข้อมูลระบุกระเป๋าสาธารณะ ไม่เปิดเผยวลี seed หรือคีย์ส่วนตัว

derivation_schemestring | nullเสมอ

นโยบายและรูปแบบที่อยู่

address_formatstring | nullเสมอ

นโยบายและรูปแบบที่อยู่

backup_confirmed_attimestamp | nullเสมอ

ไม่เป็น null หลังผู้ดำเนินระบบยืนยันสำรองข้อมูลกู้คืน

activation_requiredbooleanเสมอ
บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้รายละเอียด

บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้

activation_verified_attimestamp|nullเสมอ
บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้รายละเอียด

บัญชีร่วม XRP และ Stellar ยังไม่พร้อมจนผู้ดำเนินระบบเติมเงินที่อยู่ที่แสดงและผู้ให้บริการสแกนที่ตั้งไว้ตรวจยืนยันบัญชีนั้นตรงตัว หลักฐานถาวรไม่หมดอายุ ตรวจสถานะสแกนเนอร์สดแยกเพื่อยืนยันการชำระ ไม่ใช่เพื่อสร้างใบแจ้งหนี้

receive_readinessobject | null5.5.0+
รวมในการแสดงรายการกระเป๋า: การตั้งค่ารับเงินของโปรเจกต์และข้อกำหนดสแกนเนอร์เชน แยกจากยอดคงเหลือ แก๊สโทเคน และความพร้อมส่ง การตอบกระเป๋าแบบอื่นอาจปล่อยเป็น nullรายละเอียด

รวมในการแสดงรายการกระเป๋า: การตั้งค่ารับเงินของโปรเจกต์และข้อกำหนดสแกนเนอร์เชน แยกจากยอดคงเหลือ แก๊สโทเคน และความพร้อมส่ง การตอบกระเป๋าแบบอื่นอาจปล่อยเป็น null

readybooleanเสมอ

ผ่านการตรวจตั้งค่ารับเงิน ไม่บอกความพร้อมใช้จ่าย แก๊ส การรีเฟรชยอด หรือรับประกันราคาเสนอในอนาคต

invoice_creatableboolean6.0.6+
การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัยรายละเอียด

การตั้งค่าอนุญาตวิธีใบแจ้งหนี้แม้มีคำเตือนสแกนเนอร์ชั่วคราว ตรวจราคาสกุลเงินเมื่อสร้าง นี่ไม่ใช่การยืนยันชำระ: ready อาจเป็น false ขณะที่ invoice_creatable เป็น true กระเป๋าขาด นโยบายปิด และอะแดปเตอร์ไม่รองรับยังล้มเหลวอย่างปลอดภัย

checked_attimestampเสมอ

เวลาประเมิน การแสดงรายการไม่ส่งคำขอเครือข่ายหรือจัดสรรที่อยู่

issues[]object[]เสมอ
ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้รายละเอียด

ว่างเมื่อพร้อม มิฉะนั้นเป็นคำเตือนรับเงินหรือปัญหาการตั้งค่าที่บล็อก ตรวจ invoice_creatable เพื่อแยกคำเตือนสแกนเนอร์ชั่วคราวจากความล้มเหลวตั้งค่าใบแจ้งหนี้

chain_slugstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_idUUIDเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

asset_tickerstringเมื่อทราบ

ระบุเชนและสินทรัพย์ที่ได้รับผล Lightning อาจไม่ใส่ asset_id

reason_codestringเสมอ
scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_acceptedรายละเอียด

scanner_provider_quorum, scanner_not_checked, scanner_unavailable, wallet_missing, wallet_disabled, wallet_backup_required, wallet_key_unavailable, wallet_activation_required, monero_binding_unavailable, rate_unavailable, custom_rate_unavailable, lightning_unavailable, project_disabled, store_disabled, chain_disabled, asset_disabled หรือ asset_not_accepted

messagestringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

actionstringเมื่อมี
คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัวรายละเอียด

คำอธิบายสำหรับผู้ค้าและตัวระบุการแก้ไข: chain_connections, wallets, rates, payment_methods, project_settings หรือ store_settings ไม่มีข้อมูลรับรองหรือ URL ผู้ให้บริการส่วนตัว

required_endpoint_rolestring | nullบนเชน
บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระรายละเอียด

บทบาท API สแกนเนอร์ที่แนะนำ (ฟิลด์เดิม) ใช้ accepted_endpoint_roles เพื่อดูรายการความเข้ากันได้ทั้งหมด สถานะโหนดพื้นฐานปกติไม่พิสูจน์การรองรับประวัติการชำระ

accepted_endpoint_roles[]string[] | nullบนเชน
รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์รายละเอียด

รูปแบบ API ที่เข้ากันได้ ไม่ใช่หลักฐานประวัติหรือความจุเอนด์พอยต์ Raw node-rpc รองรับ BTC/BCH/LTC/DOGE/DASH และ ZEC โปร่งใส (บล็อกที่ถอดรหัสครบ 1–48 การยืนยัน), TRX เหรียญหลักแบบ solidified, ALGO เหรียญหลักผ่าน algod, XTZ ผ่าน Octez, DOT บน Asset Hub แบบ finalized ผ่าน SCALE metadata และ XLM เหรียญหลักผ่าน Stellar RPC พร้อม memo ID ใบแจ้งหนี้ ประวัติที่ prune หรือไม่ครบไม่ผ่านเกณฑ์ อะแดปเตอร์ raw เหล่านี้ไม่เพิ่มช่องทางโทเคน API จัดทำดัชนียังเป็นทางเลือก ดูตารางช่องทางด้านล่าง แหล่ง raw/indexed แบบผสมตรวจช่วงข้อมูลจำกัดอย่างอิสระ ค่าเริ่มต้นยังเป็นผู้ให้บริการอิสระสองราย ไม่ใช่ชื่อแทนของผู้ดำเนินรายเดียว ความสูงโหนดพื้นฐาน ข้อมูลเชน ORDnet และ EVM relay สำหรับช่องทางที่ไม่ใช่ EVM ไม่ใช่หลักฐานรับเงิน Monero ยังต้องมี wallet-RPC ดูอย่างเดียวที่ผูกโปรเจกต์

healthy_endpointsintegerบนเชน

เอนด์พอยต์ที่ทำงานปกติและตรงเงื่อนไข ไม่ใช่จำนวนผู้ให้บริการอิสระ

usable_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

required_independent_providersintegerบนเชน
ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเองรายละเอียด

ช่องตรวจสอบที่ใช้ได้ สูงสุดสองช่อง required_independent_providers เป็นการตั้งค่าเชน: ค่าเริ่มต้น 2 หรือ 1 หลังผู้ดูแลเลือกชัดเจน โหมดสองผู้ให้บริการต้องมีทั้งคีย์ผู้ให้บริการและโฮสต์ต่างกัน แหล่งที่ปิด เก่าเกินสิบนาที หรืออยู่ช่วงพักไม่นับเป็นช่อง Lightning ใช้กฎการเชื่อมต่อของตนเอง

last_checked_attimestamp | nullบนเชน

การตรวจสุขภาพเอนด์พอยต์ที่ตรงเงื่อนไขล่าสุด แยกจากเวลาประเมิน

monero_wallet_rpcMoneroWalletRpcBinding | nullเสมอ
สถานะการผูก wallet-RPC ภายนอกแบบดูอย่างเดียวสำหรับ Monero ที่ตัดข้อมูลอ่อนไหวแล้ว รวมเอนด์พอยต์ โหมดการยืนยันตัวตน ที่อยู่หลัก account-0 ธง/ความสูงหลักฐานทางเทคนิค และเวลารับรองของผู้ดำเนินระบบ ไม่ serialize ข้อมูลรับรอง คีย์กระเป๋า หรือไฟล์กระเป๋ารายละเอียด

สถานะการผูก wallet-RPC ภายนอกแบบดูอย่างเดียวสำหรับ Monero ที่ตัดข้อมูลอ่อนไหวแล้ว รวมเอนด์พอยต์ โหมดการยืนยันตัวตน ที่อยู่หลัก account-0 ธง/ความสูงหลักฐานทางเทคนิค และเวลารับรองของผู้ดำเนินระบบ ไม่ serialize ข้อมูลรับรอง คีย์กระเป๋า หรือไฟล์กระเป๋า

last_secret_revealed_attimestamp|nullเสมอ

metadata บันทึกตรวจสอบการเปิดเผยซีเคร็ตฝั่งคอนโซล

secret_reveal_countintegerเสมอ

metadata บันทึกตรวจสอบการเปิดเผยซีเคร็ตฝั่งคอนโซล

next_receive_indexintegerเสมอ

ดัชนีที่อยู่ลูกถัดไปที่สำรองไว้

last_scanned_heightinteger|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

last_scanned_attimestamp|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

last_errorstring|nullเสมอ

สถานะสแกนเนอร์กระเป๋า

balances[]object[]เสมอ
ยอดแคชสำหรับช่องทางเหรียญหลักทั้ง 30 เชน พร้อมสินทรัพย์ ERC-20 และ SPL ที่ตรวจสอบแล้ว Monero ต้องตั้ง wallet-RPC ภายนอกแบบดูอย่างเดียวรายละเอียด

ยอดแคชสำหรับช่องทางเหรียญหลักทั้ง 30 เชน พร้อมสินทรัพย์ ERC-20 และ SPL ที่ตรวจสอบแล้ว Monero ต้องตั้ง wallet-RPC ภายนอกแบบดูอย่างเดียว

wallet_idUUIDเสมอ

ตัวระบุกระเป๋าและสินทรัพย์ถาวร

asset_idUUIDเสมอ

ตัวระบุกระเป๋าและสินทรัพย์ถาวร

project_enabledbooleanเสมอ

นโยบายสินทรัพย์ของโปรเจกต์เปิดสินทรัพย์นี้อยู่หรือไม่

active_store_countintegerเสมอ

จำนวนร้านค้าที่เปิดใช้และเลือกสินทรัพย์นี้อยู่ เป็นมุมมองการยอมรับ การติดตามยอดแบบอ่านอย่างเดียวยังเป็นอิสระ

active_store_ids[]UUID[]เสมอ

ร้านค้าที่เปิดในโปรเจกต์นี้และยอมรับสินทรัพย์อยู่ ช่วยกรองร้านค้าในระบบอย่างแม่นยำโดยไม่เรียก API เพิ่ม

tracking_activebooleanเสมอ
กระเป๋าที่อ่านได้และสินทรัพย์เชนเดียวกันที่ลงทะเบียนนี้มีสิทธิ์รีเฟรชยอดเบื้องหลังหรือไม่ สวิตช์ยอมรับของโปรเจกต์และวิธีชำระไม่พักการติดตามแบบอ่านอย่างเดียวรายละเอียด

กระเป๋าที่อ่านได้และสินทรัพย์เชนเดียวกันที่ลงทะเบียนนี้มีสิทธิ์รีเฟรชยอดเบื้องหลังหรือไม่ สวิตช์ยอมรับของโปรเจกต์และวิธีชำระไม่พักการติดตามแบบอ่านอย่างเดียว

asset_kindnative | tokenเสมอ

เหรียญหลักหรือสินทรัพย์คอนแทรกต์/mint ที่ตรวจสอบแล้ว

contract_addressstring | nullเสมอ

สัญญาโทเคนหรือ mint เป็น null สำหรับเหรียญหลัก

symbolstringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

namestringเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

decimalsintegerเสมอ

ข้อมูลแสดงสินทรัพย์และความละเอียดหน่วยย่อย

coingecko_idstring | nullเสมอ

ตัวระบุราคาเมื่อมีการจับคู่

balancedecimal string|nullเสมอ

ยอดแสดงผลและหน่วยย่อยที่แน่นอนรวมที่อยู่หลักกระเป๋าและที่อยู่ใบแจ้งหนี้ที่ออกแล้ว เป็น null ขณะที่ไม่มีค่าครบถ้วน

balance_atomicinteger string|nullเสมอ

ยอดแสดงผลและหน่วยย่อยที่แน่นอนรวมที่อยู่หลักกระเป๋าและที่อยู่ใบแจ้งหนี้ที่ออกแล้ว เป็น null ขณะที่ไม่มีค่าครบถ้วน

price_usddecimal string | nullเสมอ

ราคาต่อหน่วย USD จากแคชเพื่อประกอบการตีมูลค่า

value_usddecimal string | nullเสมอ

มูลค่าเงินตราทั่วไปประกอบการพิจารณาเมื่อมีอัตราปัจจุบัน

statuspending | refreshing | fresh | stale | errorเสมอ
สถานะสแกนจากแคช refreshing อาจคงยอดที่สแกนเสร็จแล้ว ใช้ checked_at ดูอายุ Pending หมายถึงยังไม่มีภาพข้อมูลที่เสร็จ ไม่มีสถานะใดพิสูจน์ว่าการโอนกำลังรอหรือใบแจ้งหนี้ชำระเสร็จสิ้นรายละเอียด

สถานะสแกนจากแคช refreshing อาจคงยอดที่สแกนเสร็จแล้ว ใช้ checked_at ดูอายุ Pending หมายถึงยังไม่มีภาพข้อมูลที่เสร็จ ไม่มีสถานะใดพิสูจน์ว่าการโอนกำลังรอหรือใบแจ้งหนี้ชำระเสร็จสิ้น

checked_attimestamp | nullเสมอ

เวลาที่การสแกนยอดเสร็จแล้วแสดงถึง

last_errorstring | nullเสมอ

ข้อมูลวินิจฉัยที่ปลอดภัยสำหรับผู้ดำเนินระบบ

total_value_usddecimal string | nullเสมอ

ผลรวมยอดที่มีราคา USD ปัจจุบันเพื่อประกอบการพิจารณา

balance_statuspending | refreshing | fresh | stale | error | unknownเสมอ

ความใหม่แคชรวม unknown เป็นค่าทดแทนเพื่อความปลอดภัย และไม่มีสถานะใดพิสูจน์การชำระเสร็จสิ้นของใบแจ้งหนี้

balance_checked_attimestamp | nullเสมอ

เวลาตรวจยอดสำเร็จที่เก่าที่สุดซึ่งเกี่ยวข้องและรวมอยู่ในยอดรวม

recent_payments[]object[]เสมอ

ข้อมูลล่าสุดที่ถูกต้องในสถานะ detected, confirming หรือ final ไม่เกินสามรายการที่ระบุว่าเป็นของกระเป๋านี้ตรงตัว

invoice_public_idUUIDเสมอ

ตัวระบุใบแจ้งหนี้ที่ลูกค้าเห็นและสัมพันธ์กับข้อมูลที่ตรวจพบ

chain_slugstringเสมอ

เชนและสัญลักษณ์แสดงเหรียญหลักหรือโทเคนที่ตรวจสอบแล้ว

symbolstringเสมอ

เชนและสัญลักษณ์แสดงเหรียญหลักหรือโทเคนที่ตรวจสอบแล้ว

transaction_idstringเสมอ

ตัวระบุธุรกรรมและเหตุการณ์โอนแบบมาตรฐาน

event_indexintegerเสมอ

ตัวระบุธุรกรรมและเหตุการณ์โอนแบบมาตรฐาน

amountdecimal stringเสมอ

จำนวนสินทรัพย์ที่ตรวจพบอย่างแน่นอนโดยไม่แปลงเป็นเลขทศนิยมลอยตัว

statusdetected | confirming | finalเสมอ

สถานะข้อมูลที่ตรวจพบและยังถูกต้อง ไม่รวม reorged, replaced และ invalid

confirmationsintegerเสมอ

จำนวนการยืนยันล่าสุดที่ตรวจพบ

observed_atRFC 3339 timestampเสมอ

เวลาที่ Wholly Crypto ตรวจพบการชำระครั้งแรก

created_atRFC 3339 timestampเสมอ

เวลาสร้างและอัปเดตกระเป๋าล่าสุด

updated_atRFC 3339 timestampเสมอ

เวลาสร้างและอัปเดตกระเป๋าล่าสุด

หมายเหตุการใช้งาน
  • เส้นทาง bearer นี้ไม่คืนวลีกู้คืน คีย์ส่วนตัว ซีเคร็ตเข้ารหัส หรือวิธีใช้จ่าย
  • สินทรัพย์เชนเดียวกันที่เพิ่งลงทะเบียนคืนยอด null และสถานะ pending ก่อนสแกนครบครั้งแรก ไม่รายงานศูนย์ที่สร้างขึ้นเอง
  • การปิดโปรเจกต์ กระเป๋าสำหรับรับชำระ ช่องทางเหรียญหลัก หรือสินทรัพย์รายตัวไม่หยุดติดตามยอดแบบอ่านอย่างเดียว กระเป๋า active และ disabled ที่มีที่อยู่หลักยังรีเฟรชทุกสินทรัพย์เชนเดียวกันที่ลงทะเบียนและรองรับ กระเป๋า pending และ error ไม่ถูกสแกน
  • project_enabled รายงานเฉพาะนโยบายยอมรับสินทรัพย์ของโปรเจกต์ และเป็น false ได้ขณะที่ tracking_active ยัง true
  • balance และ balance_atomic เป็นสตริงแน่นอน; price_usd, value_usd และ total_value_usd ใช้ประกอบการพิจารณาและเป็น null ได้ สถานะยอดใหม่ไม่รับประกันว่าราคาตลาดใหม่
  • การตีมูลค่าเลือกใช้ราคา CoinGecko อายุไม่เกินสองชั่วโมงก่อน เหรียญหลักและ USDC/USDT มาตรฐานที่ตรวจสอบแล้วใช้ราคา USD จาก Kraken/Binance ที่เปิดไว้และอายุไม่เกินห้านาทีเป็นสำรองได้ โดยผู้ให้บริการหลักมาก่อน ไม่สมมติว่าตรึงดอลลาร์หรือใช้ ticker อย่างเดียวหาราคาโทเคนกำหนดเอง ราคาคงที่/DEX ของโปรเจกต์แยกไว้ ราคาเสนอใบแจ้งหนี้ไม่เปลี่ยน
  • Pending ยังไม่มีภาพข้อมูลครบ Refreshing คงจำนวนล่าสุดที่สแกนเสร็จและ checked_at ไม่ได้หมายถึงการโอนบล็อกเชนกำลังรอ ยอด stale/error อาจยังเก็บค่าเก่า อย่าถือแคชที่ใช้ไม่ได้เป็นศูนย์หรือการชำระที่หายไป การรีเฟรช EVM/Solana ปกติใช้ผลที่อยู่ว่างที่เพิ่งตรวจซ้ำได้นานถึง 30 นาทีระหว่างการตรวจครบ ส่วนที่อยู่มีเงิน ใหม่ หรือเปลี่ยนแปลงจะตรวจใหม่ คำสั่งสแกนยอดในคอนโซลอย่างชัดเจนขอสแกนทั้งหมด
  • recent_payments จำกัดสามข้อมูลที่ตรวจพบต่อกระเป๋าและไม่รวมประวัติที่ทำให้ไม่ถูกต้อง

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

POSTสร้างใบแจ้งหนี้/v1/projects/{project_id}/stores/{store_id}/invoicesอ่าน + เขียน

สร้างใบแจ้งหนี้แบบอะตอมมิกพร้อมปลายทางกระเป๋า ราคาเสนอใหม่ที่แน่นอน ประวัติตรวจสอบ และรายการ outbox แจ้งเตือน เรียกซ้ำด้วยเนื้อหาดิบไบต์เหมือนเดิม ข้อมูลรับรองเดิม และ Idempotency-Key เดิม จะคืนใบแจ้งหนี้ต้นฉบับ

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MERCHANT_API_TOKEN
Idempotency-Keyจำเป็นASCII ที่มองเห็นได้และไม่ซ้ำ 1–128 อักขระ ไม่มีช่องว่าง
Content-Typeแนะนำapplication/json ตัวจัดการเนื้อหาดิบปัจจุบันแยก JSON โดยไม่บังคับชนิดสื่อ
Acceptแนะนำapplication/json

พารามิเตอร์พาธ

project_idUUIDจำเป็น

คัดลอก Project API ID จาก โปรเจกต์ → การตั้งค่า → API IDs ต้องกำหนดให้ข้อมูลรับรอง ไม่รับตัวระบุโปรเจกต์แบบอ่านง่าย

store_idUUIDจำเป็น

คัดลอก Store API ID จาก โปรเจกต์ → ร้านค้า → เลือกร้านค้า → พื้นฐาน → API IDs จำเป็นแม้เป็นร้านค้าเริ่มต้น ต้องเปิดใช้และอยู่ใน project_id

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
# Keep this key and the exact body for retries; use a new key for each new invoice.
curl --fail-with-body --max-time 30 \
  --request POST \
  --url "https://api.example.com/v1/projects/YOUR_PROJECT_ID/stores/YOUR_STORE_ID/invoices" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Idempotency-Key: order-1042-attempt-1' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "amount": "49.90",
  "currency": "USD"
}'

เนื้อหาคำขอ

amountstringจำเป็น
สตริงทศนิยมธรรมดาไม่มีเครื่องหมาย ไม่มีเลขยกกำลัง มีหลักจำนวนเต็มไม่เกิน 48 หลักและทศนิยม 30 ตำแหน่ง ค่าเริ่มต้นต้องเป็นบวก ร้านค้าอนุญาตใบแจ้งหนี้จำนวนศูนย์ได้ใน ร้านค้า → ใบแจ้งหนี้ ยอดศูนย์ชำระเสร็จสิ้นโดยไม่รับเงิน จัดสรรที่อยู่ หรือเสียค่าประมวลผลรายละเอียด

สตริงทศนิยมธรรมดาไม่มีเครื่องหมาย ไม่มีเลขยกกำลัง มีหลักจำนวนเต็มไม่เกิน 48 หลักและทศนิยม 30 ตำแหน่ง ค่าเริ่มต้นต้องเป็นบวก ร้านค้าอนุญาตใบแจ้งหนี้จำนวนศูนย์ได้ใน ร้านค้า → ใบแจ้งหนี้ ยอดศูนย์ชำระเสร็จสิ้นโดยไม่รับเงิน จัดสรรที่อยู่ หรือเสียค่าประมวลผล

currencystring | nullไม่บังคับ
รหัสสกุลเงินตราทั่วไปสามตัวอักษรที่รองรับ ปรับเป็นตัวพิมพ์ใหญ่ หากไม่ระบุหรือเป็น null ใช้สกุลเงินใบแจ้งหนี้ของร้านค้า การสร้างยังต้องมีอัตราแปลงการเรียกเก็บเงินที่พร้อมอย่างอิสระรายละเอียด

รหัสสกุลเงินตราทั่วไปสามตัวอักษรที่รองรับ ปรับเป็นตัวพิมพ์ใหญ่ หากไม่ระบุหรือเป็น null ใช้สกุลเงินใบแจ้งหนี้ของร้านค้า การสร้างยังต้องมีอัตราแปลงการเรียกเก็บเงินที่พร้อมอย่างอิสระ

payment_methods[]object[] | nullไม่บังคับ
เลือกวิธีที่ร้านค้าเปิดใช้สำหรับใบแจ้งหนี้นี้ Merchant 5.4.0+: ละเว้นตัวเลือกที่ไม่รู้จัก/ไม่ใช้งาน/ไม่ยอมรับ หากไม่ตรงเลยใช้ค่าเริ่มต้นร้านค้า ไม่ระบุ/null ก็ใช้ค่าเริ่มต้นร้านค้า; [] ไม่ถูกต้อง ไม่เปิดวิธีหรือเปลี่ยนการตั้งค่าร้านค้า ดูโครงสร้างการเลือกด้านล่างรายละเอียด

เลือกวิธีที่ร้านค้าเปิดใช้สำหรับใบแจ้งหนี้นี้ Merchant 5.4.0+: ละเว้นตัวเลือกที่ไม่รู้จัก/ไม่ใช้งาน/ไม่ยอมรับ หากไม่ตรงเลยใช้ค่าเริ่มต้นร้านค้า ไม่ระบุ/null ก็ใช้ค่าเริ่มต้นร้านค้า; [] ไม่ถูกต้อง ไม่เปิดวิธีหรือเปลี่ยนการตั้งค่าร้านค้า ดูโครงสร้างการเลือกด้านล่าง

chain_slugstringจำเป็น
คัดลอก chain_slug ใน โปรเจกต์ → ร้านค้า → วิธีชำระเงิน หรืออ่านจาก GET /v1/projects/{project_id}/stores/{store_id}/payment-assets เช่น ethereum, base หรือ bitcoin คู่ chain/rail ปรากฏได้ครั้งเดียวรายละเอียด

คัดลอก chain_slug ใน โปรเจกต์ → ร้านค้า → วิธีชำระเงิน หรืออ่านจาก GET /v1/projects/{project_id}/stores/{store_id}/payment-assets เช่น ethereum, base หรือ bitcoin คู่ chain/rail ปรากฏได้ครั้งเดียว

asset_ids[]UUID[] | nullไม่บังคับ
UUID asset.id บนเชน ไม่ใช่ที่อยู่คอนแทรกต์หรือ ID วิธีชำระของใบแจ้งหนี้ ใช้ค่านี้หรือ asset_tickers อย่างใดอย่างหนึ่ง ไม่ใส่ทั้งสองตัวเลือกเพื่อเลือกทุกสินทรัพย์ที่ใช้งานและยอมรับบนเชนนี้ [] และ ID ซ้ำ/ศูนย์ไม่ถูกต้อง ใน 5.4.0+ ละเว้น ID ที่ไม่ใช้งาน/ไม่ยอมรับบนเชนนี้ในร้านค้านี้ หากไม่ตรงทั้งหมดจะใช้ค่าเริ่มต้นร้านค้ารายละเอียด

UUID asset.id บนเชน ไม่ใช่ที่อยู่คอนแทรกต์หรือ ID วิธีชำระของใบแจ้งหนี้ ใช้ค่านี้หรือ asset_tickers อย่างใดอย่างหนึ่ง ไม่ใส่ทั้งสองตัวเลือกเพื่อเลือกทุกสินทรัพย์ที่ใช้งานและยอมรับบนเชนนี้ [] และ ID ซ้ำ/ศูนย์ไม่ถูกต้อง ใน 5.4.0+ ละเว้น ID ที่ไม่ใช้งาน/ไม่ยอมรับบนเชนนี้ในร้านค้านี้ หากไม่ตรงทั้งหมดจะใช้ค่าเริ่มต้นร้านค้า

asset_tickers[]string[] | nullไม่บังคับ
Merchant 5.3.0+ สัญลักษณ์เช่น BTC, USDC หรือ PEPE ในขอบเขต chain_slug และร้านค้านี้ ticker ไม่ซ้ำ 1–64 ค่า ตัดช่องว่างขอบ/ไม่แยกตัวพิมพ์เล็กใหญ่ ใช้ตัวอักษร ASCII/ตัวเลข/จุด/ขีดล่าง/ขีดกลาง 1–40 ตัว ใช้ค่านี้หรือ asset_ids อย่างใดอย่างหนึ่ง ใน 5.4.0+ ละเว้น ticker ที่ไม่รู้จัก/ไม่ใช้งาน/ไม่ยอมรับ สัญลักษณ์ที่ยอมรับแต่กำกวมยังล้มเหลว ให้ใช้ asset_ids วิธีที่เลือกและเปิดใช้ต้องมีกระเป๋ากับราคาที่ถูกต้อง สแกนเนอร์บนเชนล่มชั่วคราวไม่บล็อกการสร้างตั้งแต่ 6.0.6 Lightning รับ ticker ได้เฉพาะ BTC หากระบุรายละเอียด

Merchant 5.3.0+ สัญลักษณ์เช่น BTC, USDC หรือ PEPE ในขอบเขต chain_slug และร้านค้านี้ ticker ไม่ซ้ำ 1–64 ค่า ตัดช่องว่างขอบ/ไม่แยกตัวพิมพ์เล็กใหญ่ ใช้ตัวอักษร ASCII/ตัวเลข/จุด/ขีดล่าง/ขีดกลาง 1–40 ตัว ใช้ค่านี้หรือ asset_ids อย่างใดอย่างหนึ่ง ใน 5.4.0+ ละเว้น ticker ที่ไม่รู้จัก/ไม่ใช้งาน/ไม่ยอมรับ สัญลักษณ์ที่ยอมรับแต่กำกวมยังล้มเหลว ให้ใช้ asset_ids วิธีที่เลือกและเปิดใช้ต้องมีกระเป๋ากับราคาที่ถูกต้อง สแกนเนอร์บนเชนล่มชั่วคราวไม่บล็อกการสร้างตั้งแต่ 6.0.6 Lightning รับ ticker ได้เฉพาะ BTC หากระบุ

payment_railonchain | lightningไม่บังคับ
ค่าเริ่มต้น onchain หากเลือก Bitcoin Lightning ใช้ {chain_slug: bitcoin, payment_rail: lightning} โดยไม่มี asset_ids; asset_tickers อาจเป็น [BTC] ได้ Bitcoin บนเชนไม่รวม Lightning การเชื่อมต่อ Lightning ของร้านค้าต้องเปิดและพร้อมแล้วรายละเอียด

ค่าเริ่มต้น onchain หากเลือก Bitcoin Lightning ใช้ {chain_slug: bitcoin, payment_rail: lightning} โดยไม่มี asset_ids; asset_tickers อาจเป็น [BTC] ได้ Bitcoin บนเชนไม่รวม Lightning การเชื่อมต่อ Lightning ของร้านค้าต้องเปิดและพร้อมแล้ว

order_idstring | nullไม่บังคับ

เลขอ้างอิงคำสั่งซื้อผู้ค้า 1–128 อักขระหลังตัดช่องว่างขอบ ปฏิเสธอักขระควบคุม

emailstring | nullไม่บังคับ

อีเมลลูกค้าสำหรับผู้ค้าเท่านั้น ปรับเป็นที่อยู่ ASCII ที่ใช้ได้จริงไม่เกิน 254 อักขระ ไม่ระบุหรือ null จะไม่เก็บอีเมล

descriptionstring | nullไม่บังคับ

คำอธิบายให้ลูกค้าเห็น 1–500 อักขระ อนุญาตขึ้นบรรทัดใหม่และแท็บ

expires_in_secondsinteger | nullไม่บังคับ

อายุราคาเสนอใบแจ้งหนี้ 300 ถึง 86,400 วินาที ไม่ระบุหรือ null ใช้นโยบายร้านค้า

exchange_rate_spread_percentdecimal string | nullไม่บังคับ
ส่วนเพิ่มราคา 0 ถึง 100 ทศนิยมไม่เกินสองตำแหน่ง ไม่ระบุหรือ null ใช้ค่าเริ่มต้นร้านค้า; "0" ปิดสำหรับใบแจ้งหนี้นี้ ใช้ก่อนปัดขึ้นแล้วล็อกไว้ ไม่เปลี่ยนจำนวนเงินตราทั่วไปของใบแจ้งหนี้หรือฐานค่าประมวลผลรายละเอียด

ส่วนเพิ่มราคา 0 ถึง 100 ทศนิยมไม่เกินสองตำแหน่ง ไม่ระบุหรือ null ใช้ค่าเริ่มต้นร้านค้า; "0" ปิดสำหรับใบแจ้งหนี้นี้ ใช้ก่อนปัดขึ้นแล้วล็อกไว้ ไม่เปลี่ยนจำนวนเงินตราทั่วไปของใบแจ้งหนี้หรือฐานค่าประมวลผล

underpayment_tolerance_percentdecimal string | nullไม่บังคับ

ยอดขาดที่ยอมรับ 0 ถึง 99.99 ทศนิยมไม่เกินสองตำแหน่ง ไม่ระบุหรือ null ใช้ค่าเริ่มต้นร้านค้า

ipn_urlstring | nullไม่บังคับ

callback HTTPS สาธารณะไม่เกิน 2,048 ไบต์ ไม่มีข้อมูลรับรองหรือ fragment ใช้แทนค่าเริ่มต้นร้านค้า; null/ไม่ระบุใช้ค่าเดิม

redirect_urlstring | nullไม่บังคับ

URL HTTPS สำเร็จที่ใช้หลังชำระเสร็จสิ้น ไม่เกิน 2,048 ไบต์และไม่มีข้อมูลรับรองฝังอยู่ ไม่ระบุหรือ null ใช้ค่าเริ่มต้นร้านค้าและล้างค่าไม่ได้

cancel_urlstring | nullไม่บังคับ

URL HTTPS ส่งกลับเมื่อหน้าชำระเงินจบโดยไม่ชำระสำเร็จ ไม่ระบุหรือ null ใช้ค่าเริ่มต้นร้านค้าและล้างค่าไม่ได้

redirect_automaticallyboolean | nullไม่บังคับ

ไม่ระบุหรือ null ใช้นโยบายร้านค้า true ต้องมี redirect_url ที่มีผล

languagestring | nullไม่บังคับ
ภาษาลูกค้า: en, de, es, pt-BR, it, ru, zh-CN, fr, ko หรือ ja โดย pt หมายถึงโปรตุเกสบราซิล และ zh หมายถึงจีนตัวย่อ แท็กภูมิภาคที่รองรับ เช่น de-DE จะปรับเป็นภาษาในรายการ ไม่ระบุหรือ null ใช้ภาษาร้านค้า ภาษาคอนโซลแยกต่างหากรายละเอียด

ภาษาลูกค้า: en, de, es, pt-BR, it, ru, zh-CN, fr, ko หรือ ja โดย pt หมายถึงโปรตุเกสบราซิล และ zh หมายถึงจีนตัวย่อ แท็กภูมิภาคที่รองรับ เช่น de-DE จะปรับเป็นภาษาในรายการ ไม่ระบุหรือ null ใช้ภาษาร้านค้า ภาษาคอนโซลแยกต่างหาก

checkout_appearanceobject | nullไม่บังคับ
การตั้งค่าการแสดงผลบางส่วนสำหรับใบแจ้งหนี้นี้ ไม่ระบุ/null ใช้ดีไซน์ปัจจุบันของร้านค้า ออบเจ็กต์รวมถึง {} จะตรึงดีไซน์และรูปภาพที่คำนวณได้เมื่อสร้าง ดูโครงสร้าง override ด้านล่าง ไม่มีการตั้งค่าการเงิน HTML, CSS, JavaScript หรือ URL รูปภาพภายนอกรายละเอียด

การตั้งค่าการแสดงผลบางส่วนสำหรับใบแจ้งหนี้นี้ ไม่ระบุ/null ใช้ดีไซน์ปัจจุบันของร้านค้า ออบเจ็กต์รวมถึง {} จะตรึงดีไซน์และรูปภาพที่คำนวณได้เมื่อสร้าง ดูโครงสร้าง override ด้านล่าง ไม่มีการตั้งค่าการเงิน HTML, CSS, JavaScript หรือ URL รูปภาพภายนอก

inherit_default_storebooleanไม่บังคับ
true เลือกดีไซน์ร้านค้าเริ่มต้นของโปรเจกต์เป็นฐาน มิฉะนั้นใช้ดีไซน์ที่มีผลของร้านค้าเป้าหมาย จากนั้นใช้ override และบันทึกแยก ธงในใบแจ้งหนี้หลังคำนวณเป็น falseรายละเอียด

true เลือกดีไซน์ร้านค้าเริ่มต้นของโปรเจกต์เป็นฐาน มิฉะนั้นใช้ดีไซน์ที่มีผลของร้านค้าเป้าหมาย จากนั้นใช้ override และบันทึกแยก ธงในใบแจ้งหนี้หลังคำนวณเป็น false

titlestringไม่บังคับ

หัวข้อหน้าชำระเงิน ไม่เกิน 120 อักขระ ค่าว่างใช้หัวข้อมาตรฐาน

introstringไม่บังคับ
ข้อความธรรมดาแต่ละส่วนไม่เกิน 2,000 อักขระ Intro อยู่ด้านบน Outro ด้านล่างทุกสถานะ คงบรรทัดใหม่ URL ข้อความที่ปลอดภัยกลายเป็นลิงก์ สตริงว่างล้างค่า ยอมรับ customer_message เดิมเป็นชื่อแทน intro อย่าส่งทั้งสองรายละเอียด

ข้อความธรรมดาแต่ละส่วนไม่เกิน 2,000 อักขระ Intro อยู่ด้านบน Outro ด้านล่างทุกสถานะ คงบรรทัดใหม่ URL ข้อความที่ปลอดภัยกลายเป็นลิงก์ สตริงว่างล้างค่า ยอมรับ customer_message เดิมเป็นชื่อแทน intro อย่าส่งทั้งสอง

outrostringไม่บังคับ
ข้อความธรรมดาแต่ละส่วนไม่เกิน 2,000 อักขระ Intro อยู่ด้านบน Outro ด้านล่างทุกสถานะ คงบรรทัดใหม่ URL ข้อความที่ปลอดภัยกลายเป็นลิงก์ สตริงว่างล้างค่า ยอมรับ customer_message เดิมเป็นชื่อแทน intro อย่าส่งทั้งสองรายละเอียด

ข้อความธรรมดาแต่ละส่วนไม่เกิน 2,000 อักขระ Intro อยู่ด้านบน Outro ด้านล่างทุกสถานะ คงบรรทัดใหม่ URL ข้อความที่ปลอดภัยกลายเป็นลิงก์ สตริงว่างล้างค่า ยอมรับ customer_message เดิมเป็นชื่อแทน intro อย่าส่งทั้งสอง

intro_font_sizeintegerไม่บังคับ

พิกเซล: 12, 14, 16, 18, 20 หรือ 24 ค่าเริ่มต้น 16 เว้นแต่สืบทอดค่าต่างออกไป

outro_font_sizeintegerไม่บังคับ

พิกเซล: 12, 14, 16, 18, 20 หรือ 24 ค่าเริ่มต้น 16 เว้นแต่สืบทอดค่าต่างออกไป

themesystem | light | dim | darkไม่บังคับ

ตามอุปกรณ์ลูกค้าหรือใช้ธีมคงที่

accent_colorstringไม่บังคับ

#RRGGBB พื้นหลัง การ์ด และปุ่มอาจว่างเพื่อใช้สีอัตโนมัติ คอนทราสต์ข้อความเป็นอัตโนมัติ

background_colorstringไม่บังคับ

#RRGGBB พื้นหลัง การ์ด และปุ่มอาจว่างเพื่อใช้สีอัตโนมัติ คอนทราสต์ข้อความเป็นอัตโนมัติ

card_colorstringไม่บังคับ

#RRGGBB พื้นหลัง การ์ด และปุ่มอาจว่างเพื่อใช้สีอัตโนมัติ คอนทราสต์ข้อความเป็นอัตโนมัติ

button_colorstringไม่บังคับ

#RRGGBB พื้นหลัง การ์ด และปุ่มอาจว่างเพื่อใช้สีอัตโนมัติ คอนทราสต์ข้อความเป็นอัตโนมัติ

logo_sizestringไม่บังคับ

small, medium หรือ large; left หรือ center

logo_alignmentstringไม่บังคับ

small, medium หรือ large; left หรือ center

imagesobjectไม่บังคับ
คีย์ logo_light, logo_dark, favicon ไม่ระบุคีย์จะคงรูปฐาน; null ลบรูป ออบเจ็กต์ {store_id: UUID, kind?: logo_light|logo_dark|favicon} ใช้รูปอัปโหลดที่มีผลของร้านค้านั้นซ้ำในโปรเจกต์เดียวกันเท่านั้น kind มีค่าเริ่มต้นเป็นคีย์เป้าหมาย อัปโหลดใน ร้านค้า → หน้าชำระเงิน ก่อน คัดลอก Store API ID จาก พื้นฐาน → API IDs รูปไม่มีหรือ ID ข้ามโปรเจกต์คืน 400 ไม่รับ URL ภายนอกหรือข้อมูลรูปภาพรายละเอียด

คีย์ logo_light, logo_dark, favicon ไม่ระบุคีย์จะคงรูปฐาน; null ลบรูป ออบเจ็กต์ {store_id: UUID, kind?: logo_light|logo_dark|favicon} ใช้รูปอัปโหลดที่มีผลของร้านค้านั้นซ้ำในโปรเจกต์เดียวกันเท่านั้น kind มีค่าเริ่มต้นเป็นคีย์เป้าหมาย อัปโหลดใน ร้านค้า → หน้าชำระเงิน ก่อน คัดลอก Store API ID จาก พื้นฐาน → API IDs รูปไม่มีหรือ ID ข้ามโปรเจกต์คืน 400 ไม่รับ URL ภายนอกหรือข้อมูลรูปภาพ

logo_lightobject | nullไม่บังคับ
store_idUUIDจำเป็น
kindlogo_light | logo_dark | faviconไม่บังคับ
logo_darkobject | nullไม่บังคับ
store_idUUIDจำเป็น
kindlogo_light | logo_dark | faviconไม่บังคับ
faviconobject | nullไม่บังคับ
store_idUUIDจำเป็น
kindlogo_light | logo_dark | faviconไม่บังคับ
show_order_idbooleanไม่บังคับ

แสดงรายละเอียด ID คำสั่งซื้อและคำอธิบายข้อความธรรมดาใต้หัวข้อ details_expanded เปิดรายละเอียด ID คำสั่งซื้อตั้งแต่แรก เป็นเพียงการแสดงผล ไม่ใช่การปกปิดข้อมูล

show_descriptionbooleanไม่บังคับ

แสดงรายละเอียด ID คำสั่งซื้อและคำอธิบายข้อความธรรมดาใต้หัวข้อ details_expanded เปิดรายละเอียด ID คำสั่งซื้อตั้งแต่แรก เป็นเพียงการแสดงผล ไม่ใช่การปกปิดข้อมูล

details_expandedbooleanไม่บังคับ

แสดงรายละเอียด ID คำสั่งซื้อและคำอธิบายข้อความธรรมดาใต้หัวข้อ details_expanded เปิดรายละเอียด ID คำสั่งซื้อตั้งแต่แรก เป็นเพียงการแสดงผล ไม่ใช่การปกปิดข้อมูล

show_project_namebooleanไม่บังคับ
Merchant 5.6.0+: แสดงหรือซ่อนแต่ละชื่อในหัวหน้าชำระเงินของลูกค้า ทั้งคู่มีค่าเริ่มต้น true มีใน ร้านค้า → หน้าชำระเงิน ด้วย สืบทอดและเก็บภาพข้อมูลในใบแจ้งหนี้เหมือนการตั้งค่ารูปลักษณ์อื่น เป็นเพียงการแสดงผล ไม่ใช่การปกปิดข้อมูลรายละเอียด

Merchant 5.6.0+: แสดงหรือซ่อนแต่ละชื่อในหัวหน้าชำระเงินของลูกค้า ทั้งคู่มีค่าเริ่มต้น true มีใน ร้านค้า → หน้าชำระเงิน ด้วย สืบทอดและเก็บภาพข้อมูลในใบแจ้งหนี้เหมือนการตั้งค่ารูปลักษณ์อื่น เป็นเพียงการแสดงผล ไม่ใช่การปกปิดข้อมูล

show_store_namebooleanไม่บังคับ
Merchant 5.6.0+: แสดงหรือซ่อนแต่ละชื่อในหัวหน้าชำระเงินของลูกค้า ทั้งคู่มีค่าเริ่มต้น true มีใน ร้านค้า → หน้าชำระเงิน ด้วย สืบทอดและเก็บภาพข้อมูลในใบแจ้งหนี้เหมือนการตั้งค่ารูปลักษณ์อื่น เป็นเพียงการแสดงผล ไม่ใช่การปกปิดข้อมูลรายละเอียด

Merchant 5.6.0+: แสดงหรือซ่อนแต่ละชื่อในหัวหน้าชำระเงินของลูกค้า ทั้งคู่มีค่าเริ่มต้น true มีใน ร้านค้า → หน้าชำระเงิน ด้วย สืบทอดและเก็บภาพข้อมูลในใบแจ้งหนี้เหมือนการตั้งค่ารูปลักษณ์อื่น เป็นเพียงการแสดงผล ไม่ใช่การปกปิดข้อมูล

featured_chains[]string[]ไม่บังคับ
slug เชนเรียงลำดับ ไม่เกิน 60 ค่าที่ไม่ซ้ำ (ตัวพิมพ์เล็ก ตัวเลข ขีดกลาง ไม่เกิน 64 อักขระ) [] ล้างค่า เรียงใหม่เฉพาะวิธีที่มีในใบแจ้งหนี้รายละเอียด

slug เชนเรียงลำดับ ไม่เกิน 60 ค่าที่ไม่ซ้ำ (ตัวพิมพ์เล็ก ตัวเลข ขีดกลาง ไม่เกิน 64 อักขระ) [] ล้างค่า เรียงใหม่เฉพาะวิธีที่มีในใบแจ้งหนี้

featured_asset_ids[]UUID[]ไม่บังคับ
ID สินทรัพย์เรียงลำดับไม่ซ้ำสูงสุด 100 ค่า; [] ล้างค่า สินทรัพย์เริ่มต้นเป็น null ได้ ID มาจาก payment-assets ไม่ใช่ ID payment-intent ค่าเหล่านี้ไม่เปิดวิธีชำระ การชำระที่รับแล้วและค่าที่ลูกค้าเลือกอย่างถูกต้องมีลำดับสำคัญกว่ารายละเอียด

ID สินทรัพย์เรียงลำดับไม่ซ้ำสูงสุด 100 ค่า; [] ล้างค่า สินทรัพย์เริ่มต้นเป็น null ได้ ID มาจาก payment-assets ไม่ใช่ ID payment-intent ค่าเหล่านี้ไม่เปิดวิธีชำระ การชำระที่รับแล้วและค่าที่ลูกค้าเลือกอย่างถูกต้องมีลำดับสำคัญกว่า

default_asset_idUUID|nullไม่บังคับ
ID สินทรัพย์เรียงลำดับไม่ซ้ำสูงสุด 100 ค่า; [] ล้างค่า สินทรัพย์เริ่มต้นเป็น null ได้ ID มาจาก payment-assets ไม่ใช่ ID payment-intent ค่าเหล่านี้ไม่เปิดวิธีชำระ การชำระที่รับแล้วและค่าที่ลูกค้าเลือกอย่างถูกต้องมีลำดับสำคัญกว่ารายละเอียด

ID สินทรัพย์เรียงลำดับไม่ซ้ำสูงสุด 100 ค่า; [] ล้างค่า สินทรัพย์เริ่มต้นเป็น null ได้ ID มาจาก payment-assets ไม่ใช่ ID payment-intent ค่าเหล่านี้ไม่เปิดวิธีชำระ การชำระที่รับแล้วและค่าที่ลูกค้าเลือกอย่างถูกต้องมีลำดับสำคัญกว่า

messagesobjectไม่บังคับ
ออบเจ็กต์ภาษามีคีย์ en, de, es, pt-BR, it, ru, zh-CN, fr, ko หรือ ja พร้อมสตริงธรรมดา waiting, confirming, paid, underpaid, expired (แต่ละค่า 500 อักขระ) เปลี่ยนเฉพาะภาษา/สถานะที่ส่งมา; {} ล้างข้อความทั้งหมด, {en:{}} ล้างภาษาอังกฤษ และสตริงสถานะว่างล้างสถานะนั้น ใช้ภาษาอังกฤษเป็นค่าทดแทน ไม่แทนที่สถานะจริงรายละเอียด

ออบเจ็กต์ภาษามีคีย์ en, de, es, pt-BR, it, ru, zh-CN, fr, ko หรือ ja พร้อมสตริงธรรมดา waiting, confirming, paid, underpaid, expired (แต่ละค่า 500 อักขระ) เปลี่ยนเฉพาะภาษา/สถานะที่ส่งมา; {} ล้างข้อความทั้งหมด, {en:{}} ล้างภาษาอังกฤษ และสตริงสถานะว่างล้างสถานะนั้น ใช้ภาษาอังกฤษเป็นค่าทดแทน ไม่แทนที่สถานะจริง

enobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
deobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
esobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
pt-BRobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
itobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
ruobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
zh-CNobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
frobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
koobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
jaobjectไม่บังคับ
waitingstringไม่บังคับ
confirmingstringไม่บังคับ
paidstringไม่บังคับ
underpaidstringไม่บังคับ
expiredstringไม่บังคับ
support_emailstringไม่บังคับ

อีเมล ASCII ไม่เกิน 254 อักขระ ค่าว่างล้างค่า

support_urlstringไม่บังคับ

URL HTTPS ไม่เกิน 2,048 อักขระ ไม่มีข้อมูลรับรอง ค่าว่างล้างค่า ลิงก์เปิดหน้าต่างใหม่

terms_urlstringไม่บังคับ

URL HTTPS ไม่เกิน 2,048 อักขระ ไม่มีข้อมูลรับรอง ค่าว่างล้างค่า ลิงก์เปิดหน้าต่างใหม่

privacy_urlstringไม่บังคับ

URL HTTPS ไม่เกิน 2,048 อักขระ ไม่มีข้อมูลรับรอง ค่าว่างล้างค่า ลิงก์เปิดหน้าต่างใหม่

return_button_textstringไม่บังคับ

ป้ายชื่อไม่เกิน 60 อักขระ ใช้ redirect_url/cancel_url/redirect_automatically/language ระดับบนสุดเพื่อกำหนดพฤติกรรมใบแจ้งหนี้

show_return_buttonbooleanไม่บังคับ
แสดงปุ่มกลับไปยังผู้ค้า/ยกเลิกแบบกดเองในหน้าชำระเงิน รวมสถานะสิ้นสุด ไม่ระบุจะใช้รูปลักษณ์ร้านค้า (ค่าเริ่มต้น true); false ซ่อนปุ่ม ไม่ยกเลิกใบแจ้งหนี้ ไม่ซ่อน URL ใน JSON และไม่ปิดการเปลี่ยนเส้นทางเมื่อสำเร็จอัตโนมัติ หากต้องการให้ตั้ง redirect_automatically ระดับบนสุดเป็น false แยก ต้องใช้ merchant 8.1.4 หรือใหม่กว่ารายละเอียด

แสดงปุ่มกลับไปยังผู้ค้า/ยกเลิกแบบกดเองในหน้าชำระเงิน รวมสถานะสิ้นสุด ไม่ระบุจะใช้รูปลักษณ์ร้านค้า (ค่าเริ่มต้น true); false ซ่อนปุ่ม ไม่ยกเลิกใบแจ้งหนี้ ไม่ซ่อน URL ใน JSON และไม่ปิดการเปลี่ยนเส้นทางเมื่อสำเร็จอัตโนมัติ หากต้องการให้ตั้ง redirect_automatically ระดับบนสุดเป็น false แยก ต้องใช้ merchant 8.1.4 หรือใหม่กว่า

metadataobject | nullไม่บังคับ
ออบเจ็กต์ JSON เฉพาะผู้ค้า ไม่ระบุหรือ null กลายเป็น {} ขนาดเข้ารหัสสูงสุด 4,096 ไบต์และซ้อนห้าระดับ firstname, lastname, street, street2, zip, city, country, countryiso2, company และ vatid จะถูกตรวจ ปรับรูปแบบ และนำไปแสดงในฟิลด์สรุปลูกค้ารายละเอียด

ออบเจ็กต์ JSON เฉพาะผู้ค้า ไม่ระบุหรือ null กลายเป็น {} ขนาดเข้ารหัสสูงสุด 4,096 ไบต์และซ้อนห้าระดับ firstname, lastname, street, street2, zip, city, country, countryiso2, company และ vatid จะถูกตรวจ ปรับรูปแบบ และนำไปแสดงในฟิลด์สรุปลูกค้า

firstnamestringไม่บังคับ
lastnamestringไม่บังคับ
streetstringไม่บังคับ
street2stringไม่บังคับ
zipstringไม่บังคับ
citystringไม่บังคับ
countrystringไม่บังคับ
countryiso2stringไม่บังคับ
companystringไม่บังคับ
vatidstringไม่บังคับ
cart_idstring

การตอบกลับ 201 new invoice; 200 exact idempotent replay

ตัวอย่างการตอบกลับ
{
  "data": {
    "id": "2f798f9f-01f2-42f0-9d10-5581d6116b4c",
    "invoice_id": "0a6a98db-d93d-48ee-8c3c-fd45f90c4a50",
    "project_id": "11111111-1111-4111-8111-111111111111",
    "store_id": "22222222-2222-4222-8222-222222222222",
    "source": "api",
    "order_id": "order-1042",
    "email": "ada@example.com",
    "customer_name": "Ada Lovelace · Example GmbH",
    "customer_address": "Example GmbH · 12 Example Street · Suite 2 · 10115 Berlin · Germany (DE) · VAT DE123456789",
    "description": "Annual plan",
    "amount": "49.9",
    "currency": "USD",
    "exchange_rate_spread_percent": "0.5",
    "underpayment_tolerance_percent": "1",
    "status": "new",
    "amount_status": "none",
    "timing_status": "on_time",
    "resolution": "automatic",
    "sequence": 1,
    "winning_payment_intent_id": null,
    "expires_at": "2026-08-31T18:15:00Z",
    "monitoring_expires_at": "2026-09-07T18:15:00Z",
    "settled_at": null,
    "cancelled_at": null,
    "archived_at": null,
    "created_at": "2026-08-31T18:00:00Z",
    "updated_at": "2026-08-31T18:00:00Z",
    "ipn_url": "https://merchant.example/wholly/ipn",
    "redirect_url": "https://merchant.example/orders/1042",
    "cancel_url": "https://merchant.example/cart",
    "redirect_automatically": true,
    "checkout_language": "en",
    "metadata": { "cart_id": "cart-681", "firstname": "Ada", "lastname": "Lovelace", "street": "12 Example Street", "street2": "Suite 2", "zip": "10115", "city": "Berlin", "country": "Germany", "countryiso2": "DE", "company": "Example GmbH", "vatid": "DE123456789" },
    "payment_intents": [
      {
        "id": "33333333-3333-4333-8333-333333333333",
        "asset_id": "10000000-0000-4000-8000-000000000001",
        "asset_key": "bip122:000000000019d6689c085ae165831e93/slip44:0",
        "chain_slug": "bitcoin",
        "network": "mainnet",
        "caip_network_id": "bip122:000000000019d6689c085ae165831e93",
        "caip_asset_id": "bip122:000000000019d6689c085ae165831e93/slip44:0",
        "symbol": "BTC",
        "asset_decimals": 8,
        "status": "pending",
        "finality_mode": "confirmations",
        "required_confirmations": 1,
        "quote_rate": "0.000009218",
        "quote_details": null,
        "expected_amount": "0.00046",
        "expected_amount_atomic": "46000",
        "minimum_payment_amount": "0.0004554",
        "minimum_payment_amount_atomic": "45540",
        "received_amount": "0",
        "received_amount_atomic": "0",
        "confirmed_amount": "0",
        "confirmed_amount_atomic": "0",
        "destination_address": "bc1q…example",
        "destination_tag": null,
        "derivation_index": 42,
        "quote_expires_at": "2026-08-31T18:15:00Z",
        "monitoring_expires_at": "2026-09-07T18:15:00Z",
        "next_check_at": "2026-08-31T18:00:00Z",
        "last_checked_at": null,
        "last_chain_height": null,
        "last_anchor_hash": null,
        "last_monitor_error": null,
        "first_payment_at": null,
        "fully_paid_at": null,
        "finalized_at": null
      }
    ]
  },
  "links": {
    "checkout": "https://pay.example.com/invoice/0a6a98db-d93d-48ee-8c3c-fd45f90c4a50"
  }
}

ฟิลด์การตอบกลับ

dataobject
idUUIDเสมอ

UUID ภายในของใบแจ้งหนี้ อย่าใช้ในพาธรายละเอียดผู้ค้าหรือหน้าชำระเงิน

invoice_idUUIDเสมอ

UUID สาธารณะของใบแจ้งหนี้ที่ใช้ในพาธรายละเอียดผู้ค้าและหน้าชำระเงิน

project_idUUIDเสมอ

โปรเจกต์เจ้าของ

store_idUUIDเสมอ

ร้านค้าเจ้าของ

sourcemanual | apiเสมอ

วิธีที่สร้างใบแจ้งหนี้

order_idstring | nullเสมอ

เลขอ้างอิงคำสั่งซื้อของผู้ค้า

emailstring | nullเสมอ

อีเมลลูกค้าสำหรับผู้ค้าเท่านั้น ไม่คืนผ่านหน้าชำระเงินสาธารณะ

customer_namestring | nullเสมอ

ชื่อแสดงผลที่ได้จาก metadata ส่วนตัว firstname, lastname และ company

customer_addressstring | nullเสมอ

ที่อยู่บรรทัดเดียวในข้อมูลผู้ค้า ซึ่งได้จาก metadata ส่วนตัว company, street, street2, zip, city, country, countryiso2 และ vatid

descriptionstring | nullเสมอ

คำอธิบายที่ลูกค้าเห็น

amountdecimal stringเสมอ

จำนวนใบแจ้งหนี้รูปแบบมาตรฐาน

currencystringเสมอ

รหัสสกุลเงิน/สินทรัพย์ใบแจ้งหนี้ที่ปรับรูปแบบแล้ว

exchange_rate_spread_percentdecimal stringเสมอ

สเปรดราคาเสนอที่ล็อกไว้: ค่า override ตอนสร้าง หรือค่าเริ่มต้นร้านค้าหากไม่ระบุ ใช้ก่อนปัดขึ้นและไม่เปลี่ยนในใบแจ้งหนี้นี้

underpayment_tolerance_percentdecimal stringเสมอ

เปอร์เซ็นต์ยอดขาดที่ยอมรับแบบแก้ไขไม่ได้ เก็บภาพข้อมูลเมื่อสร้างใบแจ้งหนี้

statusinvoice statusเสมอ

new, processing, settled, expired, invalid หรือ cancelled

amount_statusamount statusเสมอ

none, partial, paid หรือ overpaid ใบแจ้งหนี้จำนวนศูนย์ที่อนุญาตชัดเจนชำระเสร็จสิ้นด้วย none และไม่มีวิธีชำระเงิน

timing_statustiming statusเสมอ

on_time หรือ late

resolutionresolutionเสมอ

automatic, manually_settled หรือ manually_invalidated

sequenceintegerเสมอ

ลำดับสถานะใบแจ้งหนี้ที่เพิ่มขึ้นเสมอ เริ่มที่ 1

winning_payment_intent_idUUID | nullเสมอ

วิธีชำระเงินที่ตัดสินผลใบแจ้งหนี้ เมื่อเลือกแล้ว

expires_atRFC 3339 timestampเสมอ

กำหนดหมดอายุราคาเสนอ/ชำระเงิน

monitoring_expires_atRFC 3339 timestampเสมอ

เวลาสิ้นสุดการติดตามล่าช้าที่ช้าที่สุดตามการตั้งค่าในทุกวิธีชำระเงิน

settled_attimestamp | nullเสมอ

เวลาชำระเสร็จสิ้นเมื่อสถานะ settled

cancelled_attimestamp | nullเสมอ

เวลายกเลิกเมื่อสถานะ cancelled

archived_attimestamp | nullเสมอ

เวลาเก็บเข้าคลังเมื่อเก็บเข้าคลังแล้ว

created_atRFC 3339 timestampเสมอ

เวลาสร้าง

updated_atRFC 3339 timestampเสมอ

เวลาอัปเดตสถานะล่าสุด

ipn_urlstring | nullเสมอ

ปลายทาง IPN ที่มีผลต่อใบแจ้งหนี้ คืนเฉพาะผู้ค้า ไม่รวมในหน้าชำระเงินสาธารณะ

redirect_urlstring | nullเสมอ

URL สำเร็จที่มีผลและใช้หลังชำระเสร็จสิ้น

cancel_urlstring | nullเสมอ

URL ส่งกลับที่มีผลเมื่อหน้าชำระเงินจบโดยไม่ชำระสำเร็จ

redirect_automaticallybooleanเสมอ

หน้าชำระเงินควรเปลี่ยนเส้นทางอัตโนมัติหลังสำเร็จหรือไม่

checkout_languagestringเสมอ

แท็กภาษาหน้าชำระเงินที่มีผล

metadataobjectเสมอ
metadata ผู้ค้า ไม่คืนผ่านหน้าชำระเงินสาธารณะ เครื่องมือชำระเงินในคอนโซลเพิ่มข้อมูลที่มา payment_tool (id, kind, title, pricing, requested_amount, request_id) ซึ่งไม่พิสูจน์การชำระเงิน ยืนยัน callback และดำเนินการ invoice.settled ครั้งเดียวต่อ invoice_idรายละเอียด

metadata ผู้ค้า ไม่คืนผ่านหน้าชำระเงินสาธารณะ เครื่องมือชำระเงินในคอนโซลเพิ่มข้อมูลที่มา payment_tool (id, kind, title, pricing, requested_amount, request_id) ซึ่งไม่พิสูจน์การชำระเงิน ยืนยัน callback และดำเนินการ invoice.settled ครั้งเดียวต่อ invoice_id

cart_idstring
firstnamestring
lastnamestring
streetstring
street2string
zipstring
citystring
countrystring
countryiso2string
companystring
vatidstring
payment_intents[]object[]เสมอ

วิธีชำระเงินที่เสนอราคาและสถานะติดตาม

idUUIDเสมอ

ตัวระบุ payment intent ใช้เป็น intent_id ของ QR หน้าชำระเงินด้วย

payment_railonchain | lightningเสมอ
ช่องทางของใบแจ้งหนี้ Bitcoin บนเชนและ Lightning อาจใช้ asset_id เดียวกัน ให้ใช้ intent id ร่วมกับฟิลด์นี้ ไม่ใช่สัญลักษณ์อย่างเดียว ต่างจาก payment_rail ของสแกนเนอร์ในแค็ตตาล็อกสินทรัพย์รายละเอียด

ช่องทางของใบแจ้งหนี้ Bitcoin บนเชนและ Lightning อาจใช้ asset_id เดียวกัน ให้ใช้ intent id ร่วมกับฟิลด์นี้ ไม่ใช่สัญลักษณ์อย่างเดียว ต่างจาก payment_rail ของสแกนเนอร์ในแค็ตตาล็อกสินทรัพย์

bolt11string | nullเสมอ

คำขอชำระ Lightning มิฉะนั้นเป็น null ชำระคำขอนี้ด้วยกระเป๋า Lightning ห้ามส่งเงินบนเชนไปยัง payment hash

asset_idUUIDเสมอ

ตัวระบุสินทรัพย์รับชำระที่ตั้งค่าไว้

asset_keystringเสมอ

คีย์สินทรัพย์รูปแบบ CAIP มาตรฐาน

chain_slugstringเสมอ

ตัวระบุเชน Wholly Crypto

networkstringเสมอ

เครือข่ายที่ตั้งค่า ปัจจุบันเป็น mainnet สำหรับสินทรัพย์รับชำระที่รองรับ

caip_network_idstringเสมอ

ตัวระบุเครือข่าย CAIP-2 มาตรฐาน

caip_asset_idstring | nullเสมอ

ตัวระบุ CAIP-19 มาตรฐานเมื่อมีการลงทะเบียน

symbolstringเสมอ

สัญลักษณ์สินทรัพย์

asset_decimalsintegerเสมอ

ความละเอียดหน่วยย่อย Lightning BTC ใช้ 11 (millisatoshis) ไม่ใช่ 8 ของ Bitcoin บนเชน ราคาเสนอเป็น satoshi เต็มหน่วย ยอดรับคงความละเอียด millisatoshi

statusintent statusเสมอ

pending, partial, paid, overpaid, expired หรือ invalid

finality_modeconfirmations | finalizedเสมอ

นโยบายความเป็นที่สุด

required_confirmationsintegerเสมอ

จำนวนการยืนยันที่ต้องการเมื่อใช้ได้

quote_ratedecimal stringเสมอ

หน่วยสินทรัพย์ต่อหนึ่งหน่วยสกุลเงินใบแจ้งหนี้ รวมสเปรดที่ล็อกไว้ เช่น 1.02 USDC ต่อ USD ไม่ใช่อัตรากลับด้าน

quote_detailsobject | nullเสมอ
ที่มาราคาเสนอที่ล็อกไว้: reference_rate ก่อนสเปรด, unrounded_payment_amount, rounding_adjustment, pricing_provider, asset_provider, pricing_fetched_at และ asset_fetched_at เป็น null ในใบแจ้งหนี้เก่า ไม่สร้างค่าย้อนหลังขึ้นเองรายละเอียด

ที่มาราคาเสนอที่ล็อกไว้: reference_rate ก่อนสเปรด, unrounded_payment_amount, rounding_adjustment, pricing_provider, asset_provider, pricing_fetched_at และ asset_fetched_at เป็น null ในใบแจ้งหนี้เก่า ไม่สร้างค่าย้อนหลังขึ้นเอง

expected_amountdecimal stringเสมอ
จำนวนสินทรัพย์ที่แน่นอนและล็อกไว้ให้ชำระหลังสเปรดและปัดขึ้น ตั้งแต่ 4.1.1 stablecoin อิงเงินตราทั่วไปที่รู้จักและตรวจสอบแล้ว (เช่น USDC, USDT, DAI, USDS, EURC) ปัดขึ้นให้มีทศนิยมไม่เกินสองตำแหน่ง; 1.321 เป็น 1.33 ไม่ใช่ 1.32 นี่คือจำนวนที่คาดหวังแม้ยอมรับส่วนต่างศูนย์ สินทรัพย์อื่นใช้ความละเอียดปรับตามค่า ไม่คำนวณราคาใหม่ให้ใบแจ้งหนี้เดิมรายละเอียด

จำนวนสินทรัพย์ที่แน่นอนและล็อกไว้ให้ชำระหลังสเปรดและปัดขึ้น ตั้งแต่ 4.1.1 stablecoin อิงเงินตราทั่วไปที่รู้จักและตรวจสอบแล้ว (เช่น USDC, USDT, DAI, USDS, EURC) ปัดขึ้นให้มีทศนิยมไม่เกินสองตำแหน่ง; 1.321 เป็น 1.33 ไม่ใช่ 1.32 นี่คือจำนวนที่คาดหวังแม้ยอมรับส่วนต่างศูนย์ สินทรัพย์อื่นใช้ความละเอียดปรับตามค่า ไม่คำนวณราคาใหม่ให้ใบแจ้งหนี้เดิม

expected_amount_atomicinteger stringเสมอ

จำนวนที่แน่นอนในหน่วยเล็กที่สุดของสินทรัพย์

minimum_payment_amountdecimal stringเสมอ

จำนวนต่ำสุดที่ยอมรับว่าชำระแล้วหลังใช้ส่วนต่างใบแจ้งหนี้

minimum_payment_amount_atomicinteger stringเสมอ

เกณฑ์ยอมรับที่แน่นอนในหน่วยเล็กที่สุดของสินทรัพย์

received_amountdecimal stringเสมอ

จำนวนที่ตรวจพบ

received_amount_atomicinteger stringเสมอ

จำนวนหน่วยย่อยที่ตรวจพบ

confirmed_amountdecimal stringเสมอ

จำนวนที่ยืนยัน/เป็นที่สุด

confirmed_amount_atomicinteger stringเสมอ

จำนวนหน่วยย่อยที่ยืนยัน/เป็นที่สุด

destination_addressstringเสมอ

ที่อยู่รับเงินบนเชน หรือ payment hash 64 อักขระสำหรับ Lightning ใช้ bolt11 ชำระ Lightning แฮชไม่ใช่ที่อยู่ Bitcoin

destination_tagstring | nullเสมอ

เลขอ้างอิงชำระเงินสาธารณะที่จำเป็นเมื่อช่องทางใช้: destination tag ของ XRP, memo ID ของ Stellar หรือคอมเมนต์ใบแจ้งหนี้ TON เป็น null สำหรับช่องทางที่ใช้ที่อยู่ไม่ซ้ำ

derivation_indexintegerเสมอ

ดัชนีลูกของกระเป๋าที่สำรองไว้ เฉพาะรายละเอียดผู้ค้า

quote_expires_atRFC 3339 timestampเสมอ

เวลาหมดอายุราคาเสนอ

monitoring_expires_atRFC 3339 timestampเสมอ

กำหนดสิ้นสุดการติดตามล่าช้าสำหรับวิธีนี้

next_check_attimestamp | nullเสมอ

กำหนดตรวจเชนครั้งถัดไป

last_checked_attimestamp | nullเสมอ

การตรวจเชนล่าสุด

last_chain_heightinteger | nullเสมอ

ความสูงล่าสุดที่เชื่อถือได้ซึ่งตัวติดตามพบ

last_anchor_hashstring | nullเสมอ

จุดอ้างอิง/แฮชบล็อกล่าสุดของตัวติดตาม

last_monitor_errorstring | nullเสมอ

ข้อมูลวินิจฉัยการติดตามที่ปลอดภัยสำหรับผู้ดำเนินระบบ

first_payment_attimestamp | nullเสมอ

เวลาตรวจพบการชำระครั้งแรก

fully_paid_attimestamp | nullเสมอ

เวลาที่ถึงจำนวนขั้นต่ำที่ยอมรับเป็นครั้งแรก

finalized_attimestamp | nullเสมอ

เวลาที่การชำระผ่านนโยบายความเป็นที่สุด

หมายเหตุการใช้งาน
  • payment_methods กรองวิธีที่ร้านค้าเปิดใช้เฉพาะใบแจ้งหนี้นี้ ไม่ระบุ/null คงทุกวิธีร้านค้า; [] ไม่ถูกต้อง ดูคำใบ้ chain_slug ตัวเล็กและ ticker สินทรัพย์ที่แสดงใน โปรเจกต์ → ร้านค้า → วิธีชำระเงิน รายการ payment-assets ของ API ให้ chain_slug, asset.symbol และ asset.id ใช้ {chain_slug: ethereum, asset_tickers: [USDC, USDT]} สำหรับโทเคน Ethereum ที่ยอมรับ BTC และ PEPE ใช้กฎเดียวกันบนเชนที่เลือก ticker ไม่แยกตัวพิมพ์เล็กใหญ่ จำกัดตามเชน และจับคู่เฉพาะในร้านค้า สัญญาสองตัวที่ยอมรับและมี ticker เดียวกันคืน 400 แทนการเลือกตัวหนึ่ง แม้ตัวหนึ่งยังไม่พร้อม ให้ใช้ asset_ids กรณีนั้น เหรียญหลัก โทเคนแค็ตตาล็อก และโทเคนกำหนดเองใช้กฎเดียวกัน แต่ละ chain/rail ปรากฏได้ครั้งเดียว วิธีสุดท้ายรวมไม่เกิน 64 รายการ Merchant 5.4.0+: ละเว้นตัวเลือกที่ไม่รู้จัก ปิดอยู่ ผิดเชน หรือไม่ยอมรับ หากทั้งชุดไม่มีรายการที่ใช้งานและยอมรับตรงกัน จะใช้ค่าเริ่มต้นร้านค้า มิฉะนั้นใช้เฉพาะรายการที่ตรง การระบุเพียงเชนรวมทุกสินทรัพย์บนเชนที่ใช้งานและยอมรับ วิธีที่เลือกและเปิดใช้ต้องมีกระเป๋าที่ถูกต้อง อะแดปเตอร์สแกนเนอร์ติดตั้ง และอัตราที่เชื่อถือได้ ตั้งแต่ 6.0.6 สแกนเนอร์ไม่พร้อม ช่วงพัก และผลสุขภาพรอ/เก่าไม่บล็อกการสร้างใบแจ้งหนี้หรือนำวิธีบนเชนที่ตั้งไว้ออก ระบบลองตรวจพบใหม่อัตโนมัติ การชำระเสร็จสิ้นยังต้องมีองค์ประชุมผู้ให้บริการและการยืนยัน ติดตาม receive_readiness และรักษาความพร้อมผู้ให้บริการ ใบแจ้งหนี้อาจยังไม่ผ่านการตรวจจนสแกนเนอร์ฟื้น การจัดสรร subaddress Monero และสร้าง BOLT11 Lightning ยังต้องใช้บริการกระเป๋า/โหนดภายนอก ความล้มเหลวคืน error.message พร้อม error.details.payment_methods ที่มี chain_slug, asset_ticker, reason_code และสำหรับวินิจฉัยสแกนเนอร์ มี required_endpoint_role, healthy_endpoints และ required_independent_providers TRON รับประวัติจัดทำดัชนีหรือ API บล็อกเหรียญหลัก raw solidified ที่รองรับ สถานะสุขภาพพื้นฐานอย่างเดียวไม่พิสูจน์ความเข้ากันได้สแกนเนอร์ ความล้มเหลวด้านราคาระบุสินทรัพย์/สกุลเงิน ไม่มีสิ่งใดเปิดสินทรัพย์ที่ไม่ยอมรับหรือเปลี่ยนนโยบายร้านค้า ใน merchant ก่อน 5.4.0 ตัวเลือกที่ระบุชัดแต่ไม่รู้จัก/ไม่ใช้งานจะล้มเหลวแทน วิธีของใบแจ้งหนี้เดิมไม่ขยายเมื่อเปลี่ยนการตั้งค่าร้านค้า ต้องเลือก Lightning แยก การเรียกซ้ำคงวิธีเดิม และเปลี่ยนตัวเลือกด้วย Idempotency-Key เดิมคืน 409
  • checkout_appearance รองรับทุกการตั้งค่าแสดงผลข้างต้น ฟิลด์ที่ไม่ใส่สืบทอดค่า อาร์เรย์แทนที่ และฟิลด์ข้อความซ้อนจะผสาน ออบเจ็กต์ข้อความว่างล้างขอบเขตนั้น ดีไซน์และรูปที่คำนวณได้บันทึกให้ใบแจ้งหนี้นี้โดยไม่แก้ร้านค้า อ่าน appearance จาก JSON หน้าชำระเงินสาธารณะเพื่อตรวจผล คำขอรวมจำกัด 32 KiB และการตั้งค่าหลังคำนวณ 20 KiB
  • เปลี่ยน checkout_appearance ด้วย Idempotency-Key เดิมคืน 409 ให้ลองด้วยไบต์ดิบเหมือนเดิม รูปลักษณ์ไม่เปลี่ยนจำนวนเงิน อัตรา สินทรัพย์ที่ยอมรับ จำนวนการยืนยัน สถานะจริง หรือสิทธิ์ฝัง ไม่มี HTML, CSS, สคริปต์ หรือดึงรูปภายนอก
  • exchange_rate_spread_percent ใช้แทนค่าเริ่มต้นร้านค้าสำหรับใบแจ้งหนี้นี้ ไม่ใส่หรือส่ง null เพื่อสืบทอด หรือส่ง "0" เพื่อปิด ราคาเสนอใบแจ้งหนี้เดิมไม่เปลี่ยน
  • ใช้สเปรดก่อนปัดขึ้น ค่าธรรมเนียมยังอิงจำนวนเงินตราทั่วไปเดิมของใบแจ้งหนี้ ไม่รวมสเปรด
  • ส่ง expected_amount หรือ expected_amount_atomic ที่คืนมาเสมอ การปัดเป็นปัดขึ้น จำกัดด้วยความละเอียดสินทรัพย์ 0.1% ของจำนวน และหนึ่งหน่วยย่อยของเงินตราทั่วไป
  • การลองใหม่ต้องคงข้อมูลรับรอง Idempotency-Key และไบต์เนื้อหาเดิม เปลี่ยนสเปรดด้วยคีย์เดิมคืน 409 idempotency_conflict
  • ตรวจการเรียกซ้ำที่ตรงทุกไบต์ก่อนเตรียมราคาใหม่ DNS callback หรือที่อยู่ ยังตรวจขอบเขตข้อมูลรับรองและสิทธิ์โปรเจกต์/ร้านค้าทุกคำขอ
  • ipn_url ที่มีผลต้องมีซีเคร็ตลงนาม IPN ร้านค้า ปฏิเสธฟิลด์เนื้อหาที่ไม่รู้จัก

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการใบแจ้งหนี้/v1/projects/{project_id}/invoicesอ่านอย่างเดียว

คืนหน้าสรุปใบแจ้งหนี้ในขอบเขตแบบกระชับเรียงใหม่สุดก่อน รวมอีเมลเฉพาะผู้ค้าและฟิลด์ลูกค้าที่ได้จาก metadata ที่รู้จัก ประเมินตัวกรองค้นหา สถานะ และร้านค้าฝั่งเซิร์ฟเวอร์ การตอบกลับมี total และ has_more เพื่อแบ่งหน้าอย่างคาดการณ์ได้

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MERCHANT_API_TOKEN
Acceptแนะนำapplication/json

พารามิเตอร์พาธ

project_idUUIDจำเป็น

โปรเจกต์ที่เปิดใช้และกำหนดให้ข้อมูลรับรอง

พารามิเตอร์ query

store_idUUID

ตัวกรองร้านค้าแบบตรงตัว ไม่บังคับ

statusenum

ไม่บังคับ: new, processing, settled, expired, invalid หรือ cancelled

limitinteger

ไม่บังคับ 1–100 ค่าเริ่มต้น 50

offsetinteger

ไม่บังคับ 0–1,000,000 ค่าเริ่มต้น 0

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/projects/YOUR_PROJECT_ID/invoices?search=order-1042&status=processing&limit=50&offset=0" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Accept: application/json'

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": [
    {
      "id": "2f798f9f-01f2-42f0-9d10-5581d6116b4c",
      "invoice_id": "0a6a98db-d93d-48ee-8c3c-fd45f90c4a50",
      "project_id": "11111111-1111-4111-8111-111111111111",
      "store_id": "22222222-2222-4222-8222-222222222222",
      "source": "api",
      "order_id": "order-1042",
      "email": "ada@example.com",
      "customer_name": "Ada Lovelace · Example GmbH",
      "customer_address": "Example GmbH · 12 Example Street · Suite 2 · 10115 Berlin · Germany (DE) · VAT DE123456789",
      "description": "Annual plan",
      "amount": "49.9",
      "currency": "USD",
      "exchange_rate_spread_percent": "0.5",
      "underpayment_tolerance_percent": "1",
      "status": "processing",
      "amount_status": "paid",
      "timing_status": "on_time",
      "resolution": "automatic",
      "sequence": 3,
      "winning_payment_intent_id": "33333333-3333-4333-8333-333333333333",
      "expires_at": "2026-08-31T18:15:00Z",
      "monitoring_expires_at": "2026-09-07T18:15:00Z",
      "settled_at": null,
      "cancelled_at": null,
      "archived_at": null,
      "created_at": "2026-08-31T18:00:00Z",
      "updated_at": "2026-08-31T18:04:10Z"
    }
  ],
  "pagination": {
    "limit": 50,
    "offset": 0,
    "total": 143,
    "has_more": true
  }
}

ฟิลด์การตอบกลับ

data[]object[]
idUUIDเสมอ

UUID ภายในของใบแจ้งหนี้ อย่าใช้ในพาธรายละเอียดผู้ค้าหรือหน้าชำระเงิน

invoice_idUUIDเสมอ

UUID สาธารณะของใบแจ้งหนี้ที่ใช้ในพาธรายละเอียดผู้ค้าและหน้าชำระเงิน

project_idUUIDเสมอ

โปรเจกต์เจ้าของ

store_idUUIDเสมอ

ร้านค้าเจ้าของ

sourcemanual | apiเสมอ

วิธีที่สร้างใบแจ้งหนี้

order_idstring | nullเสมอ

เลขอ้างอิงคำสั่งซื้อของผู้ค้า

emailstring | nullเสมอ

อีเมลลูกค้าสำหรับผู้ค้าเท่านั้น ไม่คืนผ่านหน้าชำระเงินสาธารณะ

customer_namestring | nullเสมอ

ชื่อแสดงผลที่ได้จาก metadata ส่วนตัว firstname, lastname และ company

customer_addressstring | nullเสมอ

ที่อยู่บรรทัดเดียวในข้อมูลผู้ค้า ซึ่งได้จาก metadata ส่วนตัว company, street, street2, zip, city, country, countryiso2 และ vatid

descriptionstring | nullเสมอ

คำอธิบายที่ลูกค้าเห็น

amountdecimal stringเสมอ

จำนวนใบแจ้งหนี้รูปแบบมาตรฐาน

currencystringเสมอ

รหัสสกุลเงิน/สินทรัพย์ใบแจ้งหนี้ที่ปรับรูปแบบแล้ว

exchange_rate_spread_percentdecimal stringเสมอ

สเปรดราคาเสนอที่ล็อกไว้: ค่า override ตอนสร้าง หรือค่าเริ่มต้นร้านค้าหากไม่ระบุ ใช้ก่อนปัดขึ้นและไม่เปลี่ยนในใบแจ้งหนี้นี้

underpayment_tolerance_percentdecimal stringเสมอ

เปอร์เซ็นต์ยอดขาดที่ยอมรับแบบแก้ไขไม่ได้ เก็บภาพข้อมูลเมื่อสร้างใบแจ้งหนี้

statusinvoice statusเสมอ

new, processing, settled, expired, invalid หรือ cancelled

amount_statusamount statusเสมอ

none, partial, paid หรือ overpaid ใบแจ้งหนี้จำนวนศูนย์ที่อนุญาตชัดเจนชำระเสร็จสิ้นด้วย none และไม่มีวิธีชำระเงิน

timing_statustiming statusเสมอ

on_time หรือ late

resolutionresolutionเสมอ

automatic, manually_settled หรือ manually_invalidated

sequenceintegerเสมอ

ลำดับสถานะใบแจ้งหนี้ที่เพิ่มขึ้นเสมอ เริ่มที่ 1

winning_payment_intent_idUUID | nullเสมอ

วิธีชำระเงินที่ตัดสินผลใบแจ้งหนี้ เมื่อเลือกแล้ว

expires_atRFC 3339 timestampเสมอ

กำหนดหมดอายุราคาเสนอ/ชำระเงิน

monitoring_expires_atRFC 3339 timestampเสมอ

เวลาสิ้นสุดการติดตามล่าช้าที่ช้าที่สุดตามการตั้งค่าในทุกวิธีชำระเงิน

settled_attimestamp | nullเสมอ

เวลาชำระเสร็จสิ้นเมื่อสถานะ settled

cancelled_attimestamp | nullเสมอ

เวลายกเลิกเมื่อสถานะ cancelled

archived_attimestamp | nullเสมอ

เวลาเก็บเข้าคลังเมื่อเก็บเข้าคลังแล้ว

created_atRFC 3339 timestampเสมอ

เวลาสร้าง

updated_atRFC 3339 timestampเสมอ

เวลาอัปเดตสถานะล่าสุด

paginationobject
limitintegerเสมอ

ขนาดหน้าที่มีผล 1–100

offsetintegerเสมอ

offset แถวที่มีผล เริ่มจากศูนย์ 0–1,000,000

totalintegerเสมอ

จำนวนแถวทั้งหมดที่ตรงตัวกรองโปรเจกต์ ร้านค้า สถานะ และค้นหาในภาพข้อมูลหน้านี้

has_morebooleanเสมอ

เป็น true เมื่อ offset บวกจำนวนแถวที่คืนมาต่ำกว่า total

หมายเหตุการใช้งาน
  • เรียง created_at จากมากไปน้อย แล้ว id ภายในจากมากไปน้อย
  • รายการเป็นออบเจ็กต์ InvoiceSummary; email, customer_name และ customer_address เฉพาะผู้ค้า เรียกรายละเอียดเพื่ออ่าน metadata ดิบและ payment intents
  • หน้าถัดไปตั้ง offset เป็น pagination.offset + pagination.limit เฉพาะเมื่อ has_more เป็น true
  • จำนวนและหน้าอ่านจากภาพข้อมูลฐานข้อมูล repeatable-read เดียวกัน การเขียนพร้อมกันจะปรากฏในคำขอภายหลัง

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETดึงข้อมูลใบแจ้งหนี้/v1/projects/{project_id}/invoices/{invoice_id}อ่านอย่างเดียว

คืนรายละเอียดใบแจ้งหนี้ผู้ค้าครบและ URL หน้าชำระเงินที่ใช้งานปัจจุบัน ใช้เส้นทางนี้ตรวจเป็นระยะและกระทบยอด

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MERCHANT_API_TOKEN
Acceptแนะนำapplication/json

พารามิเตอร์พาธ

project_idUUIDจำเป็น

โปรเจกต์ที่เปิดใช้และกำหนดให้ข้อมูลรับรอง

invoice_idUUIDจำเป็น

invoice_id ที่คืนตอนสร้าง/แสดงรายการ ไม่ใช่ id ภายใน

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/projects/YOUR_PROJECT_ID/invoices/YOUR_PUBLIC_INVOICE_ID" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Accept: application/json'

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {
    "id": "2f798f9f-01f2-42f0-9d10-5581d6116b4c",
    "invoice_id": "0a6a98db-d93d-48ee-8c3c-fd45f90c4a50",
    "project_id": "11111111-1111-4111-8111-111111111111",
    "store_id": "22222222-2222-4222-8222-222222222222",
    "source": "api",
    "order_id": "order-1042",
    "email": "ada@example.com",
    "customer_name": "Ada Lovelace · Example GmbH",
    "customer_address": "Example GmbH · 12 Example Street · Suite 2 · 10115 Berlin · Germany (DE) · VAT DE123456789",
    "description": "Annual plan",
    "amount": "49.9",
    "currency": "USD",
    "exchange_rate_spread_percent": "0.5",
    "underpayment_tolerance_percent": "1",
    "status": "settled",
    "amount_status": "paid",
    "timing_status": "on_time",
    "resolution": "automatic",
    "sequence": 4,
    "winning_payment_intent_id": "33333333-3333-4333-8333-333333333333",
    "expires_at": "2026-08-31T18:15:00Z",
    "monitoring_expires_at": "2026-09-07T18:15:00Z",
    "settled_at": "2026-08-31T18:05:00Z",
    "cancelled_at": null,
    "archived_at": null,
    "created_at": "2026-08-31T18:00:00Z",
    "updated_at": "2026-08-31T18:05:00Z",
    "ipn_url": "https://merchant.example/wholly/ipn",
    "redirect_url": "https://merchant.example/orders/1042",
    "cancel_url": "https://merchant.example/cart",
    "redirect_automatically": true,
    "checkout_language": "en",
    "metadata": { "cart_id": "cart-681", "firstname": "Ada", "lastname": "Lovelace", "street": "12 Example Street", "street2": "Suite 2", "zip": "10115", "city": "Berlin", "country": "Germany", "countryiso2": "DE", "company": "Example GmbH", "vatid": "DE123456789" },
    "payment_intents": [
      {
        "id": "33333333-3333-4333-8333-333333333333",
        "asset_id": "10000000-0000-4000-8000-000000000001",
        "asset_key": "bip122:000000000019d6689c085ae165831e93/slip44:0",
        "chain_slug": "bitcoin",
        "network": "mainnet",
        "caip_network_id": "bip122:000000000019d6689c085ae165831e93",
        "caip_asset_id": "bip122:000000000019d6689c085ae165831e93/slip44:0",
        "symbol": "BTC",
        "asset_decimals": 8,
        "status": "paid",
        "finality_mode": "confirmations",
        "required_confirmations": 1,
        "quote_rate": "0.000009218",
        "quote_details": null,
        "expected_amount": "0.00046",
        "expected_amount_atomic": "46000",
        "minimum_payment_amount": "0.0004554",
        "minimum_payment_amount_atomic": "45540",
        "received_amount": "0.0004554",
        "received_amount_atomic": "45540",
        "confirmed_amount": "0.0004554",
        "confirmed_amount_atomic": "45540",
        "destination_address": "bc1q…example",
        "destination_tag": null,
        "derivation_index": 42,
        "quote_expires_at": "2026-08-31T18:15:00Z",
        "monitoring_expires_at": "2026-09-07T18:15:00Z",
        "next_check_at": null,
        "last_checked_at": "2026-08-31T18:05:00Z",
        "last_chain_height": 912345,
        "last_anchor_hash": "000000000000000000example",
        "last_monitor_error": null,
        "first_payment_at": "2026-08-31T18:03:00Z",
        "fully_paid_at": "2026-08-31T18:03:00Z",
        "finalized_at": "2026-08-31T18:05:00Z"
      }
    ]
  },
  "links": {
    "checkout": "https://pay.example.com/invoice/0a6a98db-d93d-48ee-8c3c-fd45f90c4a50"
  }
}

ฟิลด์การตอบกลับ

dataobject
idUUIDเสมอ

UUID ภายในของใบแจ้งหนี้ อย่าใช้ในพาธรายละเอียดผู้ค้าหรือหน้าชำระเงิน

invoice_idUUIDเสมอ

UUID สาธารณะของใบแจ้งหนี้ที่ใช้ในพาธรายละเอียดผู้ค้าและหน้าชำระเงิน

project_idUUIDเสมอ

โปรเจกต์เจ้าของ

store_idUUIDเสมอ

ร้านค้าเจ้าของ

sourcemanual | apiเสมอ

วิธีที่สร้างใบแจ้งหนี้

order_idstring | nullเสมอ

เลขอ้างอิงคำสั่งซื้อของผู้ค้า

emailstring | nullเสมอ

อีเมลลูกค้าสำหรับผู้ค้าเท่านั้น ไม่คืนผ่านหน้าชำระเงินสาธารณะ

customer_namestring | nullเสมอ

ชื่อแสดงผลที่ได้จาก metadata ส่วนตัว firstname, lastname และ company

customer_addressstring | nullเสมอ

ที่อยู่บรรทัดเดียวในข้อมูลผู้ค้า ซึ่งได้จาก metadata ส่วนตัว company, street, street2, zip, city, country, countryiso2 และ vatid

descriptionstring | nullเสมอ

คำอธิบายที่ลูกค้าเห็น

amountdecimal stringเสมอ

จำนวนใบแจ้งหนี้รูปแบบมาตรฐาน

currencystringเสมอ

รหัสสกุลเงิน/สินทรัพย์ใบแจ้งหนี้ที่ปรับรูปแบบแล้ว

exchange_rate_spread_percentdecimal stringเสมอ

สเปรดราคาเสนอที่ล็อกไว้: ค่า override ตอนสร้าง หรือค่าเริ่มต้นร้านค้าหากไม่ระบุ ใช้ก่อนปัดขึ้นและไม่เปลี่ยนในใบแจ้งหนี้นี้

underpayment_tolerance_percentdecimal stringเสมอ

เปอร์เซ็นต์ยอดขาดที่ยอมรับแบบแก้ไขไม่ได้ เก็บภาพข้อมูลเมื่อสร้างใบแจ้งหนี้

statusinvoice statusเสมอ

new, processing, settled, expired, invalid หรือ cancelled

amount_statusamount statusเสมอ

none, partial, paid หรือ overpaid ใบแจ้งหนี้จำนวนศูนย์ที่อนุญาตชัดเจนชำระเสร็จสิ้นด้วย none และไม่มีวิธีชำระเงิน

timing_statustiming statusเสมอ

on_time หรือ late

resolutionresolutionเสมอ

automatic, manually_settled หรือ manually_invalidated

sequenceintegerเสมอ

ลำดับสถานะใบแจ้งหนี้ที่เพิ่มขึ้นเสมอ เริ่มที่ 1

winning_payment_intent_idUUID | nullเสมอ

วิธีชำระเงินที่ตัดสินผลใบแจ้งหนี้ เมื่อเลือกแล้ว

expires_atRFC 3339 timestampเสมอ

กำหนดหมดอายุราคาเสนอ/ชำระเงิน

monitoring_expires_atRFC 3339 timestampเสมอ

เวลาสิ้นสุดการติดตามล่าช้าที่ช้าที่สุดตามการตั้งค่าในทุกวิธีชำระเงิน

settled_attimestamp | nullเสมอ

เวลาชำระเสร็จสิ้นเมื่อสถานะ settled

cancelled_attimestamp | nullเสมอ

เวลายกเลิกเมื่อสถานะ cancelled

archived_attimestamp | nullเสมอ

เวลาเก็บเข้าคลังเมื่อเก็บเข้าคลังแล้ว

created_atRFC 3339 timestampเสมอ

เวลาสร้าง

updated_atRFC 3339 timestampเสมอ

เวลาอัปเดตสถานะล่าสุด

ipn_urlstring | nullเสมอ

ปลายทาง IPN ที่มีผลต่อใบแจ้งหนี้ คืนเฉพาะผู้ค้า ไม่รวมในหน้าชำระเงินสาธารณะ

redirect_urlstring | nullเสมอ

URL สำเร็จที่มีผลและใช้หลังชำระเสร็จสิ้น

cancel_urlstring | nullเสมอ

URL ส่งกลับที่มีผลเมื่อหน้าชำระเงินจบโดยไม่ชำระสำเร็จ

redirect_automaticallybooleanเสมอ

หน้าชำระเงินควรเปลี่ยนเส้นทางอัตโนมัติหลังสำเร็จหรือไม่

checkout_languagestringเสมอ

แท็กภาษาหน้าชำระเงินที่มีผล

metadataobjectเสมอ
metadata ผู้ค้า ไม่คืนผ่านหน้าชำระเงินสาธารณะ เครื่องมือชำระเงินในคอนโซลเพิ่มข้อมูลที่มา payment_tool (id, kind, title, pricing, requested_amount, request_id) ซึ่งไม่พิสูจน์การชำระเงิน ยืนยัน callback และดำเนินการ invoice.settled ครั้งเดียวต่อ invoice_idรายละเอียด

metadata ผู้ค้า ไม่คืนผ่านหน้าชำระเงินสาธารณะ เครื่องมือชำระเงินในคอนโซลเพิ่มข้อมูลที่มา payment_tool (id, kind, title, pricing, requested_amount, request_id) ซึ่งไม่พิสูจน์การชำระเงิน ยืนยัน callback และดำเนินการ invoice.settled ครั้งเดียวต่อ invoice_id

cart_idstring
firstnamestring
lastnamestring
streetstring
street2string
zipstring
citystring
countrystring
countryiso2string
companystring
vatidstring
payment_intents[]object[]เสมอ

วิธีชำระเงินที่เสนอราคาและสถานะติดตาม

idUUIDเสมอ

ตัวระบุ payment intent ใช้เป็น intent_id ของ QR หน้าชำระเงินด้วย

payment_railonchain | lightningเสมอ
ช่องทางของใบแจ้งหนี้ Bitcoin บนเชนและ Lightning อาจใช้ asset_id เดียวกัน ให้ใช้ intent id ร่วมกับฟิลด์นี้ ไม่ใช่สัญลักษณ์อย่างเดียว ต่างจาก payment_rail ของสแกนเนอร์ในแค็ตตาล็อกสินทรัพย์รายละเอียด

ช่องทางของใบแจ้งหนี้ Bitcoin บนเชนและ Lightning อาจใช้ asset_id เดียวกัน ให้ใช้ intent id ร่วมกับฟิลด์นี้ ไม่ใช่สัญลักษณ์อย่างเดียว ต่างจาก payment_rail ของสแกนเนอร์ในแค็ตตาล็อกสินทรัพย์

bolt11string | nullเสมอ

คำขอชำระ Lightning มิฉะนั้นเป็น null ชำระคำขอนี้ด้วยกระเป๋า Lightning ห้ามส่งเงินบนเชนไปยัง payment hash

asset_idUUIDเสมอ

ตัวระบุสินทรัพย์รับชำระที่ตั้งค่าไว้

asset_keystringเสมอ

คีย์สินทรัพย์รูปแบบ CAIP มาตรฐาน

chain_slugstringเสมอ

ตัวระบุเชน Wholly Crypto

networkstringเสมอ

เครือข่ายที่ตั้งค่า ปัจจุบันเป็น mainnet สำหรับสินทรัพย์รับชำระที่รองรับ

caip_network_idstringเสมอ

ตัวระบุเครือข่าย CAIP-2 มาตรฐาน

caip_asset_idstring | nullเสมอ

ตัวระบุ CAIP-19 มาตรฐานเมื่อมีการลงทะเบียน

symbolstringเสมอ

สัญลักษณ์สินทรัพย์

asset_decimalsintegerเสมอ

ความละเอียดหน่วยย่อย Lightning BTC ใช้ 11 (millisatoshis) ไม่ใช่ 8 ของ Bitcoin บนเชน ราคาเสนอเป็น satoshi เต็มหน่วย ยอดรับคงความละเอียด millisatoshi

statusintent statusเสมอ

pending, partial, paid, overpaid, expired หรือ invalid

finality_modeconfirmations | finalizedเสมอ

นโยบายความเป็นที่สุด

required_confirmationsintegerเสมอ

จำนวนการยืนยันที่ต้องการเมื่อใช้ได้

quote_ratedecimal stringเสมอ

หน่วยสินทรัพย์ต่อหนึ่งหน่วยสกุลเงินใบแจ้งหนี้ รวมสเปรดที่ล็อกไว้ เช่น 1.02 USDC ต่อ USD ไม่ใช่อัตรากลับด้าน

quote_detailsobject | nullเสมอ
ที่มาราคาเสนอที่ล็อกไว้: reference_rate ก่อนสเปรด, unrounded_payment_amount, rounding_adjustment, pricing_provider, asset_provider, pricing_fetched_at และ asset_fetched_at เป็น null ในใบแจ้งหนี้เก่า ไม่สร้างค่าย้อนหลังขึ้นเองรายละเอียด

ที่มาราคาเสนอที่ล็อกไว้: reference_rate ก่อนสเปรด, unrounded_payment_amount, rounding_adjustment, pricing_provider, asset_provider, pricing_fetched_at และ asset_fetched_at เป็น null ในใบแจ้งหนี้เก่า ไม่สร้างค่าย้อนหลังขึ้นเอง

expected_amountdecimal stringเสมอ
จำนวนสินทรัพย์ที่แน่นอนและล็อกไว้ให้ชำระหลังสเปรดและปัดขึ้น ตั้งแต่ 4.1.1 stablecoin อิงเงินตราทั่วไปที่รู้จักและตรวจสอบแล้ว (เช่น USDC, USDT, DAI, USDS, EURC) ปัดขึ้นให้มีทศนิยมไม่เกินสองตำแหน่ง; 1.321 เป็น 1.33 ไม่ใช่ 1.32 นี่คือจำนวนที่คาดหวังแม้ยอมรับส่วนต่างศูนย์ สินทรัพย์อื่นใช้ความละเอียดปรับตามค่า ไม่คำนวณราคาใหม่ให้ใบแจ้งหนี้เดิมรายละเอียด

จำนวนสินทรัพย์ที่แน่นอนและล็อกไว้ให้ชำระหลังสเปรดและปัดขึ้น ตั้งแต่ 4.1.1 stablecoin อิงเงินตราทั่วไปที่รู้จักและตรวจสอบแล้ว (เช่น USDC, USDT, DAI, USDS, EURC) ปัดขึ้นให้มีทศนิยมไม่เกินสองตำแหน่ง; 1.321 เป็น 1.33 ไม่ใช่ 1.32 นี่คือจำนวนที่คาดหวังแม้ยอมรับส่วนต่างศูนย์ สินทรัพย์อื่นใช้ความละเอียดปรับตามค่า ไม่คำนวณราคาใหม่ให้ใบแจ้งหนี้เดิม

expected_amount_atomicinteger stringเสมอ

จำนวนที่แน่นอนในหน่วยเล็กที่สุดของสินทรัพย์

minimum_payment_amountdecimal stringเสมอ

จำนวนต่ำสุดที่ยอมรับว่าชำระแล้วหลังใช้ส่วนต่างใบแจ้งหนี้

minimum_payment_amount_atomicinteger stringเสมอ

เกณฑ์ยอมรับที่แน่นอนในหน่วยเล็กที่สุดของสินทรัพย์

received_amountdecimal stringเสมอ

จำนวนที่ตรวจพบ

received_amount_atomicinteger stringเสมอ

จำนวนหน่วยย่อยที่ตรวจพบ

confirmed_amountdecimal stringเสมอ

จำนวนที่ยืนยัน/เป็นที่สุด

confirmed_amount_atomicinteger stringเสมอ

จำนวนหน่วยย่อยที่ยืนยัน/เป็นที่สุด

destination_addressstringเสมอ

ที่อยู่รับเงินบนเชน หรือ payment hash 64 อักขระสำหรับ Lightning ใช้ bolt11 ชำระ Lightning แฮชไม่ใช่ที่อยู่ Bitcoin

destination_tagstring | nullเสมอ

เลขอ้างอิงชำระเงินสาธารณะที่จำเป็นเมื่อช่องทางใช้: destination tag ของ XRP, memo ID ของ Stellar หรือคอมเมนต์ใบแจ้งหนี้ TON เป็น null สำหรับช่องทางที่ใช้ที่อยู่ไม่ซ้ำ

derivation_indexintegerเสมอ

ดัชนีลูกของกระเป๋าที่สำรองไว้ เฉพาะรายละเอียดผู้ค้า

quote_expires_atRFC 3339 timestampเสมอ

เวลาหมดอายุราคาเสนอ

monitoring_expires_atRFC 3339 timestampเสมอ

กำหนดสิ้นสุดการติดตามล่าช้าสำหรับวิธีนี้

next_check_attimestamp | nullเสมอ

กำหนดตรวจเชนครั้งถัดไป

last_checked_attimestamp | nullเสมอ

การตรวจเชนล่าสุด

last_chain_heightinteger | nullเสมอ

ความสูงล่าสุดที่เชื่อถือได้ซึ่งตัวติดตามพบ

last_anchor_hashstring | nullเสมอ

จุดอ้างอิง/แฮชบล็อกล่าสุดของตัวติดตาม

last_monitor_errorstring | nullเสมอ

ข้อมูลวินิจฉัยการติดตามที่ปลอดภัยสำหรับผู้ดำเนินระบบ

first_payment_attimestamp | nullเสมอ

เวลาตรวจพบการชำระครั้งแรก

fully_paid_attimestamp | nullเสมอ

เวลาที่ถึงจำนวนขั้นต่ำที่ยอมรับเป็นครั้งแรก

finalized_attimestamp | nullเสมอ

เวลาที่การชำระผ่านนโยบายความเป็นที่สุด

หมายเหตุการใช้งาน
  • การค้นในขอบเขตจงใจคืน invoice_not_found เมื่อ ID สาธารณะไม่อยู่ในโปรเจกต์ที่ได้รับอนุญาต
  • links.checkout ใช้ ร้านค้า → พื้นฐาน → โดเมนร้านค้า: โฮสต์เนม pay ที่เปิดของร้านค้านี้ก่อน แล้วตัวเลือกของร้านค้าเริ่มต้น แล้วโดเมนหลักระบบ ละเว้นโฮสต์ที่เลิกใช้/ร่างหรือผิดบริการ ใช้กับการตอบสร้างและ MCP ด้วย โดยคำนวณลิงก์ขณะตอบ รวมการเรียกซ้ำแบบ idempotent ลิงก์ callback ที่ลงนามตรึงเมื่อสร้างเหตุการณ์ ไม่เขียนใหม่ตอนลองซ้ำ ค่าที่เลือกเหล่านี้ใช้สร้างลิงก์เท่านั้น ไม่เปลี่ยนเส้นทางทราฟฟิกหรือข้อจำกัด IP

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETแสดงรายการชำระเงินของใบแจ้งหนี้/v1/projects/{project_id}/invoices/{invoice_id}/paymentsอ่านอย่างเดียว

ประวัติการโอนปัจจุบันทั้งหมด รวมข้อมูลที่ทำให้ไม่ถูกต้อง ใช้เมื่อ callback ระบุ payments_truncated นี่คือสถานะปัจจุบัน ไม่ใช่การสร้างเหตุการณ์เก่าขึ้นใหม่

การยืนยันตัวตนและเฮดเดอร์
เฮดเดอร์การระบุค่ากฎ
Authorizationจำเป็นBearer YOUR_MERCHANT_API_TOKEN
Acceptแนะนำapplication/json

พารามิเตอร์พาธ

project_idUUIDจำเป็น

โปรเจกต์ที่กำหนดให้ข้อมูลรับรองนี้

invoice_idUUIDจำเป็น

invoice_id สาธารณะที่คืนเมื่อสร้าง

พารามิเตอร์ query

payment_method_idUUIDไม่บังคับ

จำกัดไว้ที่วิธีชำระใบแจ้งหนี้เดียว

limitinteger

1–100 ค่าเริ่มต้น 25

offsetinteger

0–1,000,000 ค่าเริ่มต้น 0

คำขอ

: "${WHOLLY_TOKEN:?Set WHOLLY_TOKEN to your server-side API token}"
curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://api.example.com/v1/projects/YOUR_PROJECT_ID/invoices/YOUR_PUBLIC_INVOICE_ID/payments?limit=25&offset=0" \
  --header "Authorization: Bearer $WHOLLY_TOKEN" \
  --header 'Accept: application/json'

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "invoice_id": "11111111-2222-4333-8444-555555555555",
  "data": [{
    "payment_id": "44444444-4444-4444-8444-444444444444",
    "payment_method_id": "33333333-3333-4333-8333-333333333333",
    "transaction_id": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
    "payment_hash": null,
    "event_index": 12,
    "payment_rail": "onchain",
    "chain_slug": "ethereum",
    "network": "mainnet",
    "asset_id": "55555555-5555-4555-8555-555555555555",
    "asset_key": "eip155:1/erc20:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
    "caip_asset_id": "eip155:1/erc20:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
    "symbol": "USDC",
    "asset_decimals": 6,
    "amount": "58.17342",
    "amount_atomic": "58173420",
    "status": "final",
    "counts_towards_received": true,
    "confirmations": 2,
    "block_height": 25975377,
    "observed_at": "2026-09-14T12:03:00Z",
    "chain_time": "2026-09-14T12:02:48Z",
    "finalized_at": "2026-09-14T12:04:00Z",
    "explorer_name": "Etherscan",
    "explorer_url": "https://etherscan.io/tx/0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
  }],
  "pagination": {"limit": 25, "offset": 0, "total": 1, "has_more": false}
}

ฟิลด์การตอบกลับ

invoice_idstring
data[]object[]
payment_idstring
payment_method_idstring
transaction_idstring
payment_hashJSON | null
event_indexinteger
payment_railstring
chain_slugstring
networkstring
asset_idstring
asset_keystring
caip_asset_idstring
symbolstring
asset_decimalsinteger
amountstring
amount_atomicstring
statusstring
counts_towards_receivedboolean
confirmationsinteger
block_heightinteger
observed_atstring
chain_timestring
finalized_atstring
explorer_namestring
explorer_urlstring
paginationobject
limitinteger
offsetinteger
totalinteger
has_moreboolean
หมายเหตุการใช้งาน
  • ข้อมูลที่ตรวจพบคือ log โทเคน เอาต์พุต UTXO หรือการโอนช่องทางอื่น ไม่จำเป็นต้องเป็นแฮชธุรกรรมไม่ซ้ำ ตัดซ้ำด้วย payment_id; transaction_id ร่วมกับ event_index ระบุการโอนบนเชน
  • status เป็น detected, confirming, final, reorged, replaced หรือ invalid เฉพาะรายการที่ counts_towards_received เท่านั้นนับในยอดรับ ห้ามบวกยอดข้ามสินทรัพย์
  • ระเบียน Lightning ใช้ payment_hash โดย transaction_id, confirmations และลิงก์ explorer เป็น null ความละเอียด BTC คือ 11 (millisatoshis) ไม่เปิดเผย preimage, BOLT11 หรือความลับกระเป๋า
  • เรียง observed_at จากมากไปน้อย แล้ว payment_id จากมากไปน้อย จำนวนและหน้าใช้ภาพข้อมูล repeatable-read เดียวกัน หน้าภายหลังอาจเปลี่ยนเมื่อมีการชำระเข้า ตัดซ้ำด้วย payment_id เมื่อแบ่งหน้าใบแจ้งหนี้ที่ยังเคลื่อนไหว
  • ใช้ขอบเขตโปรเจกต์อ่านอย่างเดียว ข้อจำกัด IP และอัตราต่อข้อมูลรับรองเดิม ห้ามตามลิงก์จาก callback พร้อมโทเคน เว้นแต่ origin ตรงกับโฮสต์ API ที่คุณตั้งไว้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETโครงหน้าชำระเงิน/สาธารณะ

รากโฮสต์หน้าชำระเงินที่จัดการไว้ ให้แอปหน้าชำระเงินโดยไม่เลือกใบแจ้งหนี้ โดยปกติการเชื่อมต่อลูกค้าควรใช้ links.checkout แทน

การยืนยันตัวตนและเฮดเดอร์

สาธารณะ

คำขอ

curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://pay.example.com/" \
  --output 'checkout.html'

การตอบกลับ 200 text/html

ตัวอย่างการตอบกลับ
<!doctype html>
<!-- Hosted Wholly Crypto checkout shell -->
หมายเหตุการใช้งาน
  • ไม่ต้องใช้ bearer token
  • ขอบเครือข่ายหน้าชำระเงินที่จัดการอนุญาต GET/HEAD และปฏิเสธเมธอดอื่น

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETหน้าชำระเงินที่โฮสต์ไว้/invoice/{invoice_id}สาธารณะ

หน้าชำระเงิน HTML สำหรับลูกค้า หน้าดึง JSON ที่เปิดเผยได้อย่างปลอดภัยจากโฮสต์หน้าชำระเงินเดียวกัน ไม่อนุญาตฝัง เว้นแต่ร้านค้าเปิดและอนุญาต HTTPS origin ของหน้าหลักอย่างชัดเจน

การยืนยันตัวตนและเฮดเดอร์

สาธารณะ

พารามิเตอร์พาธ

invoice_idUUIDจำเป็น

UUID สาธารณะของใบแจ้งหนี้จาก API ผู้ค้า

คำขอ

curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://pay.example.com/invoice/YOUR_PUBLIC_INVOICE_ID" \
  --output 'checkout.html'

การตอบกลับ 200 text/html

ตัวอย่างการตอบกลับ
<!doctype html>
<!-- Hosted Wholly Crypto checkout application -->
หมายเหตุการใช้งาน
  • ไม่รับและไม่ต้องใช้ bearer token
  • ตัวโครง HTML คืน 200 แม้ไม่มีใบแจ้งหนี้ จากนั้นคำขอ JSON หน้าชำระเงินจะได้รับ invoice_not_found
  • การตอบกลับเป็น no-store, noindex และมี CSP frame-ancestors เฉพาะใบแจ้งหนี้
  • โปรเจกต์/ร้านค้าปิดหรือใบแจ้งหนี้ไม่รู้จักไม่เปิดเผยข้อมูลหน้าชำระเงิน

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETข้อมูลใบแจ้งหนี้ที่เปิดเผยบนหน้าชำระเงินได้อย่างปลอดภัย/checkout-api/invoices/{invoice_id}สาธารณะ

คืนเฉพาะฟิลด์ที่ใช้แสดงหน้าชำระเงิน จงใจละเว้น ID ภายใน อีเมลลูกค้าและฟิลด์ที่อยู่ที่สร้างจากข้อมูล IPN URL, metadata ผู้ค้า ID กระเป๋า พาธสร้างคีย์ และข้อมูลวินิจฉัยตัวติดตาม

การยืนยันตัวตนและเฮดเดอร์

สาธารณะ

พารามิเตอร์พาธ

invoice_idUUIDจำเป็น

UUID สาธารณะของใบแจ้งหนี้

คำขอ

curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://pay.example.com/checkout-api/invoices/YOUR_PUBLIC_INVOICE_ID" \
  --header 'Accept: application/json'

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {
    "invoice_id": "0a6a98db-d93d-48ee-8c3c-fd45f90c4a50",
    "order_id": "order-1042",
    "description": "Annual plan",
    "amount": "49.9",
    "currency": "USD",
    "exchange_rate_spread_percent": "0.5",
    "underpayment_tolerance_percent": "1",
    "status": "processing",
    "amount_status": "partial",
    "timing_status": "on_time",
    "sequence": 3,
    "active_payment_method_id": "33333333-3333-4333-8333-333333333333",
    "payment_method_locked": true,
    "server_time": "2026-08-31T18:10:00Z",
    "expires_at": "2026-08-31T18:15:00Z",
    "expires_in_seconds": 300,
    "payment_open": true,
    "redirect_url": "https://merchant.example/orders/1042",
    "cancel_url": "https://merchant.example/cart",
    "redirect_automatically": true,
    "checkout_language": "en",
    "project": {
      "name": "Example project",
      "checkout_title": "Complete your payment",
      "checkout_description": "Send the exact amount shown.",
      "theme": "system",
      "accent_color": "#42e39b",
      "logo_url": "/checkout-api/invoices/…/logo/…/image.png"
    },
    "store": { "name": "Online shop" },
    "payment_methods": [
      {
        "id": "33333333-3333-4333-8333-333333333333",
        "asset_key": "bip122:000000000019d6689c085ae165831e93/slip44:0",
        "chain_slug": "bitcoin",
        "chain_name": "Bitcoin",
        "network": "mainnet",
        "caip_network_id": "bip122:000000000019d6689c085ae165831e93",
        "caip_asset_id": "bip122:000000000019d6689c085ae165831e93/slip44:0",
        "asset_name": "Bitcoin",
        "symbol": "BTC",
        "asset_icon_url": "/assets/coingecko/bitcoin.png",
        "asset_kind": "native",
        "contract_address": null,
        "token_standard": null,
        "asset_decimals": 8,
        "status": "partial",
        "payable": true,
        "finality_mode": "confirmations",
        "required_confirmations": 1,
        "expected_amount": "0.00046",
        "expected_amount_atomic": "46000",
        "minimum_payment_amount": "0.0004554",
        "minimum_payment_amount_atomic": "45540",
        "received_amount": "0.0002",
        "received_amount_atomic": "20000",
        "remaining_amount": "0.0002554",
        "remaining_amount_atomic": "25540",
        "confirmed_amount": "0",
        "confirmed_amount_atomic": "0",
        "destination_address": "bc1q…example",
        "destination_tag": null,
        "quote_expires_at": "2026-08-31T18:15:00Z",
        "payment_uri": "bitcoin:bc1q…example?amount=0.00026",
        "qr_url": "/checkout-api/invoices/…/payment-methods/…/qr.svg?sequence=3&amount_atomic=26000",
        "address_explorer_name": "mempool.space",
        "address_explorer_url": "https://mempool.space/address/…",
        "transaction_count": 0,
        "transactions_truncated": false,
        "transactions": []
      }
    ]
  }
}

ฟิลด์การตอบกลับ

dataobject
invoice_idUUIDเสมอ

UUID สาธารณะของใบแจ้งหนี้

order_idstring | nullเสมอ

เลขอ้างอิงคำสั่งซื้อของผู้ค้า

descriptionstring | nullเสมอ

คำอธิบายที่ลูกค้าเห็น

amountdecimal stringเสมอ

จำนวนเงินใบแจ้งหนี้

currencystringเสมอ

สกุลเงินใบแจ้งหนี้

exchange_rate_spread_percentdecimal stringเสมอ

สเปรดราคาเสนอที่มีผลและล็อกเมื่อสร้าง รวม override รายใบแจ้งหนี้

underpayment_tolerance_percentdecimal stringเสมอ

เปอร์เซ็นต์ยอดขาดที่ใบแจ้งหนี้นี้ยอมรับ

statusinvoice statusเสมอ

สถานะใบแจ้งหนี้ปัจจุบัน

amount_statusamount statusเสมอ

none, partial, paid หรือ overpaid ใบแจ้งหนี้จำนวนศูนย์ที่อนุญาตชัดเจนชำระเสร็จสิ้นด้วย none และไม่มีวิธีชำระเงิน

timing_statustiming statusเสมอ

on_time หรือ late

sequenceintegerเสมอ

ลำดับสถานะปัจจุบัน

active_payment_method_idUUID | nullเสมอ

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

payment_method_lockedbooleanเสมอ

เป็น true หลังการชำระที่ถูกต้องเลือก active_payment_method_id

server_timeRFC 3339 timestampเสมอ

นาฬิกาเซิร์ฟเวอร์ที่บันทึกสำหรับการตอบนี้ ใช้ร่วมกับ expires_at เพื่อเลี่ยงเวลาคลาดเคลื่อนอุปกรณ์ลูกค้า

expires_atRFC 3339 timestampเสมอ

กำหนดใบแจ้งหนี้

expires_in_secondsintegerเสมอ

วินาทีเต็มที่เหลือ ณ server_time ปัดขึ้นและจำกัดค่าต่ำสุดที่ศูนย์

payment_openbooleanเสมอ

เป็น true เฉพาะเมื่อใบแจ้งหนี้ new หรือ processing ยังไม่ถึงกำหนด และมีอย่างน้อยหนึ่งวิธีที่ชำระได้พร้อมยอดเหลือ

redirect_urlstring | nullเสมอ

ปลายทางส่งลูกค้ากลับหลังชำระเสร็จสิ้นสำเร็จ

cancel_urlstring | nullเสมอ

ปลายทางส่งลูกค้ากลับเมื่อออกโดยยังไม่ชำระเสร็จสิ้นสำเร็จ

redirect_automaticallybooleanเสมอ

นโยบายเปลี่ยนเส้นทางอัตโนมัติ

checkout_languagestringเสมอ

ภาษาหน้าชำระเงิน

projectobjectเสมอ

name, checkout_title, checkout_description, theme, accent_color และ logo_url

namestring
checkout_titlestring
checkout_descriptionstring
themestring
accent_colorstring
logo_urlstring
storeobjectเสมอ

ชื่อร้านค้าสาธารณะ

namestring
appearanceobjectเสมอ

การแสดงผลที่มีผล: override รายใบแจ้งหนี้ที่ตรึงไว้หากส่งมา มิฉะนั้นดีไซน์ร้านค้าปัจจุบัน ไม่เปลี่ยนฟิลด์การเงินหรือคำเตือนความปลอดภัย

inherit_default_storebooleanเสมอ

เป็น true เมื่อร้านค้าเริ่มต้นโปรเจกต์ให้รูปลักษณ์นี้ เป็น false สำหรับร้านค้าอิสระและ override ใบแจ้งหนี้ที่ตรึงไว้

invoice_overridebooleanเสมอ

เป็น true เมื่อส่ง checkout_appearance ตอนสร้างใบแจ้งหนี้ ไม่ใส่/null คง false

titlestringเสมอ

หัวข้อผู้ค้า ข้อความบน และข้อความล่างแบบธรรมดา intro แทน customer_message โดยคงข้อความเก่าที่เก็บไว้ ห้ามประมวลผลเป็นมาร์กอัป

introstringเสมอ

หัวข้อผู้ค้า ข้อความบน และข้อความล่างแบบธรรมดา intro แทน customer_message โดยคงข้อความเก่าที่เก็บไว้ ห้ามประมวลผลเป็นมาร์กอัป

outrostringเสมอ

หัวข้อผู้ค้า ข้อความบน และข้อความล่างแบบธรรมดา intro แทน customer_message โดยคงข้อความเก่าที่เก็บไว้ ห้ามประมวลผลเป็นมาร์กอัป

intro_font_sizeintegerเสมอ

ขนาดตัวอักษรพิกเซล: 12, 14, 16, 18, 20 หรือ 24

outro_font_sizeintegerเสมอ

ขนาดตัวอักษรพิกเซล: 12, 14, 16, 18, 20 หรือ 24

customer_messagestringเสมอ

ชื่อแทน intro เพื่อความเข้ากันได้ซึ่งเลิกแนะนำแล้ว ใช้ intro ในการเชื่อมต่อใหม่

themesystem | light | dim | darkเสมอ

ตามค่าที่อุปกรณ์ลูกค้าเลือกหรือใช้ธีมคงที่

accent_colorstringเสมอ

สีรูปแบบ #RRGGBB เคร่งครัด สีไม่บังคับว่างเพื่อใช้ค่าอัตโนมัติ คำนวณคอนทราสต์สีข้อความ

background_colorstringเสมอ

สีรูปแบบ #RRGGBB เคร่งครัด สีไม่บังคับว่างเพื่อใช้ค่าอัตโนมัติ คำนวณคอนทราสต์สีข้อความ

card_colorstringเสมอ

สีรูปแบบ #RRGGBB เคร่งครัด สีไม่บังคับว่างเพื่อใช้ค่าอัตโนมัติ คำนวณคอนทราสต์สีข้อความ

button_colorstringเสมอ

สีรูปแบบ #RRGGBB เคร่งครัด สีไม่บังคับว่างเพื่อใช้ค่าอัตโนมัติ คำนวณคอนทราสต์สีข้อความ

logo_sizestringเสมอ

small, medium หรือ large; left หรือ center รูปย่อให้พอดี ไม่ครอบตัด

logo_alignmentstringเสมอ

small, medium หรือ large; left หรือ center รูปย่อให้พอดี ไม่ครอบตัด

imagesobjectเสมอ

URL logo_light, logo_dark และ favicon แบบไม่บังคับ: รูป PNG ที่ปรับรูปแบบแล้วใน origin เดียวกันและจำกัดขอบเขต

show_order_idbooleanเสมอ

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

show_descriptionbooleanเสมอ

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

details_expandedbooleanเสมอ

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

show_project_namebooleanเสมอ

Merchant 5.6.0+: การแสดงชื่อส่วนหัว ทั้งคู่มีค่าเริ่มต้น true ตัวระบุโปรเจกต์/ร้านค้ายังมีใน JSON

show_store_namebooleanเสมอ

Merchant 5.6.0+: การแสดงชื่อส่วนหัว ทั้งคู่มีค่าเริ่มต้น true ตัวระบุโปรเจกต์/ร้านค้ายังมีใน JSON

featured_chains[]arrayเสมอ

ลำดับความชอบ ใช้เฉพาะวิธีที่อยู่ในใบแจ้งหนี้แล้ว ละเว้นวิธีที่ไม่มีหรือปิดใช้

featured_asset_ids[]arrayเสมอ

ลำดับความชอบ ใช้เฉพาะวิธีที่อยู่ในใบแจ้งหนี้แล้ว ละเว้นวิธีที่ไม่มีหรือปิดใช้

default_asset_idUUID | nullเสมอ

วิธีเริ่มต้นที่แนะนำ ค่าลูกค้าที่จำไว้อย่างถูกต้องหรือวิธีที่รับเงินแล้วสำคัญกว่า

messagesobjectเสมอ
ข้อความธรรมดาสำหรับ en, de, es, pt-BR, it, ru, zh-CN, fr, ko และ ja ใช้คีย์ waiting, confirming, paid, underpaid และ expired หากไม่มีข้อความผู้ค้าจะใช้ภาษาอังกฤษ เป็นข้อมูลเสริม ไม่แทนสถานะจริง เนื้อหาที่ผู้ค้าเขียนไม่แปลอัตโนมัติรายละเอียด

ข้อความธรรมดาสำหรับ en, de, es, pt-BR, it, ru, zh-CN, fr, ko และ ja ใช้คีย์ waiting, confirming, paid, underpaid และ expired หากไม่มีข้อความผู้ค้าจะใช้ภาษาอังกฤษ เป็นข้อมูลเสริม ไม่แทนสถานะจริง เนื้อหาที่ผู้ค้าเขียนไม่แปลอัตโนมัติ

enobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
deobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
esobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
pt-BRobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
itobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
ruobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
zh-CNobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
frobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
koobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
jaobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
support_emailstringเสมอ

ข้อมูลติดต่อและลิงก์ HTTPS แบบไม่บังคับ ไม่มีข้อมูลรับรองใน URL ลิงก์ภายนอกเปิดหน้าต่างใหม่

support_urlstringเสมอ

ข้อมูลติดต่อและลิงก์ HTTPS แบบไม่บังคับ ไม่มีข้อมูลรับรองใน URL ลิงก์ภายนอกเปิดหน้าต่างใหม่

terms_urlstringเสมอ

ข้อมูลติดต่อและลิงก์ HTTPS แบบไม่บังคับ ไม่มีข้อมูลรับรองใน URL ลิงก์ภายนอกเปิดหน้าต่างใหม่

privacy_urlstringเสมอ

ข้อมูลติดต่อและลิงก์ HTTPS แบบไม่บังคับ ไม่มีข้อมูลรับรองใน URL ลิงก์ภายนอกเปิดหน้าต่างใหม่

return_button_textstringเสมอ

ป้ายชื่อแบบไม่บังคับเท่านั้น ปลายทางสำเร็จ/ยกเลิกและนโยบายเปลี่ยนเส้นทางยังเป็นของใบแจ้งหนี้

show_return_buttonbooleanเสมอ

การแสดงปุ่มกลับ/ยกเลิกด้วยตนเอง ค่าเริ่มต้น true ใช้กับสถานะใช้งานและสิ้นสุด ไม่ใช่การเปลี่ยนเส้นทางสำเร็จอัตโนมัติ มีตั้งแต่ merchant 8.1.4

payment_methods[]object[]เสมอ

วิธีชำระเงินที่เปิดเผยบนหน้าชำระเงินได้อย่างปลอดภัย

payment_railonchain | lightningเสมอ

Lightning ยังเป็นวิธี Bitcoin แต่แยกจาก BTC บนเชน ระบุตัวเลือกด้วย intent id และ rail ไม่ใช่ asset_id อย่างเดียว

bolt11string | nullเสมอ

คำขอ Lightning ที่ลงนาม เป็น null สำหรับวิธีบนเชน ห้ามชำระหลัง payable เป็น false

payment_hashstring | nullเสมอ

payment hash ของ Lightning เพื่อกระทบยอด ไม่ใช่ที่อยู่รับเงิน เป็น null สำหรับวิธีบนเชน

idUUIDเสมอ

ตัวระบุ payment intent

asset_idUUIDเสมอ

UUID สินทรัพย์ที่ค่ารูปลักษณ์ใช้ ต่างจาก payment intent id ของใบแจ้งหนี้นี้

asset_keystringเสมอ

คีย์สินทรัพย์มาตรฐาน

chain_slugstringเสมอ

ชื่อเชนสำหรับเครื่องและแสดงผล

chain_namestringเสมอ

ชื่อเชนสำหรับเครื่องและแสดงผล

networkstringเสมอ

เครือข่ายชำระเงิน

caip_network_idstringเสมอ

ตัวระบุเครือข่ายมาตรฐานเพื่อแยกเชนที่เลือกให้ชัดเจน

caip_asset_idstring | nullเสมอ

ตัวระบุสินทรัพย์มาตรฐานที่แน่นอน รวมสัญญาโทเคนหรือ mint ที่ตรวจสอบแล้วเมื่อเกี่ยวข้อง

asset_namestringเสมอ

ค่าที่ใช้แสดงสินทรัพย์รับชำระ

symbolstringเสมอ

ค่าที่ใช้แสดงสินทรัพย์รับชำระ

asset_icon_urlstring | nullเสมอ

ไอคอนสินทรัพย์ที่แคชภายใน origin เดียวกัน หรือ null เมื่อไม่มีการจับคู่ CoinGecko ที่ตรวจสอบแล้ว

asset_kindnative | tokenเสมอ

แยกเหรียญหลักออกจากการชำระคอนแทรกต์/mint

contract_addressstring | nullเสมอ

คอนแทรกต์ ERC-20 หรือ mint SPL มาตรฐานสำหรับโทเคน เป็น null สำหรับเหรียญหลัก

token_standarderc20 | spl-token | nullเสมอ

รันไทม์โทเคนที่ตรวจสอบแล้ว หรือ null สำหรับเหรียญหลัก

asset_decimalsintegerเสมอ

ความละเอียดหน่วยย่อย: 11 สำหรับ BTC Lightning หน่วย millisatoshi และ 8 สำหรับ BTC บนเชนหน่วย satoshi

statusintent statusเสมอ

สถานะวิธีชำระเงินปัจจุบัน

payablebooleanเสมอ

เป็น true เฉพาะเมื่อวิธีนี้ตรงตัวรับชำระได้ในขณะนี้ เป็น false สำหรับวิธีที่ไม่ใช้งานหลังสินทรัพย์อื่นรับเงินแล้ว

finality_modestringเสมอ

นโยบายความเป็นที่สุด

required_confirmationsintegerเสมอ

นโยบายความเป็นที่สุด

expected_amountdecimalเสมอ
ราคาเต็มที่ล็อกไว้ทั้งหน่วยแสดงผลและหน่วยบนเชนจริง stablecoin อิงเงินตราทั่วไปที่รู้จักใช้ทศนิยมราคาเสนอไม่เกินสองตำแหน่งและปัดขึ้นหลังสเปรดเสมอ สินทรัพย์อื่นใช้ความละเอียดปรับตามค่า ทศนิยมโทเคนจริง เงินที่รับ และยอดเหลือหลังชำระบางส่วนยังแน่นอน ใช้จำนวนที่คืนมาโดยไม่เปลี่ยนรายละเอียด

ราคาเต็มที่ล็อกไว้ทั้งหน่วยแสดงผลและหน่วยบนเชนจริง stablecoin อิงเงินตราทั่วไปที่รู้จักใช้ทศนิยมราคาเสนอไม่เกินสองตำแหน่งและปัดขึ้นหลังสเปรดเสมอ สินทรัพย์อื่นใช้ความละเอียดปรับตามค่า ทศนิยมโทเคนจริง เงินที่รับ และยอดเหลือหลังชำระบางส่วนยังแน่นอน ใช้จำนวนที่คืนมาโดยไม่เปลี่ยน

expected_amount_atomicinteger stringเสมอ
ราคาเต็มที่ล็อกไว้ทั้งหน่วยแสดงผลและหน่วยบนเชนจริง stablecoin อิงเงินตราทั่วไปที่รู้จักใช้ทศนิยมราคาเสนอไม่เกินสองตำแหน่งและปัดขึ้นหลังสเปรดเสมอ สินทรัพย์อื่นใช้ความละเอียดปรับตามค่า ทศนิยมโทเคนจริง เงินที่รับ และยอดเหลือหลังชำระบางส่วนยังแน่นอน ใช้จำนวนที่คืนมาโดยไม่เปลี่ยนรายละเอียด

ราคาเต็มที่ล็อกไว้ทั้งหน่วยแสดงผลและหน่วยบนเชนจริง stablecoin อิงเงินตราทั่วไปที่รู้จักใช้ทศนิยมราคาเสนอไม่เกินสองตำแหน่งและปัดขึ้นหลังสเปรดเสมอ สินทรัพย์อื่นใช้ความละเอียดปรับตามค่า ทศนิยมโทเคนจริง เงินที่รับ และยอดเหลือหลังชำระบางส่วนยังแน่นอน ใช้จำนวนที่คืนมาโดยไม่เปลี่ยน

minimum_payment_amountdecimalเสมอ

เกณฑ์ยอมรับการชำระเสร็จสิ้นหลังใช้ส่วนต่างชำระขาด

minimum_payment_amount_atomicinteger stringเสมอ

เกณฑ์ยอมรับการชำระเสร็จสิ้นหลังใช้ส่วนต่างชำระขาด

received_amountdecimalเสมอ

จำนวนที่ตรวจพบ

received_amount_atomicinteger stringเสมอ

จำนวนที่ตรวจพบ

remaining_amountdecimal stringเสมอ

จำนวนแสดงผลที่แน่นอนซึ่งยังต้องรับเพื่อถึงเกณฑ์ยอมรับ จำกัดค่าต่ำสุดศูนย์

remaining_amount_atomicinteger stringเสมอ

ยอดขาดถึงเกณฑ์ยอมรับในหน่วยย่อย ไม่ใช่จำนวนที่ขอให้ชำระ ส่วนต่างมีผลเฉพาะการยอมรับ

confirmed_amountdecimalเสมอ

จำนวนที่ยืนยัน/เป็นที่สุด

confirmed_amount_atomicinteger stringเสมอ

จำนวนที่ยืนยัน/เป็นที่สุด

destination_addressstringเสมอ

ปลายทางบนเชนและเลขอ้างอิงถ้ามี สำหรับ Lightning เป็น payment hash ไม่มี tag ให้ชำระ bolt11/payment_uri แทน

destination_tagstring|nullเสมอ

ปลายทางบนเชนและเลขอ้างอิงถ้ามี สำหรับ Lightning เป็น payment hash ไม่มี tag ให้ชำระ bolt11/payment_uri แทน

quote_expires_atRFC 3339 timestampเสมอ

เวลาหมดอายุราคาเสนอ

payment_uristring | nullเสมอ
คำขอตามเชน: ERC-681, Solana Pay, URI เหรียญหลัก หรือ lightning:<bolt11> คำขอที่มีจำนวนใช้ยอดคาดหวังเต็มลบเงินที่รับ ไม่ใช้เกณฑ์ส่วนต่าง เป็น null เมื่อ payable เป็น false รวมหลังยอมรับยอดขาดที่อยู่ในเกณฑ์ QR Lightning เข้ารหัสคำขอ Lightning ทั้งหมด ไม่ใช่ payment hashรายละเอียด

คำขอตามเชน: ERC-681, Solana Pay, URI เหรียญหลัก หรือ lightning:<bolt11> คำขอที่มีจำนวนใช้ยอดคาดหวังเต็มลบเงินที่รับ ไม่ใช้เกณฑ์ส่วนต่าง เป็น null เมื่อ payable เป็น false รวมหลังยอมรับยอดขาดที่อยู่ในเกณฑ์ QR Lightning เข้ารหัสคำขอ Lightning ทั้งหมด ไม่ใช่ payment hash

qr_urlpath | nullเสมอ

พาธ QR SVG ใน origin เดียวกันที่มีรุ่นตาม sequence และยอดเหลือแน่นอน หรือ null เมื่อ payable เป็น false SVG เป็น no-store

address_explorer_namestring|nullเสมอ

explorer mainnet สำรองที่ตรวจสอบแล้วเมื่อรองรับ

address_explorer_urlstring|nullเสมอ

explorer mainnet สำรองที่ตรวจสอบแล้วเมื่อรองรับ

transaction_countintegerเสมอ

จำนวนธุรกรรมสาธารณะที่ถูกต้องและไม่ซ้ำทั้งหมดที่ตรวจพบสำหรับวิธีนี้

transactions_truncatedbooleanเสมอ

เป็น true เมื่อ transaction_count มากกว่ารายการธุรกรรมล่าสุดที่คืนมา

transactions[]object[]เสมอ

ธุรกรรมสาธารณะถูกต้องล่าสุดไม่เกิน 10 รายการ ยอดรับรวมที่แน่นอนไม่ขึ้นกับเพดานการแสดงนี้

transaction_idstringเสมอ

ตัวระบุธุรกรรมที่ตรวจพบ

statusdetected | confirming | finalเสมอ

สถานะสาธารณะของข้อมูลที่ตรวจพบ

confirmationsintegerเสมอ

จำนวนการยืนยันที่ตรวจพบ

block_heightinteger | nullเสมอ

ความสูงบล็อก/ledger ที่ตรวจพบ

explorer_namestringเมื่อคืนค่า

ชื่อ explorer คงที่ที่ตรวจสอบแล้ว

explorer_urlstringเมื่อคืนค่า

URL explorer mainnet คงที่ที่ตรวจสอบแล้ว

หมายเหตุการใช้งาน
  • ไม่ต้องใช้ bearer token
  • Cache-Control เป็น no-store และปิดการจัดทำดัชนีค้นหา
  • ถือ invoice_id เป็นข้อมูลที่ให้สิทธิ์เข้าถึงหน้าสำหรับลูกค้า หลีกเลี่ยงเผยแพร่โดยไม่จำเป็น
  • asset_icon_url เป็นไฟล์ภายใน origin เดียวกัน หน้าชำระเงินลูกค้าไม่ต้องติดต่อ CoinGecko เพื่อแสดง
  • เมื่อ destination_tag ไม่เป็น null ให้แสดงและคัดลอกคู่ที่อยู่ นี่คือ destination tag XRP, memo ID Stellar หรือคอมเมนต์ใบแจ้งหนี้ TON ที่จำเป็นและต้องส่งตรงทุกตัว
  • สำหรับโทเคนที่ตรวจสอบแล้ว asset_kind เป็น token, contract_address ระบุคอนแทรกต์ ERC-20 หรือ mint SPL ตรงตัว, token_standard ระบุช่องทาง และ payment_uri มีตัวระบุโทเคนนั้น

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETตัวอย่างหน้าชำระเงินของร้านค้า/invoice/preview/{project_id}สาธารณะ

แสดงรูปลักษณ์ร้านค้าที่บันทึกไว้ด้วยจำนวนตัวอย่างและ metadata สินทรัพย์ที่ยอมรับจริง สลับตัวอย่าง waiting, confirming, paid, underpaid และ expired โดยไม่สร้างการชำระเงิน

การยืนยันตัวตนและเฮดเดอร์

สาธารณะ

พารามิเตอร์พาธ

project_idUUIDจำเป็น

UUID โปรเจกต์ที่คอนโซลซึ่งยืนยันตัวตนคัดลอกลงลิงก์ตัวอย่าง

พารามิเตอร์ query

store_idUUID,ไม่บังคับ

ร้านค้าในโปรเจกต์นี้ ไม่ระบุเพื่อใช้ร้านค้าแรก/เริ่มต้น

statestring,ไม่บังคับ

waiting, confirming, paid, underpaid หรือ expired เป็นภาพตัวอย่างในเบราว์เซอร์เท่านั้น

คำขอ

curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://pay.example.com/invoice/preview/YOUR_PROJECT_ID?store_id=YOUR_STORE_ID&state=confirming" \
  --output 'checkout-preview.html'

การตอบกลับ 200 text/html

ตัวอย่างการตอบกลับ
<!doctype html>
<!-- Hosted branding preview; no invoice is created -->
หมายเหตุการใช้งาน
  • ตัวอย่างใช้แสดงแบรนด์เท่านั้น ห้ามส่งให้ลูกค้าเป็นคำขอชำระเงิน
  • ไม่มีที่อยู่รับเงิน QR ชำระได้ การทำงานกระเป๋า การเปลี่ยนเส้นทาง หรือการตรวจชำระเป็นระยะ ตัวอย่างไม่เปลี่ยนสถานะใบแจ้งหนี้จริง
  • การตอบกลับเป็น no-store, noindex และฝังไม่ได้

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETข้อมูลตัวอย่างหน้าชำระเงิน/checkout-api/previews/{project_id}สาธารณะ

คืนรูปลักษณ์ร้านค้าที่มีผลและ metadata สินทรัพย์ที่ยอมรับแบบปลอดภัย payment_methods ยังว่าง; preview_methods ไม่มีที่อยู่ชำระ ราคาเสนอ หรือข้อมูลกระเป๋าส่วนตัว

การยืนยันตัวตนและเฮดเดอร์

สาธารณะ

พารามิเตอร์พาธ

project_idUUIDจำเป็น

UUID โปรเจกต์จากลิงก์ตัวอย่างคอนโซล

พารามิเตอร์ query

store_idUUID,ไม่บังคับ

ต้องอยู่ในโปรเจกต์นี้ ID ไม่ตรงคืน 404 ปฏิเสธฟิลด์ query ที่ไม่รู้จัก

คำขอ

curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://pay.example.com/checkout-api/previews/YOUR_PROJECT_ID?store_id=YOUR_STORE_ID" \
  --header 'Accept: application/json'

การตอบกลับ 200 application/json

ตัวอย่างการตอบกลับ
{
  "data": {
    "preview": true,
    "invoice_id": "YOUR_PROJECT_ID",
    "amount": "100.00",
    "currency": "USD",
    "project": {
      "name": "Example project",
      "checkout_title": "Complete your payment",
      "checkout_description": "Choose a network and send the exact amount shown.",
      "theme": "system",
      "accent_color": "#42e39b",
      "logo_url": "/checkout-api/previews/…/logo/…/image.png"
    },
    "appearance": {"inherit_default_store": true, "theme": "system", "accent_color": "#42E39B", "images": {}},
    "preview_methods": [],
    "payment_methods": []
  }
}

ฟิลด์การตอบกลับ

dataobject
previewboolean
invoice_idstring
amountstring
currencystring
projectobject
namestring
checkout_titlestring
checkout_descriptionstring
themestring
accent_colorstring
logo_urlstring
appearanceobject
inherit_default_storebooleanเสมอ

เป็น true เมื่อร้านค้าเริ่มต้นโปรเจกต์ให้รูปลักษณ์นี้ เป็น false สำหรับร้านค้าอิสระและ override ใบแจ้งหนี้ที่ตรึงไว้

invoice_overridebooleanเสมอ

เป็น true เมื่อส่ง checkout_appearance ตอนสร้างใบแจ้งหนี้ ไม่ใส่/null คง false

titlestringเสมอ

หัวข้อผู้ค้า ข้อความบน และข้อความล่างแบบธรรมดา intro แทน customer_message โดยคงข้อความเก่าที่เก็บไว้ ห้ามประมวลผลเป็นมาร์กอัป

introstringเสมอ

หัวข้อผู้ค้า ข้อความบน และข้อความล่างแบบธรรมดา intro แทน customer_message โดยคงข้อความเก่าที่เก็บไว้ ห้ามประมวลผลเป็นมาร์กอัป

outrostringเสมอ

หัวข้อผู้ค้า ข้อความบน และข้อความล่างแบบธรรมดา intro แทน customer_message โดยคงข้อความเก่าที่เก็บไว้ ห้ามประมวลผลเป็นมาร์กอัป

intro_font_sizeintegerเสมอ

ขนาดตัวอักษรพิกเซล: 12, 14, 16, 18, 20 หรือ 24

outro_font_sizeintegerเสมอ

ขนาดตัวอักษรพิกเซล: 12, 14, 16, 18, 20 หรือ 24

customer_messagestringเสมอ

ชื่อแทน intro เพื่อความเข้ากันได้ซึ่งเลิกแนะนำแล้ว ใช้ intro ในการเชื่อมต่อใหม่

themesystem | light | dim | darkเสมอ

ตามค่าที่อุปกรณ์ลูกค้าเลือกหรือใช้ธีมคงที่

accent_colorstringเสมอ

สีรูปแบบ #RRGGBB เคร่งครัด สีไม่บังคับว่างเพื่อใช้ค่าอัตโนมัติ คำนวณคอนทราสต์สีข้อความ

background_colorstringเสมอ

สีรูปแบบ #RRGGBB เคร่งครัด สีไม่บังคับว่างเพื่อใช้ค่าอัตโนมัติ คำนวณคอนทราสต์สีข้อความ

card_colorstringเสมอ

สีรูปแบบ #RRGGBB เคร่งครัด สีไม่บังคับว่างเพื่อใช้ค่าอัตโนมัติ คำนวณคอนทราสต์สีข้อความ

button_colorstringเสมอ

สีรูปแบบ #RRGGBB เคร่งครัด สีไม่บังคับว่างเพื่อใช้ค่าอัตโนมัติ คำนวณคอนทราสต์สีข้อความ

logo_sizestringเสมอ

small, medium หรือ large; left หรือ center รูปย่อให้พอดี ไม่ครอบตัด

logo_alignmentstringเสมอ

small, medium หรือ large; left หรือ center รูปย่อให้พอดี ไม่ครอบตัด

imagesobjectเสมอ

URL logo_light, logo_dark และ favicon แบบไม่บังคับ: รูป PNG ที่ปรับรูปแบบแล้วใน origin เดียวกันและจำกัดขอบเขต

show_order_idbooleanเสมอ

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

show_descriptionbooleanเสมอ

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

details_expandedbooleanเสมอ

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

show_project_namebooleanเสมอ

Merchant 5.6.0+: การแสดงชื่อส่วนหัว ทั้งคู่มีค่าเริ่มต้น true ตัวระบุโปรเจกต์/ร้านค้ายังมีใน JSON

show_store_namebooleanเสมอ

Merchant 5.6.0+: การแสดงชื่อส่วนหัว ทั้งคู่มีค่าเริ่มต้น true ตัวระบุโปรเจกต์/ร้านค้ายังมีใน JSON

featured_chains[]arrayเสมอ

ลำดับความชอบ ใช้เฉพาะวิธีที่อยู่ในใบแจ้งหนี้แล้ว ละเว้นวิธีที่ไม่มีหรือปิดใช้

featured_asset_ids[]arrayเสมอ

ลำดับความชอบ ใช้เฉพาะวิธีที่อยู่ในใบแจ้งหนี้แล้ว ละเว้นวิธีที่ไม่มีหรือปิดใช้

default_asset_idUUID | nullเสมอ

วิธีเริ่มต้นที่แนะนำ ค่าลูกค้าที่จำไว้อย่างถูกต้องหรือวิธีที่รับเงินแล้วสำคัญกว่า

messagesobjectเสมอ
ข้อความธรรมดาสำหรับ en, de, es, pt-BR, it, ru, zh-CN, fr, ko และ ja ใช้คีย์ waiting, confirming, paid, underpaid และ expired หากไม่มีข้อความผู้ค้าจะใช้ภาษาอังกฤษ เป็นข้อมูลเสริม ไม่แทนสถานะจริง เนื้อหาที่ผู้ค้าเขียนไม่แปลอัตโนมัติรายละเอียด

ข้อความธรรมดาสำหรับ en, de, es, pt-BR, it, ru, zh-CN, fr, ko และ ja ใช้คีย์ waiting, confirming, paid, underpaid และ expired หากไม่มีข้อความผู้ค้าจะใช้ภาษาอังกฤษ เป็นข้อมูลเสริม ไม่แทนสถานะจริง เนื้อหาที่ผู้ค้าเขียนไม่แปลอัตโนมัติ

enobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
deobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
esobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
pt-BRobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
itobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
ruobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
zh-CNobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
frobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
koobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
jaobject
waitingstring
confirmingstring
paidstring
underpaidstring
expiredstring
support_emailstringเสมอ

ข้อมูลติดต่อและลิงก์ HTTPS แบบไม่บังคับ ไม่มีข้อมูลรับรองใน URL ลิงก์ภายนอกเปิดหน้าต่างใหม่

support_urlstringเสมอ

ข้อมูลติดต่อและลิงก์ HTTPS แบบไม่บังคับ ไม่มีข้อมูลรับรองใน URL ลิงก์ภายนอกเปิดหน้าต่างใหม่

terms_urlstringเสมอ

ข้อมูลติดต่อและลิงก์ HTTPS แบบไม่บังคับ ไม่มีข้อมูลรับรองใน URL ลิงก์ภายนอกเปิดหน้าต่างใหม่

privacy_urlstringเสมอ

ข้อมูลติดต่อและลิงก์ HTTPS แบบไม่บังคับ ไม่มีข้อมูลรับรองใน URL ลิงก์ภายนอกเปิดหน้าต่างใหม่

return_button_textstringเสมอ

ป้ายชื่อแบบไม่บังคับเท่านั้น ปลายทางสำเร็จ/ยกเลิกและนโยบายเปลี่ยนเส้นทางยังเป็นของใบแจ้งหนี้

show_return_buttonbooleanเสมอ

การแสดงปุ่มกลับ/ยกเลิกด้วยตนเอง ค่าเริ่มต้น true ใช้กับสถานะใช้งานและสิ้นสุด ไม่ใช่การเปลี่ยนเส้นทางสำเร็จอัตโนมัติ มีตั้งแต่ merchant 8.1.4

preview_methods[]array
payment_methods[]array
หมายเหตุการใช้งาน
  • ไม่รับและไม่ต้องใช้ bearer token
  • ไม่คืนใบแจ้งหนี้ ปลายทาง กระเป๋า ธุรกรรม IPN, webhook หรือ metadata ผู้ค้า
  • ใช้คอนโซลที่ยืนยันตัวตนเพื่อรับลิงก์ตัวอย่างบนโดเมน pay ที่ถูกต้อง

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETรูปภาพหน้าชำระเงินของร้านค้า/checkout-api/invoices/{invoice_id}/appearance-images/{kind}/{revision}/image.pngสาธารณะ

คืนโลโก้ร้านค้าหรือ favicon ที่ปรับรูปแบบแล้วของใบแจ้งหนี้นี้ ใช้ URL appearance.images จากข้อมูลหน้าชำระเงิน

การยืนยันตัวตนและเฮดเดอร์

สาธารณะ

พารามิเตอร์พาธ

invoice_idUUIDจำเป็น

UUID สาธารณะของใบแจ้งหนี้

kindenumจำเป็น

logo_light, logo_dark หรือ favicon

revisionUUIDจำเป็น

รุ่นแก้ไขรูปปัจจุบัน

คำขอ

curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://pay.example.com/checkout-api/invoices/YOUR_PUBLIC_INVOICE_ID/appearance-images/logo_light/YOUR_IMAGE_REVISION/image.png" \
  --output 'store-logo.png'

การตอบกลับ 200 image/png

ตัวอย่างการตอบกลับ
(binary PNG response)
หมายเหตุการใช้งาน
  • ใช้ appearance.images จาก JSON หน้าชำระเงิน รูปใบแจ้งหนี้ที่ตรึงไว้ยังใช้ได้หลังร้านค้าต้นทางแทนที่หรือลบรูปอัปโหลด รูปที่ลบอย่างชัดเจน ผิดใบแจ้งหนี้ ผิดชนิด และรุ่นไม่รู้จักคืน 404 ภาพข้อมูลที่ตรึงไว้ไม่ย้อนใช้รูปร้านค้าปัจจุบัน
  • หากไม่มี override ใบแจ้งหนี้ จะใช้รูปร้านค้าที่มีผลปัจจุบัน รุ่นที่ถูกแทนที่/ลบคืน 404 เฉพาะ PNG พร้อม nosniff และแคชส่วนตัว
  • อัปโหลดรูปร้านค้ารับ PNG, JPEG หรือ WebP ขนาดจำกัดในคอนโซลที่ยืนยันตัวตน ไม่รับ SVG, HTML หรือ URL รูปภายนอก

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETรูปภาพตัวอย่างร้านค้า/checkout-api/previews/{project_id}/stores/{store_id}/appearance-images/{kind}/{revision}/image.pngสาธารณะ

คืนรูปตัวอย่างที่ปรับรูปแบบแล้วเฉพาะเมื่อโปรเจกต์ ร้านค้า ชนิด และรุ่นปัจจุบันตรงกัน

การยืนยันตัวตนและเฮดเดอร์

สาธารณะ

พารามิเตอร์พาธ

project_idUUIDจำเป็น

UUID โปรเจกต์

store_idUUIDจำเป็น

ร้านค้าในโปรเจกต์

kindenumจำเป็น

logo_light, logo_dark หรือ favicon

revisionUUIDจำเป็น

รุ่นแก้ไขรูปปัจจุบัน

คำขอ

curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://pay.example.com/checkout-api/previews/YOUR_PROJECT_ID/stores/YOUR_STORE_ID/appearance-images/logo_light/YOUR_IMAGE_REVISION/image.png" \
  --output 'store-preview-logo.png'

การตอบกลับ 200 image/png

ตัวอย่างการตอบกลับ
(binary PNG response)
หมายเหตุการใช้งาน
  • ใช้ appearance.images จากข้อมูลตัวอย่าง ID ไม่รู้จักหรือไม่ตรงคืน 404 ไม่เปิดเผยข้อมูลกระเป๋าหรือการชำระเงิน

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

GETรูป QR ชำระเงิน/checkout-api/invoices/{invoice_id}/payment-methods/{intent_id}/qr.svgสาธารณะ

สร้าง QR SVG 512×512 สำหรับ payload ชำระเงินตรงตัวตามเชนของวิธีชำระในใบแจ้งหนี้

การยืนยันตัวตนและเฮดเดอร์

สาธารณะ

พารามิเตอร์พาธ

invoice_idUUIDจำเป็น

UUID สาธารณะของใบแจ้งหนี้

intent_idUUIDจำเป็น

id วิธีชำระเงินจาก JSON หน้าชำระเงิน

คำขอ

curl --fail-with-body --max-time 30 \
  --request GET \
  --url "https://pay.example.com/checkout-api/invoices/YOUR_PUBLIC_INVOICE_ID/payment-methods/YOUR_INTENT_ID/qr.svg" \
  --output 'payment-qr.svg'

การตอบกลับ 200 image/svg+xml

ตัวอย่างการตอบกลับ
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">…</svg>
หมายเหตุการใช้งาน
  • ไม่ต้องใช้ bearer token
  • ใช้ qr_url ที่มีรุ่นตาม sequence และยอดเหลือซึ่ง JSON หน้าชำระเงินคืนมา SVG เป็น private และ no-store
  • หลังชำระบางส่วนจะขอยอดเหลือที่แน่นอนและยังล็อกสินทรัพย์นั้น
  • คืน 409 หลังหมดอายุ เสร็จสิ้น หรือเมื่อวิธีอื่นใช้งานอยู่ คืน payment_qr_unavailable (422) หากคำขอใหญ่เกินเข้ารหัส

ข้อผิดพลาด

รหัสข้อผิดพลาดและกฎการลองใหม่

เอกสารอ้างอิง Wholly Crypto 8.3.2 สำหรับเวอร์ชันที่ติดตั้ง ให้เปิด การตั้งค่า → การเข้าถึง API → เอกสาร ในคอนโซล ดูรุ่นเผยแพร่.