Skip to main content

BigCommerce API Endpoints

Reference inventory of the BigCommerce and B2B Edition REST API endpoints the iPaaS.com BigCommerce integration calls, grouped by data type, with authentication, pagination, and rate-limit guidance.

See what the BigCommerce integration can do →

This document catalogs the BigCommerce REST API endpoints called by the iPaaS.com BigCommerce integration, grouped by data type. Its primary purpose is to provide a complete inventory of every endpoint the integration depends on, so that when BigCommerce publishes a deprecation or breaking-change notice you can quickly determine whether the integration is affected. It also serves as a reference for firewall allow-listing, API account scope review, troubleshooting, and understanding how data flows between BigCommerce and your connected systems.

The BigCommerce integration exchanges data in both directions. Storefront data such as orders, customers, and gift cards is read To iPaaS.com; products, categories, inventory, and related catalog and B2B records are written From iPaaS.com. For how those flows are configured, see the BigCommerce Connections and Settings article.

API Endpoints Intro

BigCommerce exposes a REST API that exchanges JSON request and response bodies. The integration uses two BigCommerce APIs:

  • The BigCommerce REST Management API for storefront and catalog data (orders, products, customers, gift cards, categories, and so on). Most resources are served by the v3 API; orders and a handful of related store-level resources are served by the older v2 API.

  • The BigCommerce B2B Edition API for B2B company, company user, quote, and invoice data. This API is only called when B2B Edition is enabled on the subscription.

Both APIs are single global hosts — there is no per-region base URL. The store the integration acts on is identified by the store hash, which the integration reads from your subscription settings.

API

Base URL

Store scoping

REST Management (v3 and v2)

https://api.bigcommerce.com

Store hash is part of the URL path: /stores/{store_hash}/v3/... or /stores/{store_hash}/v2/...

B2B Edition (v3)

https://api-b2b.bigcommerce.com

Store hash is not in the path; it is carried on the request headers instead

Throughout this document the placeholder [Base URL] refers to the REST Management base with the store-hash and version prefix already applied — that is, https://api.bigcommerce.com/stores/{store_hash}/v3 for v3 endpoints, or https://api.bigcommerce.com/stores/{store_hash}/v2 for the v2 endpoints (which are shown with their explicit /v2/ segment). For B2B Edition endpoints, [B2B Base URL] refers to https://api-b2b.bigcommerce.com/api/v3/io.

For example, [Base URL]/catalog/products resolves to https://api.bigcommerce.com/stores/{store_hash}/v3/catalog/products, and [B2B Base URL]/companies resolves to https://api-b2b.bigcommerce.com/api/v3/io/companies.

Sandbox / Test URL: BigCommerce does not publish a separate sandbox host. To test against a non-production store, provision a BigCommerce sandbox or development store and configure a separate iPaaS.com subscription against that store's hash and API credentials. Both the production and sandbox stores are reached through the same api.bigcommerce.com and api-b2b.bigcommerce.com hosts.

Endpoint paths, pagination, and rate-limit behavior in this document were verified against the BigCommerce REST API documentation as published July 2026.

Table of Contents

Order Endpoints

Order data is served by the BigCommerce v2 API. Orders are read into iPaaS.com and, for the write-back scenarios, created and updated in BigCommerce.

Get Orders (GET)

[Base URL]/v2/orders

Lists orders, filtered by the poll window and any configured filters. Used to pull new and updated orders into iPaaS.com.

Get an Order by Id (GET)

[Base URL]/v2/orders/{id}

Retrieves a single order by its BigCommerce order Id.

Create an Order (POST)

[Base URL]/v2/orders

Creates an order in BigCommerce from an iPaaS.com transaction.

Update an Order (PUT)

[Base URL]/v2/orders/{id}

Updates an existing BigCommerce order.

Delete an Order (DELETE)

[Base URL]/v2/orders/{id}

Deletes a BigCommerce order.

Get Order Products (GET)

[Base URL]/v2/orders/{order_id}/products?limit=250

Lists the line-item products on an order. Used when reading an order's line detail into iPaaS.com.

Get an Order Product by Id (GET)

[Base URL]/v2/orders/{order_id}/products/{id}

Retrieves a single order line-item product.

Get Order Shipping Addresses (GET)

[Base URL]/v2/orders/{order_id}/shipping_addresses

