Payment Advent Calendar 1日目です。急遽勢いで立ち上げてしまったが頑張るぞーっと。
1日目として、日本のみなさんにはあまり馴染みのないかもしれないPayPalの技術スライドをいくつかピックアップしてみました。
僭越ながら、今年の振り返りとして色んなところで喋った私のスライドも載せさせていただきます。
API、バックエンド編
おもにバックエンドのAPIプラットフォームの構成などを説明したスライドです。
さすが歴史が長いだけあって格闘の歴史が垣間見えます。
2つ目のスライドのp14の構成図でAPI facadeパターンについて書かれているのは興味深いです。
[Evolution of PayPal API Platform at API Meetup]
(http://www.slideshare.net/deepaknadig/evolution-of-paypal-api-platform-at-api-meetup)
Craft Conference 2015 - Evolution of the PayPal API: Platform & Culture
PayPal Real Time Analytics
Node.js、フロントエンド編
PayPalは全世界で利用できるグローバルサービスですが、UIの仕様やリリースタイミングが各地域で異なっていたりします。そんな複雑なフロントエンドの仕様をどうさばいているかの資料です。
先日の東京Node学園祭でも、PayPalがnode.jsのエンタープライズ事例として紹介されていました。
こちらも長い歴史との格闘が書かれていて、その中で生まれたOSS、Kraken jsと共に語られていることが多いです。
ちなみに、たまにPayPalはJavaをNode.jsで書き換えた的な発言を見つけますが、上記にあるとおり、バックエンドは様々な資産が生きており、フロントエンドのJSP資産を新しいJavaScript資産に置き換えているのが正しい認識かと思います(さすがに決済系を全てNode.jsで書くのはどうかと個人的には思います)。
Kraken js at paypal
KrakenJS
決済全般、セキュリティ編
USのAdvocatorで日本のBattleHackにも来てくれたJonathan LeBlanc氏の資料です。
テクニカルライターということもあって、スライドとして非常にみやすいです。
Secure Payments Over Mixed Communication Media
Protecting the Future of Mobile Payments
日本語での入門編
私のスライドになりますが、日本でのPayPalの仕様や取り組みをわかりやすく伝えるために書いたものです。2つ目のスライドでは珍しく法令的なものにもふれています。
API Meetup #8 PayPal API
Shinjuku.rb 20151125 PayPal 101
まとめ
全般的に長い歴史をもつシステムの課題克服へのアプローチが多くて、決済以外にも色々参考になる部分があるのではないでしょうか?
実はPayPalはAPIエコノミーの促進にも積極的でして、Open API Initiativeに参画したり、REST APIのHATEOAS LinkやWebhookの仕様は広く参考にされています。
このあたりは、後日のAdvent Calendarで触れられたらとおもいます。
PayPalの技術情報に興味のある方は、技術ブログのほうもあさってみてもいいかとおもいます。
「こんなスライドもあるよ?」とかあればぜひおしえてください!