title | language_tabs | toc_footers | includes | search | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
API Reference |
|
|
|
true |
Welcome to the ETH Process API! This documentation covers everything you need to know about accepting ethereum for your application. You'll be able to create orders, retrieve order information, and get your account history.
ETH Process has a pretty basic transaction system.
- Application creates new order for customer
- Customer pays QR code Ethereum address
- Successful alert for customer letting them know they paid. (expires in 15 minutes)
- Application receives a POST to callback URL of order information and transaction ID.
- ETH Process waits for 12 confirmations then sends entire wallet balance to your Ethereum address.
- Another POST request to your application's callback URL.
We have language bindings in cURL, Golang, and in jQuery. You can view code examples in the dark area to the right, and you can switch the programming language of the examples with the tabs in the top right.
ETH Process is currently in the process of making the transaction callback process a seamless and transparent process. The plan is to have the customer pay directly to ETH Process Contract with data to include your Ethereum address, order ID and callback information. Once you've collected your funds into your account inside of the contract, you'll be able to withdraw directly from contract, thus reducing the transaction fee each time a payment is transmitted.
https://api.ethereumpos.com
https://testapi.ethereumpos.com
Currently ETH Process does not require Authentication for amount under $5.00 USD.
ETH Process uses API keys to allow access to the API. You can register a new ETH Process API key at our developer portal.
ETH Process expects for the API key to be included in all requests over $5.00 USD. API requests to the server in a header that looks like the following:
Authorization: MYKEYHERE
MYKEYHERE
with your personal API key.
curl -X POST -H "Content-Type: application/json" -d '{
"amount": "13.54",
"address": "0x3f05dc64b34f5063461f81d88972a3f542f57331",
"callback": "http://domain.com"
}' "https://api.ethereumpos.com/order"
NOT complete
The above command returns JSON structured like this:
{
"id": 716101402,
"address": "0x1679548078de9a5a9129d75719b5e442abd5b2e5",
"expected_amount": "0.4173",
"currency": "usd",
"currency_amount": "",
"payment_url": "https://ethereumpos.com/test_payment/716101402",
"status": "pending",
"eth_price": "69.98",
"qr_code": "http://chart.apis.google.com/chart?cht=qr&chs=500x500&chl=ethereum%3A0x1679548078de9a5a9129d75719b5e442abd5b2e5&chld=H|0",
"transaction_id": "",
"sent_transaction": "",
"created_at": "0001-01-01T00:00:00Z",
"return_to": "0x888a5fEFAA912778FdBf8eC222F299e96057c43b",
"paid": false,
"expired": false
}
This endpoint creates NEW ORDERS for your customers to send money to.
POST https://api.ethereumpos.com/order
Parameter | Required | Description |
---|---|---|
amount | true | If set to true, the result will also include cats. |
address | true | If set to true, the result will also include cats. |
callback | true | If set to true, the result will also include cats. |
item_title | false | If set to true, the result will also include cats. |
item_description | false | If set to true, the result will also include cats. |
item_image | false | If set to true, the result will also include cats. |
Parameter | Meaning |
---|---|
400 | Bad Request -- Your request sucks |
401 | Unauthorized -- Your API key is wrong |
403 | Forbidden -- The kitten requested is hidden for administrators only |
404 | Not Found -- The specified kitten could not be found |
405 | Method Not Allowed -- You tried to access a kitten with an invalid method |
406 | Not Acceptable -- You requested a format that isn't json |
410 | Gone -- The kitten requested has been removed from our servers |
418 | I'm a teapot |
429 | Too Many Requests -- You're requesting too many kittens! Slow down! |
500 | Internal Server Error -- We had a problem with our server. Try again later. |
503 | Service Unavailable -- We're temporarily offline for maintenance. Please try again later. |
curl -X GET "https://api.ethereumpos.com/order/<ID>"
yoyoyooyoyoyoyo
The above command returns JSON structured like this:
{
"id": 716101402,
"address": "0x1679548078de9a5a9129d75719b5e442abd5b2e5",
"expected_amount": "0.4173",
"currency": "usd",
"currency_amount": "29.20",
"payment_url": "https://ethereumpos.com/test_payment/716101402",
"status": "complete",
"eth_price": "69.98",
"qr_code": "http://chart.apis.google.com/chart?cht=qr&chs=500x500&chl=ethereum%3A0x1679548078de9a5a9129d75719b5e442abd5b2e5&chld=H|0",
"transaction_id": "0x8586aebc2ae317388955f4cbf073aa736e8fe440aca7eec90f3bfe303e59abd6",
"sent_transaction": "0x4746935c2b001f45d8c907e2bb425106411e03d8afc8940b47298a099509f48c",
"created_at": "0001-01-01T00:00:00Z",
"return_to": "0x888a5fEFAA912778FdBf8eC222F299e96057c43b",
"paid": true,
"expired": false
}
This endpoint retrieves order information
GET https://api.ethereumpos.com/order/<ID>
curl -X GET "https://api.ethereumpos.com/history"
yoyoyooyoyoyoyo
The above command returns JSON structured like this:
{
"orders": [
{
"id": 716101419,
"address": "0x2524e3c29bd8ed8a16344ae0da27898dbef08511",
"expected_amount": "0.2281",
"currency": "usd",
"currency_amount": "16.00",
"payment_url": "",
"status": "complete",
"eth_price": "70.15",
"qr_code": "",
"transaction_id": "0x8403bcf744da5862eef5d3dd2fef951b06a582938e4848940bf0e87889d09012",
"sent_transaction": "",
"created_at": "0001-01-01T00:00:00Z",
"return_to": "0x888a5fEFAA912778FdBf8eC222F299e96057c43b",
"paid": true,
"expired": false
}
]
}
This endpoint retrieves order information
GET https://api.ethereumpos.com/history
curl -X GET "https://api.ethereumpos.com/history/<METHOD>"
yoyoyooyoyoyoyo
The above command returns JSON structured like this:
{
"orders": [
{
"id": 716101419,
"address": "0x2524e3c29bd8ed8a16344ae0da27898dbef08511",
"expected_amount": "0.2281",
"currency": "usd",
"currency_amount": "16.00",
"payment_url": "",
"status": "complete",
"eth_price": "70.15",
"qr_code": "",
"transaction_id": "0x8403bcf744da5862eef5d3dd2fef951b06a582938e4848940bf0e87889d09012",
"sent_transaction": "",
"created_at": "0001-01-01T00:00:00Z",
"return_to": "0x888a5fEFAA912778FdBf8eC222F299e96057c43b",
"paid": true,
"expired": false
}
]
}
This endpoint retrieves order information
GET https://api.ethereumpos.com/history/<METHOD>
Parameter | Value |
---|---|
METHOD | pending,success,complete,expired,refunded |
Method Value | Description |
---|---|
pending | Customer has not sent this transaction yet. |
success | Customer has sent the correct amount and has at least 1 confirmation |
complete | ETH Process sent the entire wallet balance to the creators Ethereum address |
expired | Customer didn't send the transaction within 15 minutes. This can also happen if customer sent a low transaction fee. |
refunded | Merchant has successfully refunded the customer |
curl -X GET "https://api.ethereumpos.com/status/recurring/<METHOD>"
yoyoyooyoyoyoyo
The above command returns JSON structured like this:
{
"id": 14,
"address": "0x5be4c1b30534a6a30bf9f68ad6d3c0dc2a7fe292",
"confirmations": 0,
"currency": "usd",
"currency_amount": "3.30",
"expected_amount": "0.0681",
"payment_url": "https://ethereumpos.com/payment/14",
"status": "paid",
"paid": true,
"eth_price": "48.45",
"qr_code": "http://chart.apis.google.com/chart?cht=qr&chs=500x500&chl=ethereum%3A0x5be4c1b30534a6a30bf9f68ad6d3c0dc2a7fe292&chld=H|0",
"transaction_id": "0",
"item_title": "New Item",
"item_description": "Description",
"item_image": "https://ethereumpos.com/images/ethereum.svg",
"created_at": "0001-01-01T00:00:00Z"
}
This endpoint retrieves orders attached to recurring billing
GET https://api.ethereumpos.com/status/recurring/<METHOD>
Parameter | Value |
---|---|
METHOD | expired,active,pending,upcoming |
Method Value | Description |
---|---|
expired | Customer did not continue with the recurring payment, more than 10 days late. |
active | Customer has paid in full till the end timestamp. |
pending | Customer has not paid for the payment yet and is less then 10 days late. |
upcoming | Customers recurring payments upcoming in next 10 days |
curl -X GET "https://api.ethereumpos.com/user"
yoyoyooyoyoyoyo
The above command returns JSON structured like this:
{
"id": 14,
"address": "0x5be4c1b30534a6a30bf9f68ad6d3c0dc2a7fe292",
"confirmations": 0,
"currency": "usd",
"currency_amount": "3.30",
"expected_amount": "0.0681",
"payment_url": "https://ethereumpos.com/payment/14",
"status": "paid",
"paid": true,
"eth_price": "48.45",
"qr_code": "http://chart.apis.google.com/chart?cht=qr&chs=500x500&chl=ethereum%3A0x5be4c1b30534a6a30bf9f68ad6d3c0dc2a7fe292&chld=H|0",
"transaction_id": "0",
"item_title": "New Item",
"item_description": "Description",
"item_image": "https://ethereumpos.com/images/ethereum.svg",
"created_at": "0001-01-01T00:00:00Z"
}
This endpoint retrieves information about the merchant/developer account.
GET https://api.ethereumpos.com/user
Method Value | Description |
---|---|
pending | Customer has not sent this transaction yet. |
success | Customer has sent the correct amount and has at least 1 confirmation |
complete | ETH Process sent the entire wallet balance to the creators Ethereum address |
expired | Customer didn't send the transaction within 15 minutes. This can also happen if customer sent a low transaction fee. |
curl -X GET "https://api.ethereumpos.com/user/history"
yoyoyooyoyoyoyo
The above command returns JSON structured like this:
{
"id": 14,
"address": "0x5be4c1b30534a6a30bf9f68ad6d3c0dc2a7fe292",
"confirmations": 0,
"currency": "usd",
"currency_amount": "3.30",
"expected_amount": "0.0681",
"payment_url": "https://ethereumpos.com/payment/14",
"status": "paid",
"paid": true,
"eth_price": "48.45",
"qr_code": "http://chart.apis.google.com/chart?cht=qr&chs=500x500&chl=ethereum%3A0x5be4c1b30534a6a30bf9f68ad6d3c0dc2a7fe292&chld=H|0",
"transaction_id": "0",
"item_title": "New Item",
"item_description": "Description",
"item_image": "https://ethereumpos.com/images/ethereum.svg",
"created_at": "0001-01-01T00:00:00Z"
}
This endpoint retrieves information about the merchant/developer total income, outgoing, total transactions, etc.
GET https://api.ethereumpos.com/user/history
Method Value | Description |
---|---|
pending | Customer has not sent this transaction yet. |
success | Customer has sent the correct amount and has at least 1 confirmation |
complete | ETH Process sent the entire wallet balance to the creators Ethereum address |
expired | Customer didn't send the transaction within 15 minutes. This can also happen if customer sent a low transaction fee. |
ETH Processing has simple the understand billing
Plan | Monthly Price | Daily Transactions | Max Amount (USD) | Recurring Payments |
---|---|---|---|---|
Free | $0.00 | 10 | $10.00 | no |
Basic | $5.00 | 25 | $30.00 | no |
Seller | $12.00 | 50 | $100.00 | yes |
Premium | $20.00 | 150 | $500.00 | yes |
Exclusive | contact us | 500+ | $1000.00 | yes |
Plugin | Monthly Price | Max Amount |
---|---|---|
TXT Messaging 150 | $5.00 | 150 |
TXT Messaging 500 | $10.00 | 500 |
Recurring Payments | $10.00 | 500 |
This ETH Process plugin feature is great for applications that would like to text the user or developer of recent payment activity.
Give your customers the ability to pay monthly with a dedicated QR code.
ETH Process provides free transaction forwarding with amounts under $10.00.
When the customer first submits the transaction, they will be forced to pay for the transaction fee which is around $0.02 USD. Once ETH Process has at least 12 confirmations on the customers transaction, the entire balance of the wallet will be sent to your Ethereum address that you inserted on the /new request.
For example, a customer sends $10.00. Most likely, the customer wallet will send around $10.02 to the ETH Process wallet. The ETH Process wallet will only receive $10.00 because of the $0.02 transaction fee. Once theres 12+ confirmation, ETH Process will send the entire wallet balance to your Ethereum address. You'll receive around $9.98, since the $0.02 transaction fee has been included.
ETH Process does not take any Ethereum or gas during this transaction process.ETH Process is currently in the process of making the transaction callback process a seamless and transparent process. The plan is to have the customer pay directly to ETH Process Contract with data to include your Ethereum address, order ID and callback information. Once you've collected your funds into your account inside of the contract, you'll be able to withdraw directly from contract, thus reducing the transaction fee each time a payment is transmitted.
- Customer pays Etheruem address QR code
- ETH Process sends entire balance with order data to ETH Process contract.
- Merchant/Developer can hold funds inside of the contract and withdraw when requested. (sending a call to contract from requesting address)