Placer des coupons


Journal de mise à jour






1 Créer une interface de code QR


Développeurs peut appeler cette interface pour générer un code QR de carte et de coupon permettant aux utilisateurs de numériser et d'ajouter la carte et le coupon au paquet de cartes.

Lors de l'appel de l'interface pour les cartes et les coupons avec des codes de code personnalisés, le code doit être spécifié dans les données POST. Il n'est pas nécessaire de spécifier les codes non personnalisés. Il en va de même pour la spécification d'openid. Le code QR désigné ne peut être scanné et collecté qu'une seule fois par l'utilisateur.

Après avoir obtenu le ticket QR code, les développeurs peuvent échanger le ticket contre l'interface QR code.

Description de la demande d'appel de l'interface

HTTP请求方式: POST
URL:https://api.weixin.qq.com/card/qrcode/create?access_token=TOKEN

Description des paramètres

Numéro de versionContenu de mise à jourHeure de mise à jour
V1.1

1. Créer une nouvelle étagère de cartes et de coupons L'interface permet aux développeurs d'appeler l'interface pour créer des étagères de cartes et de coupons pour placer des cartes et des coupons

2 Ajout d'une nouvelle interface de code d'importation pour aider les développeurs de codes personnalisés à distribuer des cartes et des coupons via la distribution de masse, le service client et. d'autres chaînes en important des codes

2015-8 -31
Le paramètre est-il obligatoire Description
Données POST est Les données JSON
access_token sont Identifiants de l'interface d'appel






Données POST

Les développeurs peuvent définir Scan le code QR pour recevoir un seul coupon À ce moment, les données POST sont :

 {
"action_name": "QR_CARD", 
"expire_seconds": 1800,
"action_info": {
"card": {
"card_id": "pFS7Fjg8kV1IdDz01r4SQwMkuCKc", 
"code": "198374613512",
"openid": "oFS7Fjl0WsZ9AMZqrI80nbIq8xrA",
"is_unique_code": false ,
"outer_str":"12b"
  }
 }
}

Lorsque le développeur configure le scan du code QR pour recevoir plusieurs coupons, les données POST sont :

{
"action_name": "QR_MULTIPLE_CARD", 
"action_info": {
"multiple_card": {
"card_list": [
{
"card_id": "p1Pj9jgj3BcomSgtuW8B1wl-wo88",
"code":"2392583481",
"outer_str":"12b"
}, 
{
"card_id": "p1Pj9jgj3BcomSgtuW8B1wl-wo98",
"code":"2392583482",
"outer_str":"12b"
}
]
}
}
}

Paramètre. description

Nom du paramètreObligatoireTypeExemple de valeurDescription
code est string(20) 110201201245Les coupons et les coupons doivent être renseignés si le champ use_custom_code est vrai. Les cartes et les coupons avec un code non personnalisé et des modes de code importés n'ont pas besoin d'être renseignés.
card_idnostring(32)pFS7Fjg8kV1IdD
z01r4SQwMkuCKc
Identifiant du coupon.
openidnostring(32)oXch-jkrxp42VQu8ld
weCwDt97qo
Spécifiez l'openid du destinataire, et seul cet utilisateur peut le recevoir. Les cartes et coupons dont le champ bind_openid est vrai doivent être renseignés, et les openid non spécifiés n'ont pas besoin d'être renseignés.
expire_secondsNounsigned int60Spécifiez la durée de validité du code QR, la plage est de 60 ~ 180 0 seconde. S'il n'est pas renseigné, il sera valable 365 jours par défaut
is_unique_codenoboolfalseSpécifiez émettre un QR code et le généré Le code QR sera attribué au hasard, il ne pourra pas être scanné à nouveau après l'avoir reçu. Remplissez vrai ou faux. La valeur par défaut est false. Notez que lorsque vous remplissez ce champ, la carte doit réussir l'examen et l'inventaire n'est pas 0.
outer_idNoint12Recevoir la valeur de la scène, utilisée pour collecter les statistiques de données de canal, la valeur par défaut est 0, le type de champ est entier , longueur Limitée à 60 chiffres.Cette valeur de scène personnalisée sera incluse dans le événement push déclenché après que l'utilisateur ait reçu le coupon.

outer_str

nostring(128)13b

