@novo-x/shopify
TypeScript icon, indicating that this package has built-in type declarations

1.0.7 • Public • Published

Shopify Service

Available methods

  • getByPath: retrieves a resource using shopify API
  • getProducts: retrieves all products
  • getProductById: retrieves product by id
  • getCustomers: retrieves all customers
  • createCustomer: creates a customer
  • updateCustomer: updates an existent customer
  • createDraftOrder: creates draft order
  • confirmDraftOrder: converts draft order into an order
  • calculateShipping: calculates shipping for specific order

Usage examples

yarn add @novo-x/shopify

import {ShopifyService} from "@novo-x/shopify"

const MyService = new ShopifyService(
    {
        API_KEY: '123456789',
        API_SECRET_KEY: '123456789',
        SCOPES: 'read_products,write_customers,write_draft_orders',
        HOST_NAME: 'myhost.com',
        API_VERSION: '2021-07',
        IS_EMBEDDED_APP: true,
        SESSION_STORAGE: new Shopify.Session.MemorySessionStorage(),
    }, // config
    'mystore', // shop name (same as seen in url: mystore.myshopify.com)
    '123456789' // accessToken
);

const resource = await MyService.getByPath('products');
const products = await MyService.getProducts();
const product = await MyService.getProductById(
    '123456789' // productId
);
const customers = await MyService.getCustomers();
const createdCustomer = await MyService.createCustomer({
    firstName: 'John',
    lastName: 'Doe',
    email: 'john@doe.com',
    phone: '+34627192600', // It must be a valid phone number
    verified: 1,
    addresses: [{
        address: 'Calle falsa 123',
        city: 'City',
        province: 'Province',
        phone: '+34627192600', // I must be a valid phone number
        zipCode: '46092',
        firstName: 'John',
        lastName: 'Doe',
        country: 'ES', // It must be in ISO-3166 country code format
    }]
})

const updatedCustomer = await MyService.updateCustomer(
    {
        firstName: 'John',
        lastName: 'Doe',
        email: 'john@doe.com',
        phone: '+34627192600', // It must be a valid phone number
        verified: 1,
        addresses: [{
            address: 'Calle falsa 123',
            city: 'City',
            province: 'Province',
            phone: '+34627192600', // I must be a valid phone number
            zipCode: '46092',
            firstName: 'John',
            lastName: 'Doe',
            country: 'ES', // It must be in ISO-3166 country code format
        }]
    }, // customerData
    '123456789' // customerId
)

const confirmedOrder = await MyService.confirmDraftOrder(
    '123456789' // orderId
)

const draftOrder = await MyService.createDraftOrder(
    '123456789', // productVariantId 
    2, // quantity 
    '123456789' // customerId
)

const shipping = await calculateShipping(
    draftOrder // previously created
)

Dependencies

@shopify/shopify-api

Readme

Keywords

Package Sidebar

Install

npm i @novo-x/shopify

Weekly Downloads

1

Version

1.0.7

License

ISC

Unpacked Size

42.1 kB

Total Files

12

Last publish

Collaborators

  • lautarobruno
  • agustin-novolabs
  • novo-tincho
  • nicolas.novolabs
  • mati-novolabs
  • alejitowow
  • nahuelprieto