ข้ามไปที่เนื้อหา

บูรณาการการเรียกเก็บเงินที่กำหนดเอง

หัวข้อนี้จะอธิบายวิธีตั้งค่าการรวมการเรียกเก็บเงินแบบรายเดือนกับระบบการเรียกเก็บเงินใดๆ ยกเว้น WHMCS (เช่น Blesta, Hostbill, Ubersmith หรืออื่นๆ)

ขั้นตอนที่ 1 - กำหนดอัตราการแปลงของคุณระหว่างโทเค็นและสกุลเงิน

SolusVM 2 เสนอการเรียกเก็บเงินรายชั่วโมงและรายเดือน ตัดสินใจว่าโทเค็นหนึ่งรายการต้องใช้เงินจริง (ในสกุลเงินที่ต้องการ) เท่าใด

Note

โทเค็นต้องเป็นจำนวนเต็มเท่านั้น

เราขอแนะนำให้คุณเตรียมตารางการแปลงโดยละเอียด เช่น:

โทเค็น ราคาโทเค็นเป็น USD ราคาโทเค็นในสกุลเงิน EUR
1 0.00100 ดอลลาร์สหรัฐฯ €0.00091
10 0.01000 ดอลลาร์สหรัฐฯ €0.00910
100 0.10000 ดอลลาร์ €0.09100
1,000 1.00000 ดอลลาร์ €0.91000
10,000 $10.00000 €9.10000

ขั้นตอนที่ 2 - คำนวณราคารายชั่วโมงและรายเดือนของคุณ

ข้อกำหนดเบื้องต้น: สมมติว่าคุณได้ เพิ่มแผน แล้ว ถ้าไม่เช่นนั้นก็ถึงเวลาแล้วที่จะต้องทำเช่นนั้น

ตอนนี้คุณต้องตัดสินใจว่าจะเรียกเก็บเงินจำนวนเท่าใดสำหรับแผนของคุณ แต่ละแผนใน SolusVM 2 สามารถมีราคารายชั่วโมงและรายเดือนเป็นโทเค็น:

  • “โทเค็นต่อชั่วโมง” คือราคาเป็นโทเค็นสำหรับการใช้ทรัพยากรในแต่ละชั่วโมง

ตัวอย่างเช่น หากคุณเริ่มต้นเซิร์ฟเวอร์และยุติเซิร์ฟเวอร์หลังจากผ่านไปห้านาที ผู้ใช้เซิร์ฟเวอร์จะต้องชำระค่าบริการเป็นเวลาหนึ่งชั่วโมง

  • “โทเค็นต่อเดือน” คือราคาเป็นโทเค็นสำหรับการใช้ทรัพยากรประมาณทั้งเดือน

เดือนมีความยาวต่างกันแต่ราคารายเดือนคงที่ เพื่อให้บรรลุเป้าหมายนี้ คุณต้องกำหนดราคารายเดือนโดยการคำนวณขีดจำกัดรายเดือน มาดูตัวอย่างกัน

เรามีราคารายชั่วโมงอยู่ที่ 7 โทเค็น (เท่ากับ $0.007/ชั่วโมง) เดือนที่มี 31 วันทั้งหมดจะมีค่าใช้จ่ายดังต่อไปนี้:

7 โทเค็น × 24 ชั่วโมง × 31 วัน = 7 × 744 ชั่วโมง = 5208 โทเค็น (เท่ากับ $5.21)

คนชอบเลขกลมๆ เราสามารถหัก 208 โทเค็น ($0.21) และรับราคา 5,000 โทเค็น ($5.00) นี่จะเป็นราคาสูงสุดรายเดือนของเราและราคารายเดือนในเวลาเดียวกัน SolusVM 2 จะเลือกราคาที่จะเรียกเก็บเงิน (รายชั่วโมงหรือรายเดือน) โดยขึ้นอยู่กับราคารายเดือน

ตัวอย่างเช่น ผู้ใช้ใช้งานเซิร์ฟเวอร์เป็นเวลา 700 ชั่วโมง ซึ่งมีค่าใช้จ่าย 4,900 โทเค็น มีโทเค็นน้อยกว่า 5,000 โทเค็นของขีดจำกัดรายเดือน ดังนั้นผู้ใช้จะถูกเรียกเก็บเงินรายชั่วโมง ในเดือนหน้า ผู้ใช้ใช้งานเซิร์ฟเวอร์เป็นเวลา 730 ชั่วโมง ซึ่งมีค่าใช้จ่าย 5,110 โทเค็น มีโทเค็นมากกว่า 5,000 โทเค็นของขีดจำกัดรายเดือน ดังนั้นผู้ใช้จะถูกเรียกเก็บเงินรายเดือน ($5.00)