outer_id version améliorée du champ , type de chaîne Lorsque l'utilisateur reçoit la carte pour la première fois. , il le recevra via L'événement est poussé vers le commerçant ;

Pour le code QR de la carte de membre, chaque fois que l'utilisateur scanne le code pour ouvrir la carte de membre et clique sur n'importe quelle URL, la valeur sera épelée dans l'URL pour faciliter aux développeurs de localiser la source du code scanné

































Retourner les données

{
 "errcode": 0,
 "errmsg": "ok",
 "ticket":      "gQHB8DoAAAAAAAAAASxodHRwOi8vd2VpeGluLnFxLmNvbS9xL0JIV3lhX3psZmlvSDZmWGVMMTZvAAIEsNnKVQMEIAMAAA==",//获取ticket后需调用换取二维码接口获取二维码图片,详情见字段说明。
 "expire_seconds": 1800,
 "url": "http://weixin.qq.com/q/BHWya_zlfioH6fXeL16o ",
 "show_qrcode_url": " https://mp.weixin.qq.com/cgi-bin/showqrcode?  ticket=gQH98DoAAAAAAAAAASxodHRwOi8vd2VpeGluLnFxLmNvbS9xL0czVzRlSWpsamlyM2plWTNKVktvAAIE6SfgVQMEgDPhAQ%3D%3D"
 }

Description du paramètre

Nom du paramètreDescription
errcodeError code
errmsg Message d'erreur
ticket Obtenir Ticket QR code, avec cet appel de ticket via l'interface d'échange de ticket QR code vous pouvez échanger le QR code dans le délai de validité.
urlL'adresse après l'analyse de l'image du code QR, les développeurs peuvent générer l'image de code QR requise en fonction de l'adresse
show_qrcode_urlAdresse d'affichage du code QR, cliquez pour accéder à la page du code QR










Notes :

1. Coupons de code personnalisé, le QR généré le code ne peut être collecté qu'une fois à la fois. Si le développeur souhaite utiliser son propre système de code de série et souhaite utiliser le code QR de WeChat

, il doit d'abord importer le code personnalisé

.

2. Pour recevoir plusieurs codes QR, remplissez jusqu'à 5 card_ids à la fois, sinon une erreur sera signalée.

2 Émission de coupons en ligne HTML5 (interface JS-SDK)

WeChat JS-SDK ne prend en charge que l'utilisation dans le navigateur intégré de WeChat et les appels provenant d'autres navigateurs ne sont pas valides.

WeChat fournit l'interface addCard permettant aux pages Web frontales des commerçants d'appeler, qui est utilisée pour ajouter une ou plusieurs cartes et coupons au paquet de cartes de l'utilisateur. Pour plus de détails, veuillez consulter l'Interface d'ajout par lots de cartes et de bons.

1476408558333646.jpg


3 Placer les coupons dans l'étagère des coupons

Introduction à l'étagère des coupons

L'étagère des coupons aide les développeurs à générer une carte en appelant l'interface page de collection H5, et obtenez le lien de la page pour effectuer l'action de la carte et du coupon. Actuellement, l'étagère des cartes et des coupons ne prend en charge que les cartes et les coupons sans codes personnalisés. Les cartes et les coupons avec des codes personnalisés doivent d'abord appeler l'Interface d'importation de code pour importer le code avant de pouvoir être utilisés normalement.

1476408583576222.png

3.1 Créer une interface d'étagère

Description de l'interface

Les développeurs doivent appeler cette interface pour créer des liens d'étagère pour le placement des cartes et des coupons. Lors de la création d'une étagère, vous devez renseigner le champ scène du parcours de livraison.


Description de la demande d'appel d'interface

HTTP请求方式: POST
URL:https://api.weixin.qq.com/card/landingpage/create?access_token=$TOKEN


Description du paramètre de demande

Le paramètre buffer
est-il obligatoire
is Flux de données des fichiers






Données POST

{  
"banner":"http://mmbiz.qpic.cn/mmbiz/iaL1LJM1mF9aRKPZJkmG8xXhiaHqkKSVMMWeN3hLut7X7h  icFN",
   "page_title": "惠城优惠大派送",
   "can_share": true,
   "scene": "SCENE_NEAR_BY",
   "card_list": [
       {
           "card_id": "pXch-jnOlGtbuWwIO2NDftZeynRE",
           "thumb_url": "www.qq.com/a.jpg"
       },
       {
           "card_id": "pXch-jnAN-ZBoRbiwgqBZ1RV60fI",
           "thumb_url": "www.qq.com/b.jpg"
       }
   ]
}


