Poof API Documentation s Poof API - Free Digital Payments API for Bitcoin, Dogecoin, Apple Pay, Paypal, and 300+ payment methods.

Poof Payments API

Welcome to Poof API, a fast, lightweight, and simple programmable API for processing payments across all popular payment systems and gateways. With Poof's API, you will be able to create your own custom payment flows, accept payments, automate payments, or create your own payment service.

Popular payment options on Poof include Bitcoin, Litecoin, Dogecoin, Paypal, Cash App, Apple Pay, Stripe, Credit Cards, Coinbase, Skrill, and others. Others supported at checkout include Bitcoin Cash, Ethereum, USD Coin, DAI, Alipay, Klarna, Paysafecard, Rapid Transfer, Neteller, Giropay, iDeal, Mastercard, Visa, and 300+ other payment methods.

To get started, sign in to to Poof to retrieve your API key and add the key to the Authorization header when making a request.

Python, Java, Ruby, C++, Cryptocurrency libraries are coming soon.

Get Started: Sign in to Poof to get your API Key.

Checkout

Poof offers hosted checkout and white-labeled checkout to allow you to collect customer information and payments from customers.

Checkout is very simple to set-up and it takes as little as five minutes to start accepting payments on your website. Checkout can be initiated through creating a custom URL to redirect your customers or through a payment button, which loads the checkout elements directly on your website.

POST /api/v1/checkout

Creating a Checkout Link

You can create checkout sessions for users and collect payments in just a few minutes. No authentication is required when calling this endpoint. Instant Checkouts do not require an API key and can be done through adding a username in your POST request.

This endpoint is the best way to customize the way how you display checkout to customers.

username string

Your username on Poof

amount string

The amount charged in your set currency.

fields array

Optional forms you want to display, an example is: ["Email", "Name"]

redirect string

Redirect page in the case that the checkout is cancelled.

Returns

Poof returns to you a checkout link after receiving a POST. You can redirect customers to the checkout link or host it with a whitelabel in an Iframe on your website.

String Text

"https://www.poof.io/checkout/session/eyJ1c2VybmF"


Python Example:
import requests
payload = { username: "Poof", amount: "10", fields: ["Email", "Amount"] redirect: "https://www.poof.io/" }
r = requests.post ("https://www.poof.io/api/v1/checkout",json=payload)
print(r.text)

//"https://www.poof.io/checkout/session/eyJ1c2VybmF"
POST /api/v1/checkout

Payment Button

Embedding a payment button on your website is a quick and easy way to start accepting cryptocurrency and credit card payments payments, whether it’s to accept donations for an open source project or to sell products for your company.

Payment buttons use the Creating a Checkout endpoint and wraps it in a few lines of HTML and Javascript Code.

You can see a demonstration of the payment button here

Add the iframe element near the top of your file to cover the page and add the desired button in the section you want to place it at.

<button class="poof" id="poof" onclick="request()"> </button>
<div id="checkoutFrame" class="checkoutFrame"></div>

Next, add the script elements in your file. Change the amount to the desired amount and change your username to your Poof account. If the checkout is not loading, change the position of the element to the top of your file so they get loaded before the button.

<script src="https://www.poof.io/static/api/checkout.js"></script>
<script src="https://www.poof.io/static/api/sdk.js"></script>
<script> const payload = { username: "Poof", amount: "10", fields: ["Email", "Name"], redirect: "https://www.poof.io/" } </script>

Your button will create a checkout page on your website where you can customize amounts and receive payments.

For payment options that do not allow page embeds such as Skrill, Coinbase Commerce, and Apple Pay please use a page redirect with the "Creating a Checkout Link" endpoint instead of hosting the payment page on your website.

Cryptocurrency API

Poof offers a Bitcoin API, Litecoin API, and a Dogecoin API, with more cryptocurrency endpoints being added soon. Each crypto is represented by its abbreviation such as doge for dogecoin.

Create your own payment processor like Poof with the APIs, create blockchain automations, or even create a cryptocurrency exchange. Poof provides all the blockchain libraries you need to create your own crypto service.

POST /api/v1/create_invoice
POST /api/v1/create_charge
POST /api/v1/balance

Create Cryptocurrency Invoice

Create a cryptocurrency invoice in the respective cryptocurrency you provide Poof. Redirect customers to the page link at checkout or host the invoice an iFrame on your website.

amount String

Total amount of transaction (Example "15")

crypto String

Crypto being invoice (Example: "BTC", "LTC", "DOGE")

currency String

Currency type of invoice (Example: "BTC", "CNY", "LTC", "USD", "EUR")

redirect String

Customer redirect after payment is complete (Example: "https://www.poof.io")

Returns

amount String

15

crypto String

LTC

currency String

USD

payment_link String

https://crypto.poof.io/i/WMuSXD5y5T4k3TdZD2oPuz

redirect String

https://www.poof.io


POST /api/v1/create_invoice

Track Cryptocurrency Payment

Notify Poof to track specific payments and amounts to the wallet you link to Poof. Poof will send you a webhook notification to your server upon payment receipt. This endpoint can be used to create your own payment service.

amount String

Total amount of transaction

currency String

Base currency of invoice charge(Example: "BTC", "CNY", "LTC", "USD", "EUR")

crypto String

Crypto being invoice (Example: "BTC", "LTC", "DOGE")

Returns

address String

bc1qa4a78mwrpealxjeuwxwwlm85h9rhhn48gwxrwq

amount String

15

crypto String

Customer redirect after payment is complete (Example: "https://www.poof.io")

crypto String

Customer redirect after payment is complete (Example: "https://www.poof.io")

currency String

CNY

due String

0.00004899

payment_link String

bitcoin:bc1qa4a78mwrpealxjeuwxwwlm85h9rhhn48gwxrwq?amount=0.00004899

rate String

306210.154


POST /api/v1/create_charge

Fetch Wallet Balance

This endpoint fetches your current cryptocurrency balance for Poof Wallets, available for payouts.

crypto String

Crypto ticker symbol of wallet (Example: "BTC", "LTC", "DOGE")

Returns

balance String

"0.03961524"

crypto String

LTC


POST /api/v1/balance

Exchange Rates

Cryptocurrency market data and exchange rates API for fiat. Programmatically access current prices, marketss, and exchange rate data from exchanges such as Coinbase or Binance.

POST /api/v1/fetch_rates
POST /api/v1/fetch_crypto_rates
POST /api/v1/convert_currency

Exchange Rates Fiat

You can create checkout sessions for users and collect payments in just a few minutes. No authentication is required when calling this endpoint. Redirect your customers to a hosted Poof checkout page or display the checkout on your domain with an Iframe. A POST request to the route will return a checkout link.

base string

Base currency (example: "USD")

Returns

base String

"USD"

date String

2021-09-17

rate Dictionary

{'AED': 3.673158, 'AFN': 85.208418, 'ALL': 103.145502, 'AMD': 492.734351...}


POST /api/v1/fetch_rates

Exchange Rates Crypto

You can create checkout sessions for users and collect payments in just a few minutes. No authentication is required when calling this endpoint. Redirect your customers to a hosted Poof checkout page or display the checkout on your domain with an Iframe. A POST request to the route will return a checkout link.

base string

Base currency (example: "USD")

Returns

base String

"USD"

date String

2021-09-17

rate Dictionary

{'$AAPL': 0.256854, '$ADS': 0.296224, '$ANRX': 0.069925...}


POST /api/v1/fetch_crypto_rates

Convert Currency

You can create checkout sessions for users and collect payments in just a few minutes. No authentication is required when calling this endpoint. Redirect your customers to a hosted Poof checkout page or display the checkout on your domain with an Iframe. A POST request to the route will return a checkout link.

base String

Currency of base currency (Example: "USD")

target String

Currency of converted object (Example: "BTC")

amount Decimal

Amount of the base currency (Example: "50")

Returns

amount String

50

base String

USD

rate String

0.00002

target String

BTC

total String

0.001


POST /api/v1/convert_currency

Notifications

Subscribe to webhook notifications by adding an endpoint to the Webhook subscriptions section on the developers page within Poof. Click add an endpoint to add the URL where you’d like to receive webhooks.

You’ll be prompted to enter the endpoint URL (https only) where you’d like to receive webhooks.

Create a Webhook

You can subscribe to recurring payment notifications through Poof webhooks. Create a webhook programatically or through the Poof Dashboard.

url string

"https://www.poof.io/example_route"

Returns

status String

"webhook created" or "failure to create webhook, you are over the limit"

url String

"https://www.poof.io/example_route"


POST /api/v1/create_webhook

Webhook Response

This section provides an example JSON response of a Webhook notification Poof sends to your server. Webhooks are the best way to add automations to payments and receive notifications.

Payload

amount String

Total amount of payment received (Example: 105.35)


payment_method

Type of payment received


Possible payment values
btc
ltc
doge
skrill
cashapp
paypal
coinbase
cashapp
credit card

credit card is the synonymous for Stripe and Apple Paypayments

currency String

Local currency (ex. USD)

payment_id String

Payment ID representing the transaction

name String

Name of the customer if provided(ex. Joe Bob)

email String

Email of the customer if provided(ex. [email protected])

items String

Items if provided at checkout (Ex. "Skincare Lotion")

quantities String

Quantities if provided at checkout (Ex. "1")

date String

Date of transaction UST (Ex. "Aug 12, 22:51 PM 2021")

note String

Optional field if created at checkout (Ex. "Discord Username")


Example Webhook Response

     {"amount": "15", "payment_method":"btc", 
     currency: "USD", "payment_id": "1ktew9pzaw", 
     "name": "Joe Swan", "email: "[email protected]", 
     "items": "", "quantities": "", 
     "date": "Aug 13, 22:51 PM 2021", "note": ""}


                 

Transactions

Any use of an a payment from your Poof account, such as a completed purchase, is represented by a Transaction object.

You can fetch any payments and transactions with this endpoint.

POST /api/v1/transaction
POST /api/v1/fetch_transactions

Fetch Transaction Data

You can this endpoint to fetch the data from any given transaction in your Poof account. You can see payment IDs in your dashboard, saving transaction IDs in your database from webhooks, or by querying the endpoint for your transaction history.

transaction string

The transaction ID of the payment

Returns

amount String

"25.00"

currency String

"USD

date String

"Aug 23, 02:54 AM 2021"

email String

"[email protected]"

items String

"Coffee Cup" or None

name String

"John Doe"

note String

"Custom Form Example"

payment_id String

"85945902813"

payment_method String

"skrill"

quantities String

"5" - Optional Field for Purchased Item Amount


POST /api/v1/transaction

Fetch Transaction List

You can this endpoint to fetch all data from your transactions in your Poof account.

transaction string

Your username on Poof

Returns

base String

"USD"

date String

2021-09-17

rate Dictionary

{'AED': 3.673158, 'AFN': 85.208418, 'ALL': 103.145502, 'AMD': 492.734351...}


POST /api/v1/fetch_transactions