Interface de paiement de renouvellement d'application web


Description du processus de paiement

1434706053921_a87ff679a2f3e71d9181a67b7542122c (1).jpg

Processus de consommation :

1) L'utilisateur initie le paiement dans l'application, et l'application appelle l'interface de paiement du SDK payFromServer

2) SDK paie avec le serveur Ali Après confirmation, la page de paiement est affichée à l'utilisateur

3) Après que l'utilisateur confirme le paiement, le SDK lance et termine le paiement au serveur Ali

4) Le serveur Ali renvoie le résultats du paiement au SDK et informe le serveur d'application

5) Le serveur d'application décide s'il doit émettre des accessoires aux utilisateurs de l'application via les informations de commande de rappel

Premier paiement pour le renouvellement de l'application en ligne


Description de l'interface  :

public static void repayFromServer, pour implémenter la fonction de renouvellement automatique. Si l'application doit accéder à l'interface de paiement de renouvellement, elle doit contacter Alibaba Operations pour configurer. et activez-le. Le premier renouvellement sera effectué en temps réel via le client, et les renouvellements ultérieurs seront mis en œuvre via le serveur de l'application appelant le serveur de Digital Entertainment. Veuillez faire attention aux règles de l'interface de renouvellement. Les appels qui ne respectent pas les règles ne pourront pas obtenir le premier paiement ni les paiements suivants.


Conditions préalables : Aucun


Prototype de fonction  :

public static void repayFromServer (String subject, String orderId, String interval, List<String> priceList, String description, final String title, final String notifyUrl , final String subjectId, final IPayListener payListener)


Description du paramètre  :

sujet : Pack de produits de renouvellement , comme "abonnement mensuel cinéma et télévision"

orderId : numéro de commande, généré par le serveur CP

intervalle : mode de renouvellement automatique (mois : mensuel, saison : trimestriel), ne prend en charge que deux Mode fixe ; qu'il soit mensuel ou trimestriel, il ne prend en charge le renouvellement que dans un délai d'un an. Autrement dit, lors d'un renouvellement mensuel, le serveur d'applications suivant peut lancer jusqu'à 11 demandes de renouvellement, et lors d'un renouvellement trimestriel, il peut lancer jusqu'à 3 renouvellements ultérieurs. demandes.

priceList : liste de prix, incluant cette consommation et le montant de la consommation pour chaque renouvellement ultérieur

description (facultatif) : L'heure de fin des droits commerciaux, sinon, elle sera vide

title : Le produit cible du paiement, tel que "xx Film and Television"

notifyUrl  : Une fois le paiement effectué, Ali L'adresse de rappel que le serveur rappelle au serveur CP

subjectId

(facultatif) ID de produit S'il est vide, vous ne pourrez pas. pour participer à des activités d’incitation à la consommation. Il est recommandé que cela soit exigé.

payListener

 : fonction de rappel pour notifier le succès ou l'échec une fois le paiement effectué.

Demande d'échantillon


 :

   AliTvSdk.pay("XX商品", "12345678", "month",
                   Arrays.asList(arr), "权益描述",
                   "支付物品名称", "http://setbycp2", null, 
new IPayListener(){
                            @Override
                            public void onSuccess(String title, int amount) {
                                   TestToast.show("支付成功");
                            }
                            @Override
                            public void onError(String title, int amount, String errMsg) {
                                   TestToast.show("支付失败, 原因:" + errMsg);
                            }
                            @Override
            public void onError(String errCode, String errMsg) {
                TestToast.show(" 支付失败。" + errCode + ":" + errMsg);
            }
                            @Override
                            public void onCancel(String title, int amount) {
                                   TestToast.show("支付取消");
                            }
});

Renouvellement de l'application Web Paiement ultérieur

Description de l'interface

 :

Après avoir créé avec succès une séquence de renouvellement à l'aide du client, le commerçant peut envoyer une demande de renouvellement au backend de paiement via le serveur.

🎜Méthode d'accès : TOP🎜🎜🎜

TOPVoir

//open.taobao.com/doc2/detail.htm?spm=a219a.7629140.0.0.jlQptD&treeId=49&articleId=101617&docType=1

TOP Assistant Voir l'annexe pour la classe d'outils (Java).

API :

taobao.tvpay.partner.renewal.pay

Structure des paramètres de demande

Nom du paramètre

Description du paramètre

Est-ce obligatoire ?

Détails

partner_notify_url

adresse de rappel

est


partner_order_no

Le numéro de commande marchand de cette commande

est

prix

Le prix en RMB

doit être le même que lors de la création initiale de la séquence, sinon une erreur sera signalée.

ref_order_no

Le numéro de commande du commerçant de première commande en série

est

de sdk Lors de la création d'une séquence, le numéro de commande marchand correspondant à la commande.

Seq

Numéro de série de renouvellement.

est

SDKLa première séquence payée compte pour 0, la première séquence renouvelée depuis l'arrière-plan vaut 1, et ainsi de suite.

Sujet

Titre du produit

est

subject_id

l'identifiant du produit

est

Retour à la description de la structure de base :

succès :message rapide ou message d'erreur

De inscription

Code

succès

message

data.data