Description du paramètre

ChampDescriptionEst-ce obligatoire ?
bannerLa taille recommandée est de 64. 0*300. est le titre de la page
title.Oui
can_shareSi la page peut être partagée, remplissez vrai/fauxOui
scene La valeur scénique de la livraison page;

SCENE_NEAR_BY à proximité SCENE_MENU menu personnalisé SCENE_QRCODE QR code SCENE_ARTICLE article compte public SCENE_H5 page h5 SCENE_IVR réponse automatique SCENE_CARD_CUSTOM_CELL carte et coupon cellule personnalisée

est
card_listliste de coupons de cartes, chaque article a deux champs est
card_id Le card_id à placer sur la page is
thumb_urlthumbnail urlis
















Description des données de retour

{
     "errcode":0,
     "errmsg":"ok",
     "url":"www.test.url",
     "page_id":1
 }

Description du champ

Champ Description
errcodecode d'erreur, 0 est normal.
errmsg message d'erreur.
urllien étagère.
page_idID d'étagère. L'identifiant unique de l'étagère.
4 cartes à émission de groupe



Les développeurs doivent prêter une attention particulière à l'interface d'émission de cartes et de coupons de groupe. ne prend en charge que l'émission de non-cartes avec des codes de code personnalisés. Si les commerçants disposant de codes personnalisés souhaitent utiliser cette fonction, ils doivent d'abord appeler l'interface d'importation de code pour importer le code personnalisé dans le serveur WeChat.



4.1 Importer du code personnalisé (uniquement pour les marchands de code personnalisé)



Introduction à l'interface


Ce module est uniquement destiné aux marchands de code personnalisé, les développeurs de code non personnalisé doivent automatiquement l'ignorer. Les développeurs peuvent importer des codes personnalisés dans le serveur WeChat à l'avance pour obtenir les mêmes capacités de livraison que les commerçants de codes non personnalisés, telles que la distribution de groupe, l'émission de cartes et de coupons via les messages du service client, etc. Les coupons après l'importation du code sont équivalents aux coupons de code non personnalisés une fois publiés. les coupons sont différents des méthodes de création précédentes. Il est recommandé aux développeurs d'utiliser le processus suivant pour créer des coupons en mode code pré-stockés, sinon une erreur sera signalée.

Étape 1 : Créez un coupon de mode pré-enregistré, définissez la valeur initiale de la quantité en stock sur 0 et remplissez le champ get_custom_code_mode

Étape 2 : Une fois le coupon passé l'examen, appelez ; l'interface de code d'importation et Vérifiez le code ; Étape 3 : Appelez l'interface d'inventaire de modification pour rendre l'inventaire de la carte inférieur ou égal au nombre de codes importés. (Il est recommandé de le régler sur égal pour éviter toute confusion)


1476408598664187.png

Coupons non nouvellement créés

Si le développeur dispose déjà d'un coupon et souhaite le faire passer en mode code pré-enregistré, il est recommandé au développeur de suivre le processus suivant pour mettre à jour le coupon.

Étape 1 : Appelez l'interface de code d'importation pour importer une certaine quantité de code personnalisé et vérifiez le code ;

Étape 2 : Appelez l'interface d'informations sur la carte de changement et le coupon pour remplir le champ get_custom_code_mode ;

Étape 3 : Appelez l'interface de modification d'inventaire pour stocker la carte et les coupons en inventaire. La quantité est fixée à un nombre égal au nombre de codes importés.

1476408610235204.png


4.1.1 Remplissez/mettez à jour les champs obligatoires du code d'importation

Description de l'interface

