Skip to content

docs: document receipt delivery confirmation endpoint#542

Open
claude[bot] wants to merge 1 commit into
mainfrom
docs/sync-20260603
Open

docs: document receipt delivery confirmation endpoint#542
claude[bot] wants to merge 1 commit into
mainfrom
docs/sync-20260603

Conversation

@claude
Copy link
Copy Markdown
Contributor

@claude claude Bot commented Jun 3, 2026

Summary

  • Adds documentation for the new POST /transactions/{transactionId}/confirm endpoint to the Transaction Lifecycle guide
  • The endpoint was introduced in 1de75a3 to allow platforms to confirm receipt delivery for compliance purposes

Changes

Documentation (Mintlify)

  • Added "Receipt Delivery Confirmation" section to platform-overview/core-concepts/transaction-lifecycle.mdx
  • Documents the endpoint, request body, and response behavior
  • Notes that this is only needed for platforms with contractual receipt confirmation requirements

Review Checklist

Reviewed the following areas for sync with commit 1de75a3:

  • OpenAPI schema examples — already have proper examples in the YAML files
  • Mintlify documentation — updated transaction lifecycle guide
  • Kotlin sample app — no changes needed (no transaction-specific routes)
  • Grid Visualizer data — no changes needed (covers payment flow, not compliance endpoints)

🤖 Generated with Claude Code

Add a new section to the transaction lifecycle guide explaining the
receipt delivery confirmation endpoint (POST /transactions/{transactionId}/confirm).
This endpoint was added in commit 1de75a3 and allows platforms to record
when they delivered a receipt to their customer, which may be required
for compliance purposes.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@claude claude Bot requested review from pengying and shreyav June 3, 2026 09:45
@vercel
Copy link
Copy Markdown

vercel Bot commented Jun 3, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
grid-flow-builder Ignored Ignored Jun 3, 2026 9:45am

Request Review

@mintlify
Copy link
Copy Markdown
Contributor

mintlify Bot commented Jun 3, 2026

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
Grid 🟢 Ready View Preview Jun 3, 2026, 9:48 AM

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps Bot commented Jun 3, 2026

Greptile Summary

Adds a "Receipt Delivery Confirmation" section to the Transaction Lifecycle guide documenting the POST /transactions/{transactionId}/confirm endpoint introduced in commit 1de75a3.

  • The new section explains when and how to call the endpoint, covers the optional receiptDeliveryConfirmedAt field default, and notes the feature is contractually gated for most integrations.
  • The code block uses a bare bash block mixing an HTTP method line with a JSON body rather than a runnable curl command, and the response is described in prose only — no concrete JSON example or error-behavior guidance is included.

Confidence Score: 4/5

Documentation-only change; safe to merge, though the code example and missing response/error details could leave developers without enough to self-serve.

The change is purely additive documentation with no logic or schema impact. The code block is not a runnable command, the response is described only in prose, and there is no error-handling guidance — gaps that contradict the team's own style guide but don't block correctness.

mintlify/platform-overview/core-concepts/transaction-lifecycle.mdx — the new section's code example and response documentation.

Important Files Changed

Filename Overview
mintlify/platform-overview/core-concepts/transaction-lifecycle.mdx Adds 'Receipt Delivery Confirmation' section; code block mixes HTTP notation with JSON body in a single bash block (not a runnable command), and the response description is prose-only with no concrete JSON example or error-handling guidance.

Sequence Diagram

sequenceDiagram
    participant Platform
    participant GridAPI as Grid API

    Platform->>GridAPI: "POST /transactions/{transactionId}/confirm"
    Note right of GridAPI: body: {receiptDeliveryConfirmedAt}
    GridAPI-->>Platform: 200 OK – updated transaction
    Note right of GridAPI: receiptDeliveryConfirmedAt populated

    Note over Platform,GridAPI: If receiptDeliveryConfirmedAt is omitted,
    Note over Platform,GridAPI: Grid records the current server time
    Platform->>GridAPI: "POST /transactions/{transactionId}/confirm (no body field)"
    GridAPI-->>Platform: "200 OK – receiptDeliveryConfirmedAt = server time"
Loading
Prompt To Fix All With AI
Fix the following 2 code review issues. Work through them one at a time, proposing concise fixes.

---

### Issue 1 of 2
mintlify/platform-overview/core-concepts/transaction-lifecycle.mdx:364-372
The code block embeds the JSON request body inside a `bash` block with a bare HTTP method line, which is not a runnable command. The Mintlify style guide (`CLAUDE.md`) requires complete, runnable examples that users can copy and execute. Splitting the request and response into proper blocks — or using a `curl` form — keeps this consistent with the guide's standard and makes it clear to the reader that the JSON is a request body, not bash syntax.

```suggestion
```bash
curl -X POST "https://api.example.com/transactions/{transactionId}/confirm" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{"receiptDeliveryConfirmedAt": "2025-08-15T14:31:00Z"}'
```

**Response:** Returns the updated transaction with `receiptDeliveryConfirmedAt` populated:

```json
{
  "id": "Transaction:abc123",
  "status": "COMPLETED",
  "receiptDeliveryConfirmedAt": "2025-08-15T14:31:00Z"
}
```
```

