Nano Currency API for developers, exchanges, and everyone in between. Understand the core details of the nano protocol and more. Start building with Nano today.

Introduction

EasyMerch API is organized around REST.

The API has predictable resource-oriented URLs, accepts form-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.

Not a developer?

We offer no-code and low-code options to get started.

Base URL
https://api.easymerch.io/v2
CLIENT LIBRARIES
NodeJS
$ npm install axios
Authentication

EasyMerch uses API keys to authenticate requests. You can view and manage your API keys in the Dashboard.

Your API keys carry many privileges, so be sure to keep them secure! Do not share your secret API keys in publicly accessible areas such as GitHub, client-side code, and so forth.

API requests must be made over HTTPS. Calls over HTTP will fail.

The Store object
Attributes
website_title string

website_title_seo string

domain string

theme string

logo_image string

favicon_imge string

free_shipping_minimum string

standard_shipping integer

fast_shipping integer

admin_email string

instagram_url string

primary_color string

highlight_color string

live_mode boolean

website_copyright string

mailgun_key string

mailgun_domain string

mailgun_email string

Product object
{
    "domain": "example.com",
    "website_title": "My Online Store",
    "website_title_seo": "My Online Store - Official Website",
    "logo_image": "https://cdn.easymerch.io/1721255666047.png",
    "favicon_imge": "https://cdn.easymerch.io/1721843413384.png",
    "free_shipping_minimum": "100",
    "standard_shipping": "10",
    "fast_shipping": "0",
    "admin_email": "[email protected]",
    "instagram_url": "https://www.instagram.com/example",
    "primary_color": "#ffffff",
    "highlight_color": "#ffffff",
    "live_mode": false,
    "website_copyright": "Copyright @ {{year}} My Online Store. All Rights Reserved.",
    "mailgun_key": "",
    "mailgun_domain": "",
    "mailgun_email": "",
    "theme": ""
}
Endpoints
POST /v2/stores
DELETE /v2/stores/:id
GET /v2/stores
GET /v2/stores/:id
POST /v2/stores/:id
CLIENT LIBRARIES
NodeJS
$ npm install axios
Create Store
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const stores = await nano.stores.create({
  "title": "My First Product",
  "price": "10.00",
  "currency": "Ӿ"
})
Delete Store
NodeJS
const nano = require('@nano/cloud')('API_KEY')

List Store
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const stores = await nano.stores.list()
Response
[
  {
    "title": "Test Product",
    "id": "ae07a195b04b8",
    "category": "Test",
    "price": "5",
    "currency": "Ӿ",
    "inventory": "5",
    "images": [
      "https://cdn.easymerch.io/1719337840466.jpg"
    ],
    "cost_per_item": "1"
  }
]
Retrieve Store
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const stores = await nano.stores.get('ID')
Update Store
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const store = await nano.stores.get('ID')
The Product object
Attributes
title string

Product title.

description string

Product description.

category string

Product category. Example: T-Shirt, Sticker

images array

Array of product image URLs.

currency string

ISO string of product currency For nano use 'XNO' or 'NANO'.

inventory integer

Optional. Stock number of product.

cost_per_item integer

Optional. Internal data for calculating earnings.

price integer

The price for this product.

Product object
{
  "title": "My First Product",
  "price": "10.00",
  "currency": "NANO"
}
Endpoints
POST /v2/products
DELETE /v2/products/:id
GET /v2/products
GET /v2/products/:id
POST /v2/products/:id
CLIENT LIBRARIES
NodeJS
$ npm install axios
Create Product
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const product = await nano.products.create({
  "title": "My First Product",
  "price": "10.00",
  "currency": "Ӿ"
})
Delete Product
NodeJS
const nano = require('@nano/cloud')('API_KEY')

List Products
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const products = await nano.products.list()
Response
[
  {
    "title": "Test Product",
    "id": "ae07a195b04b8",
    "category": "Test",
    "price": "5",
    "currency": "Ӿ",
    "inventory": "5",
    "images": [
      "https://cdn.easymerch.io/1719337840466.jpg"
    ],
    "cost_per_item": "1"
  }
]
Retrieve Product
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const products = await nano.products.get('ID')
Update Product
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const product = await nano.products.get('ID')
The Contact object
Attributes
email string

name string

phone string

shipping_address object

line1 string

line2 string

city string

state string

postal_code string

country string

billing_address object

line1 string

line2 string

city string

state string

postal_code string

country string

subscribed boolean

unsubscribed boolean

source string

Product object
{
                                "email": "[email protected]",
                                "name": "John Doe",
                                "phone": "3054990431",
                                "shipping_address": {
                                    "line1": "1234 NW 5th St",
                                    "line2": null,
                                    "city": "Miami",
                                    "state": "FL",
                                    "postal_code": "33175",
                                    "country": "US"
                                },
                                "billing_address": {
                                    "city": "Miami",
                                    "country": "US",
                                    "line1": "1234 NW 5th St",
                                    "line2": "",
                                    "postal_code": "33175",
                                    "state": "FL"
                                },
                                "subscribed": true,
                                "unsubscribed": false,
                                "source": "Customer"
                            }
Endpoints
POST /v2/contacts
DELETE /v2/contacts/:id
GET /v2/contacts
GET /v2/contacts/:id
POST /v2/contacts/:id
CLIENT LIBRARIES
NodeJS
$ npm install axios
Create Contact
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const contact = await nano.contacts.create({
  "title": "My First Product",
  "price": "10.00",
  "currency": "Ӿ"
})
Delete Contact
NodeJS
const nano = require('@nano/cloud')('API_KEY')