Les cartes et les coupons avec des codes personnalisés prennent uniquement en charge la création d'API. Lors de la création, assurez-vous d'ajouter les champs suivants à base_info (voir le document d'interface CreateCard pour plus de détails). Ce n'est qu'après avoir ajouté les deux champs spécifiés suivants que vous pourrez appeler l'interface d'importation de code. coder Importer

ChampExempleDescription
base_info
get_custom_code_modeGET_CUSTOM_CODE_MODE_DEPOSITAprès avoir rempli ce champ, depuis Ce n'est qu'après avoir défini le coupon de code que vous pourrez importer le code et le placer.
use_custom_codetrueDéfinissez le coupon sur un code personnalisé







Exemple JSON lors de la création d'une carte

{
 "card": {
     "card_type": "GROUPON",
     "groupon": {
     "base_info": {
     ··········
     "use_custom_code":true,
     "get_custom_code_mode":"GET_CUSTOM_CODE_MODE_DEPOSIT",
         },
          "advanced_info": {
      ··········
          },
         "deal_detail": "示例"
     }
   }
}

Exemple JSON lors de la mise à jour d'une carte

 {
      "card_id":"ph_gmt7cUVrlRk8swPwx7aDyF-pg",
      "groupon": { 
      "base_info": {
      ·········		            
        "get_custom_code_mode":"GET_CUSTOM_CODE_MODE_DEPOSIT",
      ·········
              }
        }
 }

Remarque :

Créer/Quand en mettant à jour get_custom_code_mode, vous devez vérifier la relation entre le numéro d'inventaire et le nombre de codes importés. Lorsque le nombre de codes importés est inférieur au numéro d'inventaire, une erreur sera signalée.

4.1.2 Interface d'importation de code

Une fois le coupon de code personnalisé créé avec succès et passé l'examen, le code personnalisé doit être importé dans le code selon le numéro convenu avec le émetteur L'interface est importée dans le backend WeChat.

Description de l'interface

Les développeurs peuvent appeler cette interface pour importer le code personnalisé dans le backend de la carte et du coupon WeChat, et l'agent secondaire WeChat stockera et émettra le code.

Remarque : 1) La limite supérieure du nombre de codes entrants pour un seul appel vers l'interface est de 100.

2) Chaque code ne peut pas être une chaîne vide.

3) Une fois l'importation terminée, le système déterminera automatiquement si l'inventaire défini par le fournisseur est cohérent avec la quantité réelle de code importé.

4) Si l'importation échoue, l'importation répétée est prise en charge jusqu'à ce que l'invite réussisse.

Description de la demande d'appel d'interface

HTTP请求方式: POST
URL:http://api.weixin.qq.com/card/code/deposit?access_token=ACCESS_TOKEN

Description du paramètre de demande

Le paramètre buffer
est-il obligatoire
is Flux de données des fichiers






Données POST

{
   "card_id": "pDF3iY0_dVjb_Pua96MMewA96qvA",
   "code": [
       "11111",
       "22222",
       "33333",
       "44444",
       "55555"
   ]
}


description du champ

ChampDescriptionEst-ce obligatoire ?
card_idL'identifiant de la carte qui doit être importé. est le
code, qui doit être importé dans la carte WeChat et le backend du coupon. La limite supérieure est de 100. est






Description des données de retour

{
  "errcode":0,
  "errmsg":"ok"
}

Description du champ

 ;
ChampDescription
errcodecode d'erreur, 0 est normal : le nombre de codes dépasse 100
errmsg Message d'erreur .
succ_codeNombre de réussites
duplicate_codeLes codes importés en double seront automatiquement filtrés.
fail_codeNombre d'échecs.
4.1.3 Interface de requête du nombre de codes importés



Description de l'interface



Les développeurs sont pris en charge pour appeler cette interface pour interroger le nombre d'importations de code réussies dans le backend WeChat.


Description de la demande d'appel d'interface

HTTP请求方式: POST
URL:http://api.weixin.qq.com/card/code/getdepositcount?access_token=ACCESS_TOKEN

Description du paramètre de demande

Le paramètre
est-il requis ?




Données POST

{
   "card_id" : " pDF3iY0_dVjb_Pua96MMewA96qvA "
}

description du champ

ChampDescriptionEst-ce obligatoire ?
card_idL'identifiant de la carte pour l'importation du code. est




Description des données de retour

{
  "errcode":0,
  "errmsg":"ok",
  "count":123
}

Description du champ

Champ Description
errcodecode d'erreur, 0 est normal.
errmsg message d'erreur.
countLe nombre de codes qui ont été déposés avec succès.
4.1.4 Interface du code de vérification






