/api/v2/server-side-api/purchase/set/transaction/ Définir une transaction
Crée une nouvelle transaction pour un utilisateur final de votre application dans Adapty et fournit un niveau d'accès. La transaction créée par cette méthode apparaîtra dans vos analyses et dans le fil d'événements, et sera envoyée à toutes les intégrations.
Mise à jour d'un abonnement existant : Pour mettre à jour billing_issue_detected_at ou renew_status_changed_at sans générer de nouvel événement subscription_renewed, réutilisez le store_transaction_id existant (sous le même store_original_transaction_id). La soumission d'un nouveau store_transaction_id est traitée comme une nouvelle transaction et déclenche un événement subscription_renewed.
Header parameters
L'identifiant unique du client dans votre système. L'un ou l'autre des paramètres adapty-customer-user-id ou adapty-profile-id est requis.
L'identifiant unique du profil dans votre système. Meilleure option si vous travaillez avec des profils anonymes. L'un ou l'autre des paramètres adapty-customer-user-id ou adapty-profile-id est requis.
Request body
Option 1 — object
Données de transaction pour un achat unique
Type d'achat
One of: "one_time_purchase"
Store où l'achat a été effectué. Les valeurs courantes incluent app_store, play_store, stripe, paddle, ou tout identifiant de store personnalisé
Environnement dans lequel l'achat a été effectué
One of: "Production", "Sandbox"
ID du produit dans le store
ID de transaction dans le store. 50 caractères maximum. Les ID de transaction PayPal et de certains stores personnalisés peuvent dépasser cette limite — tronquez ou hachez la valeur avant de la soumettre, sinon la requête échouera.
ID de transaction d'origine dans le store
Indique si l'achat est partagé en famille
Code pays au format ISO 3166-1 alpha-2, par exemple US
Code devise au format ISO 4217, par exemple USD
Valeur du prix
Date et heure de l'achat
ID de variante pour les tests A/B
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
Date et heure du remboursement
Raison de l'annulation
One of: "billing_error", "cancelled_by_developer", "new_subscription_replace", "price_increase", "product_was_not_available", "refund", "unknown", "upgraded", "voluntarily_cancelled", "adapty_revoked"
Option 2 — object
Données de transaction pour un achat par abonnement
Type d'achat
One of: "subscription"
Store où l'achat a été effectué. Les valeurs courantes incluent app_store, play_store, stripe, paddle, ou tout identifiant de store personnalisé
Environnement dans lequel l'achat a été effectué
One of: "Production", "Sandbox"
ID du produit dans le store
ID de transaction dans le store. Maximum 50 caractères. Les ID de transaction PayPal et de certains stores personnalisés peuvent dépasser cette limite — tronquez ou hachez la valeur avant de la soumettre, sinon la requête échoue.
ID de transaction original dans le store
Indique si l'achat est partagé en famille
Code pays au format ISO 3166-1 alpha-2, par exemple US
Code devise au format ISO 4217, par exemple USD
Valeur du prix
Date et heure de l'achat
ID de variante pour les tests A/B
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
Date et heure du remboursement
Motif d'annulation
One of: "billing_error", "cancelled_by_developer", "new_subscription_replace", "price_increase", "product_was_not_available", "refund", "unknown", "upgraded", "voluntarily_cancelled", "adapty_revoked"
Date et heure de l'achat initial de l'abonnement
Date et heure d'expiration de l'abonnement
Indique si l'abonnement sera renouvelé
Date et heure du changement du statut de renouvellement
Date et heure de détection du problème de facturation
Date et heure d'expiration du délai de grâce
Responses
Transaction enregistrée avec succès
Schema
L'identifiant interne de votre application
Identifiant de profil Adapty
L'identifiant de votre utilisateur dans votre système
Une valeur flottante représentant le chiffre d'affaires total en USD généré sur le profil
Paramètre interne
Temps de réponse en millisecondes, nécessaire pour résoudre une condition de concurrence
Un maximum de 30 attributs personnalisés peuvent être définis sur le profil
La clé doit être une chaîne de caractères ne dépassant pas 30 caractères. Seuls les lettres, chiffres, tirets, points et underscores sont autorisés
La valeur de l'attribut ne doit pas dépasser 50 caractères. Seules les chaînes de caractères et les nombres flottants sont autorisés comme valeurs
Tableau d'objets 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 la transaction dans le store
Identifiant de la transaction d'origine dans le store
Détails de l'offre, si une offre promotionnelle ou une offre 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
Date de début du niveau d'accès
Date d'achat du niveau d'accès
Date d'achat initiale du niveau d'accès
Date d'expiration du niveau d'accès
Date d'annulation du renouvellement
Date de détection du problème de facturation
Indique si le niveau d'accès est en délai de grâce
Raison de l'annulation
Tableau d'objets abonnement. Tableau vide si le client n'a aucun abonnement
Store où l'abonnement a été acheté
ID du produit dans le store
ID du plan de base dans le store
ID de transaction dans le store
ID de transaction d'origine dans le store
Détails de l'offre, si une offre promotionnelle ou une offre 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)
Date d'achat de l'abonnement
Date d'achat initial de l'abonnement
Date d'expiration de l'abonnement
Date d'annulation du renouvellement
Date de détection du problème de facturation
Indique si l'abonnement est en délai de grâce
Raison de l'annulation
Tableau d'objets achat unique. Tableau vide si le client n'a effectué aucun achat
Identifiant unique de l'achat
Store où l'achat a été effectué
ID du produit dans le store
ID du plan de base dans le store
ID de la transaction dans le store
ID de la transaction d'origine dans le store
Date et heure de l'achat
Environnement (Sandbox, Production)
Indique s'il s'agit d'un remboursement
Indique s'il s'agit d'un achat consommable
Requête incorrecte
Schema
Source de l'erreur
Tableau de messages d'erreur
Nom court de l'erreur
Code de statut HTTP
Non autorisé
Schema
Source de l'erreur
Tableau de messages d'erreur
Nom court de l'erreur
Code de statut HTTP
Profil introuvable
Schema
Source de l'erreur
Tableau de messages d'erreur
Nom court de l'erreur
Code de statut HTTP
Erreur interne du serveur