应收回款闭环台
Objective
Convert scattered team evidence into a controlled, traceable workflow. Produce decisions and actions that can be checked against source material, assigned to named roles, approved, and updated over time.
Team Roles
Use the user's real role names when available. Otherwise propose these roles and mark assignments as pending confirmation:
- 应收会计或财务负责人
- 销售负责人
- 项目交付负责人
- 客户成功
- 争议或升级审批人
Never silently assign a person, approval, deadline, or commitment.
Required Inputs
- 合同、订单、发票、对账单和账龄明细
- 验收证据、交付记录、客户争议和付款承诺
- 客户联系人、授信条款、催收记录和升级规则
Start with available material. Create a missing-information queue instead of blocking the whole task when noncritical inputs are absent.
Pay Skill Contract
Price: CNY 4.99 per paid invocation. Skill version: 2.0.2. Product ID: SP2608150011.
This package includes a callable client at scripts/invoke_pay_skill.py. It calls the registered merchant service at https://skill.wiffar.com over HTTPS. The client sends only a canonical-input SHA-256 digest, byte count, Skill ID, and Skill version; it contains no merchant credential, developer key, WeChat certificate, X402 signing code, order-creation code, or deployment configuration. Payment creation and verification remain server-side.
支付服务调用
- Run a free preflight that only validates scope, input readability, missing information, expected output, price, and safety boundaries. Do not release substantive analysis or a reusable partial deliverable before payment.
- Confirm that the official
weixinpaypayment tool is installed and callable. If it is unavailable, stop before creating an order and ask the user to enable the official tool. - Save the unchanged business request as a local JSON object, then invoke the bundled client:
python scripts/invoke_pay_skill.py --input-json REQUEST.json. Review the client source before first use. - When the service returns HTTP
402, pass the returnedWeixinPay-Requiredvalue unchanged aspaymentCodeto the official payment tool. Do not construct, decode, edit, log, or persist the payment code. - Ask the user to approve the platform-presented payment request. Preserve the returned
request_idandout_trade_no. A screenshot, chat message, or user assertion is not proof of payment success. - After authorization, retry the same local JSON through the same client with
--request-id REQUEST_ID --out-trade-no OUT_TRADE_NO. Do not change the JSON between the initial call and retry. - Release the full workflow output only when the service returns
SUCCESSwithauthorized: truefor this exact Skill version, request ID, order number, amount, and invocation.
异常处理
未支付或用户取消: Do not claim payment success and do not release paid content. Allow a retry only through the platform's normal payment flow.订单关闭或支付请求过期: Do not reuse stale payment state. Repeat the free preflight before the platform creates a new request.退款中、已退款或部分退款: Do not deliver or redeliver the refunded portion. Follow the status supplied by the platform and the merchant's authorized refund process.- Keep only the stable request ID and order number needed for idempotent retry. Never store, display, transform, or transmit payment credentials, payment codes, signed payloads, merchant secrets, or private keys from this Skill.
- Never fulfill the same verified invocation twice.
Read publish-cases.md when preparing marketplace examples. Keep merchant infrastructure, payment signing, credentials, certificates, and deployment instructions outside the public Skill package.
Operating Rules
- Label every material statement as confirmed fact, supported inference, assumption, or open question.
- Cite source file, section, page, message date, ticket, or evidence ID for each important fact.
- Keep a single stable ID for every issue, action, decision, and evidence item across updates.
- Use only these workflow states:
draft,awaiting-owner,in-review,approved,in-progress,blocked,closed,superseded. - Record changes without overwriting prior decisions. Include who changed what, when, why, and which approval applies.
- Minimize sensitive data. Quote only the fragment needed to support the conclusion.
- Ask for approval before any external message, submission, commitment, or irreversible action.
Workflow
- Create a case header with scope, objective, owner, participating teams, deadline, source set, confidentiality, and success criteria.
- Build the evidence register first. Deduplicate files, identify version and date, and flag missing, stale, conflicting, or inaccessible evidence.
- 逐笔核对合同、验收、开票、到期日、已收金额和未收余额
- 区分流程缺件、交付争议、价格争议、资金安排和失联等原因并绑定证据
- 制定联系、补件、争议解决、付款承诺确认和分级升级动作
- Run the quality gate: verify coverage, source traceability, owner confirmation, dates, dependencies, approval state, sensitive-data handling, and unresolved contradictions.
- Deliver an executive summary, the core register, decision queue, action register, evidence gaps, approvals required, and a concise handoff message.
Core Register
Use this minimum schema:
应收ID | 客户/合同 | 发票 | 到期日 | 未收金额 | 账龄 | 验收/对账证据 | 阻塞原因 | 付款承诺日 | 动作 | 负责人 | 升级状态
Do not remove source, owner, due-date, status, or approval fields even when the user asks for a shorter view. Create a filtered view instead.
Output Order
- Executive summary with current risk, blockers, and decisions needed
- Core register
- Action and escalation queue
- Evidence and information gaps
- Approval queue
- Change log and next review date
Read team-templates.md before producing a formal team deliverable. Reuse its IDs, registers, approval gate, and handoff format.
Boundaries
- 不得伪造到账、验收、对账或客户付款承诺
- 不得使用骚扰、威胁、冒充司法机关或披露债务等不当催收手段
- 诉讼、停服、信用措施、坏账核销和重大折让必须由授权人员决定
Example Requests
- "把本月逾期应收做成回款作战台账"
- "找出因验收和开票缺件卡住的回款"
- "生成客户付款承诺和升级清单"