質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PayPal

PayPalとは、インターネットやメールアドレスを利用した決済サービスのことです。PayPal口座を開設し、送金や入金を行うことができます。クレジットカード番号や口座番号などの情報を取り引き先に知らせる必要がないため、安全なサービスといわれています。アメリカを中心に全世界で多く使用されているオンライン決済サービスです。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

1420閲覧

PayPal REST APIで非PayPalユーザーがクレジットカード決済できる決済リンクを生成したい

yutric9

総合スコア6

PayPal

PayPalとは、インターネットやメールアドレスを利用した決済サービスのことです。PayPal口座を開設し、送金や入金を行うことができます。クレジットカード番号や口座番号などの情報を取り引き先に知らせる必要がないため、安全なサービスといわれています。アメリカを中心に全世界で多く使用されているオンライン決済サービスです。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2020/02/14 17:05

お世話になります。
PayPal REST APIを使って、自社サービスの利用料をクレジットカード決済できるシステムを構築したいと考えています。
サーバー側のPHPファイル内で、Create Order(“https://api.paypal.com/v2/checkout/orders”)のエンドポイントに対して以下のようなJSONを投げているのですが、返ってきた決済リンク(‘https://www.paypal.com/checkoutnow?token=*****’のようなリンクが返ってきます)をコピペしてブラウザで開いてみるとPayPalへのログインを求められてしまいます。
PayPalアカウントを所有していないユーザー様がクレジットカードで決済できる決済リンクを作成するにはどこを修正したら良いでしょうか。または、アプローチの方法が全く間違えている場合は正しい方法をご教授いただけると幸いです。
※なお以下のコードの$charge, $user_name, $emailにはそれぞれ利用料金、ユーザー名、メールアドレスが格納されているものとします。

PHP

1//Order生成 2 $url = 'https://api.paypal.com/v2/checkout/orders'; 3 $header = array('Content-Type: application/json', 'Authorization: Bearer '.$access_token); 4 $data = array( 5 'intent'=>'CAPTURE', 6 'purchase_units'=>array( 7 array( 8 'amount'=>array( 9 'currency_code'=>'JPY', 10 'value'=>$charge) 11 ) 12 ), 13 'payer'=>array( 14 'name'=>array( 15 'given_name'=>$user_name 16 ), 17 'email_address'=>$email 18 ), 19 'application_context'=>array( 20 'landing_page'=>'BILLING' 21 ) 22 ); 23 $data_json = json_encode($data); 24 // echo $data_json."<br>"; 25 $ch = curl_init(); 26 curl_setopt($ch, CURLOPT_HTTPHEADER, $header); 27 curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST'); 28 curl_setopt($ch, CURLOPT_POSTFIELDS, $data_json); 29 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 30 curl_setopt($ch, CURLOPT_URL, $url); 31 $result=curl_exec($ch); 32 curl_close($ch); 33 $result_decode = json_decode($result, true); 34 echo var_dump($result_decode);

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Paypalで非ユーザーがクレジット決済出来ると言う仕様は聞いたことがないので、不可能だと思います。

(どこかの記事やドキュメントでそういう使い方がけいさいされていたのであれば、質問に追記お願いします)~~

追記

ウェブペイメントプラスなら出来そうですが、月額料金が必要なのと、APIには対応していないような気がします。

追記

インテグレーションガイド
のP49あたりが該当しそうです。

投稿2020/02/14 17:27

編集2020/02/14 17:38
tanat

総合スコア18713

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yutric9

2020/02/16 04:35

APIを使わないのであれば、ペイパル非ユーザー様に請求書を送付したことがあったので、APIでもそのような機能が使えるものと誤認しておりました。 APIリファレンス(英語)も読みながら実装していたのですが、誤解していたようです。 Stripeであれば、非ユーザー様にもクレジットカード決済の請求を出せそうなのでそちらで実装してみることにします。 回答ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問