Skip to main content
Checkout links unlock one-click ordering on Sibi from anywhere in the web. Can be configured using URL params.

Example

Most use-cases for our API can be abstracted to “I have picked some items to purchase and would like to place the order”. We have found that many of those can have their ordering API needs met with a URL configurable checkout page. For example, the following Checkout link will allow a user to purchase a specific GE model dishwasher and ice making machine: https://checkout.sibipro.com/?manufacturer=ge&sku=CDD420P3TD1&sku=CDD420P2TS1 Most other information from the checkout page can be pre-configured via URL query parameters. For example, the checkout URL can specify a specific property address that order should be associated with, or a specific delivery date to request when placing the order.

General Order Query Parameters

manufacturer

string - Name of the manufacturer who makes the product.

distribution

string - Optional parameter to specify which distribution center to order from. If not specified, it will automatically select the distribution center with all products available that is closest to the property associated with the order.

requestedDeliveryDate

string - An ISO8601 date string representing when the order should be delivered. If the requested delivery date is not available, the page will show an error message and allow the user to switch to the earliest available delivery date. If a requested delivery date is not present in URL, the UI will automatically choose the earliest available delivery date.

poNumber

string - An optional parameter that can be used to pre-fill the po number input field.

Line Item Order Query Parameters

Each line item must be prefixed with with a unique <index> value, eg. 1.sku=CDD420P2TS1&2.sku=ZJB069BR4P. At least one line item must be provided.

<index>.sku

string - SKU is required for each line item. The SKU must belong to the specified manufacturer or the page will return an error explaining that the product(s) can’t be found.

<index>.quantity

integer - Adjusts the quantity of that line item to purchase. Defaults to 1 when not provided. For example, when you want to order 2 of SKU CDD420P2TS1, you would provide ?1.sku=CDD420P2TS1&1.quantity=2.

<index>.unit

integer - Adjusts the unit that the line item is purchased in. Defaults to “Each” when not provided. For example, when you want to order a “Box” of SKU CDD420P2TS1, you would provide ?1.sku=CDD420P2TS1&1.unit=Box.

<index>.addonId

string - Specifies an addon to be purchased for a given line itme. It can be specified more than once to represent more than one addon for a given sku.

<index>.options

string - Specifies a comma separated list of option key/value pairs to be purchased for a given line item. For example, when you want to order SKU CDD420P2TS1 with a red color option, you would provide ?1.sku=CDD420P2TS1&1.options=color,red.

Extended Warranty Parameters

Extended warranty coverage is offered per-product but applies at the order level: all line items belonging to the same order (same shop, distribution center, and fulfillment method) share a single warranty selection. When two or more line items are grouped into the same order, set the warranty parameters on each of those line items to the same value — the checkout UI enforces this for any state changes the user makes after page load. Warranty parameters are only honored when the user’s organization has warranty purchases enabled and at least one line item in the order has an eligible warranty. When neither is the case, the parameters are silently ignored and no warranty UI is rendered.

<index>.warranty

boolean - When true, the “Add extended warranty coverage” checkbox on this line item is pre-selected, and an extended warranty line item is added to the order’s pricing summary for this product. Defaults to false. Example: ?1.sku=CDD420P2TS1&1.warranty=true.

<index>.warrantySku

string - Optional. Pre-selects a specific warranty SKU for this line item instead of relying on the default auto-pick triggered by <index>.warranty=true. The supplied SKU must be one of the warranty options the backend offers for this product; otherwise the checkout page returns an error. When both <index>.warrantySku and <index>.warranty=true are provided, the explicit warrantySku takes precedence. The combination <index>.warrantySku with <index>.warranty=false is rejected as a conflicting input.

<index>.warrantyPaymentMethodId

string - Optional. Overrides the payment method used to charge the warranty sub-order. If not provided, the warranty sub-order defaults to the first available warranty payment method for the order. Only honored when <index>.warranty=true and when the supplied id is present in the order’s available warranty payment methods; otherwise it is discarded and the default is used.

<index>.offeredWarranty

boolean - Signals that the link generator already offered extended warranty coverage to the user upstream (for example, on a redirect from a warranty enforcement flow). Suppresses re-prompting the user to opt in. Defaults to false. Typically set together with <index>.warranty=true by the redirect that performs the enforcement.

Address Parameters

The address must provide enough information to unambiguously identify a single address of an existing property in Sibi. If no address information is provided in the URL, the checkout UI will show the user a property picker they can use to select the address they wish to associate with the order. If we find multiple properties that match the address provided, the checkout UI will show the user the property picker with the search term pre-filled with the address provided. The address can either be passed in all at once using the address query param, or in pieces using line1, line2, city, stateOrProvince, postalCode params. If both address and the individual pieces are present, the address parameter will take precedence. The pieces API is deprecated and may be removed in the near future.

addressSearch

string The complete address as a query param. If a partial address is provided, the UI will attempt to find a single address that matches it. If it can find only one address, it will use it. If it finds multiple, it will show the address picker with the search bar pre-populated with the search term from the query param.

line1 (deprecated)

string - The first line of the address. Generally indicates the house number & street it is located on. Example value: “123 Main Street”

line2 (deprecated)

string | undefined - The second line of the address (optional). Generally used to indicate a unit number. Example value: “Apartment 4B”

city (deprecated)

string - The city of the address. Example value: “New York City”

stateOrProvince (deprecated)

string - The state or province of the address. Example value: “New York”

postalCode (deprecated)

string - The postal code of the address. Example value: “10001”