Verify transaction

Verification guarantees you have received payment

After initializing a transaction, you transfer control to your customer to complete payment. Hence, online payments require you to always run a verification check even if you are informed that payment has been completed.

Transaction verification provides a way for you to confirm the status of a transaction. A transaction may be in a processing state if payment processor networks are having a slow day. However, once a transaction is completed, a verification request will let you know if it was successful or failed.

NOTE: If a verified transaction is successful, you can give value to your customer as SwitchApp guarantees that payment has been received.

Retrieves a transaction with the specified reference.

get
Authorizations
Path parameters
tx_refstringRequired

The reference of the transaction to retrieve

Responses
200
Returns 200 and the requested transaction
application/json
get
GET /v1/transactions/verify/{tx_ref} HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Accept: */*
{
  "status": "success",
  "message": "text",
  "data": {
    "id": "text",
    "is_live": true,
    "gateway_code": "text",
    "tx_ref": "text",
    "dedicated_virtual_account_reference": "text",
    "currency": "text",
    "amount": 1,
    "charged_amount": 1,
    "amount_settled": 1,
    "app_fee": 1,
    "merchant_fee": 1,
    "bearer": "customer",
    "status": "successful",
    "metadata": "text",
    "redirect_url": "text",
    "payment_type": "text",
    "is_direct_card_charge": true,
    "is_virtual_account_checkout": true,
    "is_dedicated_virtual_account_checkout": true,
    "device_fingerprint": "text",
    "ip": "text",
    "narration": "text",
    "processor_response": "text",
    "auth_model": "text",
    "card_pan": "text",
    "card_issuer": "text",
    "card_country": "text",
    "card_type": "text",
    "card_expiry": "text",
    "bank_trsf_country": "text",
    "bank_trsf_bank_code": "text",
    "bank_trsf_bank_name": "text",
    "bank_trsf_account_number": "text",
    "bank_trsf_account_name": "text",
    "bank_trsf_swift": "text",
    "bank_trsf_iban": "text",
    "bank_trsf_session_id": "text",
    "title": "text",
    "logo_url": "text",
    "description": "text",
    "customer": {
      "id": "text",
      "full_name": "text",
      "email": "text",
      "phone_number": "text",
      "address": "text",
      "status": "active",
      "created_at": "2025-07-07T02:57:16.572Z",
      "edited_at": "2025-07-07T02:57:16.572Z"
    },
    "paid_at": "2025-07-07T02:57:16.572Z",
    "created_at": "2025-07-07T02:57:16.572Z",
    "edited_at": "2025-07-07T02:57:16.572Z",
    "transaction_payout_tags": [
      {
        "payout_tag": "text",
        "amount": 1,
        "description": "text",
        "metadata": "text"
      }
    ],
    "virtual_account_transfer_timeline_entries": [
      {
        "id": "text",
        "action_type": "awaitingProviderResponse",
        "action": "text",
        "description": "text",
        "gateway_code": "text",
        "is_live": true,
        "created_at": "2025-07-07T02:57:16.572Z",
        "edited_at": "2025-07-07T02:57:16.572Z"
      }
    ]
  },
  "meta": {},
  "errors": {
    "ANY_ADDITIONAL_PROPERTY": [
      "text"
    ]
  },
  "is_error": true
}
curl https://api.switchappgo.com/v1/transactions/verify/{reference} \
    -H "authorization: 'bearer sk_test_nTgS42KNdKr6Ts798DT'"
    -X GET

Last updated