getPaymentStagesByOrderId
Obtenir l'avancement du paiement d'une commande : ses étapes et si elles sont payées.
Description
Cette méthode récupère les étapes de paiement d'une commande, ainsi que deux indicateurs qui décrivent la commande dans son ensemble. Elle renvoie une promesse qui se résout en un objet IPaymentProgress.
Payments.getPaymentStagesByOrderId(id);
Paramètres
id: number
ID de l'objet commande.
exemple : 1
💡 Que signifient les deux indicateurs
Une commande peut être payée en plusieurs fois plutôt qu'en un seul paiement. partial indique de quel cas il s'agit, completed indique s'il reste quelque chose à payer, et chaque étape a son propre status.
const progress = await Payments.getPaymentStagesByOrderId(205);
if (progress.completed) {
// Nothing left to pay.
} else if (progress.partial) {
const left = progress.stages.filter((stage) => stage.status === 'planned');
console.log(`${left.length} stages still to pay`);
}
🔐 Autorisation
Cette méthode nécessite une autorisation utilisateur. Voir le module AuthProvider.
Exemples
Exemple minimal
const response = await Payments.getPaymentStagesByOrderId(205);
Exemple de réponse
{
"completed": false,
"partial": true,
"stages": [
{
"marker": "part_a",
"sessionId": 100,
"productId": 200,
"title": "Part A",
"value": 150,
"status": "completed"
},
{
"marker": "part_b",
"sessionId": 101,
"productId": 200,
"title": "Part B",
"value": 150,
"status": "planned"
}
]
}
Schéma de réponse
Schéma : IPaymentProgress
completed: boolean
Vrai lorsque chaque étape de la commande a été payée.
exemple : false
partial: boolean
Vrai lorsque la commande est payée en plusieurs étapes plutôt qu'en un seul paiement.
exemple : true
stages: IPaymentStage[]
Les étapes elles-mêmes, dans l'ordre dans lequel l'API les renvoie.
exemple : [{ "marker": "part_a", "status": "completed" }]
stages[].marker: string
Marqueur de l'attribut qui a fixé le prix de l'étape.
exemple : "part_a"
stages[].sessionId: number
Identifiant de la session de paiement liée à l'étape.
exemple : 100
stages[].productId: number
Identifiant du produit auquel l'étape appartient.
exemple : 200
stages[].title: string
Titre de l'étape.
exemple : "Partie A"
stages[].value: number
Prix de l'étape.
exemple : 150
stages[].status: "planned" | "completed"
Statut de l'étape : planifiée - pas encore payée, complétée - payée.
exemple : "planned"