Invoicing Module and Pay by Link (GladstonePay)

Problem

You need to bill a contact for several sales, such as block-booking occurrences, with one invoice they can pay online by Pay by Link or at the 360 till, and manage the payment links you send.

Resolution

How invoices are built

  1. Understand what the Invoicing Module does

    • The Invoicing Module groups one or more of a contact's sale invoices into a single invoice (display id such as INV-0001) that can be issued with a GladstonePay Pay by Link and paid online or at POS.
    • It aims to: automate invoice generation for a contact's INV account (block bookings are the main driver at launch); deliver each invoice with a Pay by Link; support manual methods (cash, BACS, cheque) with operator-updated sale status; keep HMRC-compliant sequential numbering, credit-note handling and VAT treatment; and reconcile invoice, payment and sale automatically.
    • It replaces raising invoices outside Gladstone, sending them by email, tracking them in spreadsheets and reconciling by hand, which caused outstanding debt (no automated chasing or payment links), manual reconciliation, slow cash flow, HMRC compliance risk from manual numbering and credit notes, and finance overhead.
  2. Understand how block-booking sales feed invoices

    • In Go Operator Block Bookings, each occurrence has its own sales invoice. The Invoicing Module groups them per the booking's billing grouping period (Whole Reservation, Monthly, Quarterly or Yearly) and itemisation (Itemised or Grouped), both fixed at creation.
    • A sales invoice attached to a draft invoice is "in flight", which is why editing or cancelling that occurrence may void or credit it rather than delete it. Credit notes already raised are handled in the Invoicing Module.
    • Legacy Plus2 hosted reservations use the Plus2 Invoicing statement run instead (numeric invoice numbers); see Block Bookings (Plus2 Hosted Reservations) and Invoicing.
  3. Move the invoice through its lifecycle

    • An invoice has a member, a site, a document type, a total, an alphanumeric display id, a due date, a rendered HTML body and a payment link. It can be created, approved, issued, exported to PDF and listed in a back-office grid.
    • Flow: Draft → Approved → Unpaid (issued via Mark as issued) → Paid.
    StatusMeaning
    DraftBeing assembled. No display id; not payable.
    ApprovedDisplay id allocated, due date and payment link set, HTML rendered. Not yet issued.
    UnpaidIssued to the contact and awaiting payment.
    PaidEvery linked sale invoice is settled.
    OverdueAn Unpaid invoice past its due date. Shown, never set directly.
    • Only an Unpaid invoice can become Paid, and only once all linked sale invoices are settled.

Paying an invoice at POS (360 Find Invoice)

  1. Find the invoice

    • In POS Find Invoice, enter the invoice number. The field accepts letters and auto-uppercases.
    • A numeric number uses the existing legacy Plus2 lookup; an alphanumeric one (for example, INV-0001) is treated as a new-module invoice.
    • POS shows member, amounts, per-line outstanding (Total − AmountPaid − AmountRefunded − AmountCredited) and the site's friendly name.
  2. Issue the invoice first (if applicable)

    • If the invoice is not issued yet (Draft/Approved), it still displays but Pay is disabled with the banner "This invoice cannot be paid until it has been issued". Issue it first (Mark as issued).
  3. Take payment

    • Take payment with any normal POS method (cash, cheque, card/PED on any provider).
    • The invoice is paid in full: all lines are pre-selected, the per-line select column is hidden and Pay is enabled on load. Part payment of a new-module invoice at POS is not supported.
    • POS then updates the invoice to Paid. This is best-effort: if it fails, the payment stands, POS shows a warning, and a later recalculation (or reopening the invoice) fixes the invoice status.
    • Legacy numeric invoice lookup and payment (where individual lines can be paid) are unchanged.
  1. Send a payment link

    • Pay by Link v1 is a GladstonePay feature for sending a single-use card payment link by email. It has two channels: the telephone channel in 360 POS, and the invoicing channel (back-office systems such as the Invoicing Module generate links through the API).
    • A link can be sent at any time from the basket or Sales History (for example, to chase a debt), but the telephone channel is designed for live calls. For debt chasing or invoice settlement, the Invoicing Module's API channel is the better route; discuss specific workflows with your account manager. API links are delivered through the calling system's own channel (email, in-app, letter) and use the same checkout.
    • If the record has no email, you are prompted to enter or confirm an address; a typed address applies to that transaction only and does not update the record.
  2. Manage links in Sales History

    • Resend: same link, same email.
    • Send New Link: fresh link and expiry (use when expired). The sale stays open after expiry; it is not cancelled. The old link shows an "expired" message.
    • Revoke: kills an active link immediately (for example, the customer paid at the desk). The sale remains open and unpaid; generate a new link or take payment another way.
    • After recording a manual payment (BACS, cash), the link becomes unusable (customer sees "contact the Centre") but is not marked revoked. Revoke it explicitly so its status is clear.
    • Declined card: the customer sees an error and can try another card; the link stays active until expiry. If problems continue, take payment another way (PED or virtual terminal).
  3. Confirm the payment

    • There is no live paid notification. Refresh Sales History; the sale goes to Completed in the background once authorised, and the Resend, Revoke and Send New Link buttons disappear.
  4. Troubleshoot "customer says they paid but the sale shows unpaid"

    • Refresh Sales History (there can be a short delay).
    • Ask whether the customer saw a confirmation on the checkout page.
    • If yes, it is probably a display issue: raise it with Technical Support (every link logs operator username, creation timestamp, site, amount and member).
    • If no, the payment likely did not complete: retry with the same link if active, or send a new one.

Notes

This page as markdown · All pages · llms.txt