Lists the shipping addresses on an order.

Get an Order Shipping Address by Id (GET)

[Base URL]/v2/orders/{order_id}/shipping_addresses/{id}

Retrieves a single order shipping address.

Get Order Coupons (GET)

[Base URL]/v2/orders/{order_id}/coupons

Lists the coupons (order-level discounts) applied to an order.

Get Order Taxes (GET)

[Base URL]/v2/orders/{order_id}/taxes

Lists the tax rows on an order.

Get an Order Tax by Id (GET)

[Base URL]/v2/orders/{order_id}/taxes/{id}

Retrieves a single order tax row.

Get Order Messages (GET)

[Base URL]/v2/orders/{order_id}/messages

Lists the notes/messages attached to an order.

Get an Order Message by Id (GET)

[Base URL]/v2/orders/{order_id}/messages/{id}

Retrieves a single order note/message.

Get Order Statuses (GET)

[Base URL]/v2/orders/{order_id}/order_statuses

Lists the status history for an order.

Get an Order Status by Id (GET)

[Base URL]/v2/orders/{order_id}/order_statuses/{id}

Retrieves a single order status entry.

Order Refund and Transaction Endpoints

These endpoints read payment-transaction and refund detail associated with orders. They are served by the v3 API.

Get Order Payment Transactions (GET)

[Base URL]/orders/{order_id}/transactions

Lists the payment transactions recorded against an order (authorizations, captures, refunds). Used to build the payment detail on an iPaaS.com transaction.

Get Order Refunds (GET)

[Base URL]/orders/{order_id}/payment_actions/refunds

Lists the refunds issued against a specific order.

Get Refunds by Id (GET)

[Base URL]/orders/payment_actions/refunds?id:in={refundId}

Retrieves one or more refunds by refund Id. The id:in query parameter accepts a comma-separated list of Ids.

Shipment Endpoints

Shipments are served by the v2 API and are written from iPaaS.com when fulfillment data is synchronized to BigCommerce.

Get Order Shipments (GET)

[Base URL]/v2/orders/{order_id}/shipments

Lists the shipments recorded on an order.

Get an Order Shipment by Id (GET)

[Base URL]/v2/orders/{order_id}/shipments/{id}

Retrieves a single shipment, including its tracking number.

Create a Shipment (POST)

[Base URL]/v2/orders/{order_id}/shipments

Creates a shipment on an order.

Update a Shipment (PUT)

[Base URL]/v2/orders/{order_id}/shipments/{id}

Updates an existing shipment (for example, to set or change a tracking number).

Product Endpoints

Products are served by the v3 Catalog API. This is the core write path for the From iPaaS.com product flow.

Get Products (GET)

[Base URL]/catalog/products

Lists products. Used when reading products into iPaaS.com and when resolving an existing product before an update.

Get a Product by Id (GET)

[Base URL]/catalog/products/{product_id}

Retrieves a single product by its BigCommerce product Id.

Get a Product including Categories (GET)

[Base URL]/catalog/products/{product_id}?include_fields=categories

Retrieves a product with only its category assignments included. Used when synchronizing a product's category membership.

Get a Product by SKU (GET)

[Base URL]/catalog/products?sku={sku}

Looks up a product by its SKU. Used to match an incoming product to an existing BigCommerce product when no external-Id link exists yet.

Create a Product (POST)

[Base URL]/catalog/products

Creates a new product in BigCommerce.

Update a Product (PUT)

[Base URL]/catalog/products/{product_id}

Updates an existing product.

Delete a Product (DELETE)

[Base URL]/catalog/products/{product_id}

Deletes a single product.

Delete All Products by Visibility (DELETE)

[Base URL]/catalog/products?is_visible=true
[Base URL]/catalog/products?is_visible=false

Bulk-deletes products filtered by visibility. Used only by cleanup/reset operations, not by routine synchronization.

Product Variant Endpoints

Variants are child records of a product in the v3 Catalog API.

Get Product Variants (GET)

[Base URL]/catalog/products/{product_id}/variants

Lists the variants of a product.

Get a Product Variant by Id (GET)

[Base URL]/catalog/products/{product_id}/variants/{variant_id}

Retrieves a single variant.

Get a Product Variant by SKU (GET)

[Base URL]/catalog/products/{productId}/variants?sku={variantsku}

