Recharge automatique
Updated:
Recharge automatique du solde : lorsque le solde passe en dessous d'un seuil, le montant configuré est prélevé sur le moyen de paiement enregistré. Disponible dans API v2 uniquement — il n'existe pas d'équivalent en v1.
Cette fonctionnalité doit être activée sur le serveur. Lorsqu'elle est désactivée, les deux points de terminaison renvoient Auto top-up is not available.
Point final :
Cette requête renvoie la configuration actuelle de la recharge automatique ainsi que le résultat du dernier déclenchement.
Paramètres de chemin
Nom | Valeur | Description |
|---|---|---|
Autorisation |
| Votre clé API personnelle (Comment s'y rendre) |
Exemple
https://proxy-seller.com/personal/api/v2/fj4948ffhg58gh843gh/balance/autotopup/getRéponse
{
"status": "success",
"data": {
"configured": true,
"enabled": true,
"state": "ACTIVE",
"threshold": 10,
"amount": 25,
"subscriptionId": "sub_01hx9k2m4p",
"paymentMethod": {
"id": "sub_01hx9k2m4p",
"status": "active",
"paymentMethod": "card",
"brand": "visa",
"last4": "1234",
"exp": "05/2027"
},
"dailyCountCap": 5,
"monthlyAmountCap": 500,
"failCount": 0,
"lastAttemptAt": "2026-08-14T09:12:44.000+00:00",
"lastEvent": {
"status": "SUCCEEDED",
"amount": 25,
"at": "2026-08-14T09:12:46.000+00:00",
"reason": null
}
},
"errors": []
}{
"status": "error",
"data": null,
"errors": [
{
"message": "Auto top-up is not available",
"code": 49,
"customData": null
}
]
}{
"status": "error",
"data": null,
"errors": [
{
"message": "Error api key",
"code": 503,
"customData": null
},
{
"message": "IP not allowed",
"code": 503,
"customData": null
},
{
"message": "Request limit reached",
"code": 503,
"customData": null
}
]
}Modifier les paramètres
Point final :
Cette requête met à jour la configuration de la recharge automatique. Mise à jour partielle: tout champ que vous omettez conserve la valeur qui y est enregistrée ; ainsi, pour modifier uniquement le seuil, il suffit d'envoyer threshold.
Paramètres de chemin
Nom | Valeur | Description |
|---|---|---|
Autorisation |
| Votre clé API personnelle (Comment s'y rendre) |
Corps de la requête
Nom | Type | Description |
|---|---|---|
activé | Booléen | Activer ou désactiver la recharge automatique |
seuil | Nombre | Recharger lorsque le solde passe en dessous de cette valeur. Minimum |
montant | Nombre | Montant d'une recharge unique. Montant minimum |
identifiant d'abonnement | Chaîne de caractères | Mode de paiement à débiter, issu de |
dailyCountCap | Nombre | Votre propre limite, plus stricte, de recharges par période de 24 heures. Minimum |
montant mensuel maximal | Nombre | Votre propre limite du montant total par période de 30 jours. Elle doit être supérieure ou égale à |
Exemple
https://proxy-seller.com/personal/api/v2/fj4948ffhg58gh843gh/balance/autotopup/setRéponse
{
"status": "success",
"data": {
"configured": true,
"enabled": true,
"state": "ACTIVE",
"threshold": 10,
"amount": 25,
"subscriptionId": "sub_01hx9k2m4p",
"paymentMethod": {
"id": "sub_01hx9k2m4p",
"status": "active",
"paymentMethod": "card",
"brand": "visa",
"last4": "4242",
"exp": "05/2027"
},
"dailyCountCap": 5,
"monthlyAmountCap": 500,
"failCount": 0,
"lastAttemptAt": null,
"lastEvent": {
"status": "SETTINGS_SAVED",
"amount": null,
"at": "2026-08-14T10:03:11.000+00:00",
"reason": "enabled: false -> true"
}
},
"errors": []
}{
"status": "error",
"data": null,
"errors": [
{
"message": "Top-up amount must be #min_amount# or more",
"code": 51,
"customData": {
"minAmount": 5
}
}
]
}{
"status": "error",
"data": null,
"errors": [
{
"message": "Top-up amount must cover the threshold, otherwise it will trigger again",
"code": 52,
"customData": null
}
]
}{
"status": "error",
"data": null,
"errors": [
{
"message": "Auto top-up requires a saved payment method",
"code": 53,
"customData": null
}
]
}{
"status": "error",
"data": null,
"errors": [
{
"message": "Your saved card has expired — update it to enable auto top-up",
"code": 56,
"customData": null
}
]
}{
"status": "error",
"data": null,
"errors": [
{
"message": "Threshold must be #min_threshold# or more",
"code": 50,
"customData": {
"minThreshold": 1
}
}
]
}Les tests de validation sont effectués par rapport à la fusionné résultat, et non pas uniquement par rapport à la requête. Envoi
thresholden soi est tout de même rejetée si la valeur enregistréeamountse révèle inférieur au nouveau seuil.La pause qui suit une série de tentatives infructueuses ne prend fin que lorsque
enabled: trueest envoyée explicitement. La modification d'autres champs dans une configuration mise en pause ne modifie pas l'état de pause.Les limites effectives s'appliquent également lorsque l'utilisateur a sélectionné « Aucune » :
5recharges par 24 h et500sur une période de 30 jours glissants.