AM
TH
เริ่มต้นฟรี
เมนู
คุณสมบัติ

การสมัครสมาชิก

การเชื่อมต่อ Stripe subscriptions พร้อม checkout, portal, sync และการจัดการ webhook

subscriptionsstripepayments

การสมัครสมาชิก

AM จัดการวงจรชีวิตการสมัครสมาชิกบน Stripe ให้กับบัญชี เพื่อให้คุณโฟกัสกับราคาและการควบคุมสิทธิ์การเข้าถึงแทนการดูแล webhook

คุณสามารถสร้าง checkout session ให้ลูกค้าจัดการแพลนได้เอง และซิงก์สิทธิ์การเข้าถึงบัญชีกับ Stripe ได้ต่อเนื่อง

ลำดับการสมัครสมาชิก

StripeAMผู้ใช้StripeAMผู้ใช้เริ่มเช็กเอาต์สร้างเซสชันชำระเงินเปลี่ยนเส้นทางไป Stripeชำระเงินให้เสร็จWebhook: checkout.session.completedซิงก์การสมัครสมาชิก + ฟีเจอร์

Endpoints

Endpoint วัตถุประสงค์
POST /api/accounts/:account_id/subscriptions/stripe/checkout-session เริ่ม checkout สำหรับสมัครสมาชิก
POST /api/accounts/:account_id/subscriptions/stripe/portal-session เปิด customer portal
POST /api/accounts/:account_id/subscriptions/stripe/checkout-session-sync ซิงก์ checkout session เป็น subscription
POST /api/accounts/:account_id/subscriptions/sync ซิงก์ subscriptions จาก Stripe
POST /api/accounts/:account_id/subscriptions/change เปลี่ยนแพลนหรือราคา
POST /api/accounts/:account_id/subscriptions/cancel ยกเลิกการสมัครสมาชิก
GET /api/accounts/:account_id/subscriptions แสดงรายการ subscriptions
GET /api/accounts/:account_id/subscriptions/features แสดงรายการฟีเจอร์ที่เปิดใช้งาน
GET /api/accounts/:account_id/subscriptions/identity ดึง Stripe customer identity
POST /api/applications/:application_id/subscriptions/stripe/webhook ตัวรับ Stripe webhook

Checkout Session

สร้าง Stripe Checkout session สำหรับการสมัครสมาชิกใหม่:

// Request
{
  price_id: "price_...",
  success_url: "https://app.example.com/success",
  cancel_url: "https://app.example.com/cancel"
}

// Response
{
  url: "https://checkout.stripe.com/..."
}

ให้ redirect ผู้ใช้ไปยัง URL ที่ส่งกลับมา หลังชำระเงิน Stripe จะ redirect กลับไปยัง success URL ของคุณ

Customer Portal

เปิดให้ลูกค้าจัดการด้วยตนเอง:

  • อัปเดตวิธีชำระเงิน
  • ดูใบแจ้งหนี้
  • ยกเลิกการสมัครสมาชิก
  • เปลี่ยนแพลน
// Request
{
  return_url: "https://app.example.com/settings";
}

// Response
{
  url: "https://billing.stripe.com/...";
}

ตัวตนการสมัครสมาชิก

แต่ละบัญชีมี subscription identity สำหรับแมประหว่างบัญชีกับลูกค้า Stripe ใช้เพื่อ resolve webhook จาก Stripe และซิงก์สถานะการเรียกเก็บเงิน

เหตุการณ์ Webhook

AM จัดการ Stripe webhook และ retry เมื่อเกิดความล้มเหลว:

Event การทำงาน
checkout.session.completed ผูกลูกค้าและสร้าง subscription
customer.subscription.* ซิงก์ข้อมูล subscription
invoice.paid ซิงก์ใบแจ้งหนี้และอัปเดตสิทธิ์เข้าถึง
invoice.payment_failed อัปเดตช่วงเวลาสิทธิ์เข้าถึง

ที่เกี่ยวข้อง