Sent BTC Pay after order had expired

Hi guys,

Newbie here and I am afraid I may have messed up.

Here are the steps I took:

  1. I sent BTC to my counter wallet address.
  2. I placed an order to buy XCP with BTC.
  3. I sent the BTC to the address in the matched order.
  4. I sent a BTC Pay transaction from the API.

Now, the status is:

  1. My BTC transaction has already been confirmed.
  2. When I sent the BTC Pay transaction via API, I got an error “'Error composing btcpay transaction via API: [‘order match expired’]”.

So, I am kind of stuck… How can I recover my BTC?

This is the transaction: https://xchain.io/tx/1135155

Any help will be greatly appreciated especially if any of the guys like @foldinger and @Support can sort me out.
Thanks.

People make mistakes with BTC Pay… Because of that we removed support for it in Counterwallet…

It seems you used the API correctly (i.e. unlike some other dude who just sent BTC to the seller’s address and never got anything, you used the API)

counterparty-client btcpay \
--source=mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns \
--order-match-id=092f15d36786136c4d868c33356ec3c9b5a0c77de54ed0e96a8dbdd8af160c23

The error ‘order match expired’ means you didn’t pay within 20 blocks (or whatever it is) from the block when your offer got matched with the seller.

I think your transaction should simply fail (i.e. the tx fee you paid will be wasted, but the BTC used to pay for the order will likely return). @loon3 do you know what happens in this case?

Well, not quite, I did send BTC to the seller’s address and then used the API.

Now that I have looked a bit more into it, it would appear that using BTC Pay via the API will actually send the BTC to the seller without someone manually doing it…

So, I guess my question is, is there a way to recover the BTC?

@cryptokenya The btcpay tx is a simple btc send tx with an op_return referencing the dex order tx id. Sending this tx after the dex order expires will prevent it from matching, so essentially you’re just sending the order creator some btc. There’s no way to “recover” the funds; you’d need the recipient to send it back to you.

@something: Can you remove XCP/BTC exchange from counterwallet or make it automatically and fail proof?

hello this may be too late but I have some failed and expired BTCPay without the whole BTC going back to my account, how can I recover them if it still exists?