Skip to main content

CSA Payment & Subscription Setups

This guide covers the three main CSA setups used on the platform, how the underlying payment flow works, and the steps required for each. Read the section that matches your CSA type.

Written by Louise Dollimore


CSA (Community Supported Agriculture) schemes work differently to standard box schemes. Customers typically commit to a season upfront, paying in full or in instalments, rather than being charged week by week. The Ooooby platform supports more than CSA models, so each approach requires a specific setup to work correctly.

Understanding How Platform Payments Work

Before setting up any CSA model, it's important to understand this core process, all three types rely on it:

Orders are processed each week → customer accounts are updated → billing is run → any accounts with a negative balance are charged automatically.

All new customers are always charged upfront for their first order. Subsequent payments only trigger when a customer's account goes into a negative balance.

This means the platform does not natively support a 'pre-paid pot that depletes weekly', that behaviour has to be created using one of the workarounds described below.


Which Setup Is Right for My CSA?

Type

Best for

Extras handling

Products needed

Shop tracking

Type 1 – Balance Drawdown

Boxes only, or extras drawing from the same pre-paid balance

Deducted from pre-paid balance automatically

Upfront payment product(s) + weekly box at real price

Monitor balances; prompt top-ups; season end

Type 2A – Full Season Upfront

Boxes + extras billed separately; full season paid up front

Billed fresh each week (extras only)

One-off season product + crew-only zero value weekly box product

Delivery count; season end date

Type 2B – Instalment Payments

Boxes + extras billed separately; payment in chunks

Billed fresh each week (extras only)

4-weekly subscription product + crew-only zero value weekly box product

Delivery count; instalment count; season end

Type 3 – Standard + Locks

Weekly billing; CSA commitment enforced via settings rather than payment structure

Charged weekly as normal

Weekly box at real price + optional one-off membership fee

Minimal; cancellation requests only


Type 1 – Balance Drawdown

How it works

The customer pays a lump sum upfront (or chooses from several payment tiers). This creates a positive balance on their account. Each week their box is processed at its normal price, when billing runs, the cost is deducted from the positive balance automatically. Their card is only charged once the balance reaches zero and goes negative.

If a customer orders extras in the same week and their balance doesn't cover both the box and the extras, billing charges only the overage.

When to use it

  • The CSA sells boxes only, with no (or minimal) add-on extras

  • Or the shop is happy for extras to draw from the same pre-paid balance

  • The shop offers different upfront payment tiers (e.g. 4-week, half-season, full-season)

