PayjpとLaravel
2024.02.16
おはようございます、Pay.jpで商品支払いとサブスクリプションに対応したコードを書いたので記載しときます。なお、似たようなコードがネットに落ちていると思いますがどうしても似通ってしまいますね。因みにサブスクリプションの場合、Pay.jpの管理画面からサブスクリプション(プラン)の作成して名前付けしないといけません。
また、クレジットカードの記入画面はリファレンスのサンプルから作るのが早いかなって思います。そしてクレジットカードのデモ用コードもPay.jpのリファレンスかドキュメントに記載していますので、そちらを参考にしてください。
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Payjp\Payjp;
use Payjp\Charge;
use Payjp\Customer;
use Payjp\Subscription;
class PaymentController extends Controller
{
//
public function index()
{
return view('payment.index');
}
public function payment(Request $request)
{
Payjp::setApiKey(config('app.secret_key'));
// クレカトークンが送られる(tok_xxxxxxxxxxxxxxxxxxxx)
$token = $request->input('tokenId');
$result = Charge::create(array(
"card" => $token,
"amount" => 3500,
"currency" => 'jpy',
'description' => 'ABC商品',
'product' => 'ABC',
'metadata' => [
'user_id' => '123',
'user_name' => 'あいうえお',
'email' => 'mail@abc.com'
]
));
return back();
}
public function subindex()
{
return view('payment.subscription');
}
public function subscription(Request $request)
{
$token = $request->input('tokenId');
Payjp::setApiKey(config('app.secret_key'));
// 顧客情報の登録
$customer = Customer::create(array(
'email' => 'mail@abc.com',
'card' => $token, // クライアントから受け取ったトークンを記載します。
'metadata' => [
'user_id' => '123',
'user_name' => 'あいうえお',
'email' => 'mail@example.com'
]
));
// 課金処理
$charge = Subscription::create(array(
'customer' => $customer->id,
'plan' => 'plan01', // あらかじめpay.jp側に登録しておいた値。
'metadata' => [
'user_id' => '123',
'user_name' => 'あいうえお',
'email' => 'mail@example.com'
]
));
return back();
}
}
著者名 @taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
array, Charge, config, create, Customer, index, input, lt, mail@example.com, namespace AppHttpControllers, PayJP, payment.subscription, request, setApiKey, subindex, subscription, use IlluminateHttpRequest, use PayjpSubscription, サブスクリプション, リファレンス,
PayJPの決済処理。
2024.02.06
おはようございます、PayJPの決済処理をLaravelに導入してみました。そんなに難しい話ではないけれど、クレジットカードの入力欄はPayJPさんにもう少しデフォルト状態で頑張って欲しかった。
変更は可能なのだけども、ちょっとイマイチ感があります。PayJPとグローバル展開しているStripeを比べるとやっぱStripeの方がビジュアル良いですよね。恐らくどちらも個人事業主でも審査が通るらしいので(全てのひとが通るとは限らない)、良さげだなって思っています。
今回、試したPayJPのAPIかStripeのAPIでサブスク決済を作ってみました。テストモードですがちゃんと動いていたので良かったです。これで決済処理部分は出来たのだけど、サービスモデルが無い、いろいろ考えて入るもののこれは良さげだなっていうのが無い感じですね。
HxHのサービスはこれ需要があるだろうと思って結局当たりました、なので自分はそれなりにこれ上手くいきそうなアンテナを持っています。アイディアが降ってきたらそれを作ろうと思っていますが、なかなかアイディアがでてこないのは外に出ていないからもしれないですね。
なんか無いかな~。
明日へ続く。
著者名 @taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
API, APIかStripe, HxH, Laravel, PayJP, PayJPさん, Stripe, アイディア, アンテナ, イマイチ感, グローバル展開, サブスク決済, テストモード, ぱStripe, ひと, 審査, 少しデフォルト状態, 決済処理, 良, 需要,