/api/v2/server-side-api/purchase/paddle/token/validate/ Valider un achat Paddle
Valide un achat à l'aide du jeton Paddle fourni en utilisant les identifiants Paddle dans les paramètres de votre application dans l'Adapty Dashboard. Si l'achat est valide, l'historique des transactions est importé depuis Paddle vers le profil dans Adapty avec le customer_user_id spécifié. Si aucun profil avec ce customer_user_id n'existait auparavant, il sera créé.
Request body
L'identifiant de votre utilisateur dans votre système
Jeton d'un objet Paddle représentant un achat unique. Peut être soit un identifiant de transaction (txn_...) soit un identifiant d'abonnement (sub_...)
Responses
Achat validé avec succès
Schema
L'identifiant interne de votre application
Identifiant de profil Adapty
L'identifiant de votre utilisateur dans votre système
Valeur décimale représentant le chiffre d'affaires total en USD généré par le profil
Paramètre interne
Temps de réponse en millisecondes, nécessaire pour résoudre une condition de concurrence
Maximum de 30 attributs personnalisés autorisés pour le profil
La clé doit être une chaîne de caractères d'au plus 30 caractères. Seuls les lettres, chiffres, tirets, points et underscores sont autorisés
La valeur de l'attribut doit comporter au plus 50 caractères. Seules les chaînes de caractères et les décimaux sont autorisés comme valeurs
Tableau d'objets de niveau d'accès. Tableau vide si le client n'a aucun niveau d'accès
Identifiant du niveau d'accès
Store où le niveau d'accès a été acheté
Identifiant du produit dans le store
Identifiant du plan de base dans le store
Identifiant de transaction dans le store
Identifiant de transaction originale dans le store
Détails de l'offre, si une offre promotionnelle ou de lancement a été appliquée
Catégorie de l'offre
One of: "introductory", "promotional", "offer_code", "win_back"
Type d'offre
One of: "free_trial", "pay_as_you_go", "pay_up_front"
Identifiant de l'offre
Quand le niveau d'accès commence
Quand le niveau d'accès a été acheté
Quand le niveau d'accès a été acheté initialement
Quand le niveau d'accès expire
Quand le renouvellement a été annulé
Quand un problème de facturation a été détecté
Si le niveau d'accès est en délai de grâce
Raison de l'annulation
Tableau d'objets d'abonnement. Tableau vide si le client n'a aucun abonnement
Store où l'abonnement a été acheté
Identifiant du produit dans le store
Identifiant du plan de base dans le store
Identifiant de transaction dans le store
Identifiant de transaction originale dans le store
Détails de l'offre, si une offre promotionnelle ou de lancement a été appliquée
Catégorie de l'offre
One of: "introductory", "promotional", "offer_code", "win_back"
Type d'offre
One of: "free_trial", "pay_as_you_go", "pay_up_front"
Identifiant de l'offre
Environnement (Sandbox, Production)
Quand l'abonnement a été acheté
Quand l'abonnement a été acheté initialement
Quand l'abonnement expire
Quand le renouvellement a été annulé
Quand un problème de facturation a été détecté
Si l'abonnement est en délai de grâce
Raison de l'annulation
Tableau d'objets hors abonnement. Tableau vide si le client n'a aucun achat
Identifiant unique de l'achat
Store où l'achat a été effectué
Identifiant du produit dans le store
Identifiant du plan de base dans le store
Identifiant de transaction dans le store
Identifiant de transaction originale dans le store
Quand l'achat a été effectué
Environnement (Sandbox, Production)
Si cet achat est un remboursement
Si cet achat est un consommable
Example
{
"data": {
"app_id": "14c3d623-2f3a-455a-aa86-ef83dff6913b",
"profile_id": "3286abd3-48b0-4e9c-a5f6-ac0a006804a6",
"customer_user_id": "Jane.doe@example.com",
"total_revenue_usd": 0,
"segment_hash": "8f45947bad31ab0c",
"timestamp": 1736436751469,
"custom_attributes": [
{
"key": "favourite_sport",
"value": "yoga"
}
],
"access_levels": [],
"subscriptions": [
{
"purchase_id": "5a7ab471-2299-45f7-ad69-1d395c1256e3",
"store": "app_store",
"store_product_id": "1year.premium",
"store_base_plan_id": null,
"store_transaction_id": "30002109551456",
"store_original_transaction_id": "30002109551456",
"purchased_at": "2022-10-12T09:42:50+00:00",
"environment": "Production",
"is_refund": false,
"is_consumable": false
}
],
"non_subscriptions": []
}
} Requête incorrecte
Schema
Source de l'erreur
Tableau de messages d'erreur
Nom court de l'erreur
Code de statut HTTP
Example
{
"errors": [
"No products found"
],
"error_code": "no_products_found",
"status_code": 400
} Non autorisé
Schema
Source de l'erreur
Tableau de messages d'erreur
Nom court de l'erreur
Code de statut HTTP
Example
{
"errors": [
"Invalid API key"
],
"error_code": "unauthorized",
"status_code": 401
} Erreur interne du serveur
Schema
Source de l'erreur
Tableau de messages d'erreur
Nom court de l'erreur
Code de statut HTTP