Looks up a variant by SKU within a product.

Get Variants by SKU (GET)

[Base URL]/catalog/variants?sku={sku}

Looks up variants store-wide by SKU (across all products).

Create a Product Variant (POST)

[Base URL]/catalog/products/{product_id}/variants

Creates a variant under a product. Also used to write variant inventory.

Update a Product Variant (PUT)

[Base URL]/catalog/products/{product_id}/variants/{variant_id}

Updates a variant, including its inventory level.

Delete a Product Variant (DELETE)

[Base URL]/catalog/products/{product_id}/variants/{variant_id}

Deletes a variant.

Product Option Endpoints

Product options and option values define the variant matrix. Served by the v3 Catalog API.

Get Product Options (GET)

[Base URL]/catalog/products/{product_id}/options

Lists the options defined on a product (for example, "Size", "Color").

Create a Product Option (POST)

[Base URL]/catalog/products/{product_id}/options

Creates a new option on a product.

Update a Product Option (PUT)

[Base URL]/catalog/products/{product_id}/options/{option_id}

Updates an existing product option.

Get Product Option Values (GET)

[Base URL]/catalog/products/{product_id}/options/{option_id}/values

Lists the values defined under a product option.

Update a Product Option Value (PUT)

[Base URL]/catalog/products/{product_id}/options/{option_id}/values/{value_id}

Updates a specific option value.

Product Custom Field, Image, and Modifier Endpoints

These are additional child collections on a product in the v3 Catalog API.

Get Product Custom Fields (GET)

[Base URL]/catalog/products/{product_id}/custom-fields

Lists a product's custom fields.

Get a Product Custom Field by Id (GET)

[Base URL]/catalog/products/{product_id}/custom-fields/{custom_field_id}

Retrieves a single custom field.

Create a Product Custom Field (POST)

[Base URL]/catalog/products/{product_id}/custom-fields

Creates a custom field on a product.

Update a Product Custom Field (PUT)

[Base URL]/catalog/products/{product_id}/custom-fields/{custom_field_id}

Updates a custom field.

Delete a Product Custom Field (DELETE)

[Base URL]/catalog/products/{product_id}/custom-fields/{custom_field_id}

Deletes a custom field.

Get Product Images (GET)

[Base URL]/catalog/products/{product_id}/images

Lists a product's images.

Get a Product Image by Id (GET)

[Base URL]/catalog/products/{product_id}/images/{image_id}

Retrieves a single product image.

Create a Product Image (POST)

[Base URL]/catalog/products/{product_id}/images

Adds an image to a product.

Update a Product Image (PUT)

[Base URL]/catalog/products/{product_id}/images/{image_id}

Updates an existing product image.

Delete a Product Image (DELETE)

[Base URL]/catalog/products/{product_id}/images/{image_id}

Deletes a product image.

Get Product Modifiers (GET)

[Base URL]/catalog/products/{product_id}/modifiers

Lists a product's modifiers.

Get a Product Modifier by Id (GET)

[Base URL]/catalog/products/{product_id}/modifiers/{modifier_id}

Retrieves a single modifier.

Create a Product Modifier (POST)

[Base URL]/catalog/products/{product_id}/modifiers

Creates a modifier on a product.

Update a Product Modifier (PUT)

[Base URL]/catalog/products/{product_id}/modifiers/{modifier_id}

Updates a modifier.

Delete a Product Modifier (DELETE)

[Base URL]/catalog/products/{product_id}/modifiers/{modifier_id}

Deletes a modifier.

Delete a Product Modifier Value (DELETE)

[Base URL]/catalog/products/{product_id}/modifiers/{modifier_id}/values/{option_id}

Deletes a specific value from a product modifier.

Product Metafield Endpoints

Metafields store custom key/value data on products and variants in the v3 Catalog API.

Get Product Metafields (GET)

[Base URL]/catalog/products/{product_id}/metafields

Lists a product's metafields.

Create a Product Metafield (POST)

[Base URL]/catalog/products/{product_id}/metafields

Creates a metafield on a product.

Update a Product Metafield (PUT)

[Base URL]/catalog/products/{product_id}/metafields/{metafield_id}

Updates a product metafield.

Delete a Product Metafield (DELETE)

[Base URL]/catalog/products/{product_id}/metafields/{metafield_id}