Afin d'éviter les erreurs d'importation, il est fortement recommandé aux développeurs de vérifier le numéro des codes après Lors de la vérification du code, le code de vérification de l'interface est importé dans le backend WeChat.

Description de l'interface

aide les développeurs à appeler cette interface pour interroger l'état de l'importation de code dans le backend WeChat.

Description de la demande d'appel d'interface

HTTP请求方式: POST
URL:http://api.weixin.qq.com/card/code/checkcode?access_token=ACCESS_TOKEN

请求参数说明

Le paramètre
est-il requis ?




Données POST

{
   "card_id": "pDF3iY0_dVjb_Pua96MMewA96qvA",
   "code": [
       "11111",
       "22222",
       "33333",
       "44444",
       "55555"
   ]
}

description du champ

ChampDescriptionEst-ce obligatoire ?
card_idL'identifiant de la carte pour l'importation du code. est un
code a été personnalisé dans le backend de la carte WeChat et du coupon, la limite supérieure est de 100. est






Description des données de retour

{
  "errcode":0,
  "errmsg":"ok"
  "exist_code":["11111","22222","33333"],
  "not_exist_code":["44444","55555"]
}

Description du champ

 ;
ChampDescription
errcodecode d'erreur, 0 est normal : le nombre de codes dépasse 100
errmsg Message d'erreur .
exist_codeLe code qui a été déposé avec succès.
not_exist_codeAucun code enregistré.
4.2 Messagerie de groupe avec images et textes



Aide les développeurs à appeler cette interface pour obtenir une carte et un coupon intégrés graphiques et texte Le code de format standard du message. Remplissez le code de retour dans le champ de contenu de l'interface de téléchargement d'image et de texte

pour obtenir l'image et le message texte intégrés dans la carte.


Remarque : actuellement, cette interface ne prend en charge que les cartes et les coupons avec des codes non personnalisés. Les cartes et les coupons avec des codes personnalisés doivent d'abord être importés, puis appelés.


Description de la demande d'appel de l'interface

HTTP请求方式: POST
URL:https://api.weixin.qq.com/card/mpnews/gethtml?access_token=TOKEN

Description des paramètres
Le paramètre est-il obligatoire Description
Données POST est Les données JSON
access_token sont Identifiants de l'interface d'appel





Données POST

{
  "card_id":"p1Pj9jr90_SQRaVqYI239Ka1erkI"
}
Nom du paramètreObligatoireTypeExemple de valeurDescription
card_idnostring(32) pFS7Fjg8kV1IdDz01r4SQwMkuCKcID du coupon.





Données de retour

 {
"errcode":0,
"errmsg":"ok",
"content":"<iframeclass=\"res_iframecard_iframejs_editor_card\"data-src=\"http: \/\/mp.weixin.qq.com\/bizmall\/appmsgcard?action=show&biz=MjM5OTAwODk4MA%3D%3D&cardid=p1Pj9jnXTLf2nF7lccYScFUYqJ0&wechat_card_js=1#wechat_redirect\">"
}
4.3 Envoyer des messages de coupon de groupe dans les groupes


Prise en charge de l'appel de cette interface pour envoyer des messages de coupon aux utilisateurs d'un groupe spécifié. Pour plus de détails, veuillez consulter l'interface d'envoi de groupe


Actuellement, cette interface ne prend en charge que les cartes et les coupons avec des codes non personnalisés. Les cartes et les coupons avec des codes personnalisés doivent d'abord être importés, puis appelés.

4.4 Envoi groupé de messages de cartes et de coupons basés sur la liste OpenID

prend en charge l'envoi groupé de cartes et de coupons natifs basés sur OpenID. Le compte d'abonnement n'est pas disponible. Le compte de service dispose d'autorisations d'interface après authentification. Pour plus de détails, veuillez consulter Interface d'envoi groupé basée sur la liste OpenID

Actuellement, cette interface ne prend en charge que les cartes et les coupons avec des codes non personnalisés. Les cartes et les coupons avec des codes personnalisés doivent d'abord être importés, puis appelés.

4.5 Émission de cartes et de coupons via les messages du service client

aide les développeurs à appeler cette interface pour émettre des cartes et des coupons. Le compte d'abonnement n'est pas disponible et sera disponible une fois le compte de service authentifié. Pour plus de détails, veuillez consulter Interface du service client - Envoyer un message

Actuellement, cette interface ne prend en charge que le remplissage de cartes et de coupons avec des codes non personnalisés. Les cartes et les coupons avec des codes personnalisés doivent d'abord être importés, puis appelés.

4.6 Interface d'aperçu

permet aux développeurs d'appeler cette interface pour émettre des cartes et des coupons. Le compte d'abonnement n'est pas disponible et sera disponible une fois le compte de service authentifié. Pour plus de détails, veuillez consulter Interface de prévisualisation

5 Statistiques des données du canal de livraison

Pour permettre aux développeurs de compter les données de livraison des cartes et des coupons de chaque canal, un nouveau champ external_str (ancien external_id) est ajouté. Remplissez le external_str (original external_id) avec différentes valeurs dans la structure json de card_ext. Lorsque l'utilisateur reçoit la carte, l'outer_id correspondant sera introduit dans l'événement de réception et transmis au serveur du développeur.

Exemple : définissez external_str sur 12b dans la méthode de livraison du code QR

{
"action_name": "QR_CARD", 
"action_info": {
"card": {
"card_id": "pFS7Fjg8kV1IdDz01r4SQwMkuCKc", 
"code": "198374613512",
"openid": "oFS7Fjl0WsZ9AMZqrI80nbIq8xrA",
"expire_seconds": "1800",
"is_unique_code": false ,
"outer_str" : "12b"
  }
 }
}

Recevoir le fichier XML de l'événement

<xml> <ToUserName><![CDATA[toUser]]></ToUserName> 
<FromUserName><![CDATA[FromUser]]></FromUserName> 
<FriendUserName><![CDATA[FriendUser]]></FriendUserName> 
<CreateTime>123456789</CreateTime> 
<MsgType><![CDATA[event]]></MsgType> 
<Event><![CDATA[user_get_card]]></Event> 
<CardId><![CDATA[cardid]]></CardId> 
<IsGiveByFriend>1</IsGiveByFriend>
<UserCardCode><![CDATA[12312312]]></UserCardCode>
<OuterStr>12b</OuterStr>
</xml>

6 Définir la liste blanche de test

Description de l'interface

Étant donné que les cartes et les coupons ont des exigences d'audit, afin de faciliter le débogage des comptes officiels, vous pouvez créer des comptes de test. Ces comptes peuvent recevoir des cartes et des coupons qui n'ont pas réussi l'examen et expérimenter l'ensemble du processus.

Notes pour les développeurs

1. Prend en charge le paramètre de liste blanche pour les champs "openid" et "username", avec une limite supérieure totale de 10.

2. Réglez l'interface de la liste blanche de test sur les paramètres complets, c'est-à-dire que lorsque la liste de tests change, vous devez appeler cette interface pour saisir à nouveau les identifiants de tous les testeurs

3. L'utilisateur reçoit la carte, ignorez le statut invalide de la carte, les développeurs doivent y prêter attention.

Description de la demande d'appel de l'interface

HTTP请求方式: POST
URL:https://api.weixin.qq.com/card/testwhitelist/set?access_token=TOKEN

Description des paramètres

Le paramètre
Nom du paramètreDescription
errcodeCode d'erreur
errmsg Message d'erreur
contenu Renvoie un morceau de code HTML, qui peut être directement intégré dans le corps du message graphique. Autrement dit, vous pouvez intégrer ce code dans le champ de contenu de l'interface de téléchargement d'images et de messages texte.
Données POST
est-il obligatoire
est Données Json





Données POST

{
  "openid": [
      "o1Pj9jmZvwSyyyyyyBa4aULW2mA", 
      "o1Pj9jmZvxxxxxxxxxULW2mA"
               ],
  "username": [
      "afdvvf",
      "abcd"
                ]
 }

Description du paramètre

Nom du paramètreObligatoireTypeExemple de valeurDescription
ouvrir identifiant Nonstring(20) o1Pj9jmZvwSyyyyyyBa4aULW2mA Liste openid testée.
usernamenostring (32)eddy Liste d'identification WeChat testée.






Retour aux instructions

{
   "errcode":0,
   "errmsg":"ok"
}
Nom du paramètreDescription
errcodeCode d'erreur, 0 est normal.
errmsgmessage d'erreur.