Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Stripe 再入門 - 2022夏 / jp-stripes-sapporo-3

Stripe 再入門 - 2022夏 / jp-stripes-sapporo-3

JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門

More Decks by Hidetaka Okamoto (Stripe)

Other Decks in Technology

Transcript

  1. Stripe 再入門 - 2022夏 JP_Stripes in サッポロ Vol.7 Stripe再入門 &

    アプリ開発入門 @hidetaka_dev June 2022
  2. 岡本 秀高 ( @hidetaka_dev ) • Stripe Developer Advocate (ex-developer

    in Digitalcube) • JavaScript / TypeScript developer • AWS / Next.js / WordPress / etc… • WordCamp Kyoto 2017 / JP_Stripes Connect 2019 / AWS Samurai 2017 / etc… 2 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門 #JP_Stripes
  3. 3 https://stripe.com/jp

  4. 「インターネット向け決済インフラ」とは • オンライン決済の実装に必要な APIやSDKを提供する「FaaS Platform」 • ノーコード・ローコードで、 オンライン決済や請求書処理・定期課金を実現できる「SaaS Platform」 •

    企業の財務・金融業務を効率化し、 自分のビジネスに集中できるようにするための「Finance OS」 4 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門 #JP_Stripes
  5. Agenda • オンライン決済の実装に必要な APIやSDKを提供する「FaaS Platform」 • ノーコード・ローコードで、 オンライン決済や請求書処理・定期課金を実現できる「SaaS Platform」 •

    企業の財務・金融業務を効率化し、 自分のビジネスに集中できるようにするための「Finance OS」 5 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門 #JP_Stripes
  6. 数行のコードで、オンライン決済を実現 6 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門 const

    session = await stripe.checkout.sessions.create({ mode: "payment", success_url: `${req.headers.origin}`, cancel_url: `${req.headers.origin}`, line_items:[{ price: req.body.price_id, quantity: 1 }] }) return session.url
  7. リダイレクト型のCheckoutと、token化のElements 7 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門 #JP_Stripes

  8. 複数の言語で公式SDKを提供 • 公式SDK(サーバー側) ◦ Ruby ◦ Python ◦ PHP ◦

    Java ◦ Node.js ◦ Go ◦ .NET • 公式SDK(フロントエンド) ◦ @stripe/stripe-js ◦ @stripe/react-stripe-js • ドキュメント(stripe.com/docs)は 言語またはcURLのコードサンプル付き 8 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門
  9. Webhookでイベント駆動アーキテクチャを実装 9 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門 export

    default async function handler( req, res) { try { const event = req.body; const data = event.data.object; if (event.type === "invoice.created") { if ( // サブスクリプションが作成した請求書である。 data.billing_reason === "subscription_cycle" && // 確定していない請求書である。 data.status === "draft" ) { } } …
  10. クイックスタート: 言語別にサンプルコードがDL可能 10 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門

    https://stripe.com/docs/billing/quickstart
  11. 開発ツール: Stripe CLI / Test Clock / Stripe Shell /

    etc 11 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門
  12. Agenda • オンライン決済の実装に必要な APIやSDKを提供する「FaaS Platform」 • ノーコード・ローコードで、 オンライン決済や請求書処理・定期課金を実現できる 「SaaS Platform」

    • 企業の財務・金融業務を効率化し、 自分のビジネスに集中できるようにするための「Finance OS」 12 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門 #JP_Stripes
  13. Payment Links: ノーコードで決済URLを作成 13 JP_Stripes in サッポロ Vol.7 Stripe再入門 &

    アプリ開発入門 #JP_Stripes
  14. Payment Linksを使い倒すTips • クエリストリングを活用しよう ◦ クーポンやメールアドレスの事前入力 ◦ Google Analytics用のトラッキングコード(utm_xxx)を設定 •

    QRコード発行機能で、 実店舗やポップアップストアでの決済にも活用 • ZapierやIFTTTを使って、 決済後の処理・ワークフローもノーコードで実装 14 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門 #JP_Stripes
  15. Billings: 定期課金・サブスクリプション • ダッシュボード・APIから サブスクリプションを開始できる製品 • 多彩なサブスクリプション開始方法 ◦ 登録済み顧客データから作成 ◦

    顧客にメールで請求書送付 ◦ Payment Linksでフォーム作成 ◦ APIを利用した組み込み • 複雑な料金体系にも対応 ◦ 従量課金 ◦ ユニット単位 ◦ パッケージ単位 • トライアル終了や未払い・カード期限など、 さまざまな通知メールを自動送信 15 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門
  16. [NEW!] Stripe Apps: データ連携やカスタムWF (coming soon) • Stripeのダッシュボードや データ連携を拡張するエコシステム •

    マーケットプレイスに公開されたアプリを インストールして利用できる ◦ Mailchimpでプロモメール送信 ◦ Google Sheetsにデータエクスポート ◦ HubSpotの顧客データと連携 ◦ etc.. • https://marketplace.stripe.com/ ◦ 利用開始準備中 • 独自アプリの開発も可能 ◦ こちらは後編セッションで 16 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門
  17. Agenda • オンライン決済の実装に必要な APIやSDKを提供する「FaaS Platform」 • ノーコード・ローコードで、 オンライン決済や請求書処理・定期課金を実現できる「SaaS Platform」 •

    企業の財務・金融業務を効率化し、 自分のビジネスに集中できるようにするための 「Finance OS」 17 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門 #JP_Stripes
  18. 18 #Stripe #JP_Stripes

  19. 財務・金融のためのオペレーティングシステム • Fintechの進歩・Stripeの製品リリースで、 新しい機会・新しいお金の流れが増加する • 「それは実際に(自社で)運用できるのか?」 ◦ 請求のワークフローは複雑でないか? ◦ 会社の成長や転換の障害にならないか?

    ◦ その売上金はいつ手に入るのか? • 導入した仕組みを、正しく効率的に 運用するための仕組み(Operating System) ◦ 財務・金融など、 「お金の流れをなめらかにする」ためのOS -> Finance OS 19 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門
  20. 財務・金融のためのオペレーティングシステム • 3つのキー要素 ◦ ユーザーのビジネスに合わせて 拡張が可能であること ◦ 価格の変更などの ビジネスの変化に対応できること ◦

    データの完全性を維持しつつ 作業を自動で行えるようにする • 「自分のビジネスに集中する」ためのOS 20 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門
  21. FinanceOSで、請求業務を自動化する • Invoicing ◦ 請求書や見積書の発行とメール送信 ◦ 銀行振込 / コンビニなどもサポート ◦

    消し込みや再請求の自動化 • Tax ◦ 地域に応じた付加価値税の計算と徴収 ◦ 税の申告に必要な情報を出力 • Billings ◦ 定期的な支払いの処理 ◦ Customer Portalで 支払い・顧客情報の更新画面を提供 ◦ トライアル終了通知などの 顧客へのメール連絡の自動化 21 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門
  22. 発生主義での会計レポートを作成 [NEW!] • Revenue Recognition • Stripeで発生した取引データから 財務諸表を作成 • すべての取引データをもとに

    ビジネスに応じたカスタムルールや自動化が可能 • どこから売上が発生したのかなどの 分析や追跡にも利用可能 22 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門
  23. 金融サービスで、隠れた料金・隠れた作業を減らす • Fintech Everywhere • ビジネスの立ち上げ・運営に 必要な資金の融資をうける • 経費の支払いのためのカード発行や、 社内の経費申請フローを効率化する

    • 財務状況をAPI / Webhookで リアルタイムにモニタリングする • オンラインで、売上を入金する 銀行口座を発行する • ノーコード・ローコードで組み込む 23 JP_Stripes in サッポロ Vol.7 Stripe再入門 & アプリ開発入門
  24. 決済の会社 -> インターネット向け決済インフラ 24 JP_Stripes in サッポロ Vol.7 Stripe再入門 &

    アプリ開発入門