【超簡単】LINE Pay APIをPHPで実装する方法を解説!


こんな悩みを解決できる記事を書きました!
僕は現役フリーランスエンジニア(歴10年)で、資格は13個保有しています。
結論、LINE Pay APIをPHPで実装するのは非常に簡単です。


本記事を読めば、LINE Pay APIをPHPで実装する方法が理解できるので早速見ていきましょう!



すぐ読み終わるので、ぜひ最後まで読んでくださいね♪
【当サイト】おすすめフリーランスエージェント3選 | |||
---|---|---|---|
エージェント | 評価 | ポイント | 公式サイト |
![]() ![]() レバテックフリーランス ![]() ![]() | 5.0 | 業界最大級のエージェント。 高単価案件が豊富。 | 公式 |
![]() ![]() Midworks ![]() ![]() | 4.8 | 満足度調査で 3年連続3冠を達成。 | 公式 |
![]() ![]() ITプロパートナーズ ![]() ![]() | 4.6 | 週2〜3向けの案件が豊富。 | 公式 |
【前提】環境
今回は、SandBox環境(テスト環境)を利用します。



RequestAPIの実行までを実装していきます。
LINE Pay APIをPHPで実装するための事前準備
LINE Pay APIをPHPで実装するための事前準備を解説します。


ログイン後、「決済連動管理」⇒「連動キー管理」でパスワード(ログイン時のパスワード)を入力し、確認をクリックします。


Channel IDとChannel Secret Keyをメモしておきます。
LINE Pay APIをPHPで実装する
LINE Pay APIをPHPで実装します。
<?php
// チャネルID(連動キー管理) ※環境毎に変えること
$channel_id = 'あなたのチャネルID';
// チャネルシークレットキー(連動キー管理) ※環境毎に変えること
$channel_secret_key = 'あなたのシークレットキー';
// LINE URL ※下記どちらでも可能
$line_url = 'https://sandbox-api-pay.line.me';
// $line_url = 'https://api-pay.line.me';
// パス
$path = '/v3/payments/request';
// ノンス
$nonce = gen_uuid();
// ボディ
$body = json_encode(array(
"amount" => 1,
"currency" => "JPY",
"orderId" => "testOrderId",
"packages" => array(array(
"id" => "testPackages1",
'name' => "packages",
"amount" => 1,
"products" => array(array(
"id" => "testProducts1",
"name" => "products",
"quantity" => 1,
"price" => 1
))
)),
"redirectUrls" => array(
"confirmUrl" => "https://myPage",
"cancelUrl" => "https://myPage"
)
));
echo $body;
// シグネチャ
$signature = base64_encode(hash_hmac('sha256', $channel_secret_key . $path . $body . $nonce, $channel_secret_key, true));
// ヘッダ情報
$header = array(
'Content-Type:' . 'application/json',
'X-LINE-ChannelId:' . $channel_id,
'X-LINE-Authorization-Nonce:' . $nonce,
'X-LINE-Authorization:' . $signature
);
/***********************************************************
* API実行
***********************************************************/
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $line_url . $path);
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $body);
$result = curl_exec($curl);
curl_close($curl);
echo $result;
/**
* UUIDを生成する
*/
function gen_uuid()
{
return sprintf(
'%04x%04x-%04x-%04x-%04x-%04x%04x%04x',
mt_rand(0, 0xffff),
mt_rand(0, 0xffff),
mt_rand(0, 0xffff),
mt_rand(0, 0x0fff) | 0x4000,
mt_rand(0, 0x3fff) | 0x8000,
mt_rand(0, 0xffff),
mt_rand(0, 0xffff),
mt_rand(0, 0xffff)
);
}
?>
上記を実行します。
{
"returnCode": "0000",
"returnMessage": "Success.",
"info": {
"paymentUrl": {
"web": "https://sandbox-web-pay.line.me/web/payment/wait?transactionReserveId=hoge...",
"app": "linesandbox://pay/payment/hoge..."
},
"transactionId": 2020122500646238200,
"paymentAccessToken": "911163781279"
}
}
↑のようなJSONが返却されればOKです。
【当サイト】おすすめフリーランスエージェント3選 | |||
---|---|---|---|
エージェント | 評価 | ポイント | 公式サイト |
![]() ![]() レバテックフリーランス ![]() ![]() | 5.0 | 業界最大級のエージェント。 高単価案件が豊富。 | 公式 |
![]() ![]() Midworks ![]() ![]() | 4.8 | 満足度調査で 3年連続3冠を達成。 | 公式 |
![]() ![]() ITプロパートナーズ ![]() ![]() | 4.6 | 週2〜3向けの案件が豊富。 | 公式 |
【厳選】フリーランスエンジニアにおすすめなエージェント3選


