Connect a store

Connect WooCommerce

A WordPress plugin connects your WooCommerce shop to NinjaBuy. Import from Taobao, Weidian and 1688; paid orders come to us, and the tracking comes back to the order.
On this page
  1. 1How WooCommerce orders reach us
  2. 2What your site needs
  3. 3Install and connect the plugin
  4. 4What syncs
  5. 5Self-hosted means the rules are yours
  6. 6Troubleshooting

How WooCommerce orders reach us

The plugin sends paid orders for NinjaBuy products to the NinjaBuy API, and writes stock, prices and tracking back to your shop. It is built on the same API you can call yourself.

  1. A customer orders on your site
    A product linked to NinjaBuy
  2. NinjaBuy plugin
    The plugin sends it to us
    Over the NinjaBuy API, no Shopify needed
  3. Paid from your balance, bought in China
    We pay the seller and follow the parcel to our warehouse
  4. Checked with photos
    You see the real item before it leaves
  5. Shipped in your box
    The tracking number goes back to the order
A WooCommerce order. Example.

What your site needs

  • WordPress with WooCommerce, served over HTTPS.
  • An administrator account that may install plugins.
  • A NinjaBuy Business account with money in its balance. See Getting started.

Install and connect the plugin

  1. Create an API key in your NinjaBuy account

    Name it after the site, so you know which key to revoke if you ever move or close it.

  2. In WordPress, go to Plugins → Add New and install the NinjaBuy plugin
  3. Open WooCommerce → NinjaBuy and paste the key

    The plugin checks the key and shows your NinjaBuy account's name when it works.

  4. Import new products, or link the ones you sell

    Finds from the importer come in as normal WooCommerce products. To link an existing one, paste its Taobao, Weidian or 1688 link on the product and pick the variant.

  5. Sell

    Paid orders for linked products reach us; the rest of the order stays with you.

What syncs

WhatDirectionHow
OrdersWooCommerce → NinjaBuySent when an order is paid, for its linked lines.
CancellationsWooCommerce → NinjaBuyA cancelled order cancels ours until it is packed into a parcel.
TrackingNinjaBuy → WooCommerceAdded to the order when the parcel ships; WooCommerce emails your customer as your email settings say.
StockNinjaBuy → WooCommerceSet to 0 when the source sells out, by your sync rules.
PriceNinjaBuy → WooCommerceRepriced or paused when the cost moves, by your sync rules.

No call to us happens while a shopper browses: the plugin talks to NinjaBuy when an order is paid or a product changes, so it doesn't slow your shop down.

Self-hosted means the rules are yours

No marketplace stands between you and your customer, so consumer law and your payment provider set the limits.

  • State a delivery time you can keep
    In the US, the FTC expects a reasonable basis for any shipping time you state, and a way to cancel when you can't meet it.
  • Your payment provider's list
    Card processors publish products they won't take payments for. Counterfeits are on it, and breaking it can freeze your payouts.
  • Say who pays import duties
    Your customer's country may charge duties or taxes on arrival. Say so at checkout.
  • Your site has to reach us
    Orders come to us when your site sends them. If it is down, or a security plugin blocks the call, they wait.

Troubleshooting

What you seeWhyWhat to do
A paid order never reached NinjaBuyWooCommerce sends us the order. If the site was down, or a security tool blocked the call, it waits on your side.Check the connection status in the app. The app sends what it missed once the site can reach us again.
An order arrived with a line we skippedThat product is not linked to a NinjaBuy listing, so it stays with you or your other supplier.Link it in the app; the next order for it comes to us.
The order shows as heldYour balance could not cover it. We never buy on credit.Top up; held orders go ahead on their own. See held orders.
No tracking on the order yetTracking is written back once the parcel has left our warehouse.Check the order's step in your NinjaBuy account. If it shows Shipped and WooCommerce doesn't, reconnect the app.
The connection says the key is invalidThe API key was revoked, or the site was moved to a new domain.Create a new key in your NinjaBuy account and paste it into the app. Keys are covered in the API overview.
Orders stopped after installing a security or caching pluginIt blocks the plugin's calls out of your site.Allow outgoing requests to ninjabuy.com in that plugin's settings.