Easy Integration

Integrating our payment system is simple and requires no additional setup or costs.

Pay with USDT
No setup fees
No complex integration
No public IP required
Instant payments

Effortless Payment Integration

To start receiving payments, all you need is your Ethereum address. Just pass it as the ownerAddress along with a unique index (such as a user ID or transaction ID):

https://api.feemaker.io/getAddress?ownerAddress=0x1234...1234&index=1

That's it — no extra configuration, no infrastructure, no hidden steps.

Real-Time Payment Notifications

To receive notifications about incoming transactions, you can use our documentation at docs.feemaker.io.

For the simplest approach, we recommend using long polling — no need to run a public gateway. Just send a GET request:

https://api.feemaker.io/events?ownerAddress=0x1234...1234&secretSessionId=YOUR_SECRET_KEY

The secretSessionId is a unique key you generate to reserve resources for your application. Keep this key private and do not share it.

Examples

<button id="pay-btn">Pay 10 USDT</button>

<script>
  document.getElementById('pay-btn')
    .addEventListener('click', async () => {
      // 1. Get unique index from your backend
      const order = await fetch('/api/create-order');
      const { index } = await order.json();

      // 2. Get payment address from FeeMaker
      const res = await fetch(
        'https://api.feemaker.io/getAddress'
        + '?ownerAddress=0xYOUR_WALLET_ADDRESS'
        + '&index=' + index
      );
      const { address } = await res.json();

      // 3. Redirect to checkout
      const params = new URLSearchParams({
        to: address,
        value: '10',
        data: '0x',
        chainId: '137',
        token: '0x3c49...3359',
        description: 'Order #' + index
      });
      window.location.href =
        'https://checkout.feemaker.io/?'
        + params.toString();
    });
</script>
const SECRET_KEY = 'your-secret-session-id';
const OWNER = '0xYOUR_WALLET_ADDRESS';

async function listenForPayments() {
  while (true) {
    const res = await fetch(
      'https://api.feemaker.io/events'
      + '?ownerAddress=' + OWNER
      + '&secretSessionId=' + SECRET_KEY
    );
    const events = await res.json();

    for (const event of events) {
      console.log('Payment received:', {
        from: event.from,
        amount: event.value,
        token: event.token,
        txHash: event.transactionHash
      });
      // Update order status in your database
    }
  }
}

listenForPayments();
checkout.feemaker.io
10 USDT
Pay with crypto
Pay Now
Powered by FeeMaker
<div id="invoice"></div>

<script>
  async function createInvoice() {
    // 1. Get unique index from your backend
    const order = await fetch('/api/create-invoice');
    const { index, amount } = await order.json();

    // 2. Get payment address from FeeMaker
    const res = await fetch(
      'https://api.feemaker.io/getAddress'
      + '?ownerAddress=0xYOUR_WALLET_ADDRESS'
      + '&index=' + index
    );
    const { address } = await res.json();

    // 3. Display invoice
    document.getElementById('invoice')
      .innerHTML = `
      <p>Send <b>${amount} USDT</b> to:</p>
      <code>${address}</code>
      <p>Invoice #${index}</p>
    `;
  }
  createInvoice();
</script>
const SECRET_KEY = 'your-secret-session-id';
const OWNER = '0xYOUR_WALLET_ADDRESS';

async function listenForPayments() {
  while (true) {
    const res = await fetch(
      'https://api.feemaker.io/events'
      + '?ownerAddress=' + OWNER
      + '&secretSessionId=' + SECRET_KEY
    );
    const events = await res.json();

    for (const event of events) {
      console.log('Invoice paid:', {
        invoiceId: event.index,
        from: event.from,
        amount: event.value,
        token: event.token,
        txHash: event.transactionHash
      });
      // Mark invoice as paid in your database
    }
  }
}

listenForPayments();
checkout.feemaker.io
Invoice #INV-001
150 USDT
DescriptionWeb Design Services
StatusAwaiting payment
0x9f8e...1e0F
Copy Address

Plugins

We also offer ready-made plugins for popular e-commerce platforms. Install in minutes — no coding required. View all plugins

WooCommerce

Accept crypto payments through the Feemaker WooCommerce plugin. Integrate in a few steps.

Magento 2

Accept crypto payments through the Feemaker Magento 2 plugin. Quick setup for your store.

OpenCart

Accept crypto payments through the Feemaker OpenCart plugin. Easy payment setup.

WHMCS

Accept crypto payments through the Feemaker WHMCS plugin. Add crypto to your payment methods.

PrestaShop

Accept crypto payments through the Feemaker PrestaShop plugin. Quick store integration.

Ecwid

Accept crypto payments through the Feemaker Ecwid plugin. Add crypto to your Ecwid store.

Zen Cart

Accept crypto payments through the Feemaker Zen Cart plugin. Simple payment setup.

Contact Us
Have questions or need help getting started?
We're here for you.