PAYJPを導入したiOSアプリで入力されたクレジットカード情報を取得する方法を見つけるのに苦戦した。
PAYJPで入力されたクレジットカード情報が必要になる機会
・CardFormViewControllerに入力された名前をバリデーションする
・SDKのUIを使わずに直接トークンを生成する
・カードフォームを利用せずトークン化してバリデーションを行う
といった場合に必要になる。
PAYJPで入力されたクレジットカード情報を取得するコード(Swift)
決済処理を行うファイルにて「import PAYJP」をして以下のコードを記述。
*CardFormViewControllerの実装コードは省略しています。
func cardFormViewController(_ formController: CardFormViewController, didProduced token: Token, completionHandler: @escaping (Error?) -> Void) {
print(token.card.id)// car_e3ccd4e0959f45e7c75bacc4be90 カードID
print(token.card.last4)// 4242 クレジットカード番号の下四桁
print(token.card.exp)// 2/2020 クレジットカードの有効期限
print(token.card.name)// TAROU YAMADA クレジットカードの名義
}
カードIDとはcar_で始まり一意なオブジェクトを示す、最大32桁の文字列を指す。
参考情報
Swiftのお役立ち情報