---
title: "Customer approves withdrawal from wallet"
method: POST
path: "/transactions/offramp/customer-approve"
tags: ["transactions-offramp"]
---

# Customer approves withdrawal from wallet

`POST /transactions/offramp/customer-approve`

## Request body

- CustomerActionRequest
  - `customerId` string, uuid, required
  - `transactionId` string, uuid, required
  - `txHash` string — Deposit transaction hash for deposit related transaction
  - `permitSignature` string — Permit data signature for permit related approval
  - `flag` string
  - `paymentReceiptUploadId` string — Upload ID for receipt uploaded on storage bucket

## Response `200`

Success

- TransactionDTO
  - `id` string, uuid, required
  - `reference` string, required
  - `customerId` string, uuid, required
  - `customerName` string
  - `offer` TransactionsSvcOfferDTO
    - `offerId` string, uuid
    - `partnerId` string, uuid, required
    - `transactionType` 'ONRAMP' | 'OFFRAMP', required — Transaction order type, can be ONRAMP or OFFRAMP
    - `rate` number, required
    - `networkId` string, required
    - `fiatSymbol` string
    - `fiatAmount` number
    - `token` string, required
    - `tokenAmount` number, required
    - `usdAmount` number
    - `partnerDisplayName` string
    - `adNote` string
    - `instantPayEnabled` boolean, required
    - `instantPayPaymentAccountId` string
    - `customPayinProvider` string
    - `tradeMode` 'P2P' | 'IP' | 'OTC'
  - `escrowAddress` string — Escrow address
  - `paymentChannelId` string
  - `paymentMethod` object
  - `buyerPaymentMethod` object
  - `customerWallet` TransactionsSvcWalletDTO
    - `walletAddress` string
    - `networkId` string
    - `walletName` string
  - `tokenAddress` string
  - `status` 'INITIATED' | 'DEPOSITED' | 'CONFIRMED' | 'COMPLETED' | 'PENDING' | 'CANCELLED' | 'IN_DISPUTE' | 'AWAITING_ACCEPTANCE', required — Order transaction status
  - `createdAt` string, date-time
  - `initiatedAt` string, date-time
  - `depositedAt` string, date-time
  - `confirmedAt` string, date-time
  - `completedAt` string, date-time
  - `cancelledAt` string, date-time
  - `cancellationReason` string
  - `disputeId` string
  - `timeout` TimeoutDTO
    - `name` 'APPROVE_TRANSACTION' | 'MAKE_DEPOSIT' | 'CONFIRM_DEPOSIT' | 'FLAG_DISPUTE' | 'ACKNOWLEDGE_TRANSACTION'
    - `startTime` string, date-time
    - `duration` number
    - `timeLeft` integer
  - `lockHash` string
  - `confirmationHash` string
  - `cancellationHash` string
  - `isPartnerAcknowledged` boolean
  - `defaultingParty` 'CUSTOMER' | 'PARTNER' — Type of user/role of user in transaction
  - `rating` number
  - `isCexOrder` boolean
  - `fee` Fee, required
    - `asToken` string, required
    - `asFiat` number, required
  - `instantPayProcessingStatus` 'PENDING_IP_REPORT' | 'IN_PROGRESS' | 'FAILURE' | 'SUCCESS'
  - `tradeValue` number — Actual token amount that is to be traded
  - `merchantTokenValue` number — Actual token value that is to be traded by merchant less any fees
  - `customerTokenValue` number — Actual token value that is to be traded by customer less any fees
  - `payableAmount` number — Actual fiat amount that is to be paid.
  - `thirdpartyOrderInfo` ThirdpartyOrderInfoDTO
    - `businessId` string, required — The thirdparty business the customer is trading via
    - `tradeId` string — Tracking trade Id
    - `product` string — Product name, typically custodial or web
    - `blockchainOrderId` integer
    - `externalOrderReference` string
  - `isNoKyc` boolean — Flag showing if order is a no kyc order
  - `paymentReceiptUploadId` string — Upload ID for receipt uploaded on storage bucket
  - `suppressCustomerNotifications` boolean — Flag to indicate if notifications should be sent to the customer or not during the lifetime of this transaction
  - `chatUnavailable` boolean — Flag to indicate if chat is unavailable for this transaction
  - `tradeContext` 'STANDARD_TRADE' | 'INTERNAL_RAIL'

## Other responses

- `400` — Bad request
- `401` — Unauthorized request
- `500` — Server error

---

[API](https://skmtc.net/nestechops/apis/onboard-external-api-gateway.md) · [All operations](https://skmtc.net/nestechops/apis/onboard-external-api-gateway/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/nestechops/onboard-external-api-gateway/versions/29661adc1ffc/schema)
