質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Firebase

Firebaseは、Googleが提供するBasSサービスの一つ。リアルタイム通知可能、並びにアクセス制御ができるオブジェクトデータベース機能を備えます。さらに認証機能、アプリケーションのログ解析機能などの利用も可能です。

Google Cloud Platform

Google Cloud Platformは、Google社がクラウド上で提供しているサービス郡の総称です。エンドユーザー向けサービスと同様のインフラストラクチャーで運営されており、Webサイト開発から複雑なアプリ開発まで対応可能です。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

データ構造

データ構造とは、データの集まりをコンピュータの中で効果的に扱うために、一定の形式に系統立てて格納する形式を指します。(配列/連想配列/木構造など)

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

0回答

362閲覧

ポイント付与を伴う決済フローが適切かどうか

shihominorth

総合スコア46

Firebase

Firebaseは、Googleが提供するBasSサービスの一つ。リアルタイム通知可能、並びにアクセス制御ができるオブジェクトデータベース機能を備えます。さらに認証機能、アプリケーションのログ解析機能などの利用も可能です。

Google Cloud Platform

Google Cloud Platformは、Google社がクラウド上で提供しているサービス郡の総称です。エンドユーザー向けサービスと同様のインフラストラクチャーで運営されており、Webサイト開発から複雑なアプリ開発まで対応可能です。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

データ構造

データ構造とは、データの集まりをコンピュータの中で効果的に扱うために、一定の形式に系統立てて格納する形式を指します。(配列/連想配列/木構造など)

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2020/07/31 07:09

###どんな実装か
0. 現在各個人やショップに商品の支払いをiOSアプリ上に実装しております。
0. 商品購入完了後ポイントを商品を購入したユーザーにプレゼントします。

###聞きたいこと

1. 下記のフローで各個人やショップに商品の支払いは可能でしょうか? 2. このフローだと実装にあたりどのような懸念点・問題点が予測されるでしょうか? 3. このフローの中にもしできれば、cloud functionsでFirestoreにデータが書かれたことをトリガーとして、 在庫があるか確認して(Cloud firestore上の商品のデータの中に在庫数のデータあり)、 その在庫数を1引いた後に購入希望者がいるという旨のメールを送るという動作を入れたいのですが、そもそもこの動作は可能でしょうか?可能ならばしたのフローのいつのタイミングで行えば良いのでしょうか?

######各ショップ・個人への支払い(PayPal)

1. 金額を表示

2. 支払い方法を選択(銀行振り込み・PayPal)

3. PayPalを選択したらwebview等でアカウントログイン画面に飛ぶ

4. 3と同時にcloud firestore上に購入したい商品と購入者の名前、口座番号(どの口座から振り込まれたかあとで判別するため)データを書きこむ。

5. 以下の内容をwebview上でする

・支払いと請求のページに移動します。 ・受取人のメールアドレスまたは携帯電話番号を入力し、[次へ]をクリックします。 ・適切な支払いタイプを選択します。   友達や家族に支払う: 友達や家族へ個人間の支払いを行う場合は、こちらを選択します。   商品またはサービスに対する支払い: マーチャントへの商用支払いをするにはこれを選択し、PayPal買い手保護をご利用ください。 ・支払い金額を入力し、通貨を選択し、お客さまの受取人へのメッセージを追加し(任意)、[続行]をクリックします。 ・ 支払い情報を確認し、[今すぐ支払う]をクリックします。

6. navigationbar上のdoneボタンを押し、webviewを閉じる

7. ユーザーに支払いを完了したかどうかアプリ上で聞く

8.

・ユーザーが支払いを完了のボタンを押した場合、完了のデータをcloud firestoreに書き込み、その旨(paypalに登録しているemailか電話番号も含む)を出品者に伝える(バックエンド)

・ユーザーが支払いを未完了のボタンを押した場合、未完了のデータをcloud firestoreに書き込み、その旨を出品者に伝える(バックエンド)

・ なお出品元の商品管理画面にも支払いが完了したことを確認するボタンあり(商品を購入したユーザーがボタンを押すのを忘れることを懸念したため)

######ポイント付与の実装

  1. 今のところ出品者にこの商品は注文完了しましたという旨のボタンを押してもらい、
  2. cloud firestore上の購入された商品のデータの注文完了されたというデータを書き込み
  3. さらにcloud firestore内の商品を購入したユーザーのデータ上のポイント数に加算

###必要な言語等
iOS / Swift / JavaScript / Node.js

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問