A Shopify app for preorders

Take a deposit now. Collect the balance later.

MilestonePay lets customers preorder with a percentage or fixed deposit, or nothing up front, and pay one remaining balance when their order is fulfilled or a set time after checkout. Terms show on your product page, and checkout, payments and refunds stay in Shopify.

Coming soon to the Shopify App Store Read the setup guide
Preorder

Waxed field jacket

$200.00

  1. Deposit at checkout20% today $40.00
  2. BalanceDue when the whole order is fulfilled $160.00

Estimated shipping: March 2027

An example of the terms customers see. You choose the deposit, when the balance is due and the shipping estimate.

How it works

  1. Create a payment plan

    Set the deposit, an optional preorder discount and when the balance is due. Reuse the plan across products.

  2. Assign products

    Add the plan to products or variants with an estimated shipping date and a note. The product block shows the terms.

  3. Collect the balance

    Customers pay the deposit at Shopify checkout. When the balance falls due, MilestonePay charges it through Shopify.

Features

Everything runs on Shopify's own selling plans, checkout and payment records.

  • Flexible deposits

    Ask for a percentage or a fixed amount up front, or 0% so customers pay nothing until later. Each plan has one remaining balance, due when the whole order is fulfilled or a set number of days or weeks after checkout. Add an optional preorder discount.

  • Product and variant assignments

    Assign plans to whole products or single variants, each with its own estimated shipping date and customer note. Optionally cap preorder units, or offer the preorder only when an item is out of stock.

  • Automatic balance collection

    When a balance falls due, MilestonePay charges it with the payment method the customer agreed to at checkout, using Shopify's payment mandates. Choose the time of day balances are collected. Every charge and refund is a normal Shopify transaction on the order.

  • Customer order page

    In Shopify's customer accounts, customers see their preorder terms, the shipping estimate, and what they've paid and still owe. They can request cancellation of an eligible preorder, and accept or decline a new shipping date you propose.

  • Reminders and reporting

    Optionally remind customers 7, 3 or 1 day before a balance is due and tell them when a payment fails, by app email or Shopify Flow. Reports show preorder counts and values by date, with each currency kept separate and a filter for test orders.

Good to know

  • Each plan takes one deposit and one remaining balance. MilestonePay doesn't run multi-payment instalment schedules.
  • Automatic balance collection depends on your payment gateway supporting later charges. The setup checklist asks you to test a deposit and a balance before you sell.
  • The customer order page needs Shopify's new customer accounts.
  • Preorder limits are best-effort: orders placed at the same moment can go slightly over.

Pricing

Start free and pay as your preorders grow. Prices are in US dollars and billed through Shopify. Every plan includes every feature.

  • Free

    $0/ month

    • 15 preorder orders a month
    • Then new purchases are full price
  • Starter

    $10/ month

    • 125 preorder orders a month
    • Then $0.20 per extra order
  • Growth

    $29/ month

    • 400 preorder orders a month
    • Then $0.10 per extra order
  • Unlimited

    $69/ month

    • Unlimited preorder orders
    • No per-order charges
  • A preorder order is a non-test order with at least one MilestonePay preorder item. Each order counts once, even if it's later cancelled or refunded. Test orders don't count.
  • When the Free allowance runs out, new purchases fall back to full-price checkout until the allowance resets the next calendar month or you choose a paid plan. Existing preorders keep being serviced.

Questions before you install?

Email hello@tinytiger.studio, read the setup guide, or see what happens if you uninstall.