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

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

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

subscriptions stripe payments

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

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อัปเดตช่วงเวลาสิทธิ์เข้าถึง

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