Deletes a product metafield.

Get Product Variant Metafields (GET)

[Base URL]/catalog/products/{product_id}/variants/{variantId}/metafields

Lists a variant's metafields.

Create a Product Variant Metafield (POST)

[Base URL]/catalog/products/{product_id}/variants/{variantId}/metafields

Creates a metafield on a variant.

Update a Product Variant Metafield (PUT)

[Base URL]/catalog/products/{product_id}/variants/{variantId}/metafields/{metafield_id}

Updates a variant metafield.

Delete a Product Variant Metafield (DELETE)

[Base URL]/catalog/products/{product_id}/variants/{variantId}/metafields/{metafield_id}

Deletes a variant metafield.

Product Channel Assignment Endpoints

Channel assignments control which storefront channels a product is published to, in the v3 Catalog API.

Get Product Channel Assignments (GET)

[Base URL]/catalog/products/channel-assignments?channel_id:in={channel_id}&product_id:in={product_id}

Lists the channels a product is assigned to. The channel_id:in and product_id:in query parameters each accept a comma-separated list of Ids.

Update Product Channel Assignments (PUT)

[Base URL]/catalog/products/channel-assignments

Creates or updates product-to-channel assignments.

Delete Product Channel Assignments (DELETE)

[Base URL]/catalog/products/channel-assignments?channel_id:in={channel_id}&product_id:in={product_id}

Removes product-to-channel assignments matching the supplied channel and product Ids.

Product Brand Endpoints

Brands are top-level catalog records in the v3 Catalog API.

Get Brands (GET)

[Base URL]/catalog/brands

Lists brands. Used to resolve a brand name to a brand Id during product writes.

Get a Brand by Id (GET)

[Base URL]/catalog/brands/{brand_id}

Retrieves a single brand.

Create a Brand (POST)

[Base URL]/catalog/brands

Creates a brand.

Update a Brand (PUT)

[Base URL]/catalog/brands/{brand_id}

Updates a brand.

Delete a Brand (DELETE)

[Base URL]/catalog/brands/{brand_id}

Deletes a brand.

Category Endpoints

Categories are organized into category trees in the v3 Catalog API.

Get Categories (GET)

[Base URL]/catalog/trees/categories?category_id:in={categoryId}

Retrieves categories by Id. The category_id:in query parameter accepts a comma-separated list of Ids.

Get Categories in a Tree (GET)

[Base URL]/catalog/trees/{tree_id}/categories

Lists all categories belonging to a specific category tree.

Create a Category (POST)

[Base URL]/catalog/trees/categories

Creates one or more categories.

Update Categories (PUT)

[Base URL]/catalog/trees/categories

Updates one or more categories.

Update a Category Tree (PUT)

[Base URL]/catalog/trees

Creates or updates a category tree.

Delete Categories by Id (DELETE)

[Base URL]/catalog/trees/categories?category_id:in={categoryId}

Deletes categories matching the supplied Ids.

Delete All Categories (DELETE)

[Base URL]/catalog/trees/categories

Bulk-deletes categories. Used only by cleanup/reset operations, not by routine synchronization.

Price List Endpoints

Price lists carry customer-group-specific and variant-specific pricing in the v3 API.

Get Price List Assignments by Customer Group (GET)

[Base URL]/pricelists/assignments?customer_group_id:in={customerGroupId}

Lists the price lists assigned to a customer group. The customer_group_id:in query parameter accepts a comma-separated list of Ids.

Get Price List Records by SKU (GET)

[Base URL]/pricelists/{priceListId}/records?sku:in={sku}

Retrieves price-list records for one or more SKUs within a price list.

Create or Update Price List Records (PUT)

[Base URL]/pricelists/{priceListId}/records

Creates or updates price-list records (upsert) within a price list.

Delete a Price List Record by Variant (DELETE)

[Base URL]/pricelists/{priceListId}/records?variant_id:in={variantId}

Removes price-list records for one or more variants within a price list.

Customer Endpoints

Customers are served by the v3 API.

Get Customers (GET)

[Base URL]/customers

Lists customers, optionally filtered. The integration commonly requests related data in the same call using the include parameter — for example include=addresses,storecredit,attributes,formfields.

Create a Customer (POST)

[Base URL]/customers

Creates one or more customers.

Update a Customer (PUT)

