diff --git a/cardInfoAPI-Level2.yaml b/cardInfoAPI-Level2.yaml new file mode 100644 index 0000000..dda1595 --- /dev/null +++ b/cardInfoAPI-Level2.yaml @@ -0,0 +1,1247 @@ +openapi: 3.1.0 +info: + version: 0.8.0 + title: Common Card API (Public) + description: | + This specification defines a common card API for payment cards used in + Switzerland. The API is supposed to be used by third parties to retrieve + payment card information for scheme-based debit, credit or prepaid cards + (read only). + contact: + email: info@common-api.ch + license: + name: Apache 2.0 + url: https://www.apache.org/licenses/LICENSE-2.0.html +servers: + - url: https://card.common-api.ch +security: + - ApiKeyAuth: [] + - OAuth2: + - read + - write +tags: + - name: Cards + description: Operations for retrieving information about payment cards. + - name: Card-tokens + description: | + Operations for retrieving information about tokens associated with payment + cards. + - name: Transactions + description: | + Operations for retrieving information about transactions and + authorizations done with payment cards or tokens. +externalDocs: + description: Find out more about SFTI API specifications + url: https://www.common-api.ch +paths: + /cards: + get: + summary: Provides a list of cards which match the provided query parameters. + description: | + This operation enables the retrieval of a list of payment cards. Payment + cards can be physical or virtual cards. In order to prevent API consumers + from having to fulfill PCI DSS requirements, no full PAN or other data + relevant for this regulation are included. The API consumer is expected to + have a non-card related identifier for the customer for whom data should be + returned (e.g. card account number, bank account number). + tags: + - Cards + parameters: + - $ref: '#/components/parameters/card_status' + - $ref: '#/components/parameters/cursor' + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/client' + - $ref: '#/components/parameters/correlation' + - $ref: '#/components/parameters/agent' + responses: + '200': + description: | + Payment cards were found which match the query parameters. If no cards + matched the parameters or access rights are missing, an empty list is + returned. + headers: + X-Correlation-ID: + $ref: '#/components/headers/X-Correlation-ID' + X-Next-Cursor: + $ref: '#/components/headers/X-Next-Cursor' + content: + application/json: + schema: + type: object + required: + - cards + properties: + cards: + type: array + items: + $ref: '#/components/schemas/CardDetails' + '400': + $ref: '#/components/responses/standard400' + '500': + $ref: '#/components/responses/standard500' + /cards/{cardId}: + get: + summary: Provides a single card which matches the id. + description: | + This operation enables the retrieval of a single payment card when the cardId is already known. + The cardId must be retrieved with the GET /cards operation before or stored locally at the API consumer. + tags: + - Cards + parameters: + - $ref: '#/components/parameters/cardId' + - $ref: '#/components/parameters/client' + - $ref: '#/components/parameters/correlation' + - $ref: '#/components/parameters/agent' + responses: + '200': + description: Single payment card was found. If the cardId was not found, a 400 is returned. + headers: + X-Correlation-ID: + $ref: '#/components/headers/X-Correlation-ID' + content: + application/json: + schema: + $ref: '#/components/schemas/CardDetails' + '400': + $ref: '#/components/responses/standard400' + '500': + $ref: '#/components/responses/standard500' + /card-tokens: + get: + summary: Provides a list of card tokens which are associated with a card. + description: | + This operation enables the retrieval of a list of tokens associated with a payment card. + The tokens can be filtered further by status. + Tokens are representations of a payment card used in specific wallets , wearables or merchants. + tags: + - Card-tokens + parameters: + - $ref: '#/components/parameters/card_id' + - $ref: '#/components/parameters/token_status' + - $ref: '#/components/parameters/cursor' + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/client' + - $ref: '#/components/parameters/correlation' + - $ref: '#/components/parameters/agent' + responses: + '200': + description: | + Card tokens were found which match the query parameters. + If no card tokens matched the parameters or access rights are missing, an empty list is returned. + headers: + X-Correlation-ID: + $ref: '#/components/headers/X-Correlation-ID' + X-Next-Cursor: + $ref: '#/components/headers/X-Next-Cursor' + content: + application/json: + schema: + type: object + required: + - card_tokens + properties: + card_tokens: + type: array + items: + $ref: '#/components/schemas/CardTokenDetails' + '400': + $ref: '#/components/responses/standard400' + '500': + $ref: '#/components/responses/standard500' + /card-tokens/{tokenId}: + get: + summary: Provides a single token which matches the cardId and tokenId + description: | + This operation enables the retrieval of a single token when the cardId and tokenId are already known. + The identifiers must be retrieved with the GET /cards/{cardId}/card-tokens operation before or stored locally at the API consumer. + tags: + - Card-tokens + parameters: + - $ref: '#/components/parameters/tokenId' + - $ref: '#/components/parameters/client' + - $ref: '#/components/parameters/correlation' + - $ref: '#/components/parameters/agent' + responses: + '200': + description: Single token was found. If the tokenId was not found, a 400 is returned. + headers: + X-Correlation-ID: + $ref: '#/components/headers/X-Correlation-ID' + content: + application/json: + schema: + $ref: '#/components/schemas/CardTokenDetails' + '400': + $ref: '#/components/responses/standard400' + '500': + $ref: '#/components/responses/standard500' + /card-transactions: + get: + summary: Provides a list of transactions which match the provided query parameters. + description: | + This operation enables the retrieval of a list of transactions performed with a payment card or token. + Different query parameters are provided to support an efficient retrieval of individual transactions. + With the Level 1 of the Common Card API only card-based financial transactions are included. + tags: + - Transactions + parameters: + - $ref: '#/components/parameters/authorization_reference' + - $ref: '#/components/parameters/clearing_reference' + - $ref: '#/components/parameters/card_id' + - $ref: '#/components/parameters/token_id' + - $ref: '#/components/parameters/from_date' + - $ref: '#/components/parameters/to_date' + - $ref: '#/components/parameters/status' + - $ref: '#/components/parameters/original_currency' + - $ref: '#/components/parameters/cursor' + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/client' + - $ref: '#/components/parameters/correlation' + - $ref: '#/components/parameters/agent' + responses: + '200': + description: | + Transactions were found which match the query parameters. If no transactions matched the parameters or access rights are missing, + an empty list is returned. + headers: + X-Correlation-ID: + $ref: '#/components/headers/X-Correlation-ID' + X-Next-Cursor: + $ref: '#/components/headers/X-Next-Cursor' + content: + application/json: + schema: + type: object + required: + - card-transactions + properties: + card-transactions: + type: array + items: + $ref: '#/components/schemas/TransactionDetails' + '400': + $ref: '#/components/responses/standard400' + '500': + $ref: '#/components/responses/standard500' + /card-transactions/{transactionId}: + get: + summary: Provides a single transaction which matches the transactionId + description: | + This operation enables the retrieval of a single transaction when the transactionId is already known. + The transactionId must be retrieved with the GET /card-transactions operation before or stored locally at the API consumer. + tags: + - Transactions + parameters: + - $ref: '#/components/parameters/transactionId' + - $ref: '#/components/parameters/client' + - $ref: '#/components/parameters/correlation' + - $ref: '#/components/parameters/agent' + responses: + '200': + description: Single token was found. If the transactionId was not found, a 400 is returned. + headers: + X-Correlation-ID: + $ref: '#/components/headers/X-Correlation-ID' + content: + application/json: + schema: + $ref: '#/components/schemas/TransactionDetails' + '400': + $ref: '#/components/responses/standard400' + '500': + $ref: '#/components/responses/standard500' +components: + schemas: + CardStatus: + title: Card status + type: string + enum: + - ACTIVE + - SUSPENDED + - BLOCKED + examples: + - ACTIVE + description: | + Effective status of the card to indicate whether it can be used for payments; + definition of enums: + + - active: authorizations are possible + + - suspended: authorizations are temporarily not possible + + - blocked: authorizations are permanently not possible because the card was + cancelled or permanently blocked for other reasons + Correlation: + title: Shared correlation + description: | + Schema for X-Correlation-ID header. The correlation value is a unique value to trace API calls across multiple systems, + and used e.g. for debugging. + type: string + examples: + - f058ebd6-02f7-4d3f-942e-904344e8cde5 + ContractReference: + title: Contract reference + type: string + maxLength: 50 + examples: + - CH3456789012345678901 + - ABC-56789012345 + description: | + Functional reference to a customer relationship/contract that is responsible + for the card, defined by the Card Service Provider. + PersonReference: + title: Person reference + type: string + maxLength: 50 + examples: + - '123456789' + description: Functional reference to a cardholder, defined by the Card Service Provider. + Id: + title: Shared id + description: Unique identifier to referenece resources. + type: string + format: uuid + maxLength: 50 + examples: + - eb404f8d-656b-4e51-8872-88c42fa55536 + EmbossingLine1: + title: Embossing line 1 + type: string + maxLength: 35 + examples: + - Peter Schweizer + description: First line embossed on the card to indicate the cardholder. + EmbossingLine2: + title: Embossing line 2 + type: string + maxLength: 35 + examples: + - Peter Schweizer + description: Second line embossed on the card to indicate the cardholder. + Pan4Digits: + title: Pan 4 digits + type: string + maxLength: 4 + pattern: ^\d{4}$ + examples: + - '4321' + description: | + Last 4 digits of the PAN; values can change for the same cardId during the + lifecycle. + Date: + title: Shared date + description: General date that is used for different attributes, format is 'YYYY-MM-DD'. + type: string + format: date + examples: + - '2018-04-13' + CardAccountCurrency: + type: string + pattern: ^[a-zA-Z0-9]{3}$ + examples: + - CHF + - EUR + description: Settlement currency of the card / card account in ISO code format. + Image: + type: string + format: uri + examples: + - https://one-digitalservice.ch/public/Viseca/media/one-app-images/card-visuals/4_go_m_11_2017.png + description: URL reference to an image for the design of the card. + ProductCode: + title: Product code + type: string + maxLength: 50 + examples: + - '1234567' + description: Identifier for the card product. + ProductName: + title: Product name + type: string + maxLength: 100 + examples: + - A1 + - MC/VI Gold CHF + description: Name for the card product assigned by the issuer. + Scheme: + type: string + enum: + - mastercard + - visa + - americanexpress + - dinersclub + examples: + - mastercard + description: Card network which is used to process payments with the card in switzerland. + Category: + type: string + enum: + - primary_card + - additional_card + examples: + - primary_card + description: | + Identifies the nature of the card in regards to the overall account; for some + issuers the cardCategory has an influence on the effect of certain lifecycle + use cases. + IssuingType: + title: Issuing type + type: string + enum: + - physical + - virtual + examples: + - physical + description: | + Specifies in which form the card is issued; definition of enums: - physical: + the card is being embossed on a physical material and delivered to the + cardholder by mail - virtual: the card is being issued only virtually for + digital usage + ProductType: + title: Product type + type: string + enum: + - credit + - debit + - prepaid + examples: + - credit + description: Type of the card product. + ProductLine: + title: Product line + type: string + enum: + - consumer + - business + - corporate + examples: + - consumer + description: Customer segment to which the card is offered. + CardLimitCycle: + title: Card limit cycle + type: integer + format: int32 + examples: + - 2000 + description: | + Total amount of authorizations possible for the card per settlement cycle / + month in the currency of the card; effective limit is provided that considers + limits on the card and relationship; does not indicate the actually available + amount for authorizations in the current cycle. + CardLimitDaily: + title: Card limit daily + type: integer + format: int32 + examples: + - 2000 + description: | + Total amount of authorizations possible for the card per day in the currency + of the card; effective limit is provided that considers limits on the card and + relationship; does not indicate the actually available amount for + authorizations on the current day. + CardAccountReference: + title: Card account reference + type: string + maxLength: 50 + examples: + - AB-4567890123456 + description: | + Technical reference to the card account which is used to settle the + transactions of the card; can be empty for debit cards which are settled + directly to the bank account. + BankAccountReference: + title: Bank account reference + type: string + maxLength: 34 + examples: + - CH3456789012345678901 + description: | + Functional reference to the bank account linked to a card; mainly relevant for + debit cards, can be empty for credit or prepaid cards. + IssuerCode: + title: Issuer code + type: string + maxLength: 50 + examples: + - '123456789' + description: | + Identifier for the legal issuer of a card; responsible towards the schemes for + keeping the rules. + IssuerName: + title: Issuer name + type: string + maxLength: 100 + examples: + - Viseca Card Services + - UBS + - Zürcher Kantonalbank + description: Name of the legal issuer of a card. + DistributionPartnerCode: + title: Distribution partner code + type: string + maxLength: 50 + examples: + - '123456789' + description: | + Identifier for the organization which is distributing / selling cards to end + customers and who can define the services and branding of the card; empty if + the card is distributed by the issuer. + DistributionPartnerName: + title: Distribution partner name + type: string + maxLength: 100 + examples: + - Zürcher Kantonalbank + description: | + Name of the organization which is distributing / issuing cards to end + customers and who can define the services and branding of the card; empty if + the card is distributed by the issuer. + Language: + type: string + enum: + - DE + - EN + - FR + - IT + examples: + - DE + description: Preferred language of the cardholder for any communication. + CardDetails: + title: Card details + description: Describes a payment card with its relevant characteristics. + type: object + required: + - contract_reference + - person_reference + - card_id + - embossing_line_1 + - embossing_line_2 + - pan_4_digits + - expiry_date + - card_status + - card_account_currency + - image + - product_code + - product_name + - scheme + - issuing_type + - product_type + - product_line + - card_limit_cycle + - card_limit_daily + - issuer_code + - issuer_name + - language + properties: + contract_reference: + $ref: '#/components/schemas/ContractReference' + person_reference: + $ref: '#/components/schemas/PersonReference' + card_id: + $ref: '#/components/schemas/Id' + embossing_line_1: + $ref: '#/components/schemas/EmbossingLine1' + embossing_line_2: + $ref: '#/components/schemas/EmbossingLine2' + pan_4_digits: + $ref: '#/components/schemas/Pan4Digits' + expiry_date: + $ref: '#/components/schemas/Date' + initial_issuing_date: + $ref: '#/components/schemas/Date' + card_status: + $ref: '#/components/schemas/CardStatus' + card_account_currency: + $ref: '#/components/schemas/CardAccountCurrency' + image: + $ref: '#/components/schemas/Image' + product_code: + $ref: '#/components/schemas/ProductCode' + product_name: + $ref: '#/components/schemas/ProductName' + scheme: + $ref: '#/components/schemas/Scheme' + category: + $ref: '#/components/schemas/Category' + issuing_type: + $ref: '#/components/schemas/IssuingType' + product_type: + $ref: '#/components/schemas/ProductType' + product_line: + $ref: '#/components/schemas/ProductLine' + card_limit_cycle: + $ref: '#/components/schemas/CardLimitCycle' + card_limit_daily: + $ref: '#/components/schemas/CardLimitDaily' + card_account_reference: + $ref: '#/components/schemas/CardAccountReference' + bank_account_reference: + $ref: '#/components/schemas/BankAccountReference' + issuer_code: + $ref: '#/components/schemas/IssuerCode' + issuer_name: + $ref: '#/components/schemas/IssuerName' + distribution_partner_code: + $ref: '#/components/schemas/DistributionPartnerCode' + distribution_partner_name: + $ref: '#/components/schemas/DistributionPartnerName' + language: + $ref: '#/components/schemas/Language' + CommonErrorResponse: + title: Common Error Response + description: General error response structure used in different response codes. + type: object + properties: + type: + type: string + description: | + A URI reference that identifies the problem type. When "about:blank" is + used, the title SHOULD be the same as the recommended HTTP + + status phrase for that code (e.g., "Not Found" for 404, and so on) + example: about:blank + title: + type: string + description: A short, human-readable summary of the problem type. + examples: + - This is the general problem description + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem. + examples: + - Detailed problem description with respect to the current request + instance: + type: string + description: | + A (relative) URI reference that identifies the specific occurrence of the + problem. + examples: + - path/to/corresponding/resource + TokenStatus: + title: Token status + type: string + enum: + - ACTIVE + - SUSPENDED + - BLOCKED + - PENDING + examples: + - ACTIVE + description: | + Effective status of the token to indicate whether it can be used for payments; + definition of enums: + + - active: authorizations are possible + + - suspended: authorizations are temporarily not possible + + - blocked: authorizations are permanently not possible because the token was + cancelled + + - pending: authorizations are not possible because the token is not fully + issued or currently in transition between status + TokenPan4Digits: + title: Token pan 4 digits + type: string + maxLength: 4 + examples: + - '4321' + description: | + Last 4 digits of the PAN for the token, usually shown in wallets or on + receipts when the token is used for payments. + WalletCode: + title: Wallet code + type: string + maxLength: 10 + examples: + - '123' + description: Identifier for the wallet in which the token is used and managed. + WalletName: + title: Wallet name + type: string + enum: + - APPLE_PAY + - SAMSUNG_PAY + - GOOGLE_PAY + - GARMIN_PAY + examples: + - APPLE_PAY + description: Name of the wallet in which the token is used and managed. + TokenRequestorCode: + title: Token requestor code + type: string + maxLength: 11 + examples: + - '11111111111' + description: Identifier for the token requestor / token service provider. + TokenRequestorName: + title: Token requestor name + type: string + maxLength: 100 + examples: + - Zalando + description: Name of the token requestor / token service provider. + DeviceName: + title: Device name + type: string + maxLength: 100 + examples: + - Peter's iPhone + description: | + Name of the device which is associated to the token, only available for + device-based tokens. + DeviceType: + title: Device type + type: string + maxLength: 100 + examples: + - IPHONE + description: | + Type of the device which is associated to the token, only available for + device-based tokens; value defined by the Card Service Provider. + TokenScheme: + title: Token scheme + type: string + enum: + - mastercard + - visa + - americanexpress + examples: + - mastercard + description: Scheme for which the token is issued. + CardTokenDetails: + title: Card token details + description: Describes a token with its relevant characteristics. + type: object + required: + - token_id + - token_pan_4_digits + - token_requestor_code + - token_requestor_name + - funding_card_id + - token_status + - token_issuing_date + - token_scheme + properties: + token_id: + $ref: '#/components/schemas/Id' + token_pan_4_digits: + $ref: '#/components/schemas/TokenPan4Digits' + wallet_code: + $ref: '#/components/schemas/WalletCode' + wallet_name: + $ref: '#/components/schemas/WalletName' + token_requestor_code: + $ref: '#/components/schemas/TokenRequestorCode' + token_requestor_name: + $ref: '#/components/schemas/TokenRequestorName' + device_name: + $ref: '#/components/schemas/DeviceName' + device_type: + $ref: '#/components/schemas/DeviceType' + funding_card_id: + $ref: '#/components/schemas/Id' + token_status: + $ref: '#/components/schemas/TokenStatus' + token_issuing_date: + $ref: '#/components/schemas/Date' + token_scheme: + $ref: '#/components/schemas/TokenScheme' + AuthorizationReference: + title: Authorization reference + type: string + maxLength: 50 + examples: + - 9e19df54-47cb-494b-84dc-1c126e95a05c + description: | + Unique identifier for authorized transactions; Id does not overlap with + ClearingReference; at least one of AuthorizationReference or ClearingReference + is always present. + ClearingReference: + title: Clearing reference + type: string + maxLength: 50 + examples: + - 9e19df54-47cb-494b-84dc-1c126e95a05c + description: | + Unique identifier for booked transactions; Id does not overlap with + AuthorizationReference; at least one of AuthorizationReference or + ClearingReference is always present. + DateTime: + title: Shared date-time + description: | + General date-time that is used for different attributes, format is + 'YYYY-MM-DDThh:mm:ssZ'. + type: string + format: date-time + examples: + - '2018-04-13T11:11:11Z' + TransactionStatus: + title: Transaction status + type: string + enum: + - authorized + - booked + examples: + - authorized + description: | + Status of the transaction; definition of enums: - authorized: transaction was + approved from the issuer to the merchant, but not yet cleared; includes + reservations - booked: transaction was cleared/settled and charged to the card + account + OriginalCurrency: + title: Original currency + type: string + pattern: ^[a-zA-Z0-9]{3}$ + examples: + - CHF + description: Currency of the card account on which the transaction is charged. + ApprovalNumber: + title: Approval number (also known as approval code) + type: string + pattern: ^\d{6}$ + examples: + - '803051' + description: | + Identifies a transaction from the entity that authorized it; in combination + with cardId and transactionDateTime usually unique (except for reversals or + other special situations). + Amount: + title: Shared amount + description: Amount of money for fees and services. + type: string + pattern: ^[0-9]{1,12}([.][0-9]{1,5})?$ + examples: + - '5.00' + TransactionCurrency: + title: Transaction currency + type: string + pattern: ^[a-zA-Z0-9]{3}$ + examples: + - CHF + description: Currency of the card account on which the transaction is charged. + FeeName: + title: Fee name + type: string + maxLength: 50 + examples: + - transactionTipAmount + - transactionSurchargeAmount + description: | + Name of the fee that is charged for the transaction; value is defined by the + Issuer. + FeePercentage: + title: Fee percentage + type: number + examples: + - 3.5 + description: | + Percentage value of the transactionAmount for the fee type; not provided by + all Card Service Providers. Values are provided to be compatible with the % + notation. For example a value 3.5 is to be interpreted as 3.5% (= 0.035 as + decimal). + FeeCurrency: + title: Fee currency + type: string + pattern: ^[A-Z]{3}$ + examples: + - CHF + description: | + Currency that is used for charging the fee, usually the same as the currency + of the card account. + Fees: + title: Fees + description: | + One or more fees related to a transaction. Depending on the card service + provider and the type of fee only the fee_percentage or fee_amount is + provided. + type: object + required: + - fee_name + properties: + fee_name: + $ref: '#/components/schemas/FeeName' + fee_percentage: + $ref: '#/components/schemas/FeePercentage' + fee_amount: + $ref: '#/components/schemas/Amount' + fee_currency: + $ref: '#/components/schemas/FeeCurrency' + ExchangeRate: + title: Exchange rate + type: number + examples: + - 1.048593 + description: Exchange rate for converting the originalAmount into the transactionAmount. + Description: + type: string + maxLength: 100 + examples: + - Aufladung + description: | + Description of the purpose of the transaction and potentially a reference to + the merchant. + MerchantName: + title: Merchant name + type: string + maxLength: 100 + examples: + - Yallo + description: Name of the merchant who requested the transaction. + MerchantCountry: + title: Merchant country + type: string + pattern: ^[a-zA-Z0-9]{3}$ + examples: + - CHE + description: Country in which the merchant is located. + MerchantCity: + title: Merchant city + type: string + maxLength: 50 + examples: + - Zurich + description: City in which the merchant is located. + Mcc: + type: string + maxLength: 4 + examples: + - '4812' + description: Merchant Category Code to identify the industry branch of the merchant. + MccDescription: + title: Mcc description + type: string + maxLength: 100 + examples: + - Telco + description: Description for the mcc. + TerminalReference: + title: Terminal reference (also known as terminal id) + type: string + maxLength: 8 + examples: + - '12345678' + description: Identifier for the terminal which has read the card data. + CardAcceptorReference: + title: Card acceptor reference + type: string + maxLength: 15 + examples: + - '87040' + description: Identifier for the merchant who requested the transaction. + AcquirerReference: + title: Acquirer reference (also known as acquirer id) + type: string + maxLength: 11 + examples: + - '12345678901' + description: | + Identifies the acquirer who submitted the transaction; not provided by all + Card Service Providers. + Channel: + type: string + enum: + - standard + - ecommerce + examples: + - standard + description: | + Channel that was used by the cardholder for executing the transaction, allows + the identification of eCommerce transactions. + TransactionCategory: + title: Transaction category + type: string + maxLength: 50 + examples: + - '100: Cash withdrawal' + - '103: ATM operator refund' + - '117: P2P payment charge sender' + - '118: P2P payment credit recipient' + - merchant + - fee + - atm + description: Category of the transaction, defined by the Card Service Provider. + CardholderReference: + title: Cardholder reference + type: string + maxLength: 50 + examples: + - Peter Schweizer + description: | + Reference to the cardholder who owns the card which was used for the + transaction; not provided by all Card Service Providers. + TransactionDetails: + title: Transaction details + description: Describes a transaction with its relevant characteristics. + type: object + required: + - transaction_id + - transaction_date_time + - valuta_date + - transaction_status + - original_amount + - original_currency + - mcc + - mcc_description + - transaction_category + - card_id + properties: + transaction_id: + $ref: '#/components/schemas/Id' + authorization_reference: + $ref: '#/components/schemas/AuthorizationReference' + clearing_reference: + $ref: '#/components/schemas/ClearingReference' + transaction_date_time: + $ref: '#/components/schemas/DateTime' + valuta_date: + $ref: '#/components/schemas/Date' + statement_date: + $ref: '#/components/schemas/Date' + transaction_status: + $ref: '#/components/schemas/TransactionStatus' + approval_number: + $ref: '#/components/schemas/ApprovalNumber' + original_amount: + $ref: '#/components/schemas/Amount' + original_currency: + $ref: '#/components/schemas/OriginalCurrency' + total_amount: + $ref: '#/components/schemas/Amount' + transaction_amount: + $ref: '#/components/schemas/Amount' + transaction_currency: + $ref: '#/components/schemas/TransactionCurrency' + fees: + $ref: '#/components/schemas/Fees' + exchange_rate: + $ref: '#/components/schemas/ExchangeRate' + exchange_rate_date: + $ref: '#/components/schemas/Date' + description: + $ref: '#/components/schemas/Description' + merchant_name: + $ref: '#/components/schemas/MerchantName' + merchant_country: + $ref: '#/components/schemas/MerchantCountry' + merchant_city: + $ref: '#/components/schemas/MerchantCity' + mcc: + $ref: '#/components/schemas/Mcc' + mcc_description: + $ref: '#/components/schemas/MccDescription' + terminal_reference: + $ref: '#/components/schemas/TerminalReference' + card_acceptor_reference: + $ref: '#/components/schemas/CardAcceptorReference' + acquirer_reference: + $ref: '#/components/schemas/AcquirerReference' + channel: + $ref: '#/components/schemas/Channel' + transaction_category: + $ref: '#/components/schemas/TransactionCategory' + token_id: + $ref: '#/components/schemas/Id' + cardholder_reference: + $ref: '#/components/schemas/CardholderReference' + card_account_reference: + $ref: '#/components/schemas/CardAccountReference' + card_id: + $ref: '#/components/schemas/Id' + related_transaction_id: + $ref: '#/components/schemas/Id' + parameters: + card_status: + in: query + name: card_status + required: false + schema: + $ref: '#/components/schemas/CardStatus' + description: | + Retrieves all cards in a certain status. Only one status can be filtered + at a time. + cursor: + in: query + name: cursor + required: false + schema: + type: string + example: cursorIDxyz + description: Optional parameter for pagination. An opaque string value used for pagination. + limit: + in: query + name: limit + required: false + schema: + type: integer + format: int32 + minimum: 1 + example: 25 + description: Optional parameter for pagination. Maximum number of entries to be returned. + client: + in: header + name: X-CorAPI-Client-ID + required: false + schema: + type: string + description: ID of the client forwarded to the provider. + correlation: + in: header + name: X-Correlation-ID + required: false + schema: + $ref: '#/components/schemas/Correlation' + description: | + Unique ID (defined by the caller) which will be reflected back in the + response. + agent: + in: header + name: User-Agent + required: false + schema: + type: string + description: Name and version of the of the Client software. + cardId: + in: path + name: cardId + required: true + schema: + $ref: '#/components/schemas/Id' + description: Identifier (technical) for a card for which information is requested. + card_id: + in: query + name: card_id + required: false + schema: + $ref: '#/components/schemas/Id' + description: | + Retrieves all tokens related to a card. Value has to be a technical identifier for the card that can be retrieved with the GET /cards + endpoint. + token_status: + in: query + name: token_status + required: false + schema: + $ref: '#/components/schemas/TokenStatus' + description: Retrieves all tokens in a certain status. Only one status can be filtered at a time. + tokenId: + in: path + name: tokenId + required: true + schema: + $ref: '#/components/schemas/Id' + description: Identifier (technical) for a token for which information is requested. + authorization_reference: + in: query + name: authorization_reference + required: false + schema: + $ref: '#/components/schemas/AuthorizationReference' + description: | + Retrieves the transaction related to an individual authorization. Parameter can be used to also retrieve the cleared transaction based + on the authorization reference. + clearing_reference: + in: query + name: clearing_reference + required: false + schema: + $ref: '#/components/schemas/ClearingReference' + description: | + Retrieves the transaction related to an individual clearing. Query parameter only returns results for cleared transactions (those + booked on the card account for credit and prepaid or bank account for debit cards). + token_id: + in: query + name: token_id + required: false + schema: + $ref: '#/components/schemas/Id' + description: | + Retrieves all transactions related to a token. Value has to be a technical identifier for the card that can be retrieved with the GET + /card-tokens endpoint. + from_date: + in: query + name: from_date + required: false + schema: + $ref: '#/components/schemas/DateTime' + description: | + Retrieves all transactions that took place after the provided date time. Filtering is applied on the transaction_date_time + attribute. + to_date: + in: query + name: to_date + required: false + schema: + $ref: '#/components/schemas/DateTime' + description: | + Retrieves all transactions that took place before the provided date time. Filtering is applied on the transaction_date_time + attribute. + status: + in: query + name: status + required: false + schema: + $ref: '#/components/schemas/TransactionStatus' + description: Retrieves all transactions in a certain status. Only one status can be filtered at a time. + original_currency: + in: query + name: original_currency + required: false + schema: + $ref: '#/components/schemas/OriginalCurrency' + description: Retrieves all transactions in a certain currency. Filtering is applied on the original_currency attribute. + transactionId: + in: path + name: transactionId + required: true + schema: + $ref: '#/components/schemas/Id' + description: Identifier (technical) for a transaction for which information is requested. + securitySchemes: {} + responses: + standard400: + headers: + Content-Language: + $ref: '#/components/headers/Content-Language' + X-Correlation-ID: + $ref: '#/components/headers/X-Correlation-ID' + description: | + Client Error - The request could not be processed due to a problem in the data + provided. This could be for any of the reasons of the HTML standard that would + result in a 4xx code. + content: + application/problem+json: + schema: + $ref: '#/components/schemas/CommonErrorResponse' + standard500: + headers: + Content-Language: + $ref: '#/components/headers/Content-Language' + X-Correlation-ID: + $ref: '#/components/headers/X-Correlation-ID' + description: | + Internal Server Error - The request could not be processed due to a problem at + the data provider. This could be for any of the reasons of the HTML standard + that would result in a 5xx code. + content: + application/problem+json: + schema: + $ref: '#/components/schemas/CommonErrorResponse' + headers: + X-Correlation-ID: + schema: + $ref: '#/components/schemas/Correlation' + description: | + Client defined ID from request to correlates HTTP requests between a client + and server. + X-Next-Cursor: + description: An opaque string value, or an empty string if there are no more results. + schema: + type: string + example: cursorIDxyz + Content-Language: + schema: + type: string + examples: + - en + description: Language of provided content.