เราขอแนะนำให้คุณคำนวณราคารายชั่วโมงและรายเดือนก่อนตั้งค่าจริงใน SolusVM 2 ด้านล่างนี้ คุณสามารถดูตัวอย่างวิธีที่เราคำนวณราคาโดยใช้ตาราง Conversion ที่แสดงในขั้นตอนที่ 1

แผน โทเค็นต่อชั่วโมง โทเค็นรวมต่อเดือน (โทเค็นต่อชั่วโมง × 24 ชั่วโมง × 31 วัน) ราคารวมต่อเดือนเป็น USD โทเค็นต่อเดือน (ตามราคาคงที่) ราคาต่อเดือนเป็น USD หากใช้ "โทเค็นต่อเดือน"
1 คอร์, 1 GiB RAM 7 5,208 $5.21 5,000 $5.00
1 คอร์, 2 GiB แรม 14 10,416 $10.42 10,000 $10.00
2 คอร์, 2 GiB RAM 21 15,624 $15.62 15,000 $15.00
2 คอร์, 4 GiB RAM 28 20,832 $20.83 20,000 $20.00

Note

ในตัวอย่างด้านบน เราได้ปัดเศษราคารายเดือน (สองคอลัมน์สุดท้าย) สะดวกกว่าสำหรับลูกค้าและสามารถใช้เป็นส่วนลดรายเดือนได้ ขึ้นอยู่กับคุณแล้ว ว่าคุณจะทำแบบเดียวกันหรือไม่

ขั้นตอนที่ 3 – กำหนดราคาเป็นโทเค็นสำหรับแผนใน SolusVM 2

ในระหว่างขั้นตอนก่อนหน้านี้ คุณได้สร้างตารางราคาโดยละเอียดแล้ว ตอนนี้คุณต้องกำหนดราคารายชั่วโมงและรายเดือน (คอลัมน์ที่สองและห้าในตารางราคาตามลำดับ) สำหรับแผนใน SolusVM 2:

  1. เข้าสู่ระบบ SolusVM 2

  2. ไปที่ ทรัพยากรคอมพิวเตอร์ > แผน

  1. คุณสามารถระบุค่าโทเค็นขณะแก้ไขแผนที่มีอยู่หรือสร้างแผนใหม่ได้:

  2. หากต้องการแก้ไขแผนที่มีอยู่ ให้คลิกไอคอน บนแถวของแผน

  3. หากต้องการสร้างแผนใหม่ คลิก เพิ่มแผน

  4. ระบุราคารายชั่วโมงและรายเดือนเป็นโทเค็น ใน "โทเค็นต่อชั่วโมง" และ "โทเค็นต่อเดือน" ตามลำดับ

  5. หากคุณกำลังสร้างแผน และ กรอกข้อมูลในช่องที่ต้องกรอก

!!! note

     หากคุณตั้งค่า "โทเค็นต่อเดือน" เป็น "0" จะมีการเรียกเก็บเงินเพียงรายชั่วโมงเท่านั้น
     หากคุณตั้งค่า "โทเค็นต่อชั่วโมง" เป็น "0" แต่คุณระบุค่าสำหรับ "โทเค็น (ต่อเดือน)"
     จะไม่สามารถเรียกเก็บเงินรายชั่วโมงได้
     ลูกค้าจะถูกเรียกเก็บเงินตามราคารายเดือนคงที่ที่กำหนดโดย "โทเค็นต่อเดือน" เสมอ
  1. คลิก บันทึก

ขั้นตอนที่ 4 - ปิดใช้งานการลงทะเบียนในพื้นที่ผู้ใช้ SolusVM 2

ระบบการเรียกเก็บเงินที่กำหนดค่าด้วย SolusVM 2 จะต้องเป็นฐานข้อมูลหลักสำหรับผู้ใช้ SolusVM 2 เฉพาะฐานข้อมูลระบบการเรียกเก็บเงินเท่านั้นที่ต้องควบคุม ผู้ใช้ที่มีหรือไม่มีสิทธิ์ในการสร้างเซิร์ฟเวอร์

อย่างไรก็ตาม SolusVM 2 มีส่วนหนึ่งของอินเทอร์เฟซที่เรียกว่า “พื้นที่ผู้ใช้” ซึ่งผู้ใช้สร้างเซิร์ฟเวอร์ สามารถข้ามฐานข้อมูลระบบการเรียกเก็บเงิน ได้ด้วยการสร้างผู้ใช้โดยตรงในพื้นที่ผู้ใช้ เพื่อป้องกันสิ่งนี้ คุณต้องปิดการใช้งานการลงทะเบียนในพื้นที่ผู้ใช้:

  1. เข้าสู่ระบบ SolusVM 2
  2. ไปที่ การตั้งค่า > พื้นที่ผู้ใช้ และล้างช่องทำเครื่องหมาย “เปิดใช้งานการลงทะเบียน”
  3. คลิก บันทึก

