Deposit not applied at checkout
If Downpay is installed and configured but the deposit is not being applied at checkout, this guide walks you through the most common reasons it happens and how to fix them. This is usually caused by a part of the page's add to cart flow that is outside of Downpay's standard integration, such as a custom button, a third-party app, or a page builder.
On this page:
- How Downpay attaches a deposit
- Common causes
- How to diagnose
- Fix: Custom or AI-generated add to cart buttons
- Fix: Third-party apps
Overview
If a customer selects the deposit option on your product page but is charged the full price at checkout, it typically means the product was added to the cart without a selling plan attached. This can happen for a number of reasons unrelated to Downpay itself.
How Downpay attaches a deposit
Downpay signals a deposit purchase to Shopify by attaching a selling plan ID to the cart line item. It does this by injecting a hidden selling_plan field into any standard Shopify product form on the page and by storing the selected value at window.downpay.selected_selling_plan_id.
If the cart request is made without that selling plan field, Shopify has no deposit instruction and processes the order at full price.
Common causes
- Custom or AI-generated add to cart buttons that call
/cart/add.jsdirectly viafetchwithout reading the selling plan from Downpay - Third-party apps (page builders, product options, upsells, custom cart drawers, etc.) that handle their own add to cart flow and do not pass the selling plan through
- Quick add buttons on collection or home pages that bypass the product form entirely (see our quick add button guide)
- Headless or custom storefronts that do not use Shopify's standard product form (see our headless and custom storefront documentation)
How to diagnose
The fastest way to confirm the issue is to check whether selling_plan is present on the cart line item after adding the product.
- Add the product to your cart with the deposit option selected
- Visit
yourstore.myshopify.com/cart.jsin your browser - In the response, find the item and look for a
selling_plan_allocationfield
If selling_plan is null or missing, the selling plan was not included in the cart request and that is the source of the problem.
Fix: Custom or AI-generated add to cart buttons
If the issue is on a product page with a custom-built or AI-generated add to cart button, the button's JavaScript needs to read the selected selling plan from Downpay and include it in the cart payload.
Replace your existing fetch('/cart/add.js', ...) call with the following:
var sellingPlanId = (window.downpay && window.downpay.selected_selling_plan_id) || null;
var cartPayload = { id: variantId, quantity: 1 };
if (sellingPlanId) cartPayload.selling_plan = sellingPlanId;
fetch('/cart/add.js', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(cartPayload)
});
When a customer selects full price, selected_selling_plan_id is null and the field is omitted. Shopify handles that correctly as a regular purchase.
If your custom section also handles variant switching, make sure it dispatches the correct event so Downpay can recalculate the deposit amount in the widget:
document.dispatchEvent(new CustomEvent('theme:variant:change', {
bubbles: true,
detail: { variant: matched } // replace "matched" with your selected variant object
}));
Fix: Third-party apps
If the issue is caused by a third-party app handling the add to cart flow, the fix needs to come from that app. Downpay cannot inject the selling plan into another app's request.
Steps to resolve:
- Identify which app is handling the add to cart action on the affected page
- Contact that app's support team and explain that their cart request needs to include the
selling_planparameter when a selling plan is selected. - Point them to Shopify's documentation on selling plan cart requests if needed
If the app cannot support selling plans, it may not be compatible with Downpay on that page and you may wish to review our compatibility list to find another app that works with Downpay.
Template email when contacting apps about this issue
Use the email template below when contacting other Shopify apps about this issue.
Hi [App Name] Support,
I'm using your app alongside Downpay (a Shopify deposit and split payment app) and running into a compatibility issue.
When your app handles the add to cart action, it is not including the selling_plan parameter in the cart request. Downpay relies on this parameter to attach a deposit purchase option to the cart line item. Without it, Shopify processes the order at full price instead of splitting the payment.
The fix on your end would be to check for a selected selling plan before submitting the cart request and include it in the payload if one is present. The selected selling plan ID is available at window.downpay.selected_selling_plan_id on the page.
The cart request should look something like this:
{
"id": variantId,
"quantity": 1,
"selling_plan": sellingPlanId
}
Shopify's documentation on selling plan cart requests may be helpful here:
https://shopify.dev/docs/api/storefront/latest/mutations/cartLinesAdd
Happy to share more details or connect you with the Downpay team if that would help move things along.
Thanks,
[Your name]
[Store name]
Updated on: 13/04/2026
Thank you!