---
updatedAt: 2026-08-14T03:37:31.000Z
agentTools:
  projectIndex: https://developer.moneris.com/moneris-api/fr/llms.txt
---

# Récupérer la transaction de crédit originale

Récupérer une transaction de crédit originale à l’aide de son ID de transaction de crédit originale

# Définition OpenAPI

```json
{
  "openapi": "3.0.3",
  "info": {
    "version": "2.15.1",
    "title": "API de Moneris",
    "description": "Plateforme des API de Moneris\n\n\n\n[<img src=\"https://run.pstmn.io/button.svg\" alt=\"Exécuter Dans Postman\" style=\"width: 128px; height:32px;\">](https://god.gw.postman.com/run-collection/25575461-f04750a0-88e9-4c83-8b58-a3aff15eeea8?action=collection%2Ffork&collection-url=entityId%3D25575461-f04750a0-88e9-4c83-8b58-a3aff15eeea8%26entityType%3Dcollection%26workspaceId%3D5d2a9a0f-57a7-441c-b2af-fe6315e80a08)",
    "termsOfService": "https://www.moneris.com/fr-ca/juridiques/conditions-utilisation",
    "contact": {
      "url": "https://api-developer.moneris.com",
      "email": "api@moneris.com"
    },
    "license": {
      "name": "Moneris",
      "url": "https://developer.moneris.com/Agreements/Terms%20of%20Use"
    },
    "x-audience": "external-public"
  },
  "servers": [
    {
      "url": "https://api.sb.moneris.io",
      "description": "Serveur de test (utilise des données de test)"
    },
    {
      "url": "https://api.moneris.io",
      "description": "Serveur de production (utilise des données réelles)"
    }
  ],
  "tags": [
    {
      "name": "Transactions de crédit d'origine",
      "description": "Effectuer et gérer les transactions de crédit d'origine (OCTs)"
    }
  ],
  "paths": {
    "/original-credit-transactions/{original-credit-transaction-id}": {
      "parameters": [
        {
          "$ref": "#/components/parameters/apiVersion"
        },
        {
          "$ref": "#/components/parameters/correlationId"
        },
        {
          "$ref": "#/components/parameters/originalCreditTransactionId"
        },
        {
          "$ref": "#/components/parameters/merchantId"
        }
      ],
      "get": {
        "summary": "Récupérer la transaction de crédit originale",
        "description": "Récupérer une transaction de crédit originale à l’aide de son ID de transaction de crédit originale",
        "operationId": "getOriginalCreditTransaction",
        "security": [
          {
            "OAuth2": [
              "payment.read"
            ]
          },
          {
            "OAuth2": [
              "payment.write"
            ]
          },
          {
            "ApiKeyAuth": []
          }
        ],
        "tags": [
          "Transactions de crédit d'origine"
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/retrieveOriginalCreditTransactionSuccessResponse"
          },
          "401": {
            "$ref": "#/components/responses/unauthorized"
          },
          "403": {
            "$ref": "#/components/responses/forbidden"
          },
          "404": {
            "$ref": "#/components/responses/notFound"
          },
          "429": {
            "$ref": "#/components/responses/tooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/internalServer"
          },
          "503": {
            "$ref": "#/components/responses/serviceUnavailable"
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "ApiKeyAuth": {
        "type": "apiKey",
        "in": "header",
        "name": "X-Api-Key",
        "description": "Une clé API est un jeton fourni par un client lors de ses appels API.\n\nLes clés API sont censées être un secret que seuls le client et le serveur connaissent.\n"
      },
      "OAuth2": {
        "type": "oauth2",
        "description": "OAuth 2.0 est un protocole d'autorisation qui donne à un client API un accès limité aux données utilisateur sur un serveur Web.\n\nOAuth s'appuie sur des scénarios d'authentification qui permettent au propriétaire de la ressource (utilisateur) de partager le contenu protégé du serveur hébergeant la ressource, sans partager ses informations d'identification. À cette fin, un serveur OAuth 2.0 émet des jetons d'accès que les applications clientes peuvent utiliser pour accéder aux ressources protégées au nom du propriétaire de la ressource.\n\nMoneris recommande l'utilisation d'OAuth 2.0 car il fournit des niveaux d'autorisation précis.\n",
        "flows": {
          "clientCredentials": {
            "tokenUrl": "/oauth2/token",
            "scopes": {
              "payment.read": "accorde un accès en lecture aux API liées au paiement",
              "payment.write": "accorde un accès en lecture et en écriture aux API liées au paiement",
              "refund.read": "accorde un accès en lecture aux remboursements",
              "refund.write": "accorde un accès en lecture et en écriture aux remboursements",
              "customer.read": "accorde un accès en lecture aux données client",
              "customer.write": "accorde un accès en lecture et en écriture aux données client",
              "kount.read": "accorde un accès en lecture aux demandes Kount",
              "kount.write": "accorde un accès en lecture et en écriture aux demandes Kount",
              "onboarding.merchant.read": "Accorde un accès en lecture aux API liées à l'intégration des commerçants",
              "onboarding.merchant.write": "Accorde un accès en lecture et en écriture aux API liées à l'intégration des commerçants",
              "onboarding.order.read": "Accorde un accès en lecture aux API liées aux commandes d'intégration",
              "onboarding.order.write": "Accorde un accès en lecture et en écriture aux API liées aux commandes d'intégration",
              "dispute.read": "Accorde un accès en lecture aux API liées aux litiges",
              "dispute.write": "Accorde un accès en lecture et en écriture aux API liées aux litiges",
              "payout.write": "Accorde un accès en lecture et en écriture aux API liées aux versements"
            }
          }
        }
      }
    },
    "schemas": {
      "apiVersion": {
        "description": "Version de l’API du point de terminaison. \n\nDoit être fourni par le biais d’en-têtes.\n",
        "type": "string",
        "example": "2026-08-14",
        "default": "2026-08-14"
      },
      "merchantId": {
        "type": "string",
        "description": "Identification de treize caractères fournie aux marchands par Moneris. \n",
        "minLength": 13,
        "maxLength": 13,
        "example": "0123456789101"
      },
      "resourceId": {
        "type": "string",
        "description": "Utilisé pour identifier les ressources API qui peuvent être nécessaires pour les transactions ultérieures futures ; c’est-à-dire les remboursements, les corrections, les achèvements, les annulations, etc.",
        "pattern": "^[A-Za-z]{2}\\d{2}[A-Za-z0-9]{26}$",
        "minLength": 30,
        "maxLength": 30,
        "example": "pi0105ARZ3NDEKTSV4RRFFQ69G5FAV"
      },
      "originalCreditTransactionId": {
        "type": "string",
        "description": "Identification unique pour le transaction de crédit originale",
        "pattern": "^[A-Za-z]{2}\\d{2}[A-Za-z0-9]{26}$",
        "minLength": 30,
        "maxLength": 30,
        "example": "oc0105ARZ3NDEKTSV4RRFFQ69G5FAV"
      },
      "orderId": {
        "type": "string",
        "description": "Indique l’identifiant de transaction défini par le commerçant ou l’ID de commande. Les identifiants sont uniques pour chaque transaction d’achat, de préautorisation et de remboursement indépendant\n\n**Remarque** : Il n’est pas possible que deux transactions de ce type aient le même ID de commande.\n",
        "minLength": 1,
        "maxLength": 50,
        "example": "1q2w3e4r5t6t78",
        "pattern": "^[a-zA-Z0-9-_]+$",
        "nullable": true
      },
      "invoiceNumber": {
        "type": "string",
        "description": "Envoie une valeur unique pour identifier une transaction qui est consignée par Solutions Moneris.\n",
        "minLength": 1,
        "maxLength": 17,
        "example": "1a2s3d45v6",
        "nullable": true
      },
      "transactionDateTime": {
        "description": "Indique la date et l’heure de la transaction.",
        "type": "string",
        "format": "date-time",
        "example": "2019-07-30T06:43:40.252Z"
      },
      "createdAt": {
        "description": "Heure à laquelle l’objet a été créé",
        "type": "string",
        "format": "date-time",
        "example": "2019-07-30T06:43:40.252Z"
      },
      "amount": {
        "type": "integer",
        "format": "int32",
        "minimum": 0,
        "maximum": 999999999,
        "example": 10000,
        "description": "Montant"
      },
      "currency": {
        "type": "string",
        "description": "Fournit le code monétaire à trois lettres selon la norme ISO 4217. \n\nPour obtenir la liste complète des codes de devise, rendez-vous sur : https://en.wikipedia.org/wiki/ISO_4217\n",
        "minLength": 3,
        "maxLength": 4,
        "example": "CAD",
        "format": "iso-4217"
      },
      "paymentMethodId": {
        "type": "string",
        "description": "Identifiant unique du mode de paiement.",
        "pattern": "^[A-Za-z]{2}\\d{2}[A-Za-z0-9]{26}$",
        "minLength": 30,
        "maxLength": 30,
        "example": "pi0105ARZ3NDEKTSV4RRFFQ69G5FAV"
      },
      "cardholderName": {
        "type": "string",
        "description": "Nom du titulaire de la carte",
        "minLength": 1,
        "maxLength": 60,
        "example": "John Doe"
      },
      "firstName": {
        "type": "string",
        "description": "Prénom.",
        "minLength": 1,
        "maxLength": 30,
        "example": "John",
        "nullable": true
      },
      "middleName": {
        "type": "string",
        "description": "Indique le deuxième prénom du client.",
        "minLength": 1,
        "maxLength": 30,
        "example": "J.",
        "nullable": true
      },
      "lastName": {
        "type": "string",
        "description": "Nom de famille.",
        "minLength": 1,
        "maxLength": 30,
        "example": "Doe",
        "nullable": true
      },
      "cardholderNameDetails": {
        "type": "object",
        "description": "Détails du nom du titulaire de la carte",
        "nullable": true,
        "properties": {
          "firstName": {
            "$ref": "#/components/schemas/firstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/middleName"
          },
          "lastName": {
            "$ref": "#/components/schemas/lastName"
          }
        }
      },
      "companyName": {
        "type": "string",
        "description": "Identifie le nom de l'entreprise associé",
        "minLength": 1,
        "maxLength": 50,
        "example": "SP Ltd",
        "nullable": true
      },
      "cardholderInformation": {
        "type": "object",
        "description": "Informations sur le titulaire de la carte.",
        "nullable": true,
        "properties": {
          "cardholderName": {
            "$ref": "#/components/schemas/cardholderName"
          },
          "cardholderNameDetails": {
            "$ref": "#/components/schemas/cardholderNameDetails"
          },
          "companyName": {
            "$ref": "#/components/schemas/companyName"
          }
        },
        "required": [
          "cardholderName"
        ]
      },
      "contactDetails": {
        "type": "object",
        "description": "Coordonnées",
        "nullable": true,
        "properties": {
          "phoneNumber": {
            "nullable": true,
            "type": "string",
            "description": "Numéro de téléphone.",
            "pattern": "^\\+[1-9]\\d{1,14}$",
            "minLength": 3,
            "maxLength": 16,
            "example": "+18663197450"
          },
          "email": {
            "nullable": true,
            "type": "string",
            "format": "email",
            "description": "Contient l’adresse e-mail du client.\n\nPour connaître les protocoles de courrier électronique standard, consultez : https://www.rfc-editor.org/rfc/rfc5322\n",
            "minLength": 1,
            "maxLength": 320,
            "example": "moneris@moneris.com"
          }
        },
        "example": {
          "phoneNumber": "+18663197450",
          "email": "moneris@moneris.com"
        }
      },
      "expiryMonth": {
        "type": "integer",
        "format": "int32",
        "description": "Mois d’expiration de la carte. Le format doit être MM",
        "minimum": 1,
        "maximum": 12,
        "example": 1
      },
      "expiryYear": {
        "type": "integer",
        "format": "int32",
        "description": "Affiche l’année d’expiration de la carte. Format accepté : AAAA",
        "minimum": 2022,
        "maximum": 9999,
        "example": 2023
      },
      "cardBrand": {
        "type": "string",
        "description": "Affiche le nom de la marque de la carte associé au type de carte.",
        "enum": [
          "MASTERCARD",
          "VISA",
          "AMERICAN_EXPRESS",
          "JCB",
          "DISCOVER",
          "INTERAC",
          "UNIONPAY",
          "GIFT_MONERIS",
          "GIFT_DATACANDY",
          "GIFT_GIVEX",
          null
        ],
        "nullable": true,
        "example": "MASTERCARD"
      },
      "cardFingerprint": {
        "type": "string",
        "description": "Identifiant unique de la carte. \n\nL’empreinte digitale attribue de manière aléatoire des identificateurs pour les cartes qui partagent le même numéro de compte principal (PAN) afin d’identifier facilement lorsque plusieurs méthodes de paiement sont associées à la même carte sous-jacente, et aide les commerçants à identifier les clients individuels sur divers canaux. c.-à-d.  programmes de fidélité.\n",
        "maxLength": 255,
        "example": "1Q2W3E4r5t6rfwewerwewrrw",
        "nullable": true
      },
      "issuer": {
        "type": "string",
        "description": "L’émetteur de la carte.",
        "minLength": 1,
        "maxLength": 100,
        "example": "RBC",
        "nullable": true
      },
      "cardInformation": {
        "type": "object",
        "description": "Informations sur la carte utilisée pour la transaction",
        "properties": {
          "bankIdentificationNumber": {
            "nullable": true,
            "type": "string",
            "description": "**BIN** : Numéro d’Identification de la Banque \n\nIl s’agit des six à huit premiers chiffres du numéro de compte principal (PAN) et identifie le réseau de paiement concerné et l’établissement émetteur de paiement spécifique.\n",
            "minLength": 6,
            "maxLength": 8,
            "example": "123456"
          },
          "lastFour": {
            "nullable": true,
            "type": "string",
            "description": "Les 4 derniers chiffres de la carte.",
            "minLength": 4,
            "maxLength": 4,
            "example": "1234"
          },
          "expiryMonth": {
            "$ref": "#/components/schemas/expiryMonth"
          },
          "expiryYear": {
            "$ref": "#/components/schemas/expiryYear"
          },
          "cardBrand": {
            "$ref": "#/components/schemas/cardBrand"
          },
          "cardType": {
            "nullable": true,
            "type": "string",
            "description": "Spécifie l’utilisation prévue de la carte. c’est-à-dire débit ou crédit.",
            "enum": [
              "CREDIT",
              "DEBIT",
              "DOMESTIC_DEBIT",
              "PREPAID_RELOADABLE",
              "PREPAID_NON_RELOADABLE",
              "UNKNOWN",
              "GIFT",
              "LOYALTY",
              "FLEET",
              "CORPORATE"
            ],
            "example": "CREDIT"
          },
          "cardFingerprint": {
            "$ref": "#/components/schemas/cardFingerprint"
          },
          "issuer": {
            "$ref": "#/components/schemas/issuer"
          }
        }
      },
      "paymentAccountReference": {
        "type": "string",
        "nullable": true,
        "description": "Utilisé pour lier des transactions basées sur un numéro de compte principal (PAN) et des transactions sur des jetons de paiement associés sans utiliser le PAN comme mécanisme de liaison.\n",
        "minLength": 1,
        "maxLength": 29,
        "example": "11112222333344445555666677778"
      },
      "storePaymentMethod": {
        "description": "Stockez ce mode de paiement créé par le biais de ce paiement pour une utilisation ultérieure. \n- DO_NOT_STORE : Le mode de paiement ne sera pas enregistré.\n- CARDHOLDER_INITIATED : Mode de paiement à enregistrer et ne peut être réutilisé qu’avec le consentement du titulaire de la carte. Limité au magasin, à la pré-autorisation et aux validations de carte.\n- MERCHANT_INITIATED : Mode de paiement à enregistrer et réutilisable sans le consentement du titulaire de la carte. Par exemple, les abonnements.\n",
        "type": "string",
        "default": "DO_NOT_STORE",
        "enum": [
          "DO_NOT_STORE",
          "CARDHOLDER_INITIATED",
          "MERCHANT_INITIATED"
        ]
      },
      "cardPaymentMethodInformation": {
        "title": "Card Payment Method Information",
        "description": "Détails sur la carte utilisée dans le mode de paiement.",
        "type": "object",
        "properties": {
          "paymentMethodType": {
            "type": "string",
            "description": "Le type de Mode de paiement utilisé. Il peut s’agir de :\n  -Carte.\n",
            "enum": [
              "CARD"
            ]
          },
          "paymentMethodSource": {
            "type": "string",
            "description": "La source du Mode de paiement utilisé. Il peut s’agir de :\n  - L’Id d’un Mode de paiement déjà créé.\n  - Jeton permanent.\n  - Jeton temporaire.\n  -Carte.\n  - Portefeuille électronique.\n",
            "enum": [
              "CARD",
              "TEMPORARY_TOKEN",
              "PERMANENT_TOKEN",
              "APPLE_PAY_ENCRYPTED",
              "APPLE_PAY_DECRYPTED",
              "GOOGLE_PAY_ENCRYPTED",
              "GOOGLE_PAY_DECRYPTED"
            ],
            "example": "TEMPORARY_TOKEN"
          },
          "cardInformation": {
            "$ref": "#/components/schemas/cardInformation"
          },
          "paymentAccountReference": {
            "$ref": "#/components/schemas/paymentAccountReference"
          },
          "storePaymentMethod": {
            "$ref": "#/components/schemas/storePaymentMethod"
          }
        },
        "required": [
          "paymentMethodType",
          "paymentMethodSource",
          "cardInformation",
          "storePaymentMethod"
        ]
      },
      "modifiedAt": {
        "nullable": true,
        "description": "Heure à laquelle l’objet a été modifié",
        "type": "string",
        "format": "date-time",
        "example": "2019-07-30T06:43:40.252Z"
      },
      "customData": {
        "description": "Le marchand peut envoyer des métadonnées personnalisées avec la transaction dans cet objet. Moneris fera écho à ces valeurs en réponse.",
        "type": "object",
        "additionalProperties": {
          "type": "string",
          "minLength": 1,
          "maxLength": 50
        },
        "maxProperties": 10,
        "nullable": true
      },
      "cardPaymentMethod": {
        "title": "cardPaymentMethod",
        "description": "Objet de réponse du moyen de paiement par carte",
        "type": "object",
        "properties": {
          "paymentMethodId": {
            "$ref": "#/components/schemas/paymentMethodId"
          },
          "merchantId": {
            "$ref": "#/components/schemas/merchantId"
          },
          "cardholderInformation": {
            "$ref": "#/components/schemas/cardholderInformation"
          },
          "contactDetails": {
            "$ref": "#/components/schemas/contactDetails"
          },
          "billingAddress": {
            "nullable": true,
            "type": "object",
            "description": "L’adresse postale, y compris la rue, la ville, la province et le code postal.\nEn option, un numéro d’unité peut être fourni.\n",
            "properties": {
              "unitNumber": {
                "nullable": true,
                "type": "string",
                "description": "Numéro d’unité",
                "minLength": 1,
                "maxLength": 19,
                "example": "123A"
              },
              "streetNumber": {
                "nullable": true,
                "type": "string",
                "description": "Numéro de rue",
                "minLength": 1,
                "maxLength": 19,
                "example": "3300"
              },
              "streetName": {
                "nullable": true,
                "type": "string",
                "description": "Nom de la rue",
                "minLength": 1,
                "maxLength": 100,
                "example": "Bloor"
              },
              "city": {
                "nullable": true,
                "type": "string",
                "description": "Identifie la ville.\n",
                "minLength": 1,
                "maxLength": 50,
                "example": "Toronto"
              },
              "province": {
                "nullable": true,
                "type": "string",
                "description": "Code ISO 3166-2 de la province ou de l’État ",
                "minLength": 1,
                "maxLength": 3,
                "format": "iso-3166-2",
                "example": "ON"
              },
              "postalCode": {
                "nullable": true,
                "type": "string",
                "description": "Code postal",
                "minLength": 1,
                "maxLength": 30,
                "example": "M8X 2X2"
              },
              "country": {
                "nullable": true,
                "type": "string",
                "description": "Fournit le code de pays à deux lettres selon la norme ISO 3166-1 alpha-2. \nPour obtenir la liste complète des codes de pays, consultez le site : https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2.\n",
                "minLength": 2,
                "maxLength": 2,
                "example": "CA",
                "format": "iso-3166"
              }
            },
            "example": {
              "unitNumber": "123A",
              "streetNumber": "3300",
              "streetName": "Bloor Street West",
              "city": "Toronto",
              "province": "ON",
              "postalCode": "M8X 2X2",
              "country": "CA"
            }
          },
          "paymentMethodInformation": {
            "$ref": "#/components/schemas/cardPaymentMethodInformation"
          },
          "createdAt": {
            "$ref": "#/components/schemas/createdAt"
          },
          "modifiedAt": {
            "$ref": "#/components/schemas/modifiedAt"
          },
          "customData": {
            "$ref": "#/components/schemas/customData"
          }
        },
        "required": [
          "paymentMethodId",
          "merchantId",
          "paymentMethodInformation",
          "createdAt"
        ]
      },
      "originalCreditTransactionStatus": {
        "type": "string",
        "description": "Description de l’état du paiement.",
        "enum": [
          "DECLINED",
          "SUCCEEDED"
        ],
        "example": "SUCCEEDED"
      },
      "fastFundsIndicator": {
        "type": "boolean",
        "default": false,
        "description": "Ce drapeau est renvoyé à vrai si la carte peut supporter les fonds rapides."
      },
      "iso": {
        "type": "string",
        "description": "Représente le code de réponse de Moneris pour le code de réponse équivalent de l’Organisation internationale de normalisation (ISO).",
        "minLength": 2,
        "maxLength": 2,
        "example": "00"
      },
      "responseCode": {
        "type": "string",
        "description": "\"Détails Codes de réponse des transactions :\n- **< 50** : Transaction approuvée - **> 50** : Transaction refusée\nNULL : Transaction non envoyée pour autorisation\nPour une liste complète des définitions, reportez-vous au tableau des codes de réponse.\n",
        "minLength": 3,
        "maxLength": 3,
        "example": "001"
      },
      "authorizationCode": {
        "type": "string",
        "maxLength": 8,
        "nullable": true,
        "pattern": "^[a-zA-Z0-9]*$",
        "description": "Contient une valeur générée par l’autorisateur pour les transactions financières. \nIl s’agit de l’identification de transaction de l’hôte d’autorisation.\n",
        "example": "11223344"
      },
      "message": {
        "type": "string",
        "description": "Affiche la description de la réponse renvoyée par l’établissement émetteur.\n\n**REMARQUE** : Ce message ne doit pas être affiché sur les matériaux destinés au titulaire de la carte.  \n\nPour obtenir des reçus, veuillez vous référer aux Exigences en matière de reçus.\n",
        "minLength": 1,
        "maxLength": 100,
        "example": "SUCCESS",
        "nullable": true
      },
      "ecommerceIndicator": {
        "type": "string",
        "description": "Catégorie de transaction e-commerce renvoyée par l’émetteur.\nLorsqu’elle est renvoyée dans le response, elle peut être différente de la valeur envoyée dans la demande au cas où la transaction aurait été déclassée par l’émetteur.\n",
        "enum": [
          "MAIL_TELEPHONE_ORDER_SINGLE",
          "MAIL_TELEPHONE_ORDER_RECURRING",
          "MAIL_TELEPHONE_ORDER_INSTALMENT",
          "MAIL_TELEPHONE_ORDER_UNKNOWN",
          "AUTHENTICATED_ECOMMERCE",
          "NON_AUTHENTICATED_ECOMMERCE",
          "SSL_MERCHANT"
        ],
        "example": "AUTHENTICATED_ECOMMERCE",
        "default": "SSL_MERCHANT"
      },
      "statusDetails": {
        "type": "object",
        "description": "Détails supplémentaires sur le résultat de la transaction.",
        "properties": {
          "transactionUniqueId": {
            "type": "string",
            "description": "Identifiant de transaction en temps réel de l’hôte.",
            "nullable": true
          },
          "isoResponseCode": {
            "$ref": "#/components/schemas/iso"
          },
          "responseCode": {
            "$ref": "#/components/schemas/responseCode"
          },
          "authorizationCode": {
            "$ref": "#/components/schemas/authorizationCode"
          },
          "message": {
            "$ref": "#/components/schemas/message"
          },
          "ecommerceIndicator": {
            "$ref": "#/components/schemas/ecommerceIndicator"
          }
        },
        "required": [
          "isoResponseCode",
          "responseCode",
          "ecommerceIndicator"
        ]
      },
      "originalCreditTransaction": {
        "title": "originalCreditTransaction",
        "type": "object",
        "description": "Retourne un opération de crédit originale traitée",
        "properties": {
          "originalCreditTransactionId": {
            "$ref": "#/components/schemas/originalCreditTransactionId"
          },
          "merchantId": {
            "$ref": "#/components/schemas/merchantId"
          },
          "orderId": {
            "$ref": "#/components/schemas/orderId"
          },
          "invoiceNumber": {
            "$ref": "#/components/schemas/invoiceNumber"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/transactionDateTime"
          },
          "createdAt": {
            "$ref": "#/components/schemas/createdAt"
          },
          "amount": {
            "description": "Ce montant ne comprend pas les frais supplémentaires, les frais de demande et les frais de commodité.",
            "type": "object",
            "properties": {
              "amount": {
                "$ref": "#/components/schemas/amount"
              },
              "currency": {
                "$ref": "#/components/schemas/currency"
              }
            },
            "required": [
              "amount",
              "currency"
            ],
            "example": {
              "amount": 16000,
              "currency": "CAD"
            }
          },
          "customerId": {
            "nullable": true,
            "type": "string",
            "description": "Identification unique du client",
            "example": "ci0105ARZ3NDEKTSV4RRFFQ69G5FAV",
            "pattern": "^[A-Za-z]{2}\\d{2}[A-Za-z0-9]{26}$",
            "minLength": 30,
            "maxLength": 30
          },
          "customerReference": {
            "nullable": true,
            "type": "string",
            "description": "Identification unique du client. Il peut s'agir d'un identifiant généré à partir d'un identifiant défini par le marchand.",
            "example": "911677-212",
            "minLength": 1,
            "maxLength": 50
          },
          "paymentMethod": {
            "$ref": "#/components/schemas/cardPaymentMethod"
          },
          "originalCreditTransactionStatus": {
            "$ref": "#/components/schemas/originalCreditTransactionStatus"
          },
          "fastFundsIndicator": {
            "$ref": "#/components/schemas/fastFundsIndicator"
          },
          "transactionDetails": {
            "$ref": "#/components/schemas/statusDetails"
          },
          "customData": {
            "$ref": "#/components/schemas/customData"
          }
        },
        "required": [
          "originalCreditTransactionId",
          "merchantId",
          "transactionDateTime",
          "createdAt",
          "amount",
          "paymentMethod",
          "originalCreditTransactionStatus",
          "transactionDetails"
        ]
      },
      "parameterError": {
        "title": "Parameter error",
        "description": "Erreur liée à la propriété ou à l’en-tête de la demande.",
        "type": "object",
        "properties": {
          "parameterName": {
            "type": "string",
            "description": "Nom de la propriété ou de l’en-tête. Peut contenir des chemins imbriqués séparés par '.'",
            "example": "address.postalCode"
          },
          "parameterValue": {
            "type": "string",
            "nullable": true,
            "description": "Représentation de chaîne de valeur de propriété ou d’en-tête.",
            "example": "MAP3J8"
          },
          "reasonCode": {
            "type": "string",
            "description": "Raison qui a déclenché l’erreur.",
            "enum": [
              "INVALID_FORMAT",
              "REQUIRED_FIELD",
              "INVALID_VALUE"
            ],
            "example": "INVALID_FORMAT"
          },
          "errorMessage": {
            "type": "string",
            "description": "Description lisible de l'erreur.",
            "nullable": true,
            "example": "String 'MAP3J8' does not match the postal code pattern."
          }
        },
        "required": [
          "parameterName",
          "reasonCode"
        ]
      },
      "error": {
        "description": "Détails de la réponse d’erreur.",
        "properties": {
          "type": {
            "description": "Référence d’URI qui identifie le type de problème.  Idéalement, il devrait s’agir d’une URL stable pour la documentation des détails sur ce type d’erreur, mais il peut également s’agir d’un URN.  Si rien ne peut être fourni, une valeur « about :blank » est renvoyée.\n",
            "type": "string",
            "format": "uri",
            "example": "https://api-developer.moneris.com/responsehandling"
          },
          "title": {
            "description": "Un résumé court et lisible par l’homme du type de problème.   Il NE DEVRAIT PAS changer d’une occurrence à l’autre du problème, sauf à des fins de localisation\n",
            "type": "string",
            "example": "INSUFFICIENT_FUNDS",
            "nullable": true
          },
          "status": {
            "description": "il transmet le code d’état HTTP utilisé pour la commodité du consommateur.\n",
            "type": "integer",
            "format": "int32",
            "minimum": 100,
            "maximum": 505,
            "nullable": true
          },
          "detail": {
            "description": "Un message lisible par l’homme fournissant plus de détails sur l’erreur. Pour les erreurs de carte, ces messages peuvent être affichés à vos utilisateurs.\n",
            "type": "string",
            "example": "Funds are insufficient to execute the operation.",
            "nullable": true
          },
          "instance": {
            "description": "Référence d’URI qui identifie l’occurrence spécifique du problème. En règle générale, cela se résout en une ressource qui peut inclure plus de détails sur le problème.\n",
            "type": "string",
            "example": "/payments/12f3e0a8-1d68-2b86-dd30-4ca51bb66e10",
            "format": "uri-reference",
            "nullable": true
          },
          "category": {
            "description": "Type d’erreur renvoyé. \n - `API_ERROR` : cela se produit en raison d’un problème intermittent.  \n - `IDEMPOTENCY_ERROR` : la clé d’idempotence a déjà été utilisée.\n - `INVALID_REQUEST_ERROR` : les données fournies dans la demande ne sont pas valides.\n - `DECLINED_ERROR` : la transaction a été refusée par l’émetteur.\n - `UNAUTHORIZED_ERROR` : l’appelant n’est pas authentifié ou n’est pas autorisé à exécuter l’opération en cours.\n - `INTERNAL_SERVER_ERROR` : Un problème interne avec nos serveurs s’est produit.\n",
            "enum": [
              "API_ERROR",
              "IDEMPOTENCY_ERROR",
              "INVALID_REQUEST_ERROR",
              "DECLINED_ERROR",
              "UNAUTHORIZED_ERROR",
              "INTERNAL_SERVER_ERROR",
              null
            ],
            "type": "string",
            "nullable": true,
            "example": "DECLINED_ERROR"
          },
          "errors": {
            "type": "array",
            "description": "Liste des erreurs de validation lorsque la catégorie d’erreur est INVALID_REQUEST_ERROR.",
            "items": {
              "type": "object",
              "$ref": "#/components/schemas/parameterError"
            },
            "example": [
              {
                "parameterName": "address.postalCode",
                "parameterValue": "MAP3J8",
                "errorMessage": "address.Postal code does not match regular expression",
                "reasonCode": "INVALID_FORMAT"
              }
            ]
          }
        },
        "title": "API Error",
        "type": "object",
        "required": [
          "type"
        ]
      }
    },
    "parameters": {
      "apiVersion": {
        "in": "header",
        "name": "Api-Version",
        "required": true,
        "example": "2024-09-17",
        "description": "Version de l’API du point de terminaison. \n\nDoit être fourni dans la section des en-têtes. \n",
        "schema": {
          "$ref": "#/components/schemas/apiVersion"
        }
      },
      "correlationId": {
        "in": "header",
        "name": "X-Correlation-Id",
        "example": "06f1e47b-a1b5-4902-be9c-bccc506127c4",
        "description": "Corrèle une série de requêtes au sein d’un même flux.\n\nRemarque : Cet identifiant est généré par Moneris avec chaque demande ou réponse, s’il n’existe pas. \nLes commerçants doivent faire écho à la valeur avec chaque demande qui fait partie du flux d’appels.\n",
        "required": false,
        "schema": {
          "type": "string",
          "example": "06f1e47b-a1b5-4902-be9c-bccc506127c4"
        }
      },
      "merchantId": {
        "in": "header",
        "name": "X-Merchant-Id",
        "example": "0123456789101",
        "description": "Code d’identification de treize caractères. \n\nRemarque : Ce code est fourni par Moneris et est nécessaire pour identifier le commerçant qui effectue la transaction.\n",
        "required": true,
        "schema": {
          "$ref": "#/components/schemas/merchantId"
        }
      },
      "originalCreditTransactionId": {
        "in": "path",
        "name": "original-credit-transaction-id",
        "description": "L’identifiant unique de la transaction de crédit originale",
        "required": true,
        "schema": {
          "$ref": "#/components/schemas/resourceId"
        }
      }
    },
    "headers": {
      "apiVersion": {
        "description": "Version de l’API du point de terminaison.",
        "example": "2026-08-14",
        "schema": {
          "type": "string"
        }
      },
      "correlationId": {
        "example": "06f1e47b-a1b5-4902-be9c-bccc506127c4",
        "description": "Corrèle une série de requêtes au sein d’un même flux. \n\nRemarque : Cet identifiant est généré par Moneris avec chaque demande ou réponse, s’il n’existe pas, et il est recommandé au commerçant de faire écho à la valeur.  \n",
        "schema": {
          "type": "string",
          "example": "06f1e47b-a1b5-4902-be9c-bccc506127c4"
        }
      },
      "sunset": {
        "example": "2025-07-30T06:43:40.252Z",
        "description": "Optionnel.\n\nIndique que l’URI de la ressource sera mis hors service et mis hors service à l’heure spécifiée dans le futur. \nPlus de détails sont disponibles sur [RFC 8594](https://www.rfc-editor.org/rfc/rfc8594.html)\n",
        "schema": {
          "type": "string",
          "format": "date-time",
          "example": "2025-07-30T06:43:40.252Z"
        }
      },
      "rateLimitCount": {
        "description": "Nombre maximal de requêtes que le client peut effectuer dans cette fenêtre.",
        "schema": {
          "type": "integer",
          "format": "int64"
        },
        "example": 1000
      },
      "rateLimitRemaining": {
        "description": "Le nombre de requêtes autorisées dans la fenêtre actuelle.",
        "schema": {
          "type": "integer",
          "format": "int64"
        },
        "example": 0
      },
      "rateLimitReset": {
        "description": "Temps relatif en secondes lorsque la fenêtre de limite de débit sera réinitialisée.",
        "schema": {
          "type": "integer",
          "format": "int32"
        },
        "example": 3600
      },
      "retryAfter": {
        "description": "Indique le temps que les clients doivent attendre avant de réessayer.",
        "schema": {
          "type": "integer",
          "format": "int32"
        },
        "example": 60
      }
    },
    "responses": {
      "unauthorized": {
        "description": "Non autorisé. L’utilisateur ne dispose pas d’une clé API ou d’un jeton d’accès valide.",
        "headers": {
          "Api-Version": {
            "$ref": "#/components/headers/apiVersion"
          },
          "X-Correlation-Id": {
            "$ref": "#/components/headers/correlationId"
          },
          "Sunset": {
            "$ref": "#/components/headers/sunset"
          },
          "X-RateLimit-Limit": {
            "$ref": "#/components/headers/rateLimitCount"
          },
          "X-RateLimit-Remaining": {
            "$ref": "#/components/headers/rateLimitRemaining"
          },
          "WWW-Authenticate": {
            "schema": {
              "type": "string",
              "example": "Bearer, error=\"invalid_token\""
            }
          }
        },
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/error"
            },
            "example": {
              "type": "https://developer.moneris.com/en/More/Testing/Response%20Codes",
              "title": "UNAUTHORIZED_REQUEST",
              "status": 401,
              "detail": null,
              "instance": null,
              "category": "UNAUTHORIZED_ERROR",
              "errors": []
            }
          }
        }
      },
      "forbidden": {
        "description": "Interdit. L’utilisateur n’est pas autorisé à accéder à la ressource demandée.",
        "headers": {
          "Api-Version": {
            "$ref": "#/components/headers/apiVersion"
          },
          "X-Correlation-Id": {
            "$ref": "#/components/headers/correlationId"
          },
          "Sunset": {
            "$ref": "#/components/headers/sunset"
          },
          "X-RateLimit-Limit": {
            "$ref": "#/components/headers/rateLimitCount"
          },
          "X-RateLimit-Remaining": {
            "$ref": "#/components/headers/rateLimitRemaining"
          },
          "WWW-Authenticate": {
            "schema": {
              "type": "string",
              "example": "Bearer, error=\"insufficient_scope\""
            }
          }
        },
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/error"
            },
            "example": {
              "type": "https://developer.moneris.com/en/More/Testing/Response%20Codes",
              "title": "FORBIDDEN_REQUEST",
              "status": 403,
              "detail": null,
              "instance": null,
              "category": "UNAUTHORIZED_ERROR",
              "errors": []
            }
          }
        }
      },
      "tooManyRequests": {
        "description": "Trop de requêtes",
        "headers": {
          "Api-Version": {
            "$ref": "#/components/headers/apiVersion"
          },
          "X-Correlation-Id": {
            "$ref": "#/components/headers/correlationId"
          },
          "Sunset": {
            "$ref": "#/components/headers/sunset"
          },
          "X-RateLimit-Limit": {
            "$ref": "#/components/headers/rateLimitCount"
          },
          "X-RateLimit-Remaining": {
            "$ref": "#/components/headers/rateLimitRemaining"
          },
          "X-RateLimit-Reset": {
            "$ref": "#/components/headers/rateLimitReset"
          },
          "Retry-After": {
            "$ref": "#/components/headers/rateLimitReset"
          }
        }
      },
      "internalServer": {
        "description": "Erreur inattendue.",
        "headers": {
          "Api-Version": {
            "$ref": "#/components/headers/apiVersion"
          },
          "X-Correlation-Id": {
            "$ref": "#/components/headers/correlationId"
          },
          "Sunset": {
            "$ref": "#/components/headers/sunset"
          },
          "X-RateLimit-Limit": {
            "$ref": "#/components/headers/rateLimitCount"
          },
          "X-RateLimit-Remaining": {
            "$ref": "#/components/headers/rateLimitRemaining"
          }
        },
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/error"
            },
            "example": {
              "type": "https://api-developer.moneris.com/responsehandling/",
              "title": "INTERNAL_SERVER_ERROR",
              "status": 500,
              "detail": null,
              "instance": null,
              "category": "INTERNAL_SERVER_ERROR",
              "errors": []
            }
          }
        }
      },
      "serviceUnavailable": {
        "description": "Service temporairement indisponible",
        "headers": {
          "Api-Version": {
            "$ref": "#/components/headers/apiVersion"
          },
          "X-Correlation-Id": {
            "$ref": "#/components/headers/correlationId"
          },
          "Sunset": {
            "$ref": "#/components/headers/sunset"
          },
          "Retry-After": {
            "$ref": "#/components/headers/retryAfter"
          }
        },
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/error"
            },
            "example": {
              "type": "https://api-developer.moneris.com/responsehandling/",
              "title": "SERVICE_UNAVAILABLE",
              "status": 503,
              "detail": null,
              "instance": null,
              "category": "INTERNAL_SERVER_ERROR",
              "errors": []
            }
          }
        }
      },
      "retrieveOriginalCreditTransactionSuccessResponse": {
        "description": "La transaction correspondant à l’opération de crédit originale.",
        "headers": {
          "Api-Version": {
            "$ref": "#/components/headers/apiVersion"
          },
          "X-Correlation-Id": {
            "$ref": "#/components/headers/correlationId"
          },
          "Sunset": {
            "$ref": "#/components/headers/sunset"
          },
          "X-RateLimit-Limit": {
            "$ref": "#/components/headers/rateLimitCount"
          },
          "X-RateLimit-Remaining": {
            "$ref": "#/components/headers/rateLimitRemaining"
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/originalCreditTransaction"
            },
            "examples": {
              "succeeded": {
                "$ref": "#/components/examples/OriginalCreditTransactionSuccessfulResponse"
              },
              "declined": {
                "$ref": "#/components/examples/OriginalCreditTransactionDeclinedResponse"
              }
            }
          }
        }
      },
      "notFound": {
        "description": "Introuvable.",
        "headers": {
          "Api-Version": {
            "$ref": "#/components/headers/apiVersion"
          },
          "X-Correlation-Id": {
            "$ref": "#/components/headers/correlationId"
          },
          "Sunset": {
            "$ref": "#/components/headers/sunset"
          },
          "X-RateLimit-Limit": {
            "$ref": "#/components/headers/rateLimitCount"
          },
          "X-RateLimit-Remaining": {
            "$ref": "#/components/headers/rateLimitRemaining"
          }
        },
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/error"
            },
            "example": {
              "type": "https://developer.moneris.com/en/More/Testing/Response%20Codes",
              "title": "NOT_FOUND",
              "status": 404,
              "detail": null,
              "instance": "/payments/pi0105ARZ3NDEKTSV4RRFFQ69G5FAV",
              "category": "INVALID_REQUEST_ERROR",
              "errors": []
            }
          }
        }
      }
    },
    "examples": {
      "OriginalCreditTransactionSuccessfulResponse": {
        "summary": "Original-Credit-Transaction Successful Response",
        "value": {
          "originalCreditTransactionId": "oc0105ARZ3NDEKTSV4RRFFQ69G5FAV",
          "merchantId": "0123456789101",
          "orderId": "1q2w3e4r5t6t78",
          "transactionDateTime": "2019-07-30T06:43:40.252Z",
          "createdAt": "2019-07-30T06:43:40.252Z",
          "amount": {
            "amount": 16000,
            "currency": "CAD"
          },
          "customerId": "ci0105ARZ3NDEKTSV4RRFFQ69G5FAV",
          "paymentMethod": {
            "paymentMethodId": "pm0105ARZ3NDEKTSV4RRFFQ69G5FAV",
            "merchantId": "0123456789101",
            "cardholderInformation": null,
            "contactDetails": null,
            "billingAddress": null,
            "paymentMethodInformation": {
              "paymentMethodType": "CARD",
              "paymentMethodSource": "CARD",
              "cardInformation": {
                "bankIdentificationNumber": "123456",
                "lastFour": "1234",
                "expiryMonth": 1,
                "expiryYear": 2028,
                "cardBrand": "MASTERCARD",
                "cardType": "CREDIT",
                "cardFingerprint": "1Q2W3E4r5t6rfwewerwewrrw",
                "issuer": "RBC"
              },
              "paymentAccountReference": "11112222333344445555666677778",
              "storePaymentMethod": "DO_NOT_STORE"
            },
            "createdAt": "2019-07-30T06:43:40.252Z",
            "modifiedAt": null,
            "customData": {
              "property1": "string",
              "property2": "string"
            }
          },
          "originalCreditTransactionStatus": "SUCCEEDED",
          "transactionDetails": {
            "transactionUniqueId": "938c2cc0dcc05f2b68c4287040cfcf71",
            "isoResponseCode": "00",
            "responseCode": "000",
            "message": "approved",
            "ecommerceIndicator": "AUTHENTICATED_ECOMMERCE"
          },
          "fastFundsIndicator": "true",
          "customData": {
            "property1": "string",
            "property2": "string"
          }
        }
      },
      "OriginalCreditTransactionDeclinedResponse": {
        "summary": "Purchase Declined",
        "value": {
          "originalCreditTransactionId": "oc0105ARZ3NDEKTSV4RRFFQ69G5FAV",
          "merchantId": "0123456789101",
          "orderId": "1q2w3e4r5t6t78",
          "transactionDateTime": "2019-07-30T06:43:40.252Z",
          "createdAt": "2019-07-30T06:43:40.252Z",
          "modifiedAt": "2019-07-30T06:43:40.252Z",
          "amount": {
            "amount": 16000,
            "currency": "CAD"
          },
          "customerId": "ci0105ARZ3NDEKTSV4RRFFQ69G5FAV",
          "paymentMethod": {
            "paymentMethodId": "pm0105ARZ3NDEKTSV4RRFFQ69G5FAV",
            "merchantId": "0123456789101",
            "cardholderInformation": null,
            "contactDetails": null,
            "billingAddress": null,
            "paymentMethodInformation": {
              "paymentMethodType": "CARD",
              "paymentMethodSource": "CARD",
              "cardInformation": {
                "bankIdentificationNumber": "123456",
                "lastFour": "1234",
                "expiryMonth": 1,
                "expiryYear": 2028,
                "cardBrand": "MASTERCARD",
                "cardType": "CREDIT",
                "cardFingerprint": "1Q2W3E4r5t6rfwewerwewrrw",
                "issuer": "RBC"
              },
              "paymentAccountReference": "11112222333344445555666677778",
              "storePaymentMethod": "DO_NOT_STORE"
            },
            "createdAt": "2019-07-30T06:43:40.252Z",
            "modifiedAt": null,
            "customData": {
              "property1": "string",
              "property2": "string"
            }
          },
          "originalCreditTransactionStatus": "DECLINED",
          "transactionDetails": {
            "transactionUniqueId": "938c2cc0dcc05f2b68c4287040cfcf71",
            "isoResponseCode": "43",
            "responseCode": "421",
            "message": "Stolen card, pick up.",
            "ecommerceIndicator": "AUTHENTICATED_ECOMMERCE"
          },
          "fastFundsIndicator": "false",
          "customData": {
            "property1": "string",
            "property2": "string"
          }
        }
      }
    }
  }
}
```