คุณได้ปิดการใช้งานการลงทะเบียนในพื้นที่ผู้ใช้ ขณะนี้ฐานข้อมูลระบบการเรียกเก็บเงินเป็นฐานข้อมูลหลักสำหรับผู้ใช้ SolusVM 2

ขั้นตอนที่ 5 - สร้างกลุ่มขีดจำกัด

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

ขั้นตอนที่ 6 - กำหนดค่าตำแหน่งข้อมูล API บนฝั่งระบบการเรียกเก็บเงิน

ตอนนี้คุณต้องกำหนดค่าตำแหน่งข้อมูล GetTokenPricing ที่ฝั่งระบบการเรียกเก็บเงิน คุณสามารถกำหนดค่าได้อย่างง่ายดายในภาษาการเขียนโค้ดที่คุณเลือก

คุณต้องมีตำแหน่งข้อมูลนี้เพื่อให้ SolusVM 2 สามารถแสดงราคาให้กับลูกค้าได้

Note

ในขณะนี้ คุณต้องกำหนดค่าเฉพาะตำแหน่งข้อมูล GetTokenPricing เท่านั้น แต่เราอาจขยายรายการจุดสิ้นสุด API ในอนาคต

ตำแหน่งข้อมูล GetTokenPricing มีพารามิเตอร์คำขอและการตอบสนองต่อไปนี้:

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

