---
title: "Accept Order"
method: PATCH
path: "/orders/{acceptOtcOrderId}"
tags: ["orders"]
---

# Accept Order

`PATCH /orders/{acceptOtcOrderId}`

## Request

- Base URL: `https://api.copper.co/platform`
- URL: `https://api.copper.co/platform/orders/{acceptOtcOrderId}`
- Auth: none declared
- TypeScript: <https://skmtc.dev/copper-co/apis/copper-platform-api/docs/orders/:acceptOtcOrderId/patch.ts> (a function with typed inputs; its response is checked against the schema)

Accept counterparty settlement order

## Path parameters

- `acceptOtcOrderId` string, required

## Headers

- `Content-Type` string

## Response `200`

OK

- Order
  - `amount` string, required: Amount of order in baseCurrency
  - `baseCurrency` string, required: Base currency of the order
  - `createdAt` string, required: Order creation timestamp
  - `createdBy` string: Creator user id
  - `externalOrderId` string, required: The order ID in the external system
  - `extra` OrderExtra
    - `availableCoSigners` string[]: The ids of user who can approve an order. If not set, anybody with Approver permission can approve
    - `availableSnapshot` string: Snapshot of a wallet available balance at the moment of order termination
    - `balanceSnapshot` string: Snapshot of a wallet balance at the moment of order termination
    - `blockchainTransactionType` 'send' | 'multi-withdraw' | 'account-set' | 'approve-hot-key' | 'approve-builder-fee' | 'allowance' | 'smart-call' | 'multi-smart-call' | 'activate' | 'activate-trading' | 'stake-delegation' | 'stake-nomination' | 'stake-undelegation' | 'complete-withdrawal' | 'stake-complete-deposit' | 'take-reward' | 'claim-builder-rewards' | 'pool-creation' | 'edit-pool' | 'governance-vote' | 'unjail' | 'importance-transfer' | 'transfer-stake' | 'rebond-stake' | 'chill' | 'cross-chain-send' | 'accept-deposit' | 'reject-deposit' | 'allocate' | 'reject-allocation' | 'create-allocation-request' | 'settle-allocations' | 'cancel-allocations' | 'create-referral' | 'set-referral' | 'set-trading'
    - `clearLoop` boolean: Indicates whether the order is a part of ClearLoop
    - `clearLoopExtra` ClearLoopExtra
      - `clearLoopExternalNetted` boolean: Whether the order is linked to the ClearLoop multi-custody model that works by netting settlement amounts
      - `clearLoopSettlementId` string: Id uniquely identifying the ClearLoop settlement the order is part of
    - `clientAccountId` string: Unique client exchange's account identifier used for ClearLoop
    - `coSigners` string[]: The ids of user who has approved an order
    - `coSignersNumber` string: The number of required approves for an order
    - `confirmations` string: Number of confirmations for a blockchain transaction
    - `counterpartyPortfolioId` string
    - `deliveryType` 'free-of-payment' | 'payment-vs-payment'
    - `depositOrderId` string: The ID of a deposit order where a withdraw was made to
    - `depositOrigin` string
    - `depositTargetId` string: The ID of a deposit target where an order was made to
    - `description` string: The description of the order
    - `estimatedFees` FeeEstimation
      - `baseFeePerGas` string: The base fee for the block in Gwei
      - `estimatedTime` string: The estimated time in milliseconds for the transaction to be confirmed
      - `fee` string, required: The amount of the fee
      - `feeCurrency` string, required: The currency in which the fee is denominated
      - `feePerByte` MinimalUnit
      - `feeType` string
      - `gasLimit` MinimalUnit
      - `gasPriceGwei` string: The gas price in Gwei
      - `maxFeePerGas` string: The max gas fee wiling to pay in Gwei
      - `maxPriorityFeePerGas` string: The max priority fee wiling to pay in Gwei
      - `reportingCurrencyRate` string: The fee amount in the reporting currency
      - `transactionBytes` string: The number of bytes in the transaction
    - `externalBroadcast` boolean: Withdraw is requested to be processed by external system. In that case we don't broadcast it to blockchain
    - `feeLevel` 'low' | 'medium' | 'high'
    - `fees` FeeEstimation[]: The fees for an order
      - `baseFeePerGas` string: The base fee for the block in Gwei
      - `estimatedTime` string: The estimated time in milliseconds for the transaction to be confirmed
      - `fee` string, required: The amount of the fee
      - `feeCurrency` string, required: The currency in which the fee is denominated
      - `feePerByte` MinimalUnit
      - `feeType` string
      - `gasLimit` MinimalUnit
      - `gasPriceGwei` string: The gas price in Gwei
      - `maxFeePerGas` string: The max gas fee wiling to pay in Gwei
      - `maxPriorityFeePerGas` string: The max priority fee wiling to pay in Gwei
      - `reportingCurrencyRate` string: The fee amount in the reporting currency
      - `transactionBytes` string: The number of bytes in the transaction
    - `fromAddresses` string[]: List of addresses from which the deposit was made. This is an array because, on some blockchains like Bitcoin (BTC), the sending address can include multiple input UTXO addresses
    - `fromCounterpartyId` string: The ID of a counterparty where an order was made from
    - `fromCryptoAddress` CryptoAddress
      - `_embedded` CryptoAddressEmbedded
        - `currencyConfigurations` CurrencyConfiguration[]: Crypto address currency configuration
          - `createdAt` string, required: Created at timestamp
          - `createdBy` string, required: Created by user id
          - `cryptoAddressId` string, required: Crypto address id
          - `currency` string, required: Currency of an address
          - `currencyConfigurationId` string, required: Currency configuration id
          - `extra` CurrencyConfigurationExtra
          - `isWhitelist` boolean, required: Indicates, if an address is whitelisted
          - `lastUsedAt` string: Last used at
          - `portfolioIds` string[]: Portfolio ids, if address set for particular portfolios
          - `updatedAt` string: Last updated Updated at timestamp
          - `updatedBy` string: Updated by user id
      - `acceptTokens` boolean: Indicates an address can be used for tokens on the same blockchain network
      - `address` string, required: Address
      - `addressTags` AddressTag[]: Address tags
      - `addressType` 'externally-owned-account' | 'internal-account' | 'smart-contract' | 'payable-smart-contract', required
      - `category` 'smart-contract' | 'payable-smart-contract' | 'mining' | 'unknown' | 'self-hosted' | 'vasp'
      - `createdAt` string, required: Created at timestamp
      - `createdBy` string, required: Created by user id
      - `cryptoAddressId` string, required: Crypto address id
      - `currency` string, required: Currency of an address
      - `extra` CryptoAddressExtra
      - `isWhitelist` boolean, required: Indicates, if an address is whitelisted
      - `lastUsedAt` string: Last used at
      - `mainCurrency` string: Main currency of an address
      - `memo` string: Address memo (destination tag for XRP)
      - `name` string, required: Name of an address
      - `organizationId` string: Organization id
      - `portfolioIds` string[]: Portfolio ids, if address set for particular portfolios
      - `updatedAt` string: Last updated Updated at timestamp
      - `updatedBy` string: Updated by user id
    - `fromCryptoAddressId` string: The ID of a crypto address where an order was made from
    - `fromPortfolioId` string: The ID of a portfolio where an order was made from
    - `includeFeeInWithdraw` boolean: Indicates whether the fee should be included in the withdrawal amount or added on top of it
    - `invoiceId` string: The ID of an invoice where an order was made to
    - `marketPrice` string
    - `memo` string: Withdraw memo (destination tag for XRP)
    - `nextTransferTo` WithdrawTarget[]: The remain list of next transfer targets
      - `cryptoAddressId` string
      - `portfolioId` string
      - `targetType` 'external' | 'portfolio', required
    - `originalDepositAmount` string: Amount of the original deposit transaction
    - `partSigned` UploadPartSignedTx
    - `payload` string: Serialized [data](https://ethereum.org/en/developers/docs/transactions/#the-data-field) payload for a smart contract
    - `payloads` string[]: Serialized list of unsigned transactions. For Ethereum only type 0 (legacy) transactions are supported
    - `reportingCurrencyRate` string: The snapshot of a base currency rate at the moment of order creation
    - `reportingQuoteCurrencyRate` string: The snapshot of a quote currency rate at the moment of order creation
    - `signed` UploadFullSignedTx
    - `spenderAddress` string: For ETH Approve transaction store spender address
    - `terminatedReportingCurrencyRate` string: The snapshot of a base currency rate at the moment of order termination
    - `toAddress` string: The address where the funds should be transferred
    - `toCounterpartyId` string: The ID of a counterparty where an order was made to
    - `toCryptoAddressId` string: The ID of a crypto address where an order was made to
    - `toInvoiceId` string: The ID of an invoice where an order was made to
    - `toLendingInvoiceId` string: The ID of an lending invoice where an order was made to
    - `toPortfolioId` string: The ID of a portfolio where an order was made to
    - `totalQuoteAmount` string: The amount of a quote currency in an order
    - `transactionId` string: The blockchain transaction ID on an order
    - `transactionRequest` object: Data which needs to be passed to Copper Unlimited to sign the transaction
    - `transferAmount` string: Amount transferred from proxy to destination
    - `transferChainId` string: The ID to identify orders, created as a part of the same order chain
    - `transferDepositTargetId` string: The deposit target ID of the proxy address for the transfer
    - `transferFees` string: Network fees required for transferring from proxy to destination
    - `transferFeesCurrency` string: Currency of fees paid for transferring from proxy to destination
    - `transferTransactionId` string: The hash of the transaction transferring funds from proxy to destination
    - `withdrawFee` string: The amount of fees for the order
    - `withdrawOrderId` string: The ID of a withdraw order where a deposit was made from
  - `limitType` 'otc' | 'rfq'
  - `mainCurrency` string: Blockchain network of a `baseCurrency`
  - `orderId` string, required: Order ID
  - `orderType` 'sell' | 'buy' | 'deposit' | 'withdraw' | 'multi-withdraw' | 'wallet-message' | 'retrieved-deposit' | 'earn-reward' | 'earn-shared-reward' | 'claim-shared-reward' | 'cross-chain-deposit' | 'cross-chain-withdraw', required
  - `organizationId` string: Organization id
  - `portfolioId` string, required: Portfolio ID
  - `portfolioType` 'custody' | 'trading-vault' | 'trading' | 'external' | 'clearloop', required
  - `quoteCurrency` string: The quote currency of the order (in case of a settle order)
  - `quoteMainCurrency` string: Blockchain network of a `quoteCurrency`
  - `status` 'new' | 'waiting-funds' | 'reserving' | 'reserved' | 'queued' | 'validating-funds' | 'working' | 'waiting-approve' | 'co-sign-require' | 'approved' | 'processing' | 'executed' | 'canceled' | 'rejecting' | 'rejected' | 'declining' | 'declined' | 'suspending' | 'suspended' | 'blocked' | 'action-required' | 'accepting' | 'accepted' | 'require-initializer-approve' | 'waiting-counterparty-approve' | 'require-counterparty-approve' | 'ready-for-settlement' | 'settled' | 'part-signed-tx-added' | 'full-signed-tx-added' | 'rejected-part-signed-tx-added' | 'rejected-full-signed-tx-added' | 'accepted-part-signed-tx-added' | 'accepted-full-signed-tx-added' | 'awaiting-settlement' | 'master-password-required' | 'manual-resolving' | 'error' | 'pending-atomic-settlement-confirmation' | 'atomic-settlement-reservation-completed' | 'require-finalize' | 'waiting-accept-deposit' | 'waiting-reject-deposit', required
  - `terminatedAt` string: Order termination timestamp
  - `updatedAt` string: Order update timestamp

## Other responses

- `400`: Bad Request
- `403`: Forbidden
- `409`: Conflict

---

[API](https://skmtc.dev/copper-co/apis/copper-platform-api.md) - [All operations](https://skmtc.dev/copper-co/apis/copper-platform-api/llms.txt) - [OpenAPI document](https://skmtc.dev/copper-co/apis/copper-platform-api/revisions/44296120fc7d?raw)
