The correct way to do this (beware: extremely technical) is to:
Reserve a coin of your own for each auction (the "auction coin"). This shouldn't be too big (you will lose it until the auction is over), but try not to make a dedicated one just for the sake of the auction (use a small one you already have!).
Create an address for the auction's winning bid (...
Today the modern Bitcoin-qt client does not relay transactions with more than 200 outputs. But this is not protocol restriction. You can create transactions up to 100k size, which gives you 2500-3000 outputs (try to count the exact number yourself).
For example, tx https://blockchain.info/tx/0313e6552a5337de92c475c0dbbb0e351a1525b0f202beb9d4c75b3a5b114bf3 ...
I already have bitcoind running with a 4GB pruned database, and I'm hoping that will be enough.
It is! By running bitcoin-core, you can pull this data in an easy, trustless way.
I would recommend creating and displaying a new address to your patrons each time a new donation is received (so as to avoid address reuse, which is detrimental to your privacy, and ...
I think the answer is that a credit card company is vouching for you when you make a purchase. The seller does not know you, but they know the credit card company, and they know the credit card will give them their funds. The credit card company in turn knows you, and has deemed you credit-worthy. This is why it's called "credit" ... from the latin credere: "...
You can use one of the merchant solution providers, such as:
coinbase, BitPay, for generating addresses per payment (as paypal does) redirects / serve the client with payment request at 3rd party .
or, you can handle payment process inhouse by generating address for each payment and saving the pk / HD wallet will take much longer and develop time to do.
It is the same link protocol as http: or ftp: or mailto: or tel: or magnet:, although very less recognised. Official Bitcoin github MediaWiki Link
Localbitcoins.com offer its registered users to associate itself(site) to bitcoin: protocol, when user is signed in, and thus he clicks a link with bitcoin protocol, localbitcoins.com will automatically fill in ...
Coin only. No colors, no assets.
Yes, the bitcoin baselayer facilitates payments. You will find however, that Bitcoin on-chain payments are not cost efficient for micropayments as fees would eat large portions of the received funds.
Receive coin using P2PK and / or P2PKH only?
There is no address standard for P2PK, so receiving to P2PK is not trivial at ...
There is a testnet for this sort of thing so you don't lose any money playing around.
See https://en.bitcoin.it/wiki/Testnet and
After that you'll have to decide what approach you want to take. Are you integrating bitcoin into a larger project, or do you want to play with the internals?...
If you really want to create a custom bitcoin application, forking from an existing app should reduce reinventing the wheel and can act as a learning resource. For example, here are two open-source Android bitcoin apps whose source you could grab:
The simplest solution that ...
You can use bitcoinjs-lib, a nodejs package which easily generates addresses. Apart from that it manages transaction signing and other useful stuff too which would help in development. You can check out their site (where there is a list of organisations, including blockchain.info, who use their package)
There is a similar question from 6 years ago with different options and answers Is there a remote, trustless bitcoin API that doesn't require anything (blockchain/SPV headers) to be stored locally?
Otherwise I suppose the options havent changed much, unless maybe the pruning mod which allow you to run a lightweight bitcoin node (550mb instead of 250giga+...
Although certain coins have a few available API providers (such as BitGo for Bitcoin), any sane and security conscious company should elect to run their own nodes for each supported currency, manage their own keys, and have their own wrapper to handle deposits and withdrawals by interacting with the nodes.
This is especially relevant for coins like Monero ...
I understand what GUI wallet softwares are and why those are important for end users. But in a backend application, if I understand correctly, a wallet is simply a seed that can generate some private/public keys pairs in a deterministic way. Is that correct?
Correct, but you miss the most important feature of a wallet...crafting transaction / bitcoin script!...
To check payment:
you can use blockchain api to do so:
confirmations can be any but minimum 6 is recommended
to accept bitcoin, I suggest u host a bitcoin core and use something like Easy Bitcoin PHP Library to do so
You can install your own wallet and use it ie. with RPC
Probably you will need some payment processor. There are several, just google for them and their developers guides.
Many shop solutions like ie. magento have several extensions using different technology, you can look up how they do it and build based on their implementation.
Here is one of many ...
run a bitcoin client with json-rpc enabled. you can then communicate from you backend with this bitcoin rpc interface. See
I'm not sure about Nbitcoin node's API, but I could help you on a blockchain explorer API.
I would recommend Blockr.io, they are fast and trustable. Use the following code to check for confirmed transactions: (output is in json)
cant think of a direct way.
merchant CC service
have them direct deposit to https://www.bitwage.com/
i doubt the connection will work since most merchant accounts will want to be able to pull funds from a bank in the event of a charge back. but you merchant acct may decide to hold on to funds to make up for the loss.
might be better to get your customer ...
I would separate out the unit tests and the integration tests.
If the function needs to go out to the internet or wait for the blockchain, I make them integration tests which I can run less frequently like every five minutes. The functions that are fast I like to run every 10 seconds.
Linking the errors to sensible time stamped logs like pm2 and key-...
The easiest way would be to use the API of a block explorer. Several provide such an API and some have wrapper libraries for C#.
For example the blockchain.info blockchain explorer has such an API and has a C# wrapper as well. Consult their Blockchain Data API which explains how to get the balance (among other data) from an address. More specifically, you ...
Check out Hierarchical Deterministic Wallets (BIP32) and eventually this blog-post to get a better understanding of the implications it brings.
There are many wallets today that have BIP32 implemented. Bitcoin Core is NOT one of them and should probably not be used for the wallet feature.
In the scenario you described, your webserver will provide new ...
You can. If you make a Bitcoin URI with the r parameter, it will interpret that as a url to fetch the PaymentRequest from.
Documentation on this feature is frustratingly sparse, so I'm having trouble figuring out how to implement all of the details, though.