พารามิเตอร์ พิมพ์ คำอธิบาย ที่จำเป็น
`โทเค็น' เชือก โทเค็นการอนุญาต เลขที่
`userid` int ID ผู้ใช้ในระบบการเรียกเก็บเงิน ใช่

พารามิเตอร์การตอบสนอง

พารามิเตอร์ พิมพ์ คำอธิบาย
`base_token_unit_cost` ลอย ราคาของโทเค็นหนึ่งรายการก่อนส่วนลดและ/หรือภาษีใดๆ
`user_token_unit_cost` ลอย ราคาเต็มและราคาสุดท้ายของโทเค็นหนึ่งรายการรวมส่วนลดและภาษีแล้ว
`currency` อาร์เรย์ อาร์เรย์ประกอบด้วยพารามิเตอร์การจัดรูปแบบสกุลเงิน: รหัส ISO, คำนำหน้า, ส่วนต่อท้าย, จำนวนทศนิยม, หลักพัน และตัวคั่นทศนิยม ตัวอย่าง: ``` "currency": { "code": "GBP", "display_prefix": "\u00a3", "display_suffix": " GBP", "thousands_separator ": ",", "decimals_separator": ".", "decimals_per_month": 2, "decimals_per_hour": 4 } ```
`discounts` อาร์เรย์ อาร์เรย์ของส่วนลดที่ใช้ซึ่งประกอบด้วยชื่อ คำอธิบาย และตัวคูณ ตัวอย่าง:
"discounts": [ { "name": "Special Client Group Discount", "description": "5% Recurring Discount", "multipler": 0.95 }
`taxes` อาร์เรย์ อาร์เรย์ของข้อมูลภาษี รวมถึงประเภทภาษี (แบบผสมหรือไม่ก็ได้) และอัตรา (ป้ายกำกับและอัตรา) ตัวอย่าง: ``` "taxes": { "compound": true, "rates": [ { "label": "City Tax", "rate": 6 }, { " label": "ภาษีของรัฐ", "อัตรา": 2 } ] } ```

เมื่อ SolusVM 2 ต้องการแสดงราคาให้กับลูกค้า SolusVM 2 จะส่งคำขอ API พร้อม ID ผู้ใช้ ไปยังจุดสิ้นสุด GetTokenPricing:

curl -X POST "https://www.mybilling.com/solusio/api/"
\ -H "Accept: application/json"
\ -H "Content-Type: application/x-www-form-urlencoded"
\ -d "token=xxxxxxx&action=GetTokenPricing&userid=1"

จากนั้นระบบการเรียกเก็บเงินจะส่งการตอบสนอง API พร้อมข้อมูลที่เกี่ยวข้องกับราคา เช่น

{
 "base_token_unit_cost": 1.34,
 "user_token_unit_cost": 1.0812,
 "currency": {
         "code": "GBP",
         "display_prefix": "\u00a3",
         "display_suffix": " GBP",
         "thousands_separator": ",",
         "decimals_separator": ".",
         "decimals_per_month": 2,
         "decimals_per_hour": 4
 },
 "discounts": [
         {
                 "name": "Special Client Group Discount",
                 "description": "5% Recurring Discount",
                 "multipler": 0.95
         }
 ],
 "taxes": {
         "compound": true,
         "rates": [
                     {
                             "label": "City Tax",
                             "rate": 6
                     },
                     {
                             "label": "State Tax",
                             "rate": 2
                     }
                 ]
         }
}

user_token_unit_cost ในการตอบกลับคือค่าสัมประสิทธิ์ที่สะท้อนถึง ภาษี ส่วนลด และข้อเสนอพิเศษทั้งหมดของผู้ใช้รายใดรายหนึ่ง จากนั้น SolusVM 2 จะคูณ user_token_unit_cost ด้วยราคาของแผนเป็นโทเค็น รับราคาจริงในสกุลเงิน (ปอนด์สเตอร์ลิงในตัวอย่างของเรา) และแสดงราคานี้ให้ผู้ใช้เห็น

ขั้นตอนที่ 7 - เปิดใช้งานการรวมการเรียกเก็บเงินใน SolusVM 2

คุณได้กำหนดค่าตำแหน่งข้อมูล API ในด้านระบบการเรียกเก็บเงินแล้ว ตอนนี้เราจะใช้มัน

  1. เข้าสู่ระบบ SolusVM 2
  2. ไปที่ การตั้งค่า > การรวมการเรียกเก็บเงิน
  3. ใต้ "ประเภท" เลือก "การเรียกเก็บเงินที่กำหนดเอง"
  4. ระบุ URL ของปลายทาง GetTokenPricing ในฝั่งระบบการเรียกเก็บเงิน เช่น https://www.mybilling.com/solusio/api/
  5. (ไม่บังคับ) ระบบการเรียกเก็บเงินอาจต้องใช้โทเค็นเพื่อขออนุมัติ หากเป็นเช่นนั้น ให้วางโทเค็นการอนุญาตระบบการเรียกเก็บเงินของคุณ
  6. คลิก บันทึก

ขั้นตอนที่ 8 – รวมการจัดการผู้ใช้เข้ากับ SolusVM 2 ในด้านระบบการเรียกเก็บเงิน

ระบบการเรียกเก็บเงินจะต้องจัดการผู้ใช้ใน SolusVM 2 เมื่อจำเป็น

เพื่อให้บรรลุเป้าหมายนี้ คุณจะต้องตั้งค่าการรวมการจัดการผู้ใช้ กับ SolusVM 2 บนฝั่งระบบการเรียกเก็บเงิน เมื่อคุณทำเช่นนั้น ระบบการเรียกเก็บเงินจะสามารถสร้าง แก้ไข ลบ ล็อคและระงับ ผู้ใช้ใน SolusVM 2 โดยใช้ จุดสิ้นสุด SolusVM 2 API

Note

เมื่อบูรณาการการจัดการผู้ใช้ ตรวจสอบให้แน่ใจว่าระบบการเรียกเก็บเงินส่ง billing_user_id ไปยัง SolusVM 2 SolusVM 2 ต้องมี billing_user_id เพื่อจับคู่ผู้ใช้ที่จัดเก็บไว้ในระบบการเรียกเก็บเงิน กับสิ่งที่เก็บไว้ใน SolusVM 2

ขั้นตอนที่ 9 - กำหนดค่าการเข้าสู่ระบบอัตโนมัติใน SolusVM 2

ระบบเรียกเก็บเงินเปลี่ยนเส้นทางผู้ใช้ไปยังพื้นที่ผู้ใช้ SolusVM 2 เพื่อช่วยให้ผู้ใช้เข้าสู่ SolusVM 2 โดยไม่ต้องเข้าสู่ระบบเป็นครั้งที่สอง กำหนดค่าการเข้าสู่ระบบอัตโนมัติ หากต้องการทำเช่นนั้น คุณต้อง สร้างโทเค็นการเข้าถึง สำหรับผู้ใช้ก่อน จากนั้นใช้ลิงก์เข้าสู่ระบบที่มีโทเค็นเพื่ออนุญาตผู้ใช้ในสคริปต์การรวม:

GET https://www.solus-user-ui.com/auth/by_token/{access_token}

ขั้นตอนที่ 10 - กำหนดค่าการสร้างใบแจ้งหนี้ในด้านระบบการเรียกเก็บเงิน

ในขั้นตอนสุดท้าย คุณต้องกำหนดค่าระบบการเรียกเก็บเงิน เพื่อส่งคำขอ API ไปยัง /usage SolusVM 2 จุดสิ้นสุด API

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

ยินดีด้วย! คุณรวมระบบการเรียกเก็บเงินของคุณเข้ากับ SolusVM 2 เสร็จแล้ว เราหวังว่าเงินจะเข้ามาแล้ว