$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
PayPal API と AWSで作る動画コンテンツマーケット
Search
Yuichi Takeuchi
June 15, 2016
Technology
1
4k
PayPal API と AWSで作る動画コンテンツマーケット
PayPal Tech Meetup #2 の発表内容です。
PayPal Adaptive API とAWSを利用して個人でも簡単に複雑なシステムを実装できます。
Yuichi Takeuchi
June 15, 2016
Tweet
Share
More Decks by Yuichi Takeuchi
See All by Yuichi Takeuchi
現実のRuby/Railsアップグレード外伝 ~そして僕はforkした~
takeyuweb
0
680
現実のRuby/Railsアップグレード
takeyuweb
4
13k
Shinjuku.rb #95 LT会!心の技術書を紹介しよう!
takeyuweb
0
76
リモートワークへの招待
takeyuweb
2
530
OSSにみるレールの外側
takeyuweb
0
220
Rails meets Content Security Policy
takeyuweb
1
680
Rails受託会社を作っている話
takeyuweb
0
130
社長が書いたクソコードたち
takeyuweb
0
1.9k
Rails 考古学:WebAPIを取り巻く環境の変化とRailsの対応について
takeyuweb
0
110
Other Decks in Technology
See All in Technology
事業の財務責任に向き合うリクルートデータプラットフォームのFinOps
recruitengineers
PRO
2
200
「図面」から「法則」へ 〜メタ視点で読み解く現代のソフトウェアアーキテクチャ〜
scova0731
0
490
Knowledge Work の AI Backend
kworkdev
PRO
0
220
Strands AgentsとNova 2 SonicでS2Sを実践してみた
yama3133
1
1.8k
MariaDB Connector/C のcaching_sha2_passwordプラグインの仕様について
boro1234
0
1k
株式会社ビザスク_AI__Engineering_Summit_Tokyo_2025_登壇資料.pdf
eikohashiba
1
110
ハッカソンから社内プロダクトへ AIエージェント「ko☆shi」開発で学んだ4つの重要要素
sonoda_mj
6
1.6k
_第4回__AIxIoTビジネス共創ラボ紹介資料_20251203.pdf
iotcomjpadmin
0
130
オープンソースKeycloakのMCP認可サーバの仕様の対応状況 / 20251219 OpenID BizDay #18 LT Keycloak
oidfj
0
170
子育てで想像してなかった「見えないダメージ」 / Unforeseen "hidden burdens" of raising children.
pauli
2
320
さくらのクラウド開発ふりかえり2025
kazeburo
2
1.1k
[Data & AI Summit '25 Fall] AIでデータ活用を進化させる!Google Cloudで作るデータ活用の未来
kirimaru
0
3.7k
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
400
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Un-Boring Meetings
codingconduct
0
160
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
280
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
1
860
GraphQLとの向き合い方2022年版
quramy
50
14k
Faster Mobile Websites
deanohume
310
31k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Transcript
PayPal APIとAWSで作る 動画コンテンツマーケット PayPal Tech Meetup #2 タケユー・ウェブ ⽵内雄⼀
⽵内雄⼀@タケユー・ ウェブ • Web開発者です • フリーランス(8年) • Rails / Movable
Type / AWS etc…
タケユー・ウェブ 株式会社 • 6⽉3⽇に法⼈成りしました! • https://takeyuweb.co.jp/ • ありがとうございます!ありがと うございます!
動画コンテンツマーケット (デモ)を1⽇で作った話
動画コンテンツマーケット概要 • 利⽤者が動画をアップロード • システムが配信⽤の動画形式(HTTP Live Streaming⽤)に⾃ 動変換し、商品として登録 • 視聴者は興味のある動画を購⼊し、ブラウザ上でストリーミン
グ再⽣ • 売り上げから運営者とPayPalそれぞれの⼿数料を引いた残りが、 投稿者のPayPalアカウントに送⾦される • 売り上げを配分するシステムが必要!
動画コンテンツマーケット概要
動画コンテンツマーケット概要
必要な機能 • 販売者登録(報酬⼊⾦先登録など) • 動画登録 • アップロード • 動画変換(ストリーミング⽤など) •
決済 • 代⾦⽀払い • ⼊⾦後処理(動画の視聴権限追加) • 売り上げの分配 • 結構⾯倒。なるべく⾃動化して⼿間をかけずにやりたい!
デモ 作ったものをみせます。
PayPal API実装について PayPal APIを使って簡単な決済機能を実装!
PayPal Adaptive API • 送り⼿から1⼈以上の受け⼿への送⾦を処理する • 連鎖⽀払い(Chained Payments) • SenderがPrimary
receiverに⽀払い • Primary receiverが受け 取った⾦額の⼀部を Secondary receiverに送 ⾦ • SenderからはSecndary receiverは⾒えない ※本番での利⽤には審査が必要だそうです。
Ruby SDK • gem ʻpaypal-sdk-adaptivepaymentsʼ api = PayPal::SDK::AdaptivePayments.new pay =
api.build_pay({ :actionType => 'PAY', # (省略) :receiverList => { :receiver => [ { # まず全額を運営者が受け取って :paymentType => 'DIGITALGOODS', :amount => @video.price, :email => "
[email protected]
", :primary => true }, { # 2割を投稿者に⽀払う :paymentType => 'DIGITALGOODS', :amount => (@video.price * 0.8).floor, :email => @video.seller.paypal_email, :primary => false } ] }, # (省略) }) @pay_key = response.payKey
決済と報酬分配 • 動画の視聴権限がなければ PayPalボタン • ボタンを押すとPayPal決済スタート • 決済完了後、Webアプリで結果を受け取り、権限割り当て • 報酬分配はAdaptivePayment
APIのChained Paymentsだけで 実装可能!
PayPal for Digital Goods • ダウンロード販売時の⼿数料がお得になる(かも)サービス • 通常のPayPal⼿数料 • 3.6%
+ \40 JPY • 150円の商品を販売した場合、⼿数料 45円。 • 40円の固定部分が⾼いです・・・ • ⼩額決済⽤⼿数料 • 5% + \7 JPY • 150円の商品を販売した場合、⼿数料 15円。 • 少額決済の時にはこの差は⼤きい! • ダウンロード販売時、どちらか安い⽅を⾃動的に適⽤してくれるの でもちろん使う • 専⽤の決済URLがある
AWSについて ⾯倒なインフラ管理はクラウドコンピューティングにおまかせ
AWSについて • S3 • SNS • Elastic Transcoder • OpsWorks
S3 • クラウドストレージ • アップロード動画保管先 • 変換済み動画保管先 • 署名付きURL機能で権限のある⼈にだけDLさせることも
SNS • Pub-Sub • AWS上各サービスのイベント(やAPIからの)でPush • メッセージ受け取り⽤のURL、メール等をたたく
Elastic Transcoder • 動画変換サービス • S3上にアップロードしておいた動画ファイルを変換して、S3に 書き出す • 同時にサムネイルも作れます •
ffmpegの保守にウンザリしている貴兄に!
OpsWorks • Chefベースの構成管理ツール • サーバー管理の⾃動化 • オートスケール、スケジューリングなど • 今回はRailsアプリサーバをデプロイ
まとめ
まとめ • PayPal API • Ruby SDKがあってよかった • REST API⽤もある→gem
'paypal-sdk-restʻ • Adaptive PaymentsはREST API対応してないの? • 以前Perlで触ったときは公式SDKがなくつらかった • いろんな機能があってとっつき⾟かった • 単なる⽀払い以上のことが簡単に実装できて楽しかった • AWS • 僕のような個⼈開発者でも⾼機能なサービスを簡単に構築できて最⾼ • 儲かるサービスを作りたい • 参考になれば!