Linux 软件免费装
Banner图

OrderCarry Order Automation for WooCommerce

开发者 houssemremili
freemius
更新时间 2026年9月15日 04:55
PHP版本: 7.4 及以上
WordPress版本: 7.1
版权: GPLv2 or later
版权网址: 版权信息

标签

woocommerce automation webhook order export google sheets

下载

1.0.3 1.1.1 1.1.0

详情介绍:

Stop paying $30–$50 every month just to copy your orders into a spreadsheet. OrderCarry runs inside your own WordPress site. When an order reaches the status you choose, it sends the details to Google Sheets, to any webhook URL, or as a custom email — automatically, in the background, without slowing down checkout. No task limits. No credits. No cloud account. No connection that expires. Why people switch What it does Built to not break your checkout Every automation runs in the background through Action Scheduler, the same queue WooCommerce uses itself. Your customer never waits for Google to answer. Works with your setup Free vs Pro The free version is not a demo. It sends unlimited orders to as many Google Sheets, webhooks and email addresses as you like, with full retry and logging — reliability is never the paid part. OrderCarry Pro is a separate download and adds: Pro comes with a 14-day free trial, no credit card required.

安装:

This guide assumes you have never done any of this before. Every step says exactly what to click. Before you start Step 1: Install the plugin From your WordPress admin:
  1. Go to Plugins → Add Plugin.
  2. Search for OrderCarry.
  3. Click Install Now, then Activate.
If you downloaded a ZIP file instead:
  1. Go to Plugins → Add Plugin → Upload Plugin.
  2. Choose the ZIP file, click Install Now, then Activate.
Step 2: Open the settings Go to WooCommerce → OrderCarry in the left menu. You will see four tabs: You can use one tab, or all of them. Set up whichever you need. Each tab works on its own. Step 3: Send orders to Google Sheets First, create the sheet and its script.
  1. In the Google Sheets tab, click Where do I get this URL?. The instructions open up, with a script already prepared for you.
  2. Click Create a blank Google Sheet. A new spreadsheet opens in Google. (If you already have a sheet you want to use, open that one instead.)
  3. In that Google sheet, click Extensions in the top menu, then Apps Script. A code editor opens in a new tab.
  4. Delete everything you see in that editor. It usually contains a few lines like function myFunction() {}. Remove all of it.
  5. Go back to the OrderCarry tab in WordPress and click Copy script.
  6. Go back to the Apps Script editor and paste (Ctrl+V, or Cmd+V on a Mac).
  7. Click the save icon (the floppy disk), or press Ctrl+S.
Now publish the script so your shop can reach it.
  1. In the Apps Script editor, click the blue Deploy button (top right), then New deployment.
  2. Click the gear icon next to "Select type" and choose Web app.
  3. Set Execute as to Me.
  4. Set Who has access to Anyone. This sounds unsafe, but it is not: the script only accepts requests that carry your secret, which is already inside the script you pasted.
  5. Click Deploy. Google will ask you to authorise the script the first time. Click through the permission screens. If you see a warning that the app is not verified, click Advanced, then Go to (your project). It is your own script — you are trusting yourself.
  6. Google now shows a Web app URL that ends in /exec. Copy it.
Finally, tell the plugin about it.
  1. Back in WordPress, paste that URL into Google Sheet web app URL.
  2. Switch the toggle to ON.
  3. Choose when orders should be sent under Send orders when they become (see the explanation further down).
  4. Click Save changes.
  5. Click Send test order.
Within a few seconds a test row should appear in your Google sheet, and the plugin should show a green success message. The column headers are created automatically the first time. Once you are happy it works, open Empty this sheet on the card and click Delete every row. That clears out the test rows and leaves the headings, so the sheet starts clean when your first real order arrives. Your orders in WooCommerce are not touched. Step 4: Send orders to a webhook Use this if you want the order data in Make, n8n, Zapier, Airtable, an ERP, or your own application.
  1. Open the Webhook tab.
  2. Paste the address that should receive the orders into URL. It must start with https://.
  3. Switch the toggle to ON.
  4. Choose when orders should be sent under Send orders when they become.
  5. Click Save changes, then Send test order.
Your receiving system should get a JSON message containing the order. Every request also carries a header called X-Ordsync-Signature. This is proof that the request really came from your shop and not from someone else. If the system on the other end supports it, use that header to verify the request. You will find the signing key under Advanced → Verifying that a request really came from your shop. If you just want to try it out first, create a free test address at webhook.site, paste it in, and press Send test order. You will see the order arrive. Step 5: Send an email for every order
  1. Open the Custom Email tab.
  2. In Send to, type the email address that should receive the message. Type the single word customer instead if you want it sent to the buyer.
  3. Write the Subject.
  4. Write the Message.
  5. Switch the toggle to ON, click Save changes, then Send test order.