Setup

  1. Create the upfront payment product(s). Set up one-off products for each payment tier (e.g. '4-Week CSA Payment, 'Full Season'). These are the products customers purchase to load credit onto their account.

  2. Customer signs up and purchases their chosen tier. The new customer checkout triggers the first-order-upfront rule, so the payment is taken immediately. Their account balance goes positive by the amount paid.

  3. Remove the upfront payment product before the order is completed. See the Critical note below.

  4. Set up the regular box subscription. Once the upfront product has been removed, add a weekly subscription for the customer's box at its normal price. This will process each week and draw down from the positive balance automatically.

  5. Monitor balances throughout the season. Balances will deplete week by week. Contact members whose balance is running low and prompt them to top up before it reaches zero.

⚠️ Critical: Remove the upfront payment product before completing the order. After the customer has been charged, the upfront product must be removed from their account within the same order cycle, before orders are completed. If it's still on the account when the order completes, the system treats it as a delivered item and clears the balance to zero; the pre-paid credit will be lost.

Known limitations

  • If a customer's balance runs out mid-season and they order extras, extras will still be charged to their card. If you don't want extras drawing from the CSA balance, use Type 2 instead.

  • For multiple payment tiers, create a separate product for each tier. Include the number of weeks and price per week in the product name to avoid customer confusion.

  • Refunds are the shop's responsibility. If you are unable to fulfil orders or a customer is owed money, it is the shop's responsibility to refund them promptly; either in-platform or by bank transfer if there are insufficient funds in your Stripe account. Please refer to Ooooby's Terms and Conditions.


Type 2 – Prepaid + Zero Balance

How it works

The customer pays upfront for a defined period. Unlike Type 1, this payment is immediately cleared to a zero balance, it's recorded as payment for the season but doesn't sit as a running credit. The weekly box is represented by a crew-only zero value product, which appears on the customer's order as a fulfilment marker without generating a charge. Any extras the customer orders are billed separately and charged fresh each week.

This keeps the box and extras completely separate, preventing extras from eroding the pre-paid box credit.

When to use it

  • The CSA sells boxes plus extras (eggs, bread, etc.) and wants extras billed separately

  • The shop wants clean weekly receipts where it's clear the box is prepaid and only extras incur a charge

  • Payment can be full season upfront or in regular instalments (e.g. every 4 weeks)

Variant A – Full Season Upfront

  1. Create the full-season CSA product. Add a one-off product (e.g. 'CSA Full Season, 20 Weeks'). This is a one-off payment, not a subscription.

  2. Create the crew-only zero value weekly box product. Set up a product visible only to crew (not publicly listed) with zero value. Name it clearly, e.g. 'CSA Veg Box Prepaid'. This represents the weekly delivery without generating a charge.

  3. Process the customer's first order. Add the full-season product to the customer's account as a one-time add-on for the next delivery cycle. Processing the order records the upfront payment and automatically clears the customer's balance to zero.

  4. Switch to the zero value box subscription. Remove the season product from the account. Add the zero value crew-only box product as the customer's weekly recurring subscription.

  5. Extras are charged normally. Any add-ons the customer orders appear on their weekly order alongside the zero value box. These are charged when billing runs, as their balance will go negative by the cost of the extras only.

Variant B – Instalment Payments (e.g. every 4 weeks)

This variant follows the same logic as Variant A but uses a recurring subscription product to automate the instalment charges, rather than requiring manual processing each cycle.

  1. Create the instalment subscription product. Set up a subscription product for each instalment amount (e.g. 'CSA 4-Weekly Payment'). Set the billing frequency to 4-weekly. This product will automatically generate a charge every 4 weeks.

  2. Create the crew-only zero value weekly box product. As per Variant A, set up a crew-only zero value product for each box size.

  3. Process the customer's first order. Add the instalment product to the customer's account. The first instalment is taken immediately at checkout (first-order-upfront rule). Balance clears to zero.

  4. Add the zero value weekly box subscription. Add the crew-only zero value box product as the weekly recurring subscription. This runs weekly and tracks fulfilment without triggering charges.

  5. Subsequent instalments run automatically. Every 4 weeks, the instalment subscription product generates a charge. No manual intervention needed for the payment itself.

Known limitations

  • Keep track of how many deliveries each customer has received. The zero value box product will keep generating orders indefinitely; it won't stop automatically when a customer's season ends. You'll need to either remove the zero value subscription manually when the season is complete, or rely on a fixed end-of-season date where you close the scheme for all customers at once. If customers all finish at the same time, this happens naturally, but if sign-up dates vary, you'll need to track each customer's delivery count individually.

  • Order cut-off settings must be in place before the season starts for this setup to work correctly.

  • For instalment plans, make sure the instalment amount multiplied by the number of instalments equals the full season price, and communicate this clearly to customers at sign-up.

  • The zero value box product must be set as crew-only to prevent customers from adding it themselves or seeing it in the shop.

  • Customer receipts will clearly show the zero value box as prepaid and only list extras as charged, which is a useful tool for reducing billing support queries.

Refunds are the shop's responsibility. If you are unable to fulfil orders or a customer is owed money, it is the shop's responsibility to refund them promptly. If there are insufficient funds in your Stripe account, refunds should be made by bank transfer.


Type 3 – Standard Scheme with CSA Locks

How it works

This setup runs exactly like a standard box scheme; customers are billed weekly at the box price, and payment is collected when their account goes negative after each order is processed. There is no upfront lump sum. The CSA element is enforced through platform settings and terms rather than through a payment structure, locking members into a seasonal commitment.

An optional annual or seasonal membership fee can be added as a separate one-off product to cover admin costs and reinforce the commitment.

When to use it

  • The shop doesn't want to manage upfront payments or credit balances

  • The CSA commitment is primarily about locking customers in for a season, not collecting funds in advance

  • The shop wants the simplest possible setup with minimal administration

  • The shop is transitioning from a standard box scheme to a CSA model, or trialling a CSA approach before committing to a more complex payment structure

Setup

  1. Set up boxes at their normal weekly price. Create box products as you would for any standard scheme. No special pricing or crew-only products are needed.

  2. Configure platform settings to lock members in. Disable self-serve pause and add donations. Require members to contact you to cancel. Set delivery frequency to weekly only. These settings enforce the CSA commitment without requiring a payment structure.

  3. Optional: add a membership fee product. If charging a seasonal or annual membership fee (e.g. to cover admin, card fees, or bags), set this up as a one-off product. The first-order-upfront rule will ensure it is charged immediately at sign-up.

  4. Communicate the commitment in sign-up. Since there is no upfront payment to enforce commitment, your sign-up process and T&Cs must clearly explain the seasonal commitment, cancellation policy, and any membership fee.

Did this answer your question?