Create a venue

Creates a new Retailer and the Purchaser (trading relationship) linking it to your supplier. The response contains both records.

This endpoint always creates a new retailer. There is no way to attach the purchaser to a retailer that already exists in Ordermentum.

Duplicate risk. When creating venues from an external system into Ordermentum, you may lack the context needed to tell whether that
venue already exists, so you are at risk of creating a duplicate. The typical flow is the other way around: customers are created in
Ordermentum, synced out to the external system, and then updated from the external system back into Ordermentum.

The payload is flat. Retailer fields (legalName, tradingName, address, …), purchaser/trading fields (priceGroupId, scheduleIds,
paymentDelay, …) and supplierId all sit at the top level of the same object. Unknown keys are accepted and ignored.

Required: supplierId, legalName and tradingName. Everything else is optional.

If you include an address or billingAddress object, then street1, suburb, state and postcode are required within it. Omit the
object entirely and none of them are required.

isActive controls whether the relationship is live. It defaults to false — omitting it creates the purchaser with disabledAt set, i.e.
the venue exists but cannot trade. Send isActive: true for a venue that should be able to order immediately.

Activation. activatedAt is set on the purchaser automatically.

Authorization. The API key must hold customers-full or customers-create on the supplier named in supplierId, otherwise the request
returns 403.

Error responses are coarse. Almost every failure — missing legalName, an unknown supplierId, an invalid address, a database error —
surfaces as 400 {"message": "Error creating venue"} without naming the offending field. Validate the payload against this schema before
sending. Only malformed scheduleIds or users values, and the 403, return a more specific message.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params

Flat payload combining retailer fields, purchaser/trading fields and supplierId. A new retailer is always created — there is no way to attach the purchaser to an existing one. supplierId, legalName and tradingName are required; everything else is optional. Unknown properties are accepted and ignored.

uuid
required

Required. The supplier the venue trades with. The API key must hold customers-full or customers-create on it.

string
required

Required. The registered entity name.

string
required

Required. Public-facing name. Also becomes the purchaser name and seeds the retailer slug.

string

Retailer contact email. Defaults to "".

string

Defaults to "".

string

Not format-validated. Defaults to "".

string

Email of the day-to-day contact at the venue. Defaults to "".

address
object

Delivery address. Optional — but see the required keys inside it.

billingAddress
object

Billing address. Same shape as address. Optional — but see the required keys inside it.

boolean
Defaults to false

Controls whether the venue can trade. When false or omitted, the purchaser is created with disabledAt set. Send true for a live venue.

scheduleIds
array of uuids

Delivery schedules available to this venue. Validated as UUIDs.

scheduleIds
uuid

Price group applied to this venue.

uuid

Freight group. Falls back to the supplier's default freight group when omitted.

uuid

Visibility group controlling which products the venue can see.

visibilityTags
array of strings
visibilityTags

Minimum order value, as a currency amount with up to 2 decimal places (DECIMAL(10,2)). Accepted as a number or a string; always returned as a string. Defaults to 0.

boolean
string

Your reference/account code for this venue.

string | null
string | null
string
enum

When the invoice is dated. Defaults from the supplier's account settings.

Allowed:
paymentMethodTypes
array of strings

Payment methods available to this venue.

paymentMethodTypes
Allowed:
integer

Days added to the payment schedule before charging.

uuid

Sales rep assigned to this venue.

boolean
users
array of objects

Users to invite to the venue. Invites are best-effort: a failure here returns 400 "Could not send invites" even though the venue was created.

users
Responses

Language
Credentials
Header
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json