I would be able to write a payment gateway (web service or standalone app) that used an Exchange's API to sell the NAUT for USD. However, the exchange would need an API and a NAUT/USD market.
Also, it would need to be FAST. To avoid slippage the NAUT would need to confirm FAST and the trade would need to happen quickly.
It would also be up to the merchant to set up the exchange account, and request USD withdrawals from the exchange. This assumes they want to convert the USD instantly. If course, if the price of NAUT is stable, there would really be no hurry to do this.
In what language would you write this?
You could do the long workaround method if you wanted (kind of the only option right now)
Use an exchange that accepts USD/BTC but also exchanges BTC/NAUT.
In which case people who wish to buy NAUT for FIAT can basically say, paypal in, it then buys whatever BTC value that is, then buys whatever NAUT value that is
USD -> BTC -> NAUT
Though ultimately I think it would be nicer to not have to do that and pretty much allow this
USD -> NAUT
But you'd need a large pool of NAUT to do that in the first place, ultimately having a wallet in which your system houses a certain amount of NAUT, which when purchased for USD can transfer to a customer's wallet.
The wallets do have an RPC-JSON capability so it's a probably capability.
I have another project with somewhat different ideas but the wallet handling part is integral, may need help on it since I have other projects prioritized right now.
I would probably do it in C# or javascript. Two languages I know very well.
You really wouldn't need a wallet client, you need an address generator (or even use pre-genned address pool) and you would just need to watch the block chain for the address.
As far as having a cushion account, it would help, but isn't 100% necessary. However, the cushion would eliminate slippage. Also, blocks would HAVE to be 60 seconds or less. If the block chain stalls like it has before, the slippage would be large. Of course, if NAUT really was stable, as it is advertised, then slippage isn't as much of an issue.
The thing with the double exchange is trading fees. Sure, it is possible to go from NAUT -> BTC -> USD, but you've gone from .2% fee to .4% fee. Still probably much less than a credit card though.
Anyway, this could be a stop gap, something a vendor could run locally on a server or PC with a private wallet. But, it could be the first step to a full blown payout service.