Create a presigned financing-document upload
Issues a presigned S3 PUT URL for uploading one financing document. Requires merchant:financing.documents:write on the merchant. size_bytes is signed into the URL, so S3 rejects a PUT of a different size. PUT the file to url with the given content type before expires_at, then attach it with POST .../documents using the returned upload_ref.
Authorization
oauth2 Create a client with POST /v1/oauth/clients, then exchange its credentials for an access token. AUTHORIZATION_CODE clients act on behalf of a signed-in user and always use PKCE; CLIENT_CREDENTIALS clients act as themselves. A client may only be granted scopes its creator already holds — read the grantable list from GET /v1/oauth/clients/scopes.
In: header
Path Parameters
Canonical sales-app merchant id, shared with Core. Legacy ids remain readable.
1 <= length <= 255Request Body
application/json
Request a presigned S3 PUT URL for uploading one financing document.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/financing/merchants/01JZQ5W7M5Y83M6F1D6E0A2K8N/uploads/presign" \ -H "Content-Type: application/json" \ -d '{ "document_type": "INVOICE", "content_type": "image/jpeg", "size_bytes": 1 }'{ "upload_ref": "string", "url": "http://example.com", "expires_at": "2019-08-24T14:15:22Z", "content_type": "image/jpeg"}{ "code": "INVALID_PARAMS", "description": "user_id must be a UUID", "identifier": "string", "invalid_params": [ { "path": "user_id", "reason": "must be a UUID", "sub_code": "string" } ]}{ "code": "INVALID_PARAMS", "description": "user_id must be a UUID", "identifier": "string", "invalid_params": [ { "path": "user_id", "reason": "must be a UUID", "sub_code": "string" } ]}{ "code": "INVALID_PARAMS", "description": "user_id must be a UUID", "identifier": "string", "invalid_params": [ { "path": "user_id", "reason": "must be a UUID", "sub_code": "string" } ]}{ "code": "INVALID_PARAMS", "description": "user_id must be a UUID", "identifier": "string", "invalid_params": [ { "path": "user_id", "reason": "must be a UUID", "sub_code": "string" } ]}{ "code": "INVALID_PARAMS", "description": "user_id must be a UUID", "identifier": "string", "invalid_params": [ { "path": "user_id", "reason": "must be a UUID", "sub_code": "string" } ]}{ "code": "INVALID_PARAMS", "description": "user_id must be a UUID", "identifier": "string", "invalid_params": [ { "path": "user_id", "reason": "must be a UUID", "sub_code": "string" } ]}Resubmit a rejected financing invoice POST
The supplier's corrected submission of a rejected invoice. The invoice keeps its id and its number. The new figures and documents replace the submission, and the invoice moves back to PENDING. The deductions, the VAT and the rejection fields reset to null. details.previous_submissions records each earlier submission with its rejection, oldest first. A repeated request with the same figures returns the resubmitted invoice. Submit the saved details to Core after this call, with the same invoice number. Requires `merchant:financing.invoices:write` on the merchant.
List invoice applications GET
Lists the merchant's invoice financing applications, paginated with `size`, `after`, and `before`. Requires the `merchant:financing.invoices:read` permission on the merchant. Returns 404 when the merchant does not belong to the caller's organization.