Authenticate with an OAuth 2.0 token scoped to the receipts resource; the user ID for the receipt owner must be resolvable from the token or passed explicitly
POST the receipt image as a multipart/form-data or binary body to the receipts v4 user endpoint; keep files under the 25 MB size limit and below the 2,200-pixel maximum dimension per side
Parse the 202 Accepted response: the Location header contains the permanent receipt image URL, and the Link header contains a processing-status URL to poll
Poll the processing-status URL until the receipt transitions to a processed state before associating it with an expense entry
Link the receipt URL returned in the Location header to the target expense entry via the expense entry update endpoint
Retrieve the schema list from /receipts/v4/schemas to understand available receipt type schemas if submitting structured e-receipt data rather than raw images
Known gotchas
The API returns 202 Accepted, not 201 Created; the receipt is not immediately available — polling the processing-status link is required before the URL becomes usable
Images larger than 2,200 pixels in any dimension are silently downsampled; verify that line-item text in hotel folios remains legible after reduction
E-receipts submitted with a JSON schema must strictly conform to the schema returned by /receipts/v4/schemas; extra fields cause validation rejection without a descriptive error
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp