Consultations
Obtenir le détail d'un paiement
Obtient les informations complètes d'une session de paiement en ligne, y compris toutes les tentatives de paiement et, si la session est finalisée, la référence du paiement autorisé (paymentReference).
Cet endpoint est le moyen principal d'obtenir le paymentReference nécessaire pour effectuer des modifications (remboursements, captures, etc.).
Live: GET https://aviratopayments.com/external/v1/payment/session/{sessionId}?webcode={webcode}
Test: GET https://aviratopayments.com/external/v1/test/payment/session/{sessionId}?webcode={webcode}Paramètres
| Paramètre | Emplacement | Type | Requis | Description |
|---|---|---|---|---|
sessionId | Path | string | Oui | Le sessionId renvoyé lors de la création de la session |
webcode | Query | string | Oui | Identifiant de votre entreprise |
Exemple
curl -X GET "https://aviratopayments.com/external/v1/payment/session/SHOP01-EXT-17195000001234?webcode=SHOP01" \
-H "X-API-KEY: votre_cle_api_live"Réponse (200) - Session finalisée
{
"success": true,
"data": {
"sessionId": "SHOP01-EXT-17195000001234",
"status": "completed",
"amount": {
"value": 15000,
"currency": "EUR"
},
"countryCode": "ES",
"shopperLocale": "es-ES",
"deliverAt": "2026-07-15T14:00:00Z",
"description": "Pedido #12345 - Servicio premium",
"customReference": "ORD-2026-12345",
"isPreAuth": false,
"urlOk": "https://tu-sistema.com/pago-ok",
"urlKo": "https://tu-sistema.com/pago-error",
"createdAt": "2026-06-28 10:30:00",
"paymentReference": "SHOP01-PXT-17195000005678",
"completedAt": "2026-06-28 10:35:22",
"paymentStatus": "AUTHORISED",
"attempts": [
{
"paymentReference": "SHOP01-PXT-17195000003456",
"status": "refused",
"createdAt": "2026-06-28 10:32:00"
},
{
"paymentReference": "SHOP01-PXT-17195000005678",
"status": "authorised",
"createdAt": "2026-06-28 10:34:00"
}
]
}
}Réponse (200) - Session en attente
Lorsque la session n'est pas encore finalisée, elle n'inclut pas paymentReference, completedAt ni paymentStatus :
{
"success": true,
"data": {
"sessionId": "SHOP01-EXT-17195000001234",
"status": "pending",
"amount": {
"value": 15000,
"currency": "EUR"
},
"countryCode": "ES",
"shopperLocale": "es-ES",
"deliverAt": "2026-07-15T14:00:00Z",
"description": "Pedido #12345 - Servicio premium",
"customReference": "ORD-2026-12345",
"isPreAuth": false,
"urlOk": "https://tu-sistema.com/pago-ok",
"urlKo": "https://tu-sistema.com/pago-error",
"createdAt": "2026-06-28 10:30:00",
"attempts": []
}
}Champs de réponse
| Champ | Toujours présent | Description |
|---|---|---|
sessionId | Oui | Identifiant unique de la session |
status | Oui | État de la session : pending, completed, failed, expired, cancelled |
amount | Oui | Montant et devise demandés à la création de la session |
countryCode | Oui | Pays configuré |
shopperLocale | Oui | Langue configurée |
deliverAt | Oui | Date de livraison (peut être null) |
description | Oui | Description (peut être null) |
customReference | Oui | Votre référence interne (peut être null) |
isPreAuth | Oui | Si créée en préautorisation |
urlOk / urlKo | Oui | URLs de retour configurées |
createdAt | Oui | Date et heure de création de la session |
paymentReference | Uniquement si completed | Référence du paiement autorisé. Utilisez-la pour les modifications |
completedAt | Uniquement si completed | Date d'autorisation du paiement |
paymentStatus | Uniquement si completed | État du paiement chez le processeur (ex. : AUTHORISED). En Live, cette valeur peut changer avec le temps si le processeur notifie des événements ultérieurs (chargeback, fraude, réversion). Consultez les webhooks ou rappelez cet endpoint si vous avez besoin du dernier état. |
attempts | Oui | Tableau informatif des tentatives de paiement enregistrées. Peut être vide |
Erreurs
| Code | HTTP | Cause |
|---|---|---|
| 12001 | 400 | Paramètre webcode manquant |
| 10404 | 404 | Session introuvable |
| 11008 | 403 | La session n'appartient pas à votre webcode ou environnement |
---
Lister les paiements
Liste toutes les sessions de paiement en ligne avec filtres et pagination par curseur.
Live: GET https://aviratopayments.com/external/v1/payment/sessions?webcode={webcode}
Test: GET https://aviratopayments.com/external/v1/test/payment/sessions?webcode={webcode}Paramètres de query
| Paramètre | Type | Requis | Description |
|---|---|---|---|
webcode | string | Oui | Identifiant de votre entreprise |
status | string | Non | Filtrer par état : pending, completed, failed, expired, cancelled |
created_at_start | string | Non | Date de début (filtre) |
created_at_end | string | Non | Date de fin (filtre) |
cursor | string | Non | Curseur de pagination (de la réponse précédente) |
take | integer | Non | Résultats par page (1-100, par défaut : 20) |
order | string | Non | Ordre des résultats : asc ou desc (par défaut : asc) |
Exemple
curl -X GET "https://aviratopayments.com/external/v1/payment/sessions?webcode=SHOP01&status=completed&take=10" \
-H "X-API-KEY: votre_cle_api_live"Réponse (200)
{
"success": true,
"data": {
"payments": [
{
"sessionId": "SHOP01-EXT-17195000001234",
"status": "completed",
"amount": { "value": 15000, "currency": "EUR" },
"description": "Pedido #12345",
"customReference": "ORD-2026-12345",
"isPreAuth": false,
"createdAt": "2026-06-28 10:30:00",
"completedAt": "2026-06-28 10:35:22",
"paymentReference": "SHOP01-PXT-17195000005678",
"paymentStatus": "AUTHORISED"
}
],
"meta": {
"cursor": "eyJpZCI6NDJ9",
"hasMore": true,
"total": 89
}
}
}Champs de chaque session dans la liste
| Champ | Description |
|---|---|
sessionId | Identifiant de la session |
status | État actuel |
amount | Montant et devise |
description | Description (peut être null) |
customReference | Votre référence interne (peut être null) |
isPreAuth | Si c'est une préautorisation |
createdAt | Date et heure de création |
completedAt | Date de finalisation (peut être null) |
paymentReference | Référence du paiement autorisé (peut être null si non finalisée) |
paymentStatus | État du paiement : AUTHORISED, FAILED, REFUNDED, PARTIALLYREFUNDED, CANCELED, ACTIVEDEPOSIT (peut être null). En Live, la valeur peut évoluer après des webhooks ultérieurs (voir Webhooks). |
Pagination par curseurs
La pagination fonctionne avec des curseurs opaques (pas de numéros de page) :
# Première page
GET .../payment/sessions?webcode=SHOP01&take=20
# Page suivante (en utilisant le curseur de meta.cursor)
GET .../payment/sessions?webcode=SHOP01&take=20&cursor=eyJpZCI6NDJ9
# Répéter jusqu'à meta.hasMore == falseLes curseurs sont des chaînes opaques. N'essayez pas de les décoder ni de les construire manuellement ; passez simplement la valeur de meta.cursor telle quelle.
---
Lister les modifications d'un paiement
Liste toutes les opérations de modification (refund, capture, cancel, extend) associées à une session de paiement en ligne.
Live: GET https://aviratopayments.com/external/v1/payment/session/{sessionId}/modifications?webcode={webcode}
Test: GET https://aviratopayments.com/external/v1/test/payment/session/{sessionId}/modifications?webcode={webcode}Paramètres
| Paramètre | Emplacement | Type | Requis | Description |
|---|---|---|---|---|
sessionId | Path | string | Oui | Le sessionId de la session de paiement |
webcode | Query | string | Oui | Identifiant de votre entreprise |
type | Query | string | Non | Filtrer par type : refund, capture, cancel, extend |
cursor | Query | string | Non | Curseur de pagination |
take | Query | integer | Non | Résultats par page (1-100, par défaut : 20) |
order | Query | string | Non | Ordre : asc ou desc (par défaut : asc) |
Exemple
curl -X GET "https://aviratopayments.com/external/v1/payment/session/SHOP01-EXT-17195000001234/modifications?webcode=SHOP01" \
-H "X-API-KEY: votre_cle_api_live"Réponse (200)
{
"success": true,
"data": {
"modifications": [
{
"operationReference": "SHOP01-RFX-17195100001234",
"operationType": "refund",
"paymentReference": "SHOP01-PXT-17195000005678",
"sessionId": "SHOP01-EXT-17195000001234",
"status": "success",
"requestedAt": "2026-06-29 14:00:00",
"createdAt": "2026-06-29 14:00:00",
"resolvedAt": "2026-06-29 14:00:05",
"amount": {
"value": 5000,
"currency": "EUR"
},
"reason": "CUSTOMER REQUEST"
}
],
"meta": {
"cursor": null,
"hasMore": false,
"total": 1
}
}
}Champs de chaque modification
| Champ | Toujours présent | Description |
|---|---|---|
operationReference | Oui | Référence unique de l'opération |
operationType | Oui | Type : refund, capture, cancel, extend |
paymentReference | Oui | Référence du paiement d'origine sur lequel l'opération a été effectuée |
sessionId | Oui | Session de paiement associée |
status | Oui | État : pending, success, failed |
requestedAt | Oui | Moment de la demande d'opération |
createdAt | Oui | Date et heure de création de l'enregistrement |
resolvedAt | Oui | Moment de finalisation (ou d'échec). null si en attente |
amount | Uniquement refund et capture | Montant de l'opération |
reason | Uniquement refund | Motif du remboursement |
---
Lister les modifications d'un paiement POS
Liste toutes les opérations de modification associées à un paiement POS spécifique.
Live: GET https://aviratopayments.com/external/v1/pos/payment/{posPaymentId}/modifications?webcode={webcode}
Test: GET https://aviratopayments.com/external/v1/test/pos/payment/{posPaymentId}/modifications?webcode={webcode}Paramètres
| Paramètre | Emplacement | Type | Requis | Description |
|---|---|---|---|---|
posPaymentId | Path | string | Oui | Le posPaymentId du paiement POS |
webcode | Query | string | Oui | Identifiant de votre entreprise |
type | Query | string | Non | Filtrer par type : refund, capture, cancel, extend |
cursor | Query | string | Non | Curseur de pagination |
take | Query | integer | Non | Résultats par page (1-100, par défaut : 20) |
order | Query | string | Non | Ordre : asc ou desc (par défaut : asc) |
Exemple
curl -X GET "https://aviratopayments.com/external/v1/pos/payment/SHOP01-POSX-17195300001234/modifications?webcode=SHOP01" \
-H "X-API-KEY: votre_cle_api_live"Réponse (200)
{
"success": true,
"data": {
"modifications": [
{
"operationReference": "SHOP01-RFX-17195400001234",
"operationType": "refund",
"paymentReference": "SHOP01-POSX-17195300001234",
"sessionId": "SHOP01-POSX-17195300001234",
"status": "success",
"requestedAt": "2026-06-30 10:00:00",
"createdAt": "2026-06-30 10:00:00",
"resolvedAt": "2026-06-30 10:00:03",
"amount": {
"value": 2000,
"currency": "EUR"
},
"reason": "CUSTOMER REQUEST"
}
],
"meta": {
"cursor": null,
"hasMore": false,
"total": 1
}
}
}Les champs de réponse sont identiques à ceux de Lister les modifications d'un paiement.
Erreurs
| Code | HTTP | Cause |
|---|---|---|
| 12001 | 400 | Paramètre webcode manquant |
| 10404 | 404 | Paiement POS introuvable |
| 11008 | 403 | Le paiement POS n'appartient pas à votre webcode ou environnement |
---
Lister toutes les modifications
Liste toutes les opérations de modification de votre entreprise, quel que soit le paiement concerné. Permet de filtrer par type, état, date et texte libre.
Live: GET https://aviratopayments.com/external/v1/modifications?webcode={webcode}
Test: GET https://aviratopayments.com/external/v1/test/modifications?webcode={webcode}Paramètres de query
| Paramètre | Type | Requis | Description |
|---|---|---|---|
webcode | string | Oui | Identifiant de votre entreprise |
type | string | Non | Filtrer par type : refund, capture, cancel, extend |
status | string | Non | Filtrer par état : pending, success, failed |
dateFrom | string | Non | Date de début (format YYYY-MM-DD) |
dateTo | string | Non | Date de fin (format YYYY-MM-DD) |
search | string | Non | Recherche texte libre (références, motifs, etc.) |
cursor | string | Non | Curseur de pagination |
take | integer | Non | Résultats par page (1-100, par défaut : 20) |
order | string | Non | Ordre : asc ou desc (par défaut : asc) |
Exemple
curl -X GET "https://aviratopayments.com/external/v1/modifications?webcode=SHOP01&type=refund&status=success&take=10" \
-H "X-API-KEY: votre_cle_api_live"Réponse (200)
{
"success": true,
"data": {
"modifications": [
{
"operationReference": "SHOP01-RFX-17195100001234",
"operationType": "refund",
"paymentReference": "SHOP01-PXT-17195000005678",
"sessionId": "SHOP01-EXT-17195000001234",
"status": "success",
"requestedAt": "2026-06-29 14:00:00",
"createdAt": "2026-06-29 14:00:00",
"resolvedAt": "2026-06-29 14:00:05",
"amount": {
"value": 5000,
"currency": "EUR"
},
"reason": "CUSTOMER REQUEST"
},
{
"operationReference": "SHOP01-RFX-17195400001234",
"operationType": "refund",
"paymentReference": "SHOP01-POSX-17195300001234",
"sessionId": "SHOP01-POSX-17195300001234",
"status": "success",
"requestedAt": "2026-06-30 10:00:00",
"createdAt": "2026-06-30 10:00:00",
"resolvedAt": "2026-06-30 10:00:03",
"amount": {
"value": 2000,
"currency": "EUR"
},
"reason": "CUSTOMER REQUEST"
}
],
"meta": {
"cursor": "eyJpZCI6NDJ9",
"hasMore": false,
"total": 2
}
}
}Cet endpoint renvoie les modifications de tous les paiements (en ligne et POS). Vous pouvez identifier le type de paiement par la référence : -PXT- (paiement en ligne Live), -PXTT- (paiement en ligne Test), -POSX- (POS Live), -POSXT- (POS Test).
---
Pagination
Tous les endpoints de liste utilisent une pagination par curseurs. Les curseurs sont des chaînes opaques qui représentent la position actuelle dans l'ensemble de résultats.
Fonctionnement
- Première requête : appelez l'endpoint sans paramètre
cursor. Vous recevrez les premiers résultats et unmeta.cursor - Page suivante : si
meta.hasMoreesttrue, utilisez la valeur demeta.cursorcomme paramètrecursordans la requête suivante - Fin : lorsque
meta.hasMoreestfalse, il n'y a plus de résultats
Champs de meta
| Champ | Description |
|---|---|
cursor | Curseur pour obtenir la page suivante. null s'il n'y en a plus |
hasMore | true s'il reste des résultats disponibles |
total | Nombre total d'enregistrements correspondant aux filtres |
Exemple de navigation
# Page 1
curl ".../payment/sessions?webcode=SHOP01&take=10"
# meta: { "cursor": "eyJpZCI6MTB9", "hasMore": true, "total": 45 }
# Page 2
curl ".../payment/sessions?webcode=SHOP01&take=10&cursor=eyJpZCI6MTB9"
# meta: { "cursor": "eyJpZCI6MjB9", "hasMore": true, "total": 45 }
# Page 3
curl ".../payment/sessions?webcode=SHOP01&take=10&cursor=eyJpZCI6MjB9"
# meta: { "cursor": null, "hasMore": false, "total": 45 }Important : les curseurs sont opaques. N'essayez pas de les décoder, les modifier ni de les construire manuellement. Passez simplement la valeur telle que vous la recevez.