Is there an API that exchanges USD to Bitcoin? I'm looking for an API that literally exchanges USD to Bitcoin, not only value.

I've been looking all over for an exchange that accepts USD in it's API.

I've found tons that will do Crypto => Crypto but none that would do USD => Crypto.

Can someone share a service that does that? Or is there another way to exchange USD to Crypto programmatically?
This looks like a service that does what you're asking for, if I'm understanding your ask and this page correctly: https://developers.coinbase.com/docs/wallet/guides/send-receive

This would require you to already have USD on deposit in your Coinbase account.  The page says they are working on a feature to automatically withdraw USD from a linked bank account (I wouldn't hold my breath for this).

Since you explicitly asked about doing this via an API, I looked into this aspect a little bit, too:
https://developers.coinbase.com/api/v2#transactions

In the example json on the right, I'm seeing that it has separate "amount" and "native amount" sections specifying BTC and USD respectively, and there's an "instant_exchange" field.  This leads me to believe it can do exactly what you're asking for, provided you have USD on deposit and instantly available:


Hold USD, not BTC
Create a new transaction to send BTC, via API
USD is converted to BTC "just-in-time" at time of transaction


I didn't look into converting a USD amount to BTC based on the current price via Coinbase's API, but of course their API will provide for that (via a previous request).  

blockchain.info also offers a free API to do this, although I'm sure the precise exchange rate on Coinbase will vary slightly from what blockchain.info reports: https://blockchain.info/tobtc?currency=USD&amp;value=500

Hope that helps.. although I imagine you've probably answered this yourself since posting this question.