[Base URL]/customers

Updates one or more customers.

Delete Customers (DELETE)

[Base URL]/customers

Deletes customers matching the supplied filter.

Customer Address Endpoints

Customer addresses are a child collection of customers in the v3 API.

Create a Customer Address (POST)

[Base URL]/customers/addresses

Creates one or more customer addresses.

Update a Customer Address (PUT)

[Base URL]/customers/addresses

Updates one or more customer addresses.

Customer Attribute Endpoints

Customer attributes are store-defined custom fields on customers, in the v3 API.

Get Customer Attributes (GET)

[Base URL]/customers/attributes

Lists customer attribute definitions.

Create a Customer Attribute (POST)

[Base URL]/customers/attributes

Creates a customer attribute definition.

Update a Customer Attribute (PUT)

[Base URL]/customers/attributes

Updates a customer attribute definition.

Get Customer Attribute Values (GET)

[Base URL]/customers/attribute-values

Lists the attribute values set on customers.

Set a Customer Attribute Value (PUT)

[Base URL]/customers/attribute-values

Creates or updates attribute values on customers (upsert).

Customer Group Endpoints

Customer groups map to iPaaS.com customer categories and are served by the v2 API.

Get Customer Groups (GET)

[Base URL]/v2/customer_groups

Lists customer groups.

Get a Customer Group by Id (GET)

[Base URL]/v2/customer_groups/{id}

Retrieves a single customer group.

Create a Customer Group (POST)

[Base URL]/v2/customer_groups

Creates a customer group.

Update a Customer Group (PUT)

[Base URL]/v2/customer_groups/{id}

Updates a customer group.

Delete a Customer Group (DELETE)

[Base URL]/v2/customer_groups/{id}

Deletes a customer group.

Gift Card Endpoints

Gift cards (gift certificates) are served by the v2 API.

Get Gift Cards (GET)

[Base URL]/v2/gift_certificates

Lists gift certificates. Used to read gift cards into iPaaS.com.

Get a Gift Card by Id (GET)

[Base URL]/v2/gift_certificates/{Id}

Retrieves a single gift certificate.

Create a Gift Card (POST)

[Base URL]/v2/gift_certificates

Creates a gift certificate.

Update a Gift Card (PUT)

[Base URL]/v2/gift_certificates/{id}

Updates a gift certificate.

Delete a Gift Card (DELETE)

[Base URL]/v2/gift_certificates/{id}

Deletes a gift certificate.

Payment Method and Tax Class Endpoints

These reference-data endpoints are served by the v2 API.

Get Payment Methods (GET)

[Base URL]/v2/payments/methods

Lists the store's enabled payment methods. Used to map payment data on incoming orders.

Get Tax Classes (GET)

[Base URL]/v2/tax_classes

Lists the store's tax classes.

Get a Tax Class by Id (GET)

[Base URL]/v2/tax_classes/{id}

Retrieves a single tax class.

Storefront Redirect Endpoints

Storefront redirects are managed through the v3 API when product URLs change.

Update Storefront Redirects (PUT)

[Base URL]/storefront/redirects

