Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/brunobar79/eth-commerce
Javascript library to accept ethereum payments on any website
https://github.com/brunobar79/eth-commerce
blockchain crypto cryptocurrency dapp ethereum javascript metamask payments web3
Last synced: 6 days ago
JSON representation
Javascript library to accept ethereum payments on any website
- Host: GitHub
- URL: https://github.com/brunobar79/eth-commerce
- Owner: brunobar79
- License: mit
- Created: 2018-02-17T01:24:00.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2022-12-04T23:26:43.000Z (almost 2 years ago)
- Last Synced: 2024-11-02T04:51:53.639Z (13 days ago)
- Topics: blockchain, crypto, cryptocurrency, dapp, ethereum, javascript, metamask, payments, web3
- Language: CSS
- Homepage: https://www.eth-commerce.com
- Size: 3.61 MB
- Stars: 22
- Watchers: 4
- Forks: 7
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
ETHcommerce
Peer to Peer (P2P) transactions between you and your customers.
This means that you pay ZERO FEES, all this powered by a lightweight (~30kb) and easy to integrate Javascript libraryYou can find usage examples [here](http://www.eth-commerce.com/example/)
[Available on NPM](https://www.npmjs.com/package/eth-commerce)
## Installation
```
npm install eth-commerce --save
```## Usage
```js
const ethCommerce = new EthCommerce();
ethCommerce.render(
{
targetElement: 'pay-button',
type: 'PAY',
amount: 10,
currency: 'USD',
address: '0x11A7Ca870700f284e4647E55DeD9040f0F86D4D4'
}, (e)=>{
console.log('error callback', e);
},(tx)=>{
console.log('success callback', tx);
}
);
```## Methods
### render(options, errorCallback, successCallback)
options, errorCallback and successCallback are required
Renders a button based on the options and executes the corresponding callbacks after placing and confirm transaction
### getEtherPriceIn(currency)
Returns a promise with the current ethereum value in the corresponding currency.
Example values for currency are (USD, EUR, CNY, JPY, etc.)### sendTransaction(account, address, amount)
Returns a promise after sending a transaction from the available account in web3 (account) to address with the corresponding amount
### waitForConfirmation(tx, minConfirmations, interval)
Keeps polling the current block every ${interval} seconds until receiving ${minConfirmations}
Then executes the success callback## TODO LIST:
- [ ] Add support for React Native
- [ ] Add tests
- [ ] Store the current state in localStorage to be able to restore it in case of page reload