<p>They are bearer instruments.  Whomever redeems the code first gets the funds associated with the code.</p>

<p>They are meant to allow USDs or bitcoins to be traded from one account to another.  Third party intermediaries, such as BitInstant or other exchanges themselves may accept them.</p>

<p>There are risks to these.  <a href="http://www.bitcoinmoney.com/post/18506669111" rel="nofollow">http://www.bitcoinmoney.com/post/18506669111</a></p>

CC BY-SA 3.0
2012-03-13T06:11:00.400Z
2013-03-11T09:21:48.940Z
2013-03-11T09:21:48.940Z
Stephen Gornick
<p>The code is effectively just a long random string.  When you create a redeemable code, a random string is selected, entered into the database at the exchange and associated with a currency and an amount.  That string is your redeemable code.  The string is long enough to make it very unlikely that anyone would be able to guess it in a reasonable length of time.</p>

<p>The first person to attempt to redeem the code gets the amount credited to their account on the exchange, which causes the database entry on the exchange for that code to be marked as having been redeemed.</p>

<p>The way to tell whether a code is valid is to try redeeming it.  If it works, you're the first to try it.  If not, you're either not the first to try using it, or it was never a valid code to start with.</p>

<p>The exchange should prevent "double-spending" by making sure that the "look up whether code is spent; credit account; make code as spent" sequence is an atomic operation.  We don't want two users both running through that same sequence at the same time, where both pass the "look up whether code is spent" check, then both accounts get credited, etc.</p>

CC BY-SA 3.0
2012-03-13T05:06:09.773Z
So, if you accept a code as payment for anything, you should immediately redeem it before handing over the goods, right? (And if you pay with these codes, you have to accept that this is how it works. Or can you go back to MtGox to complain in case the seller did not deliver?)
Thilo
CC BY-SA 3.0
2012-03-13T05:12:11.663Z
I've seen cases where people use a trusted 3rd party for this, as follows: I send the goods to the 3rd party, you send me a Gox code, I try redeeming it and if it's good I tell the 3rd party to send the goods to you.  You can think of redeemable codes as similar to Bitcoins themselves; whoever spends them first gets to spend them, and you're unlikely to be able to force anyone to reverse the transaction.  I don't know how MtGox would be able to deal with complaints that the seller didn't deliver.  They wouldn't know who to believe.
Chris Moore
CC BY-SA 3.0
2012-03-13T10:48:34.680Z
@Thilo: Mtgox aren't currently offering an escrow service.
Meni Rosenfeld
CC BY-SA 3.0
2012-03-13T04:44:01.683Z
2012-03-14T00:34:55.570Z
2012-03-14T00:34:55.570Z
Chris Moore
<p>At MtGox (and presumably some other sites), you can withdraw money in the form of a redeemable code. These codes are also accepted for deposit at some Bitcoin exchanges.</p>

<p>How does this work? Specifically, is there protection against double-spending? Can I know that the code I got is still valid, and has not been given to others as well?</p>

CC BY-SA 3.0
2013-03-11T09:32:15.057Z
Mt. Gox has announced that it will stop issuing MTG USD and MTG CAD redeemable codes beginning April 10, 2013: http://www.bitcoinmoney.com/post/44860726799
Stephen Gornick
CC BY-SA 3.0
2012-03-13T04:42:11.067Z
I'm not sure why you're specifically concerned about how you know the code is "still valid". Aren't you equally worried that it was never valid?
David Schwartz
CC BY-SA 3.0
2012-03-13T05:05:01.223Z
@David Schwartz: That would be a subset of my worries, yes. But I would not care particularly about the distinction if it was already spent, or not valid at all.
Thilo
<exchanges><mtgox><trading>
How do MtGox redeemable codes work?
Thilo
# How do MtGox redeemable codes work?

(Asked by: username_0 on 2012-03-13)

At MtGox (and presumably some other sites), you can withdraw money in the form of a redeemable code. These codes are also accepted for deposit at some Bitcoin exchanges.

How does this work? Specifically, is there protection against double-spending? Can I know that the code I got is still valid, and has not been given to others as well?

**Tags:** exchanges, mtgox, trading

> **Comments:**
> **username_2**: I'm not sure why you're specifically concerned about how you know the code is "still valid". Aren't you equally worried that it was never valid?  
> **username_0**: @username_2: That would be a subset of my worries, yes. But I would not care particularly about the distinction if it was already spent, or not valid at all.  
> **username_1**: Mt. Gox has announced that it will stop issuing MTG USD and MTG CAD redeemable codes beginning April 10, 2013: http://www.bitcoinmoney.com/post/44860726799  

---

## 2 answers

### Answer by username_3 on 2012-03-13. Score: 6 | Accepted answer

The code is effectively just a long random string. When you create a redeemable code, a random string is selected, entered into the database at the exchange and associated with a currency and an amount. That string is your redeemable code. The string is long enough to make it very unlikely that anyone would be able to guess it in a reasonable length of time.

The first person to attempt to redeem the code gets the amount credited to their account on the exchange, which causes the database entry on the exchange for that code to be marked as having been redeemed.

The way to tell whether a code is valid is to try redeeming it. If it works, you're the first to try it. If not, you're either not the first to try using it, or it was never a valid code to start with.

The exchange should prevent "double-spending" by making sure that the "look up whether code is spent; credit account; make code as spent" sequence is an atomic operation. We don't want two users both running through that same sequence at the same time, where both pass the "look up whether code is spent" check, then both accounts get credited, etc.

> **Comments:**
> **username_0**: So, if you accept a code as payment for anything, you should immediately redeem it before handing over the goods, right? (And if you pay with these codes, you have to accept that this is how it works. Or can you go back to MtGox to complain in case the seller did not deliver?)  
> **username_3**: I've seen cases where people use a trusted 3rd party for this, as follows: I send the goods to the 3rd party, you send me a Gox code, I try redeeming it and if it's good I tell the 3rd party to send the goods to you.  You can think of redeemable codes as similar to Bitcoins themselves; whoever spends them first gets to spend them, and you're unlikely to be able to force anyone to reverse the transaction.  I don't know how MtGox would be able to deal with complaints that the seller didn't deliver.  They wouldn't know who to believe.  
> **username_4**: @username_0: Mtgox aren't currently offering an escrow service.  

---

### Answer by username_1 on 2012-03-13. Score: 2

They are bearer instruments. Whomever redeems the code first gets the funds associated with the code.

They are meant to allow USDs or bitcoins to be traded from one account to another. Third party intermediaries, such as BitInstant or other exchanges themselves may accept them.

There are risks to these. <http://www.bitcoinmoney.com/post/18506669111>


---

