Start a receipt upload
The first of three steps to attach a receipt: a PDF, PNG, JPG or WEBP. This one says what the file is and answers a signed address to send it to. Then send the file to that address with a PUT. Then call “Finish a receipt upload”. Refused with business_details_required until the store has its business details.
Needs the expenses.write permission (Change Expenses).
Authorizations
A secret API key, made under Developers in the dashboard: Authorization: Bearer shoply_sk_...
Headers
A word of your own for this one change, up to 180 letters, digits, dots, dashes, underscores and colons. Sent again with the same key, the request is not carried out twice: the first answer comes back, with Idempotent-Replay: true.
Path Parameters
The store's ID. A key reaches the store it was made in: GET /key answers which.
The expense.
Body
Response
It worked.
Whether the request did what was asked.
Words for a person. Empty when it worked.
Why it was refused, as a word that does not change. Empty when it worked.
The thing asked for: an object, or for a list its rows.
For a paged list: how many pages there are.
For a paged list: how many rows there are in all.
Anything else the route answers beside the thing itself.