List Contacts
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const contacts = await nano.contacts.list()
Response
[
  {
    "title": "Test Product",
    "id": "ae07a195b04b8",
    "category": "Test",
    "price": "5",
    "currency": "Ӿ",
    "inventory": "5",
    "images": [
      "https://cdn.easymerch.io/1719337840466.jpg"
    ],
    "cost_per_item": "1"
  }
]
Retrieve Contact
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const contacts = await nano.contacts.get('ID')
Update Contact
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const contact = await nano.contacts.get('ID')
The Order object
Attributes
line1 string

Order object
{
  "title": "My First Order",
  "price": "10.00",
  "currency": "NANO"
}
Endpoints
POST /v2/orders
DELETE /v2/orders/:id
GET /v2/orders
GET /v2/orders/:id
POST /v2/orders/:id
CLIENT LIBRARIES
NodeJS
$ npm install axios
Create Order
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const order = await nano.orders.create({
  "title": "My First Product",
  "price": "10.00",
  "currency": "Ӿ"
})
Delete Order
NodeJS
const nano = require('@nano/cloud')('API_KEY')

List Orders
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const orders = await nano.orders.list()
Response
[
  {
    "title": "Test Product",
    "id": "ae07a195b04b8",
    "category": "Test",
    "price": "5",
    "currency": "Ӿ",
    "inventory": "5",
    "images": [
      "https://cdn.easymerch.io/1719337840466.jpg"
    ],
    "cost_per_item": "1"
  }
]
Retrieve Order
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const orders = await nano.orders.get('ID')
Update Order
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const order = await nano.orders.get('ID')
The Product object
Attributes
title string

Product title.

description string

Product description.

category string

Product category. Example: T-Shirt, Sticker

images array

Array of product image URLs.

currency string

ISO string of product currency For nano use 'XNO' or 'NANO'.

inventory integer

Optional. Stock number of product.

cost_per_item integer

Optional. Internal data for calculating earnings.

price integer

The price for this product.

Product object
{
  "title": "My First Product",
  "price": "10.00",
  "currency": "NANO"
}
Endpoints
POST /v2/products
DELETE /v2/products/:id
GET /v2/products
GET /v2/products/:id
POST /v2/products/:id
CLIENT LIBRARIES
NodeJS
$ npm install axios
Create Product
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const product = await nano.products.create({
  "title": "My First Product",
  "price": "10.00",
  "currency": "Ӿ"
})
Delete Product
NodeJS
const nano = require('@nano/cloud')('API_KEY')

List Products
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const products = await nano.products.list()
Response
[
  {
    "title": "Test Product",
    "id": "ae07a195b04b8",
    "category": "Test",
    "price": "5",
    "currency": "Ӿ",
    "inventory": "5",
    "images": [
      "https://cdn.easymerch.io/1719337840466.jpg"
    ],
    "cost_per_item": "1"
  }
]
Retrieve Product
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const products = await nano.products.get('ID')
Update Product
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const product = await nano.products.get('ID')
The Product object
Attributes
title string

Product title.

description string

Product description.

category string

Product category. Example: T-Shirt, Sticker

images array

Array of product image URLs.

currency string

ISO string of product currency For nano use 'XNO' or 'NANO'.

inventory integer

Optional. Stock number of product.

cost_per_item integer

Optional. Internal data for calculating earnings.

price integer

The price for this product.

Product object
{
  "title": "My First Product",
  "price": "10.00",
  "currency": "NANO"
}
Endpoints
POST /v2/products
DELETE /v2/products/:id
GET /v2/products
GET /v2/products/:id
POST /v2/products/:id
CLIENT LIBRARIES
NodeJS
$ npm install axios
Create Product
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const product = await nano.products.create({
  "title": "My First Product",
  "price": "10.00",
  "currency": "Ӿ"
})
Delete Product
NodeJS
const nano = require('@nano/cloud')('API_KEY')

List Products
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const products = await nano.products.list()
Response
[
  {
    "title": "Test Product",
    "id": "ae07a195b04b8",
    "category": "Test",
    "price": "5",
    "currency": "Ӿ",
    "inventory": "5",
    "images": [
      "https://cdn.easymerch.io/1719337840466.jpg"
    ],
    "cost_per_item": "1"
  }
]
Retrieve Product
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const products = await nano.products.get('ID')
Update Product
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const product = await nano.products.get('ID')
The Product object
Attributes
title string

Product title.

description string

Product description.

category string

Product category. Example: T-Shirt, Sticker

images array

Array of product image URLs.

currency string

ISO string of product currency For nano use 'XNO' or 'NANO'.

inventory integer

Optional. Stock number of product.

cost_per_item integer

Optional. Internal data for calculating earnings.

price integer

The price for this product.

Product object
{
  "title": "My First Product",
  "price": "10.00",
  "currency": "NANO"
}
Endpoints
POST /v2/products
DELETE /v2/products/:id
GET /v2/products
GET /v2/products/:id
POST /v2/products/:id
CLIENT LIBRARIES
NodeJS
$ npm install axios
Create Product
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const product = await nano.products.create({
  "title": "My First Product",
  "price": "10.00",
  "currency": "Ӿ"
})
Delete Product
NodeJS
const nano = require('@nano/cloud')('API_KEY')

List Products
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const products = await nano.products.list()
Response
[
  {
    "title": "Test Product",
    "id": "ae07a195b04b8",
    "category": "Test",
    "price": "5",
    "currency": "Ӿ",
    "inventory": "5",
    "images": [
      "https://cdn.easymerch.io/1719337840466.jpg"
    ],
    "cost_per_item": "1"
  }
]
Retrieve Product
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const products = await nano.products.get('ID')
Update Product
NodeJS
const nano = require('@nano/cloud')('API_KEY')

const product = await nano.products.get('ID')