In the subject and the message you can use variables. They are replaced with the real values of each order: {order_number} {status} {date} {customer_name} {customer_email} {customer_phone} {items} {total} {currency} {store_name} {coupons} {shipping_method} {transaction_id} {order_note} For example, a subject of New order {order_number} - {total} arrives as "New order 1042 - 59.90". The full list is always shown under the message box, so you do not have to remember it. Understanding "Send orders when they become" This decides when an order is sent. It is the setting people get wrong most often. Important: if you take bank transfer, invoice, or cash on delivery, those orders often never become "Processing". They go from pending straight to on-hold or completed. If you choose Processing, those orders are never sent and you will think the plugin is broken. Choose Any status instead. Each destination has its own setting. Your sheet can use Processing while your webhook uses Any status. Step 6: Check that it is working Place a real test order in your shop, or change an existing order to the status you selected. Then open the Logs tab. You will see each attempt, whether it succeeded, and the error message if it failed. The coloured label at the top right of each destination also tells you the state at a glance: If something does not work Nothing arrives at all. Check the trigger status first, as described above. Bank transfer orders and Processing are the most common cause. The Google sheet stays empty. Make sure you set "Who has access" to Anyone when deploying. If you changed the script afterwards, you must deploy again: Deploy → Manage deployments → edit → New version. A URL that ends in /dev will not work; it must end in /exec. Emails do not arrive. This is almost never the plugin. WordPress itself often cannot send email on cheap hosting. Install any SMTP plugin, configure it, and try again. The row appears a minute later, not instantly. That is normal and deliberate. Orders are sent in the background so your checkout is never slowed down or blocked by a slow connection. You want to see what is queued. Open Advanced → View the queue.

屏幕截图:

  • Your channels at a glance: three sheets, two webhooks, two emails, each with its own trigger and status.
  • Google Sheets — paste one script URL, and see the rows exactly as they will land in your sheet.
  • Order automations — watch for an order stuck in a status, wait, check again, then tell whoever you choose.
  • Webhook — the real JSON your endpoint receives, with the headers it is sent with.

升级注意事项:

1.1.1 Housekeeping: a working plugin homepage link, a proper support address, and example text in three fields. Nothing to do after updating. 1.1.0 Adds a spreadsheet download, a Dashboard, and a button to empty a sheet. If you use Google Sheets, paste the script into Apps Script again and redeploy — orders keep arriving either way, but the new button needs it. 1.0.0 First release.

常见问题:

Do I need a Google Cloud account?

No. You paste a short script into your own Google Sheet and deploy it as a web app. That takes about a minute and costs nothing.

Is there a limit on how many orders it can send?

No. It runs on your server, so there is nothing to meter.

Will it slow down my checkout?

No. Orders are queued and sent in the background through Action Scheduler.

How long until the row appears?

Usually a minute or two, sometimes longer on a very quiet store. WordPress only runs background jobs when someone visits the site, so a busy shop syncs almost straight away while a shop with no visitors waits until the next visit. Nothing is ever lost — the order stays in the queue until it runs, and you can watch it under WooCommerce → Status → Scheduled Actions. The Send Test Order button skips the queue and fires immediately, which is why it feels instant. If you need every order synced within seconds regardless of traffic, ask your host to enable a real system cron and disable WP-Cron.

Can I change the columns in my sheet?

The free version writes the same twelve columns to every sheet and to the download, in the same order, so the two always agree. Pro lets you rename the headings into your own language, reorder them and leave out the ones you never look at. Renaming is safe at any time. Reordering or removing a column in a sheet that already has rows in it is not: the headings are rewritten in place and the rows underneath stay where they are, so empty the sheet first.

Can it tell me when an order is stuck?

Yes, and it is free. Open the Order Automations tab and set up a rule: when an order becomes Processing, wait 24 hours, then look again — if it is still Processing, send it to whichever destination you like. The second look is the important part. Without it you would be told about every order that reached Processing yesterday, including the ones that shipped this morning. The same rule chases failed payments (Failed, wait 30 minutes, still Failed) and flags refunds to your accountant. One automation is free; Pro runs as many as you like and can narrow them with filters, so you only hear about orders over a certain value.

Can I send my existing orders, not just new ones?

That is Pro. Open Import past orders on the destination's card and choose how many — the last 50 through the last 1000, or Everything. You can also narrow it to a date range, and both days you pick are included. Everything runs in the background at about 80 orders a minute, so it never floods whatever is receiving them. A shop with years of history takes hours; you can close the page, and reloading it shows how far it has got. Orders already sent to that destination are skipped, so importing twice can never produce duplicates.

Can I send my own custom fields?

That is Pro. Open the Columns tab and OrderCarry lists the custom fields it finds on your recent orders — tick the ones you want. Each becomes an extra column in every sheet and in the download, and an extra value in every webhook payload. It reads the order itself rather than talking to any particular plugin, so it works the same whether the field came from ACF, Meta Box, JetEngine, a checkout plugin or a snippet in your theme. If a field is not on any recent order you can still add it by typing its key.

Can I empty a sheet without deleting anything in WooCommerce?

Yes, and it is free. Open Empty this sheet on the sheet's card and click Delete every row. It deletes the rows in the spreadsheet and keeps the headings. Your orders in WooCommerce are untouched, and the plugin still remembers which orders it has already sent, so the sheet does not simply fill up again.

Does it work with HPOS?

Yes. OrderCarry declares full compatibility with High-Performance Order Storage and stores its state on the order itself, so it works with either storage mode.

My emails are not arriving.

That is almost always your web host blocking outgoing mail, not the plugin. Install any free SMTP plugin and it will work.

Where do I see errors?

WooCommerce → Status → Logs, source order-sync. Also reachable from the Logs tab in the plugin.

Does it send my data anywhere I did not ask for?

No. Order data only goes to destinations you enable and addresses you type in yourself. See the "External services" section below for the full list.

更新日志:

1.1.1 1.1.0 1.0.4 1.0.3 1.0.0