iOS開発-微信支払い業務プロセスの説明(公式ドキュメントインタフェース付)

4484 ワード

iOS微信支払詳細(ビジネスプロセスと具体的なコード)


前言


微信支払いは現在のモバイル開発でもよく使われている技術であり、地位や意味はこれ以上言う必要はない.実は微信支払いという開発技術点については難しくない技術的なポイントで、中国語のドキュメントもはっきり言っています.コードとドキュメントを組み合わせて、この技術を整理し、まとめます.

シーン紹介


ユーザーがモバイル端末アプリに微信決済機能を統合するのに適しています.
商戸APPは微信が提供するSDKを呼び出して微信支払いモジュールを呼び出し、商戸APPは微信にジャンプして支払いを完了し、支払いが終わったら商戸APPに戻り、最後に支払い結果を示す.

対話の詳細:

  • 手順1:ユーザーはユーザーのアプリに入り、商品の注文を選択し、購入を確認し、支払いの一環に入る.ユーザーサービスバックグラウンドで支払い注文を生成し、署名した後、データをAPP側に転送します.
  • ステップ2:ユーザーがクリックして支払い操作を開始し、微信インタフェースに入り、微信支払いを呼び出し、支払い確認インタフェースが表示される.
  • 手順3:ユーザーは受取人と金額を確認し、クリックしてすぐに支払うとパスワード入力画面が表示され、小銭または銀行カードで支払うことができます.
  • ステップ4:正しいパスワードを入力すると、支払いが完了し、ユーザー側の微信に支払い詳細ページが表示されます.
  • ステップ5:商家アプリに戻り、商家アプリは支払い結果に基づいて注文処理結果をカスタマイズして表示する.

  • ビジネスプロセス


    商戸システムと微信支払いシステムの主な相互説明:
  • ステップ1:ユーザーはビジネスアプリで商品を選択し、注文書を提出し、微信支払いを選択する.
  • ステップ2:商店のバックグラウンドでユーザーの支払い書を受け取り、微信支払い統一注文インタフェースを呼び出す.「統一注文API」を参照.
  • 手順3:統合された単一インタフェースは正常なprepayを返します.idは、署名仕様に従って署名を再生成した後、APPにデータを転送します.署名に参加するフィールド名はappId,partnerId,prepayId,noncesStr,timeStamp,packageである.注意:packageの値フォーマットはSign=WXPay
  • です.
  • ステップ4:商家アプリは微信支払いを開始する.api本章【appエンド開発手順説明】
  • 参照
  • ステップ5:取引先バックグラウンドは支払い通知を受信します.api「支払結果通知API」
  • 参照
  • 手順6:取引先バックグラウンドで支払い結果を照会します.api参照【問合せオーダーAPI】
  • API詳細


    IOS:https://open.weixin.qq.com/zh_CN/htmledition/res/dev/document/sdk/ios/index.html

    APP側開発手順説明

  • 1、項目設定APPID
  • 商戸が微信開放プラットフォームでアプリの開発を申請した後、微信開放プラットフォームはアプリの唯一の識別APPIDを生成する.Xcodeでプロジェクトを開き、プロジェクト属性のURL SchemesをAPPIDに設定します.
  • 2、APPID
  • の登録
    商戸APPプロジェクトでは、微信libライブラリとヘッダファイルを導入し、APIを呼び出す前に、まず微信にAPPIDを登録する必要があります.コードは以下の通りです.
    [WXApi registerApp:@"wxd930ea5d5a258f4f" withDescription:@"demo 2.0"];
  • 3、出金
  • クライアントサーバは支払い注文を生成し、まず「統一注文API」を呼び出して前払書を生成し、prepay_を取得する.id後、パラメータの再署名をAPPに転送して支払いを開始します.以下は、微信決済を開始するキーコードです.
    PayReq *request = [[[PayReq alloc] init] autorelease];
    
    request.partnerId = @"10000100";
    
    request.prepayId= @"1101000000140415649af9fc314aa427";
    
    request.package = @"Sign=WXPay";
    
    request.nonceStr= @"a462b76e7436e98e0ed6e13c64b4fd1c";
    
    request.timeStamp= @"1397527777";
    
    request.sign= @"582282D72DD2B03AD892830965F428CB16E7A256";
    
    [WXApi sendReq:request];

    注:sign生成フィールド名テーブルは、支払APIの呼び出しを参照してください.
  • 4、支払結果コールバック
  • 微信SDK Sampleによると、クラスでonResp関数を実現し、支払いが完了すると、微信APPは商家APPに戻り、onResp関数をコールバックする.開発者はこの関数で通知を受信し、エラーコードを返すと判断し、支払いが成功すればバックグラウンドで支払い結果を調べ、ユーザーの実際の支払い結果を示す必要がある.注意クライアントがユーザの支払いの結果として返すことはできません.サーバ側の受信した支払い通知またはAPIが返す結果をクエリーすることを基準とします.コードの例は次のとおりです.
    -(void)onResp:(BaseResp*)resp{
                  if ([respisKindOfClass:[PayRespclass]]){
                      PayResp*response=(PayResp*)resp;
                      switch(response.errCode){
                          caseWXSuccess:
                                    //             API          
                                    NSlog(@"    ");
                            break;
                            default:
                            NSlog(@"    ,retcode=%d",resp.errCode);
                            break;
                      }
                        }
                    } 

    WeChatの支払いリンク:https://pay.weixin.qq.com/wiki/doc/api/index.html