検索
ホームページPHPフレームワークLaravelLaravel 開発: Laravel Cashier を使用してサブスクリプション支払いを実装する方法は?

Laravel は、Web アプリケーションの開発プロセスを大幅に簡素化する人気のある PHP フレームワークです。 Laravel Cashier は、サブスクリプションの支払いを処理する機能を提供する支払い処理ライブラリです。 Stripe と統合して、ユーザーがサブスクリプション機能を備えたアプリケーションを実行できるようにすることができます。この記事では、Laravel Cashierを使用してサブスクリプション支払いを実装する方法を紹介します。

  1. Stripe アカウントを作成する

Laravel Cashier を使用する前に、Stripe アカウントを作成する必要があります。 Stripe はオンライン支払いを処理するためのクラウド プラットフォームであり、その API は Laravel Cashier と簡単に統合できます。 Stripe Web サイトにアクセスし、アカウントを作成して、コンソールにログインします。コンソールでは、Stripe を Laravel Cashier に統合するために必要な重要な情報である API キーを見つけることができます。

  1. Laravel Cashier のインストール

Composer を使用して、Laravel プロジェクトに Laravel Cashier をインストールします。ターミナルで、Laravel プロジェクトのルート ディレクトリに移動し、次のコマンドを実行します。

composer require laravel/cashier

上記のコマンドを実行すると、Composer は必要な依存関係を自動的にインストールし、Laravel Cashier をプロジェクトに追加します。

  1. Laravel Cashier の構成

Laravel Cashier をインストールした後、Stripe API を適切に使用するように構成する必要があります。まず、プロジェクトで config/services.php ファイルを開き、次のコードをファイルに追加します。

'stripe' => [
    'model' => AppModelsUser::class,
    'key' => env('STRIPE_KEY'),
    'secret' => env('STRIPE_SECRET'),
],

上記のコードは、Stripe を使用するために必要な API キーを含む必要な設定情報を Laravel Cashier に提供し、ユーザーモデル。

次に、.env ファイルで Stripe API キーと Stripe Connect クライアント ID を構成します。

STRIPE_KEY=your-stripe-key
STRIPE_SECRET=your-stripe-secret
STRIPE_CLIENT_ID=your-stripe-client-id
  1. サブスクリプション プランを作成します

後で Stripe を統合しますAPI を使用するには、アプリケーションで使用するサブスクリプション プランを作成する必要があります。 Stripe コンソールで、「製品」タブに移動し、「新規製品」をクリックして製品を作成します。製品を作成した後、[請求] タブを開き、[新しいプラン] をクリックしてプランを作成します。必要に応じてプラン名、価格、期間を入力し、「プランを作成」をクリックします。

  1. ユーザーモデルの更新

Laravel Cashier はユーザーモデルを使用してサブスクリプションを管理します。したがって、続行する前に、ユーザー モデルにいくつかのメソッドを含める必要があります。ユーザーモデルを開き、次のコードをファイルの最後に追加します。

use LaravelCashierBillable;

class User extends Model implements AuthenticatableContract, CanResetPasswordContract
{
    use Authenticatable, CanResetPassword, Billable; 
}

上記のコードは、ユーザーモデルで Laravel Cashier の Billable トレイトを使用しています。これにより、ユーザーモデルで Laravel Cashier 関連のメソッドを使用できるようになります。

  1. サブスクリプション関数の実装

Laravel Cashier を使用してサブスクリプション関数を実装するのは非常に簡単です。ビューに次のフォームを追加するだけです:

<form method="POST" action="{{ route('subscribe') }}">
    {{ csrf_field() }}
    <script
        src="https://checkout.stripe.com/checkout.js" class="stripe-button"
        data-key="{{ config('services.stripe.key') }}"
        data-amount="999"
        data-name="My Awesome Website"
        data-description="Monthly Subscription"
        data-image="https://stripe.com/img/documentation/checkout/marketplace.png"
        data-locale="auto">
    </script>
</form>

上記のコードは、Stripe 購読ボタンを Web サイトに追加します。ユーザーがボタンをクリックすると、Stripe ページにジャンプして購読プロセスを完了します。

コントローラーに次のコードを追加して、サブスクリプション情報をユーザー モデルに関連付けます。

public function subscribe(Request $request)
{
    $user = $request->user();
    $user->newSubscription('main', 'plan_id')->create($request->stripeToken);
    return redirect()->back();
}

上記のコードは、新しいサブスクリプションを作成し、それをユーザー モデルに関連付け、保存します。 Stripe のサブスクリプション支払い情報。次に、ユーザーをページにリダイレクトして戻し、アプリケーションの実行を続けます。

  1. 購読解除

