FlowAlp

Lister et récupérer les Transactions

July 30, 2026

Listez et filtrez les transactions FlowAlp Pay ou récupérez une transaction par ID, avec tous les statuts expliqués pour l'API marchande.

Chaque paiement traité par FlowAlp Pay est enregistré sous forme de Transaction. L'API marchande expose deux endpoints en lecture pour cette ressource : une liste filtrable et la récupération d'un enregistrement unique par son ID numérique. Utilisez la version d'API v1.16 pour toute nouvelle intégration et authentifiez chaque appel avec l'en-tête x-api-key, comme décrit dans Authentification.

Lister les Transactions

GEThttps://api.pay.flowalp.com/v1.16/Transaction/v1.14 · v1.15 · v1.16

L'endpoint de liste renvoie les transactions de votre instance, triées par date de création. Combinez les filtres de date UTC avec limit et offset pour parcourir de grands ensembles de résultats. Tous les paramètres sont facultatifs sauf instance.

Paramètres de la requête

ParamètreTypeDescription
instancestring (requis)Nom de votre instance (tenant). Identifie le compte sur lequel la requête est exécutée.
filterDatetimeUtcGreaterThandateBorne inférieure en UTC, format YYYY-MM-DD HH:MM:SS. Seules les transactions créées après ce moment sont renvoyées.
filterDatetimeUtcLessThandateBorne supérieure en UTC, même format.
filterMyTransactionsOnlybooleanPar défaut false. Avec la valeur 1, seules les transactions créées avec la clé API utilisée pour cette requête sont renvoyées.
orderByTimestringASC (défaut) ou DESC — ordre de tri selon la date de la transaction.
offsetintegerNombre de lignes à ignorer, pour la pagination.
limitintegerNombre maximal de lignes renvoyées.
Lister les transactionsbash
curl "https://api.pay.flowalp.com/v1.16/Transaction/?instance=<tenant>&orderByTime=DESC&limit=20&offset=0" \
  -H "x-api-key: <api-secret>"
Lister les transactions (SDK PHP)PHP
<?php
use FlowAlpPay\FlowAlpPay;
use FlowAlpPay\Models\Request\Transaction;

$client = new FlowAlpPay(
    getenv('FLOWALP_TENANT'),
    getenv('FLOWALP_API_SECRET'),
    FlowAlpPay::DEFAULT_COMMUNICATION_HANDLER,
    'pay.flowalp.com',
    '1.16'
);

$request = new Transaction();
$request->setFilterDatetimeUtcGreaterThan(new DateTime('2026-07-01 00:00:00'));
$request->setFilterDatetimeUtcLessThan(new DateTime('2026-07-31 23:59:59'));
$request->setOrderByTime('DESC');
$request->setLimit(20);

try {
    $transactions = $client->getAll($request);
    foreach ($transactions as $transaction) {
        echo $transaction->getId() . ': ' . $transaction->getStatus() . PHP_EOL;
    }
} catch (Exception $e) {
    error_log('Listing transactions failed: ' . $e->getMessage());
}

Récupérer une Transaction

GEThttps://api.pay.flowalp.com/v1.16/Transaction/{id}/v1.14 · v1.15 · v1.16
ParamètreTypeDescription
idinteger (requis)Paramètre de chemin : ID numérique de la transaction à récupérer. Vous le recevez à la création de la transaction et dans chaque notification webhook.
instancestring (requis)Paramètre de requête : nom de votre instance (tenant).
Récupérer une transactionbash
curl "https://api.pay.flowalp.com/v1.16/Transaction/4712/?instance=<tenant>" \
  -H "x-api-key: <api-secret>"
Récupérer une transaction (SDK PHP)PHP
<?php
use FlowAlpPay\Models\Request\Transaction;

// $client : même constructeur que dans l'exemple de liste ci-dessus
$request = new Transaction();
$request->setId(4712);

try {
    $transaction = $client->getOne($request);
    echo $transaction->getStatus();
} catch (Exception $e) {
    error_log('Transaction lookup failed: ' . $e->getMessage());
}

Réponse

Les deux endpoints répondent avec un champ status et un tableau data ; la récupération unitaire renvoie un tableau contenant exactement un élément. Les montants sont exprimés en unités mineures (6250 = CHF 62.50). refundable et partiallyRefundable indiquent quelles opérations de remboursement sont actuellement possibles, et payoutUuid relie la transaction au versement qui l'a réglée.

Exemple de réponseJSON
{
  "status": "success",
  "data": [
    {
      "id": 4712,
      "uuid": "f384000b",
      "status": "confirmed",
      "time": "2026-07-12 09:41:27",
      "lang": "de",
      "psp": "Native_PSP",
      "pspId": 26,
      "mode": "LIVE",
      "referenceId": "ORDER-2026-0815",
      "pageUuid": "892dcf5c",
      "payment": {
        "brand": "visa",
        "wallet": null
      },
      "payoutUuid": "AB12CD34",
      "invoice": {
        "currencyAlpha3": "CHF",
        "products": [
          { "quantity": 1, "name": "Hoodie", "amount": 5900 }
        ],
        "discount": null,
        "shippingAmount": 350,
        "totalAmount": 6250,
        "customFields": null
      },
      "refundable": true,
      "partiallyRefundable": true,
      "contact": {
        "id": 16,
        "uuid": "9c9c0282",
        "firstname": "Anna",
        "lastname": "Keller",
        "email": "anna.keller@example.com",
        "country": "Switzerland",
        "countryISO": "CH"
      }
    }
  ]
}

Statuts de la transaction

Le champ status reflète l'étape du cycle de vie où se trouve la transaction :

StatutDescription
waitingLe paiement a été initié mais n'est pas encore finalisé.
confirmedLe paiement a réussi et le montant a été débité.
authorizedLe moyen de paiement a été tokenisé avec succès ; aucun montant n'a encore été débité.
reservedUn montant a été réservé via une pré-autorisation.
refundedLe montant total a été remboursé au client.
partially-refundedUne partie du montant a été remboursée au client.
refund_pendingUn remboursement est en cours de traitement.
cancelledLe paiement a été interrompu par le client.
declinedLe paiement a échoué au 3-D Secure ou a été refusé par la banque émettrice.
chargebackLe titulaire de la carte a récupéré les fonds via sa banque.
disputedUn litige a été ouvert pour cette transaction.
errorUn problème technique est survenu pendant le traitement.
expiredLe paiement a été interrompu pour cause d'inactivité.

Erreurs

Statut HTTPSignification
400Requête mal formée — le champ message du corps d'erreur décrit le problème exact.
404Aucune transaction avec l'ID indiqué n'existe sur cette instance.

Les réponses d'erreur ont la forme {"status": "error", "message": "..."}.

Les opérations post-paiement — débit, capture, remboursement et annulation — sont décrites dans Débiter, capturer, rembourser et annuler des Transactions. Pour comprendre comment les transactions confirmées atteignent votre compte bancaire, consultez l'API Payouts et abonnez-vous aux événements webhook pour suivre les changements de statut en temps réel.