Order Placement Status Codes

When Ordergroove places a recurring order, your eCommerce platform reports back whether the order was placed — and if it wasn't, why. It does this with a status code. Ordergroove uses these codes to decide what happens next: whether to retry the order, what communication (if any) to send the customer, and whether to flag the order for your team.


Overview

When a subscription order renews, Ordergroove sends it to your eCommerce platform to be placed; the customer's payment method is charged, your platform creates the order, and a confirmation goes out to the customer.

If something prevents that — a declined card, an expired token, a platform-side rejection, or a customer action — your platform returns a status code so Ordergroove knows what happened and what to do about it.

Accurate transmission of these codes on order failure is critical. Ordergroove reacts differently to each code, including triggering specific customer email communications. Incorrect response mapping will result in customers receiving the wrong communication.


Code Range Overview

Range Category Description
000 Success Order was placed successfully.
010 Processing Order is still being processed; final status is not yet known.
0xx (020–099) eCommerce Platform Declines The merchant's eCommerce platform rejected the order (e.g., invalid token, invalid delivery method, or invalid address).
1xx Payment Failures Payment-related issues such as declined cards or billing problems.
8xx Customer Action Rejections The order was not placed because of a customer-initiated action.
9xx Generic / Validation Errors Catch-all for general validation failures and other errors.

Full Code Reference

  • 000 — Success. Order was placed successfully.
  • 010 — Created and Processing. The majority of orders return this response when order verification is in use. Only orders with this status are available for update via the order verification API.
  • 020 — Invalid, order not created. Ordergroove will mark the order as rejected and will not retry. No customer communication is sent.
  • 030 — Canceled. Set by Ordergroove only when a customer cancels an order. This code should never be sent to Ordergroove. No customer communication is sent.
  • 100 — Invalid credit card type. Ordergroove will mark the order as rejected and will not retry. Customer communication is sent.
  • 110 — Invalid credit card number. Ordergroove will mark the order as rejected and will not retry. Customer communication is sent.
  • 120 — Invalid credit card expiration date. Ordergroove will mark the order as rejected and will not retry. Customer communication is sent.
  • 130 — Invalid billing address. Ordergroove will mark the order as rejected and will not retry. Customer communication is sent.
  • 140 — Payment declined (payment capture failed). Ordergroove will mark the order as rejected and may retry based on your settings. Retries are enabled by default and can be modified or disabled in Settings > Payments. Customer communication is sent.
    • Note: 140 is the only code for which Ordergroove will automatically retry the order.
  • 150 — PayPal issue. Customer communication is sent.
  • 160 — Payment declined, do not retry. No customer communication is sent.
  • 170 — No default card on file for the customer. No customer communication is sent.
  • 180 — Strong Customer Authentication (SCA) requested. No customer communication is sent.
  • 810 — Order superseded by a Send Now request. The scheduled order was not placed because the customer initiated a Send Now before it could be processed. Ordergroove will not retry. No customer communication is sent.
  • 999 — Generic error response. Ordergroove will retry placing the order over the next two order placement windows, for a maximum of three total attempts. After that, the order is marked as rejected and customer communication is sent.

Tip: Use these status code numbers in your integration, but use the error message from your own payment gateway or processor for the detail. The descriptions above are general categories — the message your system provides gives the specific reason.


How Ordergroove Responds to Each Error Type

Ordergroove takes a different action depending on the type of error received during order placement:

  • Error during order generation or placement: If Ordergroove is unable to generate the order or connect to your order placement API, the order is retried at the next placement window — usually the following day. Retries continue for up to 90 days or the subscription frequency, whichever is shorter.
  • Valid error response: If Ordergroove receives a recognized error response from your system, the customer is notified (e.g., of a credit card issue) and the order is placed in a rejected state.
  • Response processing error: If Ordergroove cannot interpret the response from your system, the order is not retried and is placed in a rejected state. The customer is not notified.
  • Generic error (999): Ordergroove treats this as an unknown error and retries once per placement window, for a total of three attempts. If all three return a 999, the order is rejected and the customer is notified by email. If no response is received during the retry window, the order remains in a Pending state and no customer notification is triggered.

FAQ

Where do Order Placement status codes come from?

The source varies by platform:

  • On Shopify and BigCommerce, Ordergroove receives the error message directly from the platform and assigns the matching Ordergroove status code automatically.
  • On all other platforms, your team is responsible for sending both the error message and the status code to Ordergroove as part of your Order Placement setup.

What is the format of the order placement response?

The response is a JSON object containing two fields: code (the numeric status code) and message (a string with the error detail from your payment gateway or platform). Both fields should be mapped and returned to Ordergroove for accurate processing and customer communication.

My orders are consistently returning a specific code — what should I do?

Repeated occurrences of the same code usually point to a configuration or integration issue rather than a one-off failure. Review your payment gateway mapping, confirm the correct code is being returned for the error type, and contact Ordergroove Support if the issue persists.

What are 2XX, 4XX, and 5XX codes?

2XX, 4XX, and 5XX are API Response Codes. See API Response Codes for additional details and a full list.