GET
/api/merchant-to-merchant/transfer

Get Transfer History

Retrieve a list of all transfer transactions involving the authenticated merchant (either as sender or receiver). Includes statistics for total transactions, total sent count, and total received count.

Overview

Get Transfer History retrieves a list of all transfer transactions involving the authenticated merchant. This includes transactions where the merchant is either the sender or the receiver, providing an aggregated view of transfer history and statistics.

Authentication

Authorization: Bearer <YOUR_SECRET_KEY>

Headers

Request Headers
Authorization
required

Bearer <YOUR_SECRET_KEY>

Code Examples

curl -X GET "https://api.panel.Luxkgate.ca/api/merchant-to-merchant/transfer" \
  -H "Authorization: Bearer YOUR_SECRET_KEY" \
  -H "Content-Type: application/json" \
  

Response

Status Codes

200
Success. Returns transfer history object.
401
Authentication failed (missing or invalid Bearer secret).
Success Response
Example response for a successful request
{
  "transactions": [
    {
      "id": "e93ab3f9-7159-4f51-bfa0-5d6614ae4ebc",
      "type": "transfer",
      "status": "success",
      "amount": "500.00",
      "fee_amount": "0.00",
      "net_amount": "500.00",
      "currency": "PKR",
      "merchant_id": "8c08ec66-c23b-4d80-86d5-261b2e994c1f",
      "receiver_merchant_id": "23e7a99f-8211-4b00-855e-0646e991118d",
      "createdAt": "2026-06-02T09:12:41.000Z",
      "updatedAt": "2026-06-02T09:12:41.000Z",
      "senderName": "Sender Merchant Ltd",
      "receiverName": "Receiver Merchant Ltd",
      "direction": "sent",
      "isSender": true
    },
    {
      "id": "a1b2c3d4-e5f6-7a8b-9c0d-1e2f3a4b5c6d",
      "type": "transfer",
      "status": "success",
      "amount": "1200.00",
      "fee_amount": "0.00",
      "net_amount": "1200.00",
      "currency": "PKR",
      "merchant_id": "23e7a99f-8211-4b00-855e-0646e991118d",
      "receiver_merchant_id": "8c08ec66-c23b-4d80-86d5-261b2e994c1f",
      "createdAt": "2026-06-01T14:30:00.000Z",
      "updatedAt": "2026-06-01T14:30:00.000Z",
      "senderName": "Receiver Merchant Ltd",
      "receiverName": "Sender Merchant Ltd",
      "direction": "received",
      "isSender": false
    }
  ],
  "totalTransactions": 2,
  "totalSent": 1,
  "totalReceived": 1
}

Best Practices & Security Safeguards

Keep Secrets Private

Always execute these API requests from your backend server. Never expose your merchant API Secret Key in client-side code (like frontend apps or websites).

ACID Safety

The platform implements explicit row locking during transfer creation. Deadlocks are avoided by sorting merchant row locks lexicographically. This prevents race conditions and double debits when receiving concurrent updates.

Transaction Status

Transfers are executed instantly inside our database and their initial status is always returned as success.