フリーランスエンジニアになるにはエージェントから案件をもらう必要があります。
僕が実際に利用しているおすすめエージェントを紹介しますね。



エージェントは必ず複数登録してください。
担当者によっては「全然案件紹介してくれない…」みたいなこともあるので…
僕は実際に5つのエージェントを使い回していますよ。
フリーランスを始めるなら「レバテックフリーランス


」

- 業界最大級の案件数。
- 業界トップクラスの高単価報酬、低マージン(平均年収862万円)。
- 案件参画中のフォローの充実。
※詳細は「【業界最大手】レバテックフリーランスとは?メリットや利用手順を解説!」を参照。
レバテックフリーランス
とにかく案件数が多いので、とりあえず登録しておけば間違いないエージェントです!



僕もはじめてフリーランスの案件を貰ったのはレバテックフリーランス
保有している案件数が多いので、業務経験がなくても何かしらの案件は紹介してもらえますよ(僕はJavaの経験3年でも案件を貰えました)。
手厚い保障を重視したいなら「Midworks


」

- 手厚い保障で正社員並みの安心感。
- 還元率60%超え&単価公開でクリアな契約。
- 給与保障制度(審査あり)。
Midworks
フリーランスを目指しているけど不安な方や保障を重視したい方におすすめです。



僕も何度か案件を紹介してもらいました。
自分のスキルに合った案件を紹介してもらえましたし、電話のやり取りも非常に丁寧でした。
週2〜3日の案件探しなら「ITプロパートナーズ


」

- IT案件に特化したフリーランスエージェント。
- 週2〜3日の案件が豊富。
- リモート案件が多く、直エンドなので単価も高い。
※詳細は「【週2・3案件】ITプロパートナーズとは?メリットや利用手順を解説!」を参照。
ITプロパートナーズ
週2〜3日から参画できる案件が豊富なので、起業したい人にもおすすめです。



週2〜3日の案件はある程度スキルがないと紹介してもらえない印象です。
とはいえ、週5の案件ももちろんありますし、僕が利用した時は迅速・丁寧に対応していただきました!
まとめ
今回は、LINE Pay APIをPHPで実装する方法について解説しました。
以下が本記事のまとめになります。



最後までお読みいただき、ありがとうございました!
【当サイト】おすすめフリーランスエージェント3選 | |||
---|---|---|---|
エージェント | 評価 | ポイント | 公式サイト |
![]() ![]() レバテックフリーランス ![]() ![]() | 5.0 | 業界最大級のエージェント。 高単価案件が豊富。 | 公式 |
![]() ![]() Midworks ![]() ![]() | 4.8 | 満足度調査で 3年連続3冠を達成。 | 公式 |
![]() ![]() ITプロパートナーズ ![]() ![]() | 4.6 | 週2〜3向けの案件が豊富。 | 公式 |
- クソおすすめ本



海外のエンジニアがどういった思考で働いているかが理解できます。
海外に行く気はないけど海外エンジニアの動向が気になる雑魚エンジニアにおすすめです(本当におすすめな本しか紹介しないのでご安心を)。