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

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

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

Stripeとは、米国のオンライン決済システム提供企業、及び同社が提供する決裁システムを指します。Webサイトやモバイルアプリにコードを組み込むことでクレジットカードなどの決済サービスが簡潔に追加できます。

AWS Lambda

AWS Lambdaは、クラウド上でアプリを実行できるコンピューティングサービス。サーバーのプロビジョニングや管理を要せず複数のイベントに対してコードを実行します。カスタムロジック用いた他AWSサービスの拡張やAWSの規模やパフォーマンスを用いたバックエンドサービスを作成できます。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

0回答

848閲覧

PHYSONでSTRIPEのAPIを利用してプラン変更した場合の見積もりを取得したい。【AWS LAMDA】

milkwalking

総合スコア60

Stripe

Stripeとは、米国のオンライン決済システム提供企業、及び同社が提供する決裁システムを指します。Webサイトやモバイルアプリにコードを組み込むことでクレジットカードなどの決済サービスが簡潔に追加できます。

AWS Lambda

AWS Lambdaは、クラウド上でアプリを実行できるコンピューティングサービス。サーバーのプロビジョニングや管理を要せず複数のイベントに対してコードを実行します。カスタムロジック用いた他AWSサービスの拡張やAWSの規模やパフォーマンスを用いたバックエンドサービスを作成できます。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

0クリップ

投稿2021/06/17 01:08

■やりたいこと
AWSのラムダを利用して月額課金プランAから月額課金プランBに変更を行った場合の見積もりを取得したいです。
ラムダの発火はAPIゲートウェイから行っており、成功しております。
APIに不慣れでエラーから検索して修正を試みましたが行き詰っております。
お手数ですがお力添えいただければ幸いです。

■参考にしたサイト
tripe Billing - 定期支払いにおける比例配分の考え方
https://qiita.com/y_toku/items/404b3c99632161f18579

■コード

physon

1import json 2import stripe 3 4def lambda_handler(event, context): 5 stripe.api_key = "STRIPE_API_KEY" 6 subscription_Id = 'sub_**********' 7 planId ='si_*********' 8 customerId = 'cus_**********' 9 10 next_prodId = 'prod_*********' 11 next_priceId = 'price_**********' 12 13 subscription = stripe.Subscription.retrieve(sub_**********) 14 15 subscription_item = { 16 "id": subscription_item_id, 17 "object": "subscription_item", 18 "price": { 19 "id": next_priceId, 20 "product": next_prodId 21 }, 22 "quantity": 1, 23 "subscription": subscription_Id 24 } 25 26 27 invoices = stripe.Invoice.upcoming( 28 customer=customerId, 29 subscription = subscription_item 30 ) 31 32 33 return { 34 'statusCode': 200, 35 'headers': { 36 "Access-Control-Allow-Origin": "*", 37 "Access-Control-Allow-Methods": "POST", 38 "Access-Control-Allow-Headers": "Origin, X-Requested-With, Content-Type, Accept, Access-Control-Allow-Origin, Access-Control-Allow-Methods" 39 }, 40 'body': json.dumps('complete') 41 } 42

■Response

physon

1{ 2 "errorMessage": "Request req_**********: Invalid string: {:id=>\"si_*********\", :object=>\"subscription_item\", :price=>{:id=>\"price_*********\", :product=>\"prod_*********\"}, :quantity=>\"1\", :subscription=>\"sub_*********\"}", 3 "errorType": "InvalidRequestError", 4 "stackTrace": [ 5 [ 6 "/var/task/lambda_function.py", 7 47, 8 "lambda_handler", 9 "subscription = subscription_item" 10 ], 11 [ 12 "/var/task/stripe/api_resources/invoice.py", 13 63, 14 "upcoming", 15 "response, api_key = requestor.request(\"get\", url, params)" 16 ], 17 [ 18 "/var/task/stripe/api_requestor.py", 19 122, 20 "request", 21 "resp = self.interpret_response(rbody, rcode, rheaders)" 22 ], 23 [ 24 "/var/task/stripe/api_requestor.py", 25 373, 26 "interpret_response", 27 "self.handle_error_response(rbody, rcode, resp.data, rheaders)" 28 ], 29 [ 30 "/var/task/stripe/api_requestor.py", 31 152, 32 "handle_error_response", 33 "raise err" 34 ] 35 ] 36}

■ランタイム
Python 3.6

■Stripeの参考にしているページ
Stripe
https://stripe.com/docs/api/invoices/upcoming
https://stripe.com/docs/api/subscription_items/object

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

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

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

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

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

m.ts10806

2021/06/17 02:12

回答依頼いただきましたがPythonは専門外なので、対象タグのスコアなど確認してから回答依頼していただきたく。
milkwalking

2021/06/17 03:54

申し訳ございません。今後そのように確認させていただきます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問