Renvoyer les paramètres commerciaux (nécessite la méthode RSA pour utiliser la clé privée pour déchiffrer, obtenir la chaîne json et l'analyser en paramètres data structurés)


Exemple d'infrastructure de retour :

{
    "tvpay_partner_renewal_pay_response":{
        "result":{
            "code":"success",
            "data":{
                "order_status":"TRADE_SUCCESS"
            },
            "message":"success",
            "success":true
        }
    }
}


Si la demande est réussie (le succès est vrai), reportez-vous au champ order_status pour vérifier l'état de la commande

WAIT_BUYER_PAY En attente du paiement de l'acheteur

TRADE_SUCCESS Paiement réussi

TRADE_CLOSED Transaction clôturée

Si la demande échoue, veuillez vous référer au champ du code d'erreur pour analyser la cause de l'erreur.

TERM_COUNT_EXCEED_LIMIT, trop de périodes de compte

RENEWAL_PRICE_ERROR, échec de la vérification du montant

RENEWAL_PRICE_EXCEED_LIMIT Frais de renouvellement total Ex dépasser la limite

RENEWAL_ORDER_NOT_ALLOWED L'application ne prend pas en charge le renouvellement pour pour le moment

RENEWAL_ORDER_INFO_ERROR Informations de commande incorrectes

RENEWAL_THREAD_NOT_FOUND Séquence de renouvellement introuvable

RENEWAL_THREAD_STATUS_ERROR Exception dans l'état de la séquence de renouvellement

RENEWAL_ORDER_PAY_FAIL Échec du paiement de la commande de renouvellement

RENEWAL_TIME_ERROR L'heure de renouvellement n'est pas arrivée pourtant

RENEWAL_THREAD_SEQ_ERROR La période de renouvellement du compte est erronée

--- ------------------------------------------------ ------- -------------------------------


Notification de rappel après paiement réussi côté serveur

Description de l'interface :

Les applications tierces doivent développer un service HTTP et fournir l'adresse de l'interface du serveur, telle que : http://Serveur d'applications tiers adresse/numéro XXX Le serveur de divertissement utilise la clé publique (public_key) fournie par le commerçant pour crypter les paramètres afin de générer une chaîne cryptée encryptString (déchiffrée au format json) et ajoute la chaîne cryptée des informations de commande réussie à l'URL fournie par l'application. demande (le paramètre est : notify_url) (Le format est : notify_url?data=encryptString) Le serveur de divertissement numérique envoie les informations ci-dessus au serveur APP Si les informations renvoyées sont "succès", l'envoi est réussi. est autre, l'intervalle de temps est augmenté et la demande est renvoyée.

Structure des données décryptées :

WAIT_BUYER_PAYEn attente du paiement de l'acheteurTRADE_SUCCESS Paiement réussiTRADE_CLOSED Transaction clôturéecompte Alipay du payeur

Le serveur interroge activement l'état de paiement de la commande

Description de l'interface :

Le marchand peut interroger activement l'état de paiement de la commande via cette interface. Elle est principalement utilisée pour que le commerçant reçoive le paiement une fois que le client a reçu. reçu avec succès le paiement. Interrogez activement une fois pour vérifier si la commande a été payée avec succès.

Méthode d'accès : TOP

Guide d'accès TOP, voir://open.taobao.com/doc2/detail.htm?spm=a219a.7629140.0.0.jlQptD&treeId=49&articleId=101617&docType=1

API  : taobao.tvpay.partner.order.query

Structure du paramètre de demande :

Nom de la clé(clé)

valeur (valeur)

partner_order_no

Numéro de commande du commerçant

buyer_logon_id

Nom du paramètre

Description du paramètre

Est-ce obligatoire ?

Détails

order_no

Le numéro de commande du marchand

est

le numéro de commande du marchand

Retour à la description des infrastructures :

Champ

Description

code

succès : succès

message

message rapide ou message d'erreur

data.data

Renvoyer les paramètres commerciaux (nécessite la méthode RSA pour utiliser la clé privée pour déchiffrer, obtenir la chaîne JSON et analyser les paramètres de données structurées)

Renvoyer un exemple de structure de base :

{
   "tvpay_partner_order_query_response": {
       "result": {
           "code": "success",
           "data": {
               "data": "PG5Qgxp5C+Muqohd7s01IE9SK/VnYVSxsY7nPqHFR8d+tjx3qLBeTu8llVi0+yaQHdMl/ZMTXxhchl9FiruOkX+GL5aN4S+/C68Tq5Os5dT4iilwNaDT6gw2pBtMUR9maVfXukcvFMLSx7d9XsjebWpapqTMgjOkMQjOHUA0GtcdgfFPE4sFxwB0+8SdbOYF1qoEkBoU8o0brd6/tFTJkqn/uJUbHOoqqLXCB3LmxShRa4m8KRsVPfSavOEjcSO7yfNTu7cLhGoOCRL5ffwLWVxyPRpaLfm0O8CJi9Cllb5nndWzh1zoXUtyBdfw9iHzbE0C7WArO5+YLKVCzA5c4A=="
           },
           "message": "success",
           "success": true
       },
       "request_id": "118g71ywn59zf"
   }
}


dataStructure de données décryptée :

Nom de la clé(clé)

valeur(valeur)

partner_order_no

numéro de commande du commerçant

alipay_trade_no

Numéro de série de la transaction Alipay

order_status

Statut de la commande

WAIT_BUYER_PAY En attente du paiement de l'acheteur

TRADE_SUCCESS Paiement réussi

TRADE_CLOSED Transaction clôturée

prix

Prix de la commande, en RMB En unités

sujet

titre du produit

subject_id

identifiant du produit

buyer_logon _ identifiant

Compte Payeur Alipay