リーダーに接続する
アプリケーションを Stripe Terminal リーダーに接続します。
注
まだリーダーを選択していない場合は、利用可能な Terminal リーダーを比較して、ニーズに最適なリーダーを選択してください。
タッチ決済を使用すると、ユーザーは、互換性のある NFC 対応 Android デバイスまたは互換性のある iPhone で対面の非接触型決済を受け付けることができます。タッチ決済は、Visa、Mastercard、アメリカン・エキスプレスの非接触型カードと NFC ベースのモバイルウォレット (Apple Pay、Google Pay、Samsung Pay) に対応しています。iPhone のタッチ決済と Android のタッチ決済のサポートは、ネイティブ Terminal SDK の拡張機能であり、モバイルアプリで直接支払いを受け付けることができます。
サポート対象のデバイスでアプリをタッチ決済リーダーに接続するには、次のステップを実行します。
- SDK を使用してリーダーを検出し、デバイスの互換性を確認します。
- SDK を使用してリーダーに接続し、決済を受け付けます。
- 予期しない切断に対処して、リーダーが予期せず切断した場合にもユーザーが引き続き決済を受け付けられるようにします。
場所を作成するサーバー側ダッシュボード
リーダーを使用する実際の場所ごとに場所を作成します。display_
をビジネスを表す名前に設定します。リーダーに接続する際にビジネスの名前を明示的に指定しない限り、顧客のデバイスのタップ画面に display_
が表示されます。必要に応じて既存の場所を編集すると、このテキストを変更できます。
リーダーを頻繁に移動させる必要があるビジネスの場合、場所にはビジネスが主に行われている場所を示す住所を使用できます。
API を使用して場所を作成するには、Create location (場所の作成) リクエストを使用します。
場所がアメリカの場合は以下が必要です。
line1
city
state
postal_
code country
ダッシュボードで場所を作成するには、場所ページの +New (新規) ボタンをクリックします。
リーダーを検出する
discoverReaders
メソッドを使用して、デバイスでのタッチ決済のハードウェアサポートを確認します。
ご利用のアプリケーションが上記の要件を満たさないデバイスで実行されている場合、discoverReaders
メソッドがエラーを返します。
export default function DiscoverReadersScreen() { const { discoverReaders, discoveredReaders } = useStripeTerminal({ onUpdateDiscoveredReaders: (readers) => { // The `readers` variable will contain an array of all the discovered readers. }, }); useEffect(() => { const { error } = await discoverReaders({ discoveryMethod: 'localMobile', }); }, [discoverReaders]); return <View />; }
リーダーに接続する
タッチ決済で決済を受け付けるには、前のステップから検出されたリーダーを connectLocalMobileReader
メソッドに指定します。
iPhone で on_
を指定したデスティネーション支払いを使用する場合、connectLocalMobileReader
に連結アカウント ID も渡す必要があります。
const { reader, error } = await connectLocalMobileReader({ reader: selectedReader, locationId:
}); if (error) { console.log('connectLocalMobileReader error:', error); return; } console.log('Reader connected successfully', reader);'{{LOCATION_ID}}'
口座の関連付けおよび Apple 利用規約
ユーザーが iPhone でリーダーに初めて接続すると、Apple の iPhone のタッチ決済利用規約が表示されます。Apple に登録するには、Apple によって表示される利用規約に同意する前に、ビジネスを表す有効な Apple ID を指定する必要があります。この操作は、Stripe アカウントごとに 1 回のみ実行する必要があります。このフローは、他のモバイルデバイスで使用する場合も含めて、同じ Stripe アカウントを使用する以降の接続では表示されません。
それぞれの連結アカウントは、次の場合に利用規約に同意する必要があります。
- Connect ユーザーがダイレクト支払いを作成する
- Connect ユーザーがデスティネーション支払いを作成し、
on_
アカウントを指定するbehalf_ of
Apple ID アカウントを関連付けて、タッチ決済による決済を受け付ける
口座の関連付けについて、詳細は Apple iPhone のタッチ決済 FAQ の「iPhoneのタッチ決済のビジネス情報」セクションをご覧ください。
予期しない切断に対処する
アプリとリーダーの間で予期しない切断が発生することがあります。たとえば、デバイスのインターネット接続が途切れると、タッチ決済リーダーは予期せず切断される可能性があります。
テスト中は、デバイスのインターネットアクセスを無効にすることで、予期しない切断をシミュレーションできます。
切断に対処するには、onDidReportUnexpectedReaderDisconnect
コールバックを実装する必要があります。これにより、アプリからタッチ決済リーダーに再接続できるようになり、また必要に応じて、ユーザーに失敗原因とタッチ決済へのアクセスを有効にできる方法が通知されます。エンドユーザーは、インターネット接続の問題など、特定のエラーを解決できます。
const { discoverReaders, connectedReader, discoveredReaders } = useStripeTerminal({ onDidReportUnexpectedReaderDisconnect: (readers) => { // Consider displaying a UI to notify the user and start rediscovering readers }, });
BBPOS および Chipper™ の名称およびロゴは BBPOS Limited の米国および/またはその他の国における商標または登録商標です。Verifone® の名称およびロゴは Verifone の米国および/またはその他の国における商標または登録商標のいずれかです。これらの商標の使用は BBPOS または Verifone による何らかの承認を意味するものではありません。