Skip to main content
POST
Create a replenishment

Authorizations

Authorization
string
header
required

Token returned by POST /auth/token, sent as Authorization: Bearer <token>.

Body

application/json
store_id
integer
required

Store that owns the stock.

Example:

1234

products
object[]
required

Lines to announce (at least one).

Minimum array length: 1
warehouse_id
integer

Destination warehouse. Must be assigned to the store. Defaults to the store's first warehouse.

Example:

7

expected_arrived_at
string<date-time>

Expected arrival date (ISO 8601).

Example:

"2026-11-02T15:00:00Z"

notes
string

Free-text notes for the warehouse.

Example:

"Pallet 2 contains fragile items"

external_reference
string

Your reference for the shipment (purchase order, transfer number...).

Example:

"PO-0001"

unique_external_reference
boolean
default:false

When true, external_reference is required and the create is idempotent per store on that reference (see endpoint description).

Example:

true

sell_ahead
boolean
default:false

When true, the announced units become sellable immediately. Such replenishments cannot be updated later.

Example:

false

is_b2b
boolean

Legacy way to choose the inventory scope: true is equivalent to inventory_scope: b2b, false to d2c. Ignored when inventory_scope is sent.

Example:

false

inventory_scope
enum<string>

Which sales channel the received stock serves. shared is only valid for stores that operate both B2B and D2C. Omit to use the store's default.

Available options:
d2c,
b2b,
shared
Example:

"d2c"

invoice
object

Already-issued NF-e of entry, required for Brazilian stores whose NF-e is issued by their own provider instead of Cubbo.

Response

Replenishment created

Replenishment as returned by create and update.

id
integer

Replenishment id; use it as replenishment_id on the other endpoints.

Example:

55001

status
enum<string>

Lifecycle status of a replenishment.

  • WITHOUT_SCHEDULING: created at a warehouse that books receiving appointments natively, but no appointment has been scheduled yet.
  • PENDING: registered but not yet requested to the warehouse (pre-arrival).
  • REQUESTED: announced to the warehouse and awaiting arrival; the initial status at warehouses without native appointment scheduling, and the status after an appointment is booked.
  • IN_TRANSIT: the shipment is on its way to the warehouse.
  • RECEIVED: the shipment was recorded at the dock; counting has not started.
  • PROCESSING: the warehouse is receiving and counting the units (stock has arrived).
  • IN_PUTAWAY: received units are being placed in storage locations.
  • COMPLETED: receiving and putaway finished; completed_at is set.
  • CANCELED: the replenishment was canceled; it no longer counts for external-reference uniqueness.
Available options:
WITHOUT_SCHEDULING,
PENDING,
REQUESTED,
IN_TRANSIT,
RECEIVED,
PROCESSING,
IN_PUTAWAY,
COMPLETED,
CANCELED
Example:

"REQUESTED"

store_id
integer

Store the replenishment belongs to.

Example:

1234

notes
string | null

Free-text notes for the warehouse.

Example:

"Pallet 2 contains fragile items"

created_at
string<date-time>

Creation time.

Example:

"2026-10-12T14:03:11.512Z"

expected_arrived_at
string<date-time> | null

Expected arrival date declared on creation.

Example:

"2026-11-02T15:00:00.000Z"

sell_ahead
boolean | null

Whether the announced units were made sellable before arrival.

Example:

false

declared_value
string | null

Declared total value of the shipment, as a decimal string; not settable through this API, so usually null.

Example:

null

warehouse_id
integer

Destination warehouse id.

Example:

7

replenishment_products
object[]

Announced lines.

warehouse
object

Destination warehouse of the replenishment.