# Transfer Single Query

> Query a single transfer by merchant request ID or Onerway payout ID.

```yaml
openapi: 3.1.0
info:
  title: Transfer Single Query
  version: 1.0.0
  description: Query a single transfer by merchant request ID or Onerway payout ID.
paths:
  /api/v1/txn/query:
    post:
      summary: Transfer Single Query
      description: Query a single transfer by merchant request ID or Onerway payout ID.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                merchantNo:
                  type: string
                  description: Merchant number assigned by Onerway. Retrieve it from the merchant
                    portal or onboarding material after your sandbox or
                    production account is created.
                requestId:
                  type: string
                  description: Merchant request ID used to look up a single transfer.
                  x-onerway-required: conditional
                  x-onerway-condition:
                    - Required when `payoutId` is not provided.
                payoutId:
                  type: string
                  description: Onerway payout ID used to look up a single transfer.
                  x-onerway-required: conditional
                  x-onerway-condition:
                    - Required when `requestId` is not provided.
                sign:
                  type: string
                  description: Request signature string. Generate it according to the Transfer
                    request-signing rules with your merchant private key.
              required:
                - merchantNo
                - sign
            examples:
              query-single-transfer:
                summary: Query a single transfer
                value:
                  merchantNo: "800225"
                  payoutId: "1808783413957234688"
                  requestId: REQ20240101123456789012345678901
                  sign: "{{SIGN}}"
              query-single-transfer-by-request-id:
                summary: Query a single transfer by request ID only
                value:
                  merchantNo: "800225"
                  requestId: REQ20240101123456789012345678901
                  sign: "{{SIGN}}"
      responses:
        "200":
          description: Single transfer result
          content:
            application/json:
              schema:
                type: object
                properties:
                  respCode:
                    type: string
                    description: Response code returned by Onerway.
                  respMsg:
                    type:
                      - string
                      - "null"
                    description: Response message returned by Onerway.
                    x-onerway-value:
                      nullable: true
                      when:
                        en: No response message is returned.
                        zh: 未返回响应信息时为 `null`。
                  data:
                    type: object
                    properties:
                      requestId:
                        type: string
                        description: Merchant request ID.
                      payoutId:
                        type: string
                        description: Onerway payout ID.
                      payoutStatus:
                        type: string
                        description: Current transfer status. Use it together with webhook records to
                          judge whether the payout has reached a final state.
                      paymentMethod:
                        type: string
                        description: Payout method used for the transfer.
                      payerId:
                        type: string
                        description: Stored payer ID related to the transfer.
                    description: Single transfer detail result.
              examples:
                single-transfer-result:
                  summary: Single transfer result
                  value:
                    respCode: "20000"
                    respMsg: null
                    data:
                      requestId: DM20250888804123
                      payoutId: "1954374604177408000"
                      payoutStatus: P
                      paymentMethod: BANK_TRANSFER
                      payerId: "1953712585351499776"
                single-transfer-succeeded:
                  summary: Single transfer final success result
                  value:
                    respCode: "20000"
                    respMsg: null
                    data:
                      requestId: DM20250888804124
                      payoutId: "1954374604177408001"
                      payoutStatus: S
                      paymentMethod: BANK_TRANSFER
                      payerId: "1953712585351499776"
                single-transfer-failed:
                  summary: Single transfer final failure result
                  value:
                    respCode: "20000"
                    respMsg: null
                    data:
                      requestId: DM20250888804125
                      payoutId: "1954374604177408002"
                      payoutStatus: F
                      paymentMethod: BANK_TRANSFER
                      payerId: "1953712585351499776"
```