Laravel Cashier では、購読解除は非常に簡単です。特定のサブスクリプションをキャンセルするには、コントローラーに次のコードを追加するだけです。

public function cancel(Request $request)
{
    $user = $request->user();
    $user->subscription('main')->cancel();
    return redirect()->back();
}

上記のコードは、特定のサブスクリプションをキャンセルし、ユーザーをページにリダイレクトします。

結論

Laravel Cashier は、サブスクリプションの支払いプロセスを大幅に簡素化できる強力な支払い処理ライブラリです。 Stripe API を使用することで、Laravel Cashier はサブスクリプションプロセスを Laravel アプリケーションに簡単に統合できます。この記事のガイダンスに従って、Laravel Cashier を使用してサブスクリプション支払い機能を簡単に実装できます。

以上がLaravel 開発: Laravel Cashier を使用してサブスクリプション支払いを実装する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新のLaravelバージョン:新しいものを発見してください最新のLaravelバージョン:新しいものを発見してくださいMay 12, 2025 am 12:15 AM

LARAVEL10INTRODUCESSERALKEYFEATURESTENHANCEWEBDEVELOPMENT.1)LAZYCOLLECTIONSSALLECTIONSSALLOWECTIONSALLOWESPICIENTPROCESSINGOFLAREDATASETSWITHOUTLECORDSINTOMEMORY.2)The'Make:Model and-Migration'ArtisAncommandSimplifiesingModElsandmigrations.3)Integration

Laravel移行の説明:データベースの作成、変更、管理Laravel移行の説明:データベースの作成、変更、管理May 12, 2025 am 12:11 AM

laravelmigrationsは、開発の測定を行う必要があります

Laravel Migration:使用する価値はありますか?Laravel Migration:使用する価値はありますか?May 12, 2025 am 12:10 AM

はい、laravelmigrationsworthusing.itsimplifiesdatabaseschemamamanagement、entancescollaboration、およびprovidesversioncontrol.useitfortructured、efficientdevelopment。

Laravel:Soft Deletes Performanceの問題Laravel:Soft Deletes Performanceの問題May 12, 2025 am 12:04 AM

softdeletesinlaravelimpactperformancebycomplicating complicating andincreasingstorageneeds.tomitigatetheseissues:1)indexthedeleted_atcolumntospeedupqueries、2)useegerloadingtoreducequerycount、and3)remulationcleanupsoftedededtomentaindatabaseefiefie

Laravelの移行は何に適していますか?ユースケースとメリットLaravelの移行は何に適していますか?ユースケースとメリットMay 11, 2025 am 12:14 AM

laravelMigrationSareBenefisialForversionControl、Collaboration、およびProMotingGoodDevelopmentPractices.1)TheyThealOwTrackingBackDatabaseChanges.2)MigrationSensureTeamMembers'schemasStaysized.3)

Laravelでソフト削除の使用方法:データの保護Laravelでソフト削除の使用方法:データの保護May 11, 2025 am 12:14 AM

Laravelのソフト削除機能は、実際の削除ではなくレコードをマークすることによりデータを保護します。 1)softdeletestraitを追加し、フィールドをモデルに削除します。 2)delete()メソッドを使用して、delete()メソッドを使用してdeleteをマークし、復元します。 3)withtrashed()またはonlytrashed()を使用して、クエリ時にソフト削除レコードを含めます。 4)パフォーマンスを最適化するために一定期間を超えたソフト削除レコードを定期的に削除します。

Laravelの移行とは何ですか?それらをどのように使用しますか?Laravelの移行とは何ですか?それらをどのように使用しますか?May 11, 2025 am 12:13 AM

laravelMigrationSareversionControlfordatabaseChemas、avainwedReproducible andReversiblechanges.tousethem:1)createamigration with'phpartisanmake:migration '、2)defineschemachangesinthe'up()' methodandrealin'dod()

Laravel Migration:ロールバックは機能しません、何が起こっていますか?Laravel Migration:ロールバックは機能しません、何が起こっていますか?May 11, 2025 am 12:10 AM

laravelMigrationsmayfailtorollbackduetodategrityissues、foreignkeyconstraints、orirReversiblecoctions.1)datagegrityissuescurifigriverigrignigrationaddsdatatatcan'tcan'tcan、likecolumnwithadeadefaultvalue.2)foreientkeycostriantsscanpretrolllolllolllolllolllolllolllollblacksifrelatio

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、