From f4cf8f61cc6f565f8f3fed058a29d9171e6e69d4 Mon Sep 17 00:00:00 2001 From: Ben Kalsky Date: Sat, 2 May 2026 00:41:06 +0300 Subject: [PATCH] docs: clarify Upay is a downstream clearer, not a SUMIT brand MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit SUMIT (formerly OfficeGuy) is the billing platform. It delegates card clearing to partner processors — Upay is one, and SUMIT can route through others. Previous docs treated SUMIT/OfficeGuy/Upay as three names for the same product, which is wrong. The technical surface is unchanged: Upay-prefixed error codes still surface inside SUMIT response bodies, so `redactSensitiveText` continues to mask them. The framing in README/CLAUDE/API reference/package.json is now accurate about what SUMIT and Upay each are. Co-Authored-By: Claude Opus 4.7 (1M context) --- CLAUDE.md | 4 +++- README.md | 4 ++-- docs/API_REFERENCE.md | 2 +- package.json | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index 2f93be9..e48398c 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -4,7 +4,9 @@ Guidance for AI assistants working in this repository. ## Project -`sumit-api` — pure TypeScript helpers for SUMIT / OfficeGuy / Upay recurring billing and trigger webhooks. **Zero runtime dependencies.** Single-file source: [`src/index.ts`](src/index.ts). +`sumit-api` — pure TypeScript helpers for SUMIT (formerly OfficeGuy) recurring billing and trigger webhooks. **Zero runtime dependencies.** Single-file source: [`src/index.ts`](src/index.ts). + +SUMIT delegates card clearing to partner processors (Upay is one; SUMIT can route through others). Processor-level identifiers and error codes — most commonly `Upay_*` — appear unredacted inside SUMIT response bodies, which is why `redactSensitiveText` masks them. Companion package: [`sumit-react`](https://github.com/Digitizers/sumit-react). diff --git a/README.md b/README.md index 1f1f6c1..669bf95 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ [![license](https://img.shields.io/npm/l/sumit-api.svg)](LICENSE) [![zero deps](https://img.shields.io/badge/runtime%20deps-0-success)](package.json) -> Pure TypeScript helpers for [SUMIT / OfficeGuy / Upay](https://sumit.co.il) recurring billing and trigger webhooks. **Zero runtime dependencies.** +> Pure TypeScript helpers for [SUMIT](https://sumit.co.il) (formerly **OfficeGuy**) recurring billing and trigger webhooks. SUMIT routes card clearing through partner processors such as **Upay**, and their error codes surface in SUMIT responses — this package handles SUMIT's request/response shapes and redacts those upstream codes before they hit your logs. **Zero runtime dependencies.** Companion package: [`sumit-react`](https://github.com/Digitizers/sumit-react) — `` plus Next.js charge and webhook route helpers. @@ -26,7 +26,7 @@ Companion package: [`sumit-react`](https://github.com/Digitizers/sumit-react) ## Why this package -SUMIT (also branded **OfficeGuy** and **Upay**) does not publish a typed SDK for their billing APIs, and their trigger webhooks ship in three different content shapes. This package gives you a small, opinionated surface that is safe to drop into any backend: +SUMIT (formerly **OfficeGuy**) does not publish a typed SDK for their billing APIs, and their trigger webhooks ship in three different content shapes. SUMIT also delegates the actual card clearing to partner processors (**Upay** is one — others exist), so processor-level error codes (e.g. `Upay_30001419`) appear unredacted inside SUMIT's response bodies. This package gives you a small, opinionated surface that is safe to drop into any backend: - **Build** `/billing/recurring/charge/` request payloads with strict types. - **Normalize** successful and failed charge responses into a single discriminated union. diff --git a/docs/API_REFERENCE.md b/docs/API_REFERENCE.md index 818dbff..d501825 100644 --- a/docs/API_REFERENCE.md +++ b/docs/API_REFERENCE.md @@ -1,6 +1,6 @@ # SUMIT API Reference -This package wraps a small slice of the SUMIT / OfficeGuy / Upay billing API. It does **not** ship a transport client — `fetch` is the integrator's responsibility. The helpers here build request bodies, normalize responses, and redact sensitive fields before logging or persistence. +This package wraps a small slice of the SUMIT (formerly OfficeGuy) billing API. SUMIT routes card clearing through partner processors — Upay is one of them — and their error codes (e.g. `Upay_30001419`) surface inside SUMIT response bodies, which is why this package redacts them by default. It does **not** ship a transport client — `fetch` is the integrator's responsibility. The helpers here build request bodies, normalize responses, and redact sensitive fields before logging or persistence. ## Official sources diff --git a/package.json b/package.json index 109377a..4b7aeac 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "sumit-api", "version": "0.1.0", - "description": "TypeScript helpers for SUMIT/OfficeGuy/Upay recurring charges and trigger webhooks.", + "description": "TypeScript helpers for SUMIT (formerly OfficeGuy) recurring charges and trigger webhooks. Includes redaction for upstream Upay clearer error codes.", "license": "MIT", "type": "module", "main": "./dist/index.js",