Skip to main content

📦 Multi Product

Overview

The Multi Product feature allows you to group individual products into themed "Product Boxes" that users can browse and purchase through a clean and modern widget interface. Each box can represent a collectible set, mystery bundle, or any other product group with its own image, price, and metadata.

The embedded multi-product widget provides a seamless purchase experience, enabling users to choose from multiple available packages and complete a transaction directly.


🧭 Navigation

You can access this feature in the admin panel via:

Sidebar > Goods Details > Multi Product


🧩 Feature Capabilities

CapabilityDescription
Storefront brandingCustomize title, subtitle, and logo on the widget
Box creationAdd custom product bundles with their own image and pricing
Product selectionChoose individual products to associate with each box
Embed checkout widgetUsers see all available boxes and can purchase from a single interface

🔧 Admin Setup Flow

alt text

1. Storefront Branding

Under Account View, configure your public-facing display:

  • Title: Store name (e.g., Welcome to xyzGames collectible store)
  • Subtitle: Description (e.g., Purchase limited edition collectible cards…)
  • Logo: Upload your brand or promotional logo

Click Create to save these settings.


2. Create Multi Product Box

Click the + Add Box button to launch the form.

Fields:

  • Box Title: Name of the box (e.g., Red Pack)
  • Box Subtitle: Promotional message or bonus info (e.g., Free $50.00 Deposit)
  • Select Product: Choose the internal product(s) to associate
  • Optional Box Image: Upload a custom design

Click Create to add the box.


3. Manage Boxes

Once created, boxes appear in a table with the following actions:

  • Update: Modify existing box details
  • Delete: Permanently remove a box

Each row shows the box’s:

  • Image
  • Title
  • Subtitle
  • Price

🌍 Widget Integration (Multi-Product Checkout Page)

🔗 Embed URL

To enable external users to buy from your storefront:

https://checkout.1buy.io/buy-sell/multiproduct?api_key=YOUR_API_KEY&multiproduct=true

Parameters:

  • api_key: Your unique store API key
  • multiproduct=true: Activates multi-product mode
ParameterDescriptionExample
api_keyYour unique store API keyapi_key=YOUR_API_KEY
multiproductActivates multi-product modemultiproduct=true
full_nameUser's full name (3 to 69 characters).full_name=John Doe
first_nameUser's full name (3 to 69 characters).first_name=John
last_nameUser's full name (3 to 69 characters).last_name=Doe
date_of_birthUser's date of birth in DD/MM/YYYY or MM/DD/YYYY format (for the USA).date_of_birth=01/01/1990
emailUser's email address.email=johndoe@example.com
phoneUser's phone number. The + is optional for the country code.phone=+1234567890
modeThe mode of operation: fast, web2, or web3. Default is fast.mode=web3
custom_idA custom order ID used to track the transaction. This can be your identifier to track your customers.custom_id=order123
langLanguage for the widget interface: en for English, fr for French, ja for Japanese, es for Spanish, etc.lang=en
campaignIDA unique campaign ID for tracking purposes.campaignID=campaign123
utm_sourceA UTM parameter to track the traffic source for the transaction.utm_source=google
redirect_urlURL to redirect the user after a successful transaction.redirect_url=https://yourwebsite.com/success
fail_redirect_urlURL to redirect the user after a failed transaction.fail_redirect_url=https://yourwebsite.com/fail
redirect_pageHow the redirect happens: new for opening in a new tab, self for redirecting in the current tab, parent for the current integrated page. Default: new.redirect_page=new
wait_timeEnables a delay before redirecting the user after the transaction. Accepts yes or no. If yes, it waits for the time specified in custom_time or defaults to 5 seconds.wait_tume=yes
custom_time(Optional) Sets a custom delay duration (in seconds) before redirecting the user. Only applies if wait_time=yes.custom_time=10
webhook_waitWait for the webhook response before redirecting: yes or no (default: no).webhook_wait=yes
stateAlpha-2 code of the USA state.state=CA
countryAlpha-2 code of the country.country=US
cityCity of the user.city=Los Angeles
streetStreet of the user.street=new street
postal_codePostal code of the user.country=12345

💻 iFrame Embed Example

<iframe
src="https://checkout.1buy.io/buy-sell/multiproduct?api_key=YOUR_API_KEY&multiproduct=true"
width="780px"
height="540px"
title="1buy.io"
frameborder="1"
/>

🧑‍💻 User Experience (Widget Flow)

Once embedded or accessed via direct link, users will see:

1. Landing Screen

  • Store logo
  • Title & subtitle
  • CTA button: "Buy collectible card package"

2. Product Selection Page

  • Grid display of all multi product boxes

alt text

Each box shows:

  • Box image
  • Title (e.g., Red Pack)
  • Price (e.g., $50)
  • Subtitle (e.g., Free deposit credit)

Users can select a product and proceed to checkout securely.

🔑 Generate Hash for Multi Product Widget

To securely share your multi-product checkout page, you can generate a hash using the Hash Widget URL API. This allows you to create one-time or reusable checkout links that can be tracked and controlled.


Step 1: Prepare the URL Data

Build your multi-product widget URL as query parameters, for example: ?api_key=YOUR_API_KEY&multiproduct=true

You can add more parameters as needed (such as lang, custom_id, etc.).


Step 2: Make the API Request

Send a POST request to the Hash Widget URL API endpoint:

Endpoint

  • Production: https://api.1buy.io/api/business/product/hash_widget_url
  • Development: https://api-dev.1buy.io/api/business/product/hash_widget_url

Request Example

{
"urlData": "?api_key=YOUR_API_KEY&multiproduct=true",
"is_one_time": true
}

Set is_one_time to true if you want the link to work only once (recommended for single-use invitations).

Sample curl command

curl -X POST 'https://api.1buy.io/api/business/product/hash_widget_url' \
-H 'api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"urlData": "?api_key=YOUR_API_KEY&multiproduct=true",
"is_one_time": true
}'

Step 3: Use the Returned Hash

<iframe
src="https://checkout.1buy.io/buy-sell/multiproduct?hash=HASH_VALUE"
width="780px"
height="540px"
title="1buy.io"
frameborder="1"
/>