Update invoice status
Move an invoice through supported creator-managed lifecycle states.
Set status to COMPLETED, VOIDED, REVIEW, or DISPUTING. Send expected_status to prevent a stale agent snapshot from overwriting a newer order state. Dispute transitions schedule community-access revocation and the normal dispute webhook through the outbox. Requires the invoice ability.
Authorization
bearerAuth storeAuth Provide your SellApp API key as a bearer token.
In: header
Select the SellApp store for this API request.
In: header
Path Parameters
The invoice path parameter.
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X PATCH "https://sell.app/api/v2/invoices/0/status" \ -H "Content-Type: application/json" \ -d '{ "status": "REVIEW", "expected_status": "PENDING" }'{
"id": 1,
"payment": {
"fee": {
"base": "0",
"currency": "USD",
"units": 1,
"vat": 0,
"total": {
"exclusive": "0",
"inclusive": "0"
}
},
"gateway": {
"data": {
"total": {
"base": "1999",
"currency": "USD",
"units": 1,
"vat": 0,
"total": {
"exclusive": "1999",
"inclusive": "1999"
}
},
"customer_email": "customer@example.com",
"transaction_id": "CQEGF35V"
},
"type": "COINBASE"
},
"subtotal": {
"base": "1999",
"currency": "USD",
"units": 1,
"vat": 0,
"total": {
"exclusive": "1999",
"inclusive": "1999"
}
},
"expires_at": "2024-01-10T19:33:11.000000Z",
"full_price": {
"base": "1999",
"currency": "USD",
"units": 1,
"vat": 0,
"total": {
"exclusive": "1999",
"inclusive": "1999"
}
},
"original_amount": {
"base": "1999",
"currency": "USD",
"units": 1,
"vat": 0,
"total": {
"exclusive": "1999",
"inclusive": "1999"
}
}
},
"status": {
"history": [
{
"setAt": "2024-01-09T19:33:11.000000Z",
"status": "PENDING",
"updatedAt": "2024-01-09T21:17:46.000000Z"
}
],
"status": {
"setAt": "2024-01-09T21:17:46.000000Z",
"status": "COMPLETED",
"updatedAt": "2024-01-09T21:17:46.000000Z"
}
},
"webhooks": [],
"feedback": "",
"created_at": "2024-01-09T19:33:11.000000Z",
"updated_at": "2024-01-09T21:17:46.000000Z",
"store_id": 1,
"coupon_id": null,
"subscription_id": null,
"customer_information": {
"id": 1034,
"email": "customer@example.com",
"country": "Germany",
"location": "Munich",
"ip": "1.3.3.7",
"proxied": false,
"browser_agent": "Mozilla/4.9 (Windows 98; sl-SI; rv:1.9.1.20) Gecko/20110422 Firefox/21.0",
"vat": {
"amount": 0,
"country": "US"
},
"discord_data": null,
"billing_details": null
},
"product_variants": [
{
"id": 117214,
"product_id": 97850,
"title": "SellApp Platform Balance"
}
]
}{
"message": "Unauthenticated."
}{
"message": "This action is unauthorized."
}{
"message": "Rule not found."
}{
"message": "The given data was invalid.",
"errors": {
"data": [
"The data field is required."
]
}
}Mark pending invoice voided PATCH
This endpoint allows you to update a pending invoice's status as voided. If marked as voided, the purchased product(s) would not be delivered to the customer's email. See the code examples for how to mark a pending invoice as voided with the SellApp API.
Refund an invoice POST
Request a full or partial provider refund through the canonical refund ledger.