微信支払いの概要:注文の照会とクローズ
4649 ワード
本文は【微信支払いを浅く分析する】シリーズの文章の第7編で、主に微信商戸プラットフォームの注文照会とインタフェースの使用を説明する.
微信支付シリーズはもう6編更新されましたよ~、見たことのない方はご覧くださいね.
微信支払い:支払い結果通知
微信支払い:統一注文インタフェース
微信の支払いを分析する:微信の公衆番号のホームページの授権
宣言:ここの
1、注文の照会
以下は微信公式の
1.1. シーンの適用
このインタフェースはすべての微信が注文を支払うクエリーを提供し、商店は注文インタフェースをクエリーすることで自発的に注文状態をクエリーし、次のビジネスロジックを完成することができる.
1.2. インタフェースリンク
1.3. 証明書が必要かどうか
不要
1.4. 呼び出しインタフェース
受注インタフェースを照会するには、
この2つのパラメータのいずれかを入力する必要があります.微信は
事業者の重要な情報の書き込みについては、公開方法は
以上、微信の注文を照会する方法について、具体的な戻りパラメータは公式ドキュメントを参照してください.
2、注文書を閉じる
以下は微信公式の
2.1. シーンの適用
次の場合は、オフシングルインタフェースを呼び出す必要があります.
注意:注文が生成された後、すぐに関単インタフェースを呼び出すことはできません.最短呼び出し間隔は5分です.
2.2. インタフェースリンク
2.3. 証明書が必要かどうか
不要
2.4. 呼び出しインタフェース
受注インタフェースを閉じるには
PS:関単インタフェースは
関単インタフェースの共通パラメータの設定はクエリー注文と一致しており、ここでは説明を繰り返しません.具体的な戻りパラメータは微信公式ドキュメントを参照してください.
PS:関単インタフェースは呼び出しに失敗し、支払い済み、クローズ済みなどのシーンがあるため、開発者は公式ドキュメントのエラーコードに注意し、異常状況を処理する必要がある.
締めくくり
以上は
予告:上一篇文章
ソースコードを事前に一覧表示したい方は、まず私のgithubを見てください.住所は以下の通りです.
作者个人微信,作者微信如下
これで本文は終わりです.公衆番号に注目してもっとプッシュしてください!!
微信支付シリーズはもう6編更新されましたよ~、見たことのない方はご覧くださいね.
微信支払い:支払い結果通知
微信支払い:統一注文インタフェース
微信の支払いを分析する:微信の公衆番号のホームページの授権
宣言:ここの
、
インタフェースは 、 、 、APP
にのみ適用され、
方式はここでは適用されません.1、注文の照会
以下は微信公式の
ドキュメントです.https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_2
1.1. シーンの適用
このインタフェースはすべての微信が注文を支払うクエリーを提供し、商店は注文インタフェースをクエリーすることで自発的に注文状態をクエリーし、次のビジネスロジックを完成することができる.
:
◆ 、 、 , ;
◆ , ;
◆ API, USERPAYING ;
◆ API , ;
1.2. インタフェースリンク
https://api.mch.weixin.qq.com/pay/orderquery
1.3. 証明書が必要かどうか
不要
1.4. 呼び出しインタフェース
受注インタフェースを照会するには、
または
を使用して照会する必要があります.その他のパラメータは、ビジネスプラットフォーム情報の共通パラメータであり、定数です.ここでは説明を省略します. :transaction_id( , )
:out_trade_no( )
この2つのパラメータのいずれかを入力する必要があります.微信は
を使用してクエリーすることを推奨しています.以下は実装コードです.private void doOrderQuery() {
System.out.println(" ");
HashMap data = new HashMap();
// data.put("out_trade_no", out_trade_no);
data.put("transaction_id", "4008852001201608221962061594");
try {
WXPay wxPay = new WXPay(WXPayConfigImpl.getInstance());
Map r = wxPay.orderQuery(data);
System.out.println(r);
} catch (Exception e) {
e.printStackTrace();
}
}
wxPay.orderQuery
メソッドはパッケージ化されたsdkメソッドであり、具体的な実装は著者githubソースコードを参照してください.事業者の重要な情報の書き込みについては、公開方法は
wxPay.fillRequestData
であり、以下のように実現される./**
* Map appid、mch_id、nonce_str、sign_type、sign
* , 、
*
* @param reqData r
* @return map
* @throws Exception e
*/
public Map fillRequestData(Map reqData) throws Exception {
reqData.put("appid", config.getAppID());
reqData.put("mch_id", config.getMchID());
reqData.put("nonce_str", WXPayUtil.generateNonceStr());
if (SignType.MD5.equals(this.signType)) {
reqData.put("sign_type", WXPayConstants.MD5);
} else if (SignType.HMACSHA256.equals(this.signType)) {
reqData.put("sign_type", WXPayConstants.HMACSHA256);
}
reqData.put("sign", WXPayUtil.generateSignature(reqData, config.getKey(), this.signType));
return reqData;
}
以上、微信の注文を照会する方法について、具体的な戻りパラメータは公式ドキュメントを参照してください.
2、注文書を閉じる
以下は微信公式の
ドキュメントです.https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_3
2.1. シーンの適用
次の場合は、オフシングルインタフェースを呼び出す必要があります.
, , ;
, , , , 。
注意:注文が生成された後、すぐに関単インタフェースを呼び出すことはできません.最短呼び出し間隔は5分です.
2.2. インタフェースリンク
https://api.mch.weixin.qq.com/pay/closeorder
2.3. 証明書が必要かどうか
不要
2.4. 呼び出しインタフェース
受注インタフェースを閉じるには
を使用してクエリーする必要があります.その他のパラメータは、ビジネスプラットフォーム情報の共通パラメータであり、定数です.ここでは説明を省略します. :out_trade_no( )
PS:関単インタフェースは
しか使用できません.クエリーインタフェースとは異なり、以下は実装コードです.private void doOrderClose() {
System.out.println(" ");
HashMap data = new HashMap();
data.put("out_trade_no", out_trade_no);
try {
WXPay wxPay = new WXPay(WXPayConfigImpl.getInstance());
Map r = wxPay.closeOrder(data);
System.out.println(r);
} catch (Exception e) {
e.printStackTrace();
}
}
関単インタフェースの共通パラメータの設定はクエリー注文と一致しており、ここでは説明を繰り返しません.具体的な戻りパラメータは微信公式ドキュメントを参照してください.
PS:関単インタフェースは呼び出しに失敗し、支払い済み、クローズ済みなどのシーンがあるため、開発者は公式ドキュメントのエラーコードに注意し、異常状況を処理する必要がある.
締めくくり
以上は
、
の呼び出し方式であり、
方式であれば、彼のクローズ受注インタフェースは :reverse
であり、著者sdkソースコードにも具体的な実現方式がある.予告:上一篇文章
,请期待!!!ソースコードを事前に一覧表示したい方は、まず私のgithubを見てください.住所は以下の通りです.
https://github.com/YClimb/wxpay-sdk/blob/master/README.md
作者个人微信,作者微信如下
yclimb
,标明
可拉入微信支付讨论群与小伙伴一起讨论哦,一定要标明
哦~これで本文は終わりです.公衆番号に注目してもっとプッシュしてください!!