Laravel 개발: Laravel Cashier와 Braintree를 사용하여 구독 결제를 처리하는 방법은 무엇입니까?
오늘날의 구독 경제에서는 많은 기업과 스타트업이 음악, 영화, 게임부터 클라우드 스토리지 및 애플리케이션에 이르기까지 다양한 구독 서비스를 제공합니다. 개발자라면 구독 결제를 처리할 수 있는 시스템을 구축해야 합니다. 이 기사에서는 Laravel Cashier와 Braintree를 사용하여 이를 달성하는 방법을 설명합니다.
Laravel Cashier는 구독 및 결제를 처리하기 위한 간단하면서도 강력한 인터페이스를 제공하는 Laravel 확장입니다. Braintree는 다양한 결제 수단을 쉽게 수용할 수 있는 글로벌 온라인 결제 처리 플랫폼입니다.
구체적인 구현을 위해 Laravel 8과 Braintree를 사용하겠습니다. 프로젝트에 Laravel Cashier 및 Braintree 확장을 설치해야 합니다. 구체적인 구현 단계는 다음과 같습니다.
먼저 Braintree API 키 및 기타 설정을 저장할 프로젝트에 환경 변수를 설정해야 합니다. .env 파일에서 환경 변수를 설정할 수 있습니다. 다음은 Braintree API 테스트 키를 사용하는 예입니다.
BRAINTREE_ENV=sandbox BRAINTREE_MERCHANT_ID=your_merchant_id BRAINTREE_PUBLIC_KEY=your_public_key BRAINTREE_PRIVATE_KEY=your_private_key
다음으로 Braintree 제어판에서 결제 포털을 만들어야 합니다. 각 포털에는 결제 처리에 사용되는 고유한 식별자와 자격 증명이 있습니다. 제어판에서 포털을 생성한 후 자격 증명을 복사하여 저장하세요.
그런 다음 config/services.php 파일에 Braintree 구성을 추가해야 합니다. 다음은 구성 예시입니다:
'braintree' => [ 'environment' => env('BRAINTREE_ENV'), 'merchant_id' => env('BRAINTREE_MERCHANT_ID'), 'public_key' => env('BRAINTREE_PUBLIC_KEY'), 'private_key' => env('BRAINTREE_PRIVATE_KEY'), ],
이제 Laravel Cashier와 Braintree를 사용하여 구독 계획을 만들 수 있습니다. 구독 요금제는 월별 또는 연간 등 반복적으로 요금이 부과되는 서비스입니다. 다음은 구독 계획을 생성하는 방법에 대한 예입니다.
use LaravelCashierSubscription; $subscription = Subscription::create([ 'name' => 'Monthly Subscription Plan', 'stripe_id' => 'monthly-subscription-plan', 'stripe_plan' => 'monthly', 'quantity' => 1, 'trial_period_days' => 14, ]); $user->subscriptions()->save($subscription);
이 예에서는 "월간 구독 계획"이라는 구독 계획을 생성합니다. 스트라이프_ID는 "monthly-subscription-plan"이고 스트라이프_플랜은 "월간"입니다. '수량' 매개변수는 구독 수량을 지정하고, 'trial_기간_일' 매개변수는 평가판 기간의 일수를 지정합니다. 구독 정보를 저장한 후 사용자는 요금제를 구독할 수 있습니다.
마지막으로 구독 결제를 처리해야 합니다. 다행스럽게도 Laravel Cashier는 이미 우리를 대신하여 결제 세부정보를 처리하고 있습니다. Laravel Cashier를 사용하면 결제 게이트웨이의 복잡성에 대한 걱정 없이 쉽게 결제를 처리할 수 있습니다. 다음은 결제 처리의 예입니다.
use LaravelCashierCashier; $user = User::find(1); $paymentMethod = $user->defaultPaymentMethod(); $payment = $user->charge(10, $paymentMethod); if ($user->subscribed('monthly-subscription-plan')) { // 更新用户的订阅和付款信息 $user->subscription('monthly-subscription-plan')->update([ 'stripe_id' => $payment->id, 'ends_at' => null, ]); }
이 예에서는 $user->defaultPaymentMethod() 메서드를 사용하여 사용자의 기본 결제 방법을 가져오고 $10를 청구합니다. 구독 요금제가 '월간 구독 요금제'인 경우 사용자의 구독 및 결제 정보가 업데이트됩니다.
결론
Laravel Cashier와 Braintree를 사용하면 구독 결제 처리가 더 쉬워졌습니다. 구독 요금제를 쉽게 생성 및 관리하고 결제를 처리할 수 있습니다. 물론 이는 단순한 예일 뿐이며 자신의 프로젝트에 더 많은 기능을 추가할 수 있습니다. 이 기사가 도움이 되기를 바랍니다!
위 내용은 Laravel 개발: Laravel Cashier와 Braintree를 사용하여 구독 결제를 처리하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!