### Issue 2 of 2
mintlify/platform-overview/core-concepts/transaction-lifecycle.mdx:372-374
**Missing idempotency / error behavior documentation**

The section documents the happy path and the "omit the field" shortcut, but skips documenting what happens when the call is made for a transaction that doesn't exist, is not yet `COMPLETED`, or belongs to a different customer. The `AGENTS.md` style guide calls for "troubleshooting for likely failure points" and documenting error HTTP status codes. A developer who receives a 404 or 422 on this endpoint will have nowhere to look in the guide.

Reviews (1): Last reviewed commit: "docs: document receipt delivery confirma..." | Re-trigger Greptile

Comment on lines +364 to +372
```bash
POST /transactions/{transactionId}/confirm

{
"receiptDeliveryConfirmedAt": "2025-08-15T14:31:00Z"
}
```

**Response:** Returns the updated transaction with `receiptDeliveryConfirmedAt` populated.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 The code block embeds the JSON request body inside a bash block with a bare HTTP method line, which is not a runnable command. The Mintlify style guide (CLAUDE.md) requires complete, runnable examples that users can copy and execute. Splitting the request and response into proper blocks — or using a curl form — keeps this consistent with the guide's standard and makes it clear to the reader that the JSON is a request body, not bash syntax.

Suggested change
```bash
POST /transactions/{transactionId}/confirm
{
"receiptDeliveryConfirmedAt": "2025-08-15T14:31:00Z"
}
```
**Response:** Returns the updated transaction with `receiptDeliveryConfirmedAt` populated.
```bash
curl -X POST "https://api.example.com/transactions/{transactionId}/confirm" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{"receiptDeliveryConfirmedAt": "2025-08-15T14:31:00Z"}'

Response: Returns the updated transaction with receiptDeliveryConfirmedAt populated:

{
  "id": "Transaction:abc123",
  "status": "COMPLETED",
  "receiptDeliveryConfirmedAt": "2025-08-15T14:31:00Z"
}

**Context Used:** mintlify/CLAUDE.md ([source](https://app.greptile.com/lightspark/github/lightsparkdev/grid-api/-/custom-context?memory=8705e0ee-b98a-4325-9b4d-e1f5638b408a))

<details><summary>Prompt To Fix With AI</summary>

`````markdown
This is a comment left during a code review.
Path: mintlify/platform-overview/core-concepts/transaction-lifecycle.mdx
Line: 364-372

Comment:
The code block embeds the JSON request body inside a `bash` block with a bare HTTP method line, which is not a runnable command. The Mintlify style guide (`CLAUDE.md`) requires complete, runnable examples that users can copy and execute. Splitting the request and response into proper blocks — or using a `curl` form — keeps this consistent with the guide's standard and makes it clear to the reader that the JSON is a request body, not bash syntax.

```suggestion
```bash
curl -X POST "https://api.example.com/transactions/{transactionId}/confirm" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{"receiptDeliveryConfirmedAt": "2025-08-15T14:31:00Z"}'

Response: Returns the updated transaction with receiptDeliveryConfirmedAt populated:

{
  "id": "Transaction:abc123",
  "status": "COMPLETED",
  "receiptDeliveryConfirmedAt": "2025-08-15T14:31:00Z"
}

**Context Used:** mintlify/CLAUDE.md ([source](https://app.greptile.com/lightspark/github/lightsparkdev/grid-api/-/custom-context?memory=8705e0ee-b98a-4325-9b4d-e1f5638b408a))

How can I resolve this? If you propose a fix, please make it concise.

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Comment on lines +372 to +374
**Response:** Returns the updated transaction with `receiptDeliveryConfirmedAt` populated.

If you omit `receiptDeliveryConfirmedAt` from the request body, Grid uses the current server time. Calling this endpoint again updates the stored confirmation time.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Missing idempotency / error behavior documentation

The section documents the happy path and the "omit the field" shortcut, but skips documenting what happens when the call is made for a transaction that doesn't exist, is not yet COMPLETED, or belongs to a different customer. The AGENTS.md style guide calls for "troubleshooting for likely failure points" and documenting error HTTP status codes. A developer who receives a 404 or 422 on this endpoint will have nowhere to look in the guide.

Context Used: mintlify/AGENTS.md (source)

Prompt To Fix With AI
This is a comment left during a code review.
Path: mintlify/platform-overview/core-concepts/transaction-lifecycle.mdx
Line: 372-374

Comment:
**Missing idempotency / error behavior documentation**

The section documents the happy path and the "omit the field" shortcut, but skips documenting what happens when the call is made for a transaction that doesn't exist, is not yet `COMPLETED`, or belongs to a different customer. The `AGENTS.md` style guide calls for "troubleshooting for likely failure points" and documenting error HTTP status codes. A developer who receives a 404 or 422 on this endpoint will have nowhere to look in the guide.

**Context Used:** mintlify/AGENTS.md ([source](https://app.greptile.com/lightspark/github/lightsparkdev/grid-api/-/custom-context?memory=51934046-75fb-42d3-9870-f42d61cb60e3))

How can I resolve this? If you propose a fix, please make it concise.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants