# Poof

Empowering millions of digital businesses & creators with payments from crypto to fiat

- **Category:** payment processing
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 11
- **Triggers:** 0
- **Slug:** `POOF`
- **Version:** 00000000_00

## Tools

### Check Balance

**Slug:** `POOF_CHECK_BALANCE`

Tool to check the balance of a cryptocurrency wallet. Use when you need to retrieve the current balance for a specified blockchain wallet address.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `crypto` | string | Yes | The cryptocurrency type to check balance for (e.g., 'bitcoin', 'ethereum', 'litecoin', 'dogecoin'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Checkout Session

**Slug:** `POOF_CREATE_CHECKOUT`

Tool to create a checkout session for fiat payments. Use when you need to generate a payment link for customers to complete their purchase through the Poof payment infrastructure.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `amount` | string | Yes | Payment amount to be charged |
| `fields` | array | No | Form fields to collect from customer (e.g., Email, Name) |
| `default` | object | No | Pre-filled customer data for checkout form. |
| `metadata` | object | No | Custom metadata (e.g., user information) |
| `redirect` | string | No | Alternative redirect destination |
| `username` | string | Yes | Merchant/seller identifier for the checkout |
| `product_id` | string | No | Associated product identifier |
| `success_url` | string | No | Redirect URL after successful payment |
| `disable_payments` | array | No | Payment methods to disable (e.g., paypal, bitcoin) |
| `product_quantity` | string | No | Quantity of products |
| `instant_payment_notification` | string | No | Webhook URL for payment notifications |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Deposit Address

**Slug:** `POOF_CREATE_DEPOSIT_ADDRESS`

Tool to create a deposit address for receiving cryptocurrency payments. Generates a unique blockchain address to accept incoming crypto deposits. Use when you need to create a payment address for a customer to send cryptocurrency to.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `amount` | string | Yes | The deposit amount in the specified currency (e.g., '15', '100.50') |
| `crypto` | string | Yes | The cryptocurrency type to receive. Supported values include: 'ethereum', 'bitcoin', 'polygon', 'solana', 'bnb' |
| `currency` | string | Yes | The base currency for the amount (e.g., 'USD', 'EUR', 'CNY') |
| `metadata` | object | No | Optional metadata dictionary for additional contextual data to attach to this charge |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Fiat Charge

**Slug:** `POOF_CREATE_FIAT_CHARGE`

Tool to create a fiat currency charge through Poof's payment gateway integration. Use when initiating a one-time fiat payment collection via PayPal, Stripe, Square, or other supported gateways.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `amount` | string | Yes | The charge amount as a string (e.g., '15' for $15.00). Must be a valid numeric string. |
| `payment` | string | Yes | Payment gateway to use. Must be lowercase (e.g., 'paypal', 'stripe', 'square'). |
| `currency` | string | Yes | Currency code for the charge. Must be lowercase (e.g., 'usd', 'eur', 'gbp'). |
| `success_url` | string | Yes | URL to redirect the user to after successful payment completion. |
| `redirect_url` | string | Yes | URL to redirect the user to after canceling or closing the payment page. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Fiat Invoice

**Slug:** `POOF_CREATE_FIAT_INVOICE`

Create a fiat currency invoice for payment collection. Generates an invoice for collecting payments in traditional currencies via payment processors like PayPal, Stripe, Square, Cash App, etc. Returns a checkout URL for customer payment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `amount` | string | Yes | Payment amount as a string (e.g., '15.00', '100'). Specify the amount in the currency specified in the currency field. |
| `payment` | string | Yes | Payment processor to use for collecting payment. Documented options: 'paypal', 'cashapp', 'skrill', 'coinbase'. Additional payment methods available at checkout include credit cards, Apple Pay, Google Pay, Venmo, Alipay, WeChat Pay, and Klarna. Note: Some payment methods like Venmo, Cash App, and Coinbase require additional setup in the Poof dashboard. |
| `currency` | string | Yes | Three-letter ISO currency code for the invoice (e.g., 'usd', 'eur', 'cny'). Specify the currency in which the payment will be collected. |
| `success_url` | string | Yes | URL to redirect the customer to after successful payment completion. This is typically your application's success/confirmation page. |
| `redirect_url` | string | Yes | URL to redirect the customer to after they complete or cancel the payment. This is typically your application's return URL. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Payment Link

**Slug:** `POOF_CREATE_PAYMENT_LINK`

Tool to create a payment link (invoice) for cryptocurrency payments. Use when you need to generate a shareable payment URL for collecting crypto payments from customers.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `amount` | string | Yes | The payment amount as a string (e.g., '10', '15.50') |
| `crypto` | string | Yes | The cryptocurrency type to accept for payment (e.g., 'ethereum', 'bitcoin', 'litecoin') |
| `metadata` | object | Yes | Additional metadata associated with the payment. Can contain arbitrary key-value pairs for transaction tracking or custom data. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Poof Webhook

**Slug:** `POOF_CREATE_WEBHOOK`

Tool to create a webhook subscription for receiving payment event notifications. Use when you need to set up real-time notifications for transaction status changes and other payment events.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | Yes | The HTTPS endpoint URL where Poof will send webhook notifications for payment events |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch Gas Price

**Slug:** `POOF_FETCH_GAS_PRICE`

Tool to fetch current gas prices for blockchain transactions. Returns gas price estimates for Ethereum, Avalanche, Polygon, and other supported EVM chains across different priority levels (slow, standard, fast, instant).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `crypto` | string | Yes | The cryptocurrency identifier for which to fetch gas prices (e.g., 'usdc', 'eth', 'bnb', 'matic'). Determines which blockchain network's gas prices to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch Cryptocurrency Price

**Slug:** `POOF_FETCH_PRICE`

Tool to fetch current cryptocurrency prices for supported tokens. Use when you need real-time price data for cryptocurrencies and tokens.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `crypto` | string | Yes | The cryptocurrency identifier to fetch price for (e.g., 'bnb', 'btc', 'eth', 'ethereum', 'bitcoin') |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch Smart Contracts

**Slug:** `POOF_FETCH_SMART_CONTRACTS`

Tool to fetch all supported ERC-20 smart contracts across Ethereum, Avalanche, and Polygon networks. Use when you need to retrieve available token contracts and their details for blockchain operations.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Send Cryptocurrency Payout

**Slug:** `POOF_SEND_PAYOUT`

Tool to send a cryptocurrency payout transaction from your wallet to an external address. Use when you need to transfer crypto on supported blockchains.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `amount` | number | Yes | Amount of cryptocurrency to send. Must be a positive number. |
| `crypto` | string | Yes | Cryptocurrency type to use for the payout. Supported values include blockchain names such as 'solana', 'ethereum', 'bitcoin', etc. |
| `address` | string | Yes | Destination wallet address on the specified blockchain. Must be a valid address format for the chosen cryptocurrency. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
