16min

OpenNode

Introduction

OpenNode plugin offers a powerful REST API that supports bitcoin lightning network and standard on-chain operations, with associated actions and events, allowing you to receive and send micro-transactions instantly. Prerequisites: You must have an OpenNode platform account to interact with the OpenNode plugin. Create your development account at: https://dev.opennode.com

Integration

To integrate the OpenNode plugin, you must get the API key from your account. Open the account control panel, go to the "Developer" tab and select the "Integrations" section.

Document image



After that, you will see the API keys section with the keys (if any).

Note! You will not be able to get the keys again after creation! Make sure that after creating the key, you have saved it!

To create a new key, click on the +Add key section

Document image



​Insert the key label and select the permissions for this key. We recommend that you use the "Withdrawals" type to get all features.​



Invoice

Read

Withdrawals

Create charge & fetch charge info

Fetch charges & withdrawals info

Initiate withdrawals

Document image



The field with IP Whitelist is optional

Leave it empty if you do not want to restrict the IP address of the server

Use an authenticator application to generate a 2FA token. And click the "Generate" button. You will see the generated key for your application. Save it!

Document image



Use this key in the plugin settings.

Document image



​Now you can use all plugins options!

Plugin content

Data calls

  1. Account balance - The request to get the account balance. (docs) Fields: env - The environment. Use "dev-api" for the development version and "api" for the live version
  2. Charge info - The request to get the charge info. (docs) Fields: env - The environment. Use "dev-api" for the development version and "api" for the live version id - ID of the Charge
  3. List of Paid Charges - The request to fetch the list of paid charges (docs) Fields: env - The environment. Use "dev-api" for the development version and "api" for thee live version
  4. List of Withdrawals - The request to fetch the list of withdrawals. (docs) Fields: env - The environment. Use "dev-api" for the development version and "api" for the live version
  5. Withdrawal Info - Request to receive a withdrawal of funds with a specific id. (docs) Fields: env - The environment. Use "dev-api" for the development version and "api" for the live version id - ID of the specific Withdrawal
  6. List of Refunds - The request to fetch the list of refunds (docs) Fields: env - The environment. Use "dev-api" for the development version and "api" for thhe live version
  7. Refund Info - Request to receive a refund with a specific id. (docs) Fields: env - The environment. Use "dev-api" for the development version and "api" for the live version id - ID of the specific Refund
  8. Exchange Rates - The request to receive the list of exchange rates (docs) Fields: env - The environment. Use "dev-api" for the development version and "api" for the live version
  9. Supported Currencies - The request to receive the list of supported currencies (docs)

Actions

1. Create Charge - Request to initiate a call to create a charge.(docs)

Fields: env - The environment. Use "dev-api" for the development version and "api" for the live version description - Charge's description amount - Charge's price in satoshis, unless currency parameter is used. currency - Charge's currency customer_email - Customer's email customer_name - Customer's name order_id - Order ID callback_url - URL to receive webhooks

Document image



2. Charge Info(action) - The request to get the charge info. (docs) Fields: env - The environment. Use "dev-api" for the development version and "api" for the live version id - ID of the Charge

Document image



3. Initiate Withdrawals - Request to initiate a call to create a withdrowal. (docs) Fields: env - The environment. Use "dev-api" for development version and "api" for live version type - Types: "chain" (on-chain), "ln" (Lightning Network), "wire" (bank transfer) amount - Amount in satoshis for types "chain" and "ln" - Amount in user's fiat currency when type ="wire". Required for type "chain" and "wire" address - Type "chain": Bitcoin address, Type: "ln": Lightning Payment request. Not necessary for type "wire" callback_url - URL to receive webhooks

Document image



4. Create Refund - Request to initiate a call to create a refund. (docs) Fields: env - The environment. Use "dev-api" for the development version and "api" for the live version checkout_id - Underpaid charge ID address - Bitcoin address to send the funds email - Buyer email to get notified of the refund

Document image

Demo to preview the settings

​​