> ## Documentation Index
> Fetch the complete documentation index at: https://developer.novacpayment.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Verify a transaction



## OpenAPI

````yaml get /api/v1/checkout/{transactionRef}/verify
openapi: 3.0.1
info:
  title: NOVAC API
  version: v1
servers:
  - url: https://api.novacpayment.com/
security:
  - Bearer: []
paths:
  /api/v1/checkout/{transactionRef}/verify:
    get:
      tags:
        - Checkout
      parameters:
        - name: transactionRef
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VerifyStatusSuccessResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VerifyStatusFailureResponse'
components:
  schemas:
    VerifyStatusSuccessResponse:
      type: object
      properties:
        status:
          type: boolean
          example: true
          description: >-
            Indicates whether the transaction verification was successful or
            not.
        message:
          type: string
          nullable: true
          description: >-
            Provides additional information about the transaction verification
            status.
        data:
          type: object
          nullable: true
          description: Contains the full details of the verified transaction.
          properties:
            status:
              type: string
              enum:
                - pending
                - successful
                - failed
              description: The current status of the transaction.
            id:
              type: integer
              description: The unique internal identifier for the transaction.
            transactionReference:
              type: string
              description: The unique reference assigned to the transaction.
            amount:
              type: number
              description: The original amount requested for the transaction.
            chargedAmount:
              type: number
              description: >-
                The actual amount charged to the customer, including any
                applicable fees.
            currency:
              type: string
              description: The currency of the transaction, e.g. NGN.
            transactionFee:
              type: number
              description: The fee charged for processing the transaction.
            gatewayResponseCode:
              type: string
              description: >-
                The response code returned by the payment gateway (e.g. 00 for
                success).
            gatewayResponseMessage:
              type: string
              description: >-
                The response message returned by the payment gateway describing
                the outcome.
            domain:
              type: string
              description: >-
                The environment in which the transaction was processed (e.g.
                live or test).
            channel:
              type: string
              description: >-
                The payment channel used for the transaction (e.g. card,
                bank_transfer).
            requestIp:
              type: string
              description: The IP address from which the transaction request originated.
            paymentDescriptor:
              type: string
              description: >-
                The descriptor that appears on the customer's statement for this
                payment.
            transactionType:
              type: string
              nullable: true
              description: The type of transaction performed, if applicable.
            redirectUrl:
              type: string
              nullable: true
              description: >-
                The URL the customer was redirected to after completing the
                transaction, if applicable.
            card:
              type: object
              nullable: true
              description: >-
                Card details used for the transaction, present only for card
                payments.
              properties:
                first6Digits:
                  type: string
                  description: The first 6 digits of the card used (BIN).
                last4Digits:
                  type: string
                  description: The last 4 digits of the card used.
                issuer:
                  type: string
                  nullable: true
                  description: The issuing bank of the card.
                country:
                  type: string
                  description: The country of issuance of the card.
                type:
                  type: string
                  description: The card type or scheme (e.g. Visa, Mastercard).
              additionalProperties: false
            customer:
              type: object
              nullable: true
              description: Details of the customer who initiated the transaction.
              properties:
                id:
                  type: integer
                  description: The unique internal identifier for the customer.
                customerCode:
                  type: string
                  description: The unique code assigned to the customer.
                email:
                  type: string
                  description: The customer's email address.
                name:
                  type: string
                  description: The customer's full name.
              additionalProperties: false
            transferDetail:
              type: object
              nullable: true
              description: >-
                Bank transfer details for the transaction, present only for bank
                transfer payments.
              properties:
                bankCode:
                  type: string
                  description: The code of the bank involved in the transfer.
                bankName:
                  type: string
                  description: The name of the bank involved in the transfer.
                accountNumber:
                  type: string
                  description: >-
                    The virtual or designated account number used for the
                    transfer.
                sessionId:
                  type: string
                  description: The session ID associated with the transfer.
                creditAccountName:
                  type: string
                  description: The name on the account credited for the transfer.
                originatorName:
                  type: string
                  description: The name of the originator of the funds.
                originatorAccountNumber:
                  type: string
                  description: The account number of the originator of the funds.
              additionalProperties: false
          additionalProperties: false
      additionalProperties: false
      example:
        status: true
        message: Transaction details retrieved successfully
        data:
          status: successful
          id: 0
          transactionReference: string
          amount: 0
          chargedAmount: 0
          currency: NGN
          transactionFee: 0
          gatewayResponseCode: '00'
          gatewayResponseMessage: string
          domain: string
          channel: string
          requestIp: string
          paymentDescriptor: NOVAC
          transactionType: ''
          redirectUrl: ''
          card:
            first6Digits: string
            last4Digits: string
            issuer: ''
            country: string
            type: string
          customer:
            id: 0
            customerCode: string
            email: string
            name: string
          transferDetail:
            bankCode: string
            bankName: string
            accountNumber: string
            sessionId: string
            creditAccountName: string
            originatorName: string
            originatorAccountNumber: string
    VerifyStatusFailureResponse:
      type: object
      properties:
        status:
          type: boolean
          example: false
          description: >-
            Indicates whether the transaction verification was successful or
            not.
        message:
          type: string
          nullable: true
          description: >-
            Provides additional information about the transaction verification
            status.
      additionalProperties: false
      example:
        status: false
        message: no record found for transaction with reference .....
  securitySchemes:
    Bearer:
      type: apiKey
      description: >-
        Input your API key (e.g. your public key) as a Bearer token to access
        this API.
      name: Authorization
      in: header

````