Payments
BrikSync PropOS gives landlords and property managers a clear, real-time view of rent payments across their portfolio. Tenants can pay rent online through their portal and both parties have instant access to payment records.How Payments Work
Each active lease in BrikSync PropOS generates an expected rent payment based on the rent amount and due date set in the lease. Payments are tracked against these expected amounts, giving you a clear picture of what has been collected and what is outstanding.Payment statuses
| Status | Meaning |
|---|---|
| pending | Payment expected but not yet received. |
| processing | Payment submitted by tenant and being processed. |
| succeeded | Full payment received and confirmed. |
| failed | Payment attempt failed. |
| refunded | Payment was refunded to the tenant. |
| disputed | Payment is under dispute. |
Overdue payments are derived from
pending or processing payments where the due date has
passed. “Overdue” is a display label, not a stored status.Viewing Payment History
For Managers and Landlords
- Go to Payments in the left sidebar.
- You will see a full list of all rent payments across your properties.
- Use the filters to narrow by:
- Property — view payments for one property.
- Tenant — view all payments from a specific tenant.
- Status — filter by succeeded, pending, processing, failed, refunded, or disputed.
- Date range — view payments within a specific period.
- Click any payment record to see full details.
For Tenants
Tenants can view their own payment history by going to Payments in their portal. They will see:- All past payments with dates, amounts, and status.
- The next upcoming payment — amount and due date.
- A Pay with Stripe button for any pending payment.
- A Download Receipt button for any succeeded payment.
Paying rent online (tenants)
Tenants can pay rent directly through BrikSync PropOS using Stripe.- Go to Payments in the tenant portal.
- Find the pending payment and click Pay with Stripe.
- You will be redirected to a secure Stripe Checkout page.
- Complete the payment using your preferred payment method.
- After payment, you are redirected back to the Payments page.
Only tenants can initiate a Stripe checkout for their own payments. The system enforces ownership
— you cannot pay another tenant’s rent. If the payment amount is zero or the payment has already
succeeded, the checkout button will not be available.
Downloading a receipt
After a payment has been confirmed as succeeded, you can download a PDF receipt. Tenants can download receipts for their own payments, while brokers, property managers, landlords, and admins can download receipts for any payment within their organisation.- Go to Payments in the tenant portal.
- Find the succeeded payment.
- Click Download Receipt.
- Receipt ID
- Tenant name and email
- Property and unit
- Payment amount and any late fee
- Due date and payment date
- Payment status
Receipts are only available for payments in succeeded status. Tenants can only access
receipts for their own payments; brokers, property managers, landlords, and admins can access any
receipt within their organisation.
Recording a Manual Payment
If a tenant pays by bank transfer, cheque, or cash, you can record the payment manually.- Go to Payments and click Record Payment.
- Select the tenant and lease.
- Enter the amount (0.01–1,000,000) and payment date (YYYY-MM-DD).
- Enter the due date (YYYY-MM-DD).
- Select the payment method — one of:
stripe,bank_transfer,cash,check, orother(defaults toother). - Enter late fee charged if applicable (0–10,000, defaults to 0).
- Add any reference notes (up to 1,000 characters).
- Click Save Payment.
BrikSync PropOS records and tracks payment history. For integrated online payment processing,
configure your payment gateway in Settings → Payments.
Managing Arrears
Tenants with overdue payments are flagged automatically in your dashboard. From Payments → Overdue, you can see all tenants with outstanding rent. For each:- View the exact amount overdue and how many days late.
- Send a payment reminder email directly from the platform.
- Record any payment arrangements made with the tenant.
- Add internal notes for your records.
Exporting Payment Records
You can export payment records for accounting or reporting purposes. Exports respect all active filters — including date range, property, tenant, and status — so the exported file matches exactly what you see on screen.- Go to Payments.
- Apply any filters you need (date range, property, tenant, status, etc.).
- Click Export and choose your format — CSV or PDF.
Waiving a payment
Payment waiving is not yet available via the API. To waive a payment, record a refund using the
refunded status or contact support for assistance.Stripe webhook integration
BrikSync PropOS processes Stripe events automatically via webhook. The webhook endpoint handles the following event types:| Event type | Description |
|---|---|
checkout.session.completed | Tenant completed a Stripe Checkout session for a rent payment. |
customer.subscription.updated | A subscription was updated (e.g. plan change or renewal). |
customer.subscription.deleted | A subscription was cancelled or expired. |
invoice.payment_succeeded | A subscription invoice payment succeeded. |
invoice.payment_failed | A subscription invoice payment failed. |
How webhook processing works
- Stripe sends an event to the webhook endpoint.
- The webhook handler reads the request body as raw text (required for signature verification) and verifies the Stripe signature.
- Duplicate events are detected and short-circuited for idempotency.
- For
checkout.session.completedevents with rent payment metadata, the corresponding payment record is updated to succeeded with the Stripe PaymentIntent ID and payment timestamp. - An audit log entry is created for payment confirmations.
Webhook response status values
The webhook endpoint returns a JSON response with astatus field indicating the processing outcome:
| Status | Meaning |
|---|---|
processed | Event was handled successfully. |
duplicate | Event was already processed (idempotent — safely ignored). |
skipped | Unrecognized event type — acknowledged but not processed. |
failed | Event processing failed (returned with a 500 status code). |
Webhook processing is signature-verified and idempotent. Duplicate event deliveries from Stripe
are safely ignored via the
stripe_webhook_events deduplication table.Built by Errsol Technologies LLP · Karan · BrikSync PropOS