k5time
@k5time (k5 time)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

python で stripe api を使用しているが「PaymentLink」メソッドがエラーになる

解決したいこと

python で stripe api を使用しているが「PaymentLink」メソッドがエラーになってしまう

stripeでクレジット決済機能を提供したいと考えています。
api のリファレンスを見ながら機能を実装していますが、PaymentLink が使用できません。
解決方法を教えて下さい。

発生している問題・エラー

AttributeError: module 'stripe' has no attribute 'PaymentLink'

該当するソースコード

import stripe

stripe.api_key = "■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■"

stripe.PaymentLink.list(limit=3)

自分で試したこと

たったの3行のコードを公式リファレンスにそのままに記述したつもりがうまく動かず途方に暮れています。
https://stripe.com/docs/api/payment_links/payment_links)
apiを最新版にアップグレードしました。
「stripe.Product.list」「stripe.PaymentIntent.list」「stripe.Event.list」は正しく動作しました。
vscodeを使用しています。当方はプログラミングは初心者で独学です。
何かとても基本的なことを見落としているような気がしております。

ご指導、よろしくお願いいたします。

0

2Answer

PaymentLink クラスは stripe-python 2.65.0 で追加されました。それ以前のバージョンを使っているのでは?

0Like

Comments

  1. @k5time

    Questioner

    ご回答ありがとうございます。
    もう一つの回答を参考にライブラリのバージョンを確認した所
    古い(2.49.0)ことがわかりました。

    調べた所、condaでは2.49.0が最新のようでした
    https://anaconda.org/anaconda/stripe

    どうするのがベターでしょうか?
    conda環境を放棄してpipで仮想環境を構築するとかでしょうか?

    ご確認の程、よろしくお願いいたします。
  2. > conda環境を放棄してpipで仮想環境を構築するとかでしょうか?

    それがいいと思います。
  3. @k5time

    Questioner

    ありがとうございます。無事解決しました

どのように stripe をインストールしましたか?
公式リファレンスのサンプルコードが見当たらないのですが、どこにありますでしょうか?
どんな関数・クラスがあるかdir関数で表示して確認してみてはいかがでしょうか?
stripeという変数に別の値を代入していたりしませんか?

import stripe

print(stripe.__file__)
print(stripe.version.VERSION)
print(dir(stripe))
0Like

Comments

  1. @k5time

    Questioner

    ご回答ありがとうございます。
    ライブラリのバージョンが古い(2.49.0)ことがわかりました。
    なんとかしてアップデートしたいと思います。
    引き続き、よろしくお願いいたします。
  2. @k5time

    Questioner

    ありがとうございます。解決しました。

Your answer might help someone💌