SShortSingh.
Back to feed

Why Marketplace Platforms Should Settle Vendor Payments After Delivery, Not at Checkout

0
·2 views

A software engineer who built a settlement service for a multi-vendor platform argues that crediting vendors at the moment of payment is a costly design mistake. Splitting money on payment success means any subsequent refund can become a collections problem if the vendor's funds have already been paid out. The recommended approach anchors vendor billing to a delivered_at timestamp plus a configured return window, ensuring funds are only released once the buyer's refund period has expired without incident. A SQL query from the live service enforces three conditions before a payout row is eligible: it must be unbilled, not excluded, and past the return window since delivery. The author contends this escrow-style model is not just good practice but the fundamental purpose of the data design in marketplace payment systems.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

CSS Grid vs Flexbox: When to Use Each Layout Tool in Web Design

CSS Grid and Flexbox are two distinct layout tools in CSS, each suited to different design scenarios. Flexbox excels at one-dimensional layouts, such as navigation bars or button groups arranged along a single row or column. CSS Grid is better suited for two-dimensional layouts where both rows and columns must be explicitly defined, such as complex admin dashboards. Developers often run into trouble when they try to use Flexbox for grid-style layouts, leading to overflow or collapsing elements. Understanding which tool fits the task — rather than defaulting to one — is key to building clean, responsive web interfaces.

0
ProgrammingDEV Community ·

Hi everyone! 👋

Hi everyone! 👋 I'm Wilbur, and I'm new here! I run my own tech community on Mattermost and also have a YouTube channel where I create tech-related content. I'm an advanced Linux user and also work a lot with AI and automation. I'm always interested in learning more, sharing what I know, and connecting with other people who are into tech, Linux, AI, and content creation.

0
ProgrammingDEV Community ·

Developer Builds Phone-Controlled AI Coding Agent Using n8n, Telegram, and Cloudflare

A developer has built a human-in-the-loop autonomous coding workflow that lets them assign programming tasks remotely via Telegram and receive updates on their phone. The system combines n8n, an Express.js runner, OpenAI's Codex, and a Cloudflare Tunnel to route commands securely from the internet to a local development machine without exposing it publicly. When the AI agent encounters actions requiring elevated permissions, it pauses and sends an approval request directly to the developer's Telegram account before proceeding. The developer chose Telegram as the interface to avoid building a custom dashboard, leveraging its built-in push notifications, inline buttons, and mobile accessibility. The project demonstrates a practical approach to keeping humans in control of AI agents while still enabling largely autonomous local code execution.

0
ProgrammingDEV Community ·

Blockend Lets Developers Own Backend Infrastructure Code Instead of Adding Dependencies

Blockend is a developer tool that offers a CLI-based approach to managing common backend infrastructure code such as graceful shutdown, request validation, authentication, and error handling. Rather than installing npm packages that become hard-to-modify dependencies, Blockend copies production-ready TypeScript blocks directly into a developer's own codebase. This gives teams full ownership and the freedom to read, edit, or remove the code without waiting for upstream package updates. The tool draws a distinction between product code — such as business logic — and infrastructure code, arguing the latter should be customizable rather than locked inside a library. Blockend aims to reduce repeated infrastructure work while keeping developers in full control of how that code behaves in their applications.