Creates or updates 301 redirects on the storefront (for example, after a product's URL changes).

Webhook Endpoints

Webhooks (hooks) are served by the v2 API and let the integration subscribe to store events.

Get Webhooks (GET)

[Base URL]/v2/hooks

Lists the webhooks registered on the store.

Get a Webhook by Id (GET)

[Base URL]/v2/hooks/{id}

Retrieves a single webhook.

Create a Webhook (POST)

[Base URL]/v2/hooks

Registers a new webhook.

Update a Webhook (PUT)

[Base URL]/v2/hooks/{id}

Updates an existing webhook.

Delete a Webhook (DELETE)

[Base URL]/v2/hooks/{id}

Removes a webhook.

B2B Company Endpoints

The following endpoints are served by the B2B Edition API and are only called when B2B Edition is enabled on the subscription. Unlike the REST Management API, B2B Edition endpoints do not carry the store hash in the path — the store is identified by the request headers instead.

Get Companies (GET)

[B2B Base URL]/companies?limit={limit}&offset={offset}

Lists companies, paged with limit and offset.

Get a Company by Id (GET)

[B2B Base URL]/companies/{id}

Retrieves a single company.

Create a Company (POST)

[B2B Base URL]/companies

Creates a company.

Update a Company (PUT)

[B2B Base URL]/companies/{companyId}

Updates a company.

Delete a Company (DELETE)

[B2B Base URL]/companies/{companyId}

Deletes a company.

Assign a Company Status (PUT)

[B2B Base URL]/companies/{companyId}/status

Sets a company's status (for example, to approve or reject a company).

Get Company Payment Terms (GET)

[B2B Base URL]/companies/{companyId}/payment-terms

Retrieves the payment terms configured for a company.

Update Company Payment Terms (PUT)

[B2B Base URL]/companies/{companyId}/payment-terms

Updates the payment terms for a company.

Update Company Payment Methods (PUT)

[B2B Base URL]/companies/{companyId}/payments

Updates the payment methods enabled for a company.

B2B Company Address Endpoints

Company addresses are managed through the B2B Edition API.

Get a Company Address by Id (GET)

[B2B Base URL]/addresses/{id}

Retrieves a single company address.

Get Company Addresses by Filter (GET)

[B2B Base URL]/addresses?{filter}

Lists company addresses matching a filter (for example, by company Id).

Create a Company Address (POST)

[B2B Base URL]/addresses

Creates a company address.

Update a Company Address (PUT)

[B2B Base URL]/addresses/{address_id}

Updates a company address.

B2B Company Relationship Endpoints

These endpoints manage parent/subsidiary company hierarchies and super-admin relationships in the B2B Edition API.

Get Company Super Admins (GET)

[B2B Base URL]/companies/{id}/super-admins

Lists the super-admin users attached to a company.

Get Companies for a Super Admin (GET)

[B2B Base URL]/super-admins/{id}/companies

Lists the companies a super-admin is attached to.

Get a Super Admin by Id (GET)

[B2B Base URL]/super-admins/info/{id}

Retrieves a super-admin's details.

Get Company Subsidiaries (GET)

[B2B Base URL]/companies/{parentId}/subsidiaries

Lists a company's subsidiary companies.

Get Company Hierarchy (GET)

[B2B Base URL]/companies/{childId}/hierarchy

Retrieves the hierarchy (parent chain) for a company.

Set a Company's Parent (POST)

[B2B Base URL]/companies/{childId}/parent

Assigns a parent company to a company, establishing the parent/subsidiary relationship.

Remove a Subsidiary (DELETE)

[B2B Base URL]/companies/{parentId}/subsidiaries/{childId}

Removes a subsidiary from a parent company.

Get Company Sales Staff (GET)

[B2B Base URL]/sales-staffs?companyId={companyId}

Lists the sales-staff users assigned to a company.

Assign Company Sales Staff (PUT)

[B2B Base URL]/sales-staffs/{Id}

Assigns or updates a sales-staff assignment.

B2B Company User Endpoints

Company users (B2B customers) are managed through the B2B Edition API.

Get a Company User by Id (GET)

[B2B Base URL]/users/{id}

Retrieves a single company user.

Get a Company User by Customer Id (GET)

[B2B Base URL]/users/customer/{id}

Retrieves a company user by the associated storefront customer Id.

Create a Company User (POST)

[B2B Base URL]/users

Creates a company user.

Update a Company User (PUT)

[B2B Base URL]/users/{userId}

Updates a company user.

Delete a Company User (DELETE)

[B2B Base URL]/users/{userId}

Deletes a company user.

Get Extra Fields (GET)

[B2B Base URL]/{tableName}/extra-fields

Retrieves the custom "extra field" definitions for a B2B resource type (for example, companies or users). {tableName} identifies the B2B resource whose extra-field schema is being read.

B2B Quote Endpoints

Quotes (requests for quote) are read through the B2B Edition API.

Get a Quote by Id (GET)

[B2B Base URL]/rfq/{quoteId}

Retrieves a single quote by its Id, including its line items and addresses.

B2B Order and Invoice Endpoints

B2B orders and invoices are managed through the B2B Edition API.

Get a B2B Order by Id (GET)

[B2B Base URL]/orders/{id}

Retrieves a single B2B order.

Get B2B Order Products (GET)

[B2B Base URL]/orders/{OrderId}/products

Lists the line-item products on a B2B order.

Get Invoices by Filter (GET)

[B2B Base URL]/ip/invoices?{filter}

Lists invoices matching a filter.

Get an Invoice by Id (GET)

[B2B Base URL]/ip/invoices/{invoiceId}

Retrieves a single invoice.

Create an Invoice from an Order (POST)

[B2B Base URL]/ip/orders/{orderId}/invoices

Generates an invoice from a B2B order.

B2B Payment Endpoints

B2B payment data is read through the B2B Edition API.

Get Store Payment Methods (GET)

[B2B Base URL]/payments

Lists the store-level payment methods available to B2B.

Get Invoice Payments (GET)

[B2B Base URL]/ip/payments?invoiceId={invoiceId}&offset=0&limit=100

Lists the payments recorded against an invoice, paged with offset and limit.

Get Payments by Filter (GET)

[B2B Base URL]/ip/payments?{filter}

Lists invoice payments matching a filter.

Authorization Endpoints

The integration authenticates to the REST Management API using a store-level API account access token, sent on each request in the X-Auth-Token header (with the API account's Client ID, where applicable). The store is identified by the store hash in the URL path. This token does not expire on a fixed schedule — it remains valid until the API account is deleted or its scopes are changed in BigCommerce. There is no token-exchange call for routine API traffic; the token is created once in the BigCommerce control panel and entered into the subscription settings. For credential setup and the exact scopes to grant, see the BigCommerce Connections and Settings article.

For the B2B Edition API, requests are authenticated with a B2B server-to-server auth token sent in the X-Auth-Token header together with the X-Store-Hash header. When a dedicated B2B token is required, the integration obtains it from BigCommerce's B2B authentication endpoint:

POST https://api-b2b.bigcommerce.com/api/io/auth/backend

Some app-based installations complete a one-time OAuth authorization when the app is connected. In that flow, BigCommerce issues the access token through its OAuth token endpoint:

POST https://login.bigcommerce.com/oauth2/token

This exchange happens only during app installation/authorization, not during routine synchronization.

Pagination

The v3 REST Management API returns list results in a data array wrapped in a response envelope that includes a meta.pagination object with total, count, per_page, current_page, and total_pages. List requests are paged with the page and limit query parameters (default page size is 50; the maximum is 250). When a list response reports more than one page, the integration automatically requests the remaining pages and combines the results, so multi-page result sets are handled transparently.

The v2 REST Management API does not use the meta.pagination envelope; it returns a plain array and is paged with page and limit query parameters. An empty response (HTTP 204 No Content) indicates there are no further pages.

The B2B Edition API pages with offset and limit query parameters, as shown on the company and invoice-payment endpoints above.

Pagination behavior above was confirmed against the BigCommerce REST API documentation as published July 2026.

Rate Limits and Concurrency

BigCommerce rate-limits the REST Management API using a request quota that refreshes on a rolling 30-second window. Per the BigCommerce API rate-limit documentation (published July 2026), the quota per 30-second window depends on the store's plan:

Plan

Quota per 30-second window

Approximate hourly ceiling

Standard / Plus

150 requests

~20,000 requests/hour

Pro

450 requests

~60,000 requests/hour

Enterprise

Varies by plan and resource type

Enterprise (Unlimited Rate Plan)

No fixed request rate limit

Every REST Management API response carries the current rate-limit state in these headers:

Header

Meaning

X-Rate-Limit-Requests-Quota

Total requests allowed in the current window

X-Rate-Limit-Requests-Left

Requests remaining in the current window

X-Rate-Limit-Time-Window-Ms

Size of the rate-limit window in milliseconds (30000)

X-Rate-Limit-Time-Reset-Ms

Milliseconds until the quota resets

When the quota is exhausted, BigCommerce returns HTTP 429 Too Many Requests. The integration reads these headers and, on a 429, pauses and retries after the reset window rather than failing the transfer outright. It also retries transient BigCommerce server errors (HTTP 500, 502, 503, 504) a small number of times with a short backoff before surfacing an error. If persistent rate-limit or server errors continue to appear in your transfer logs, reduce the volume or frequency of transfers, or contact iPaaS.com Support. Repeated 429 responses are reported through the standard error path — see the BigCommerce Integration - Error Messages article for how these surface.

The B2B Edition API is subject to its own throttling. When B2B synchronization volume is high, stagger B2B transfers to avoid overwhelming the B2B endpoints.

Related Documents

External References

Did this answer your question?