Settle a refund
POST
/orders/{id}/refund-settled
const url = 'https://example.com/orders/019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f/refund-settled';const options = { method: 'POST', headers: {cookie: 'bottle.session_token=<bottle.session_token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/orders/019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f/refund-settled \ --cookie bottle.session_token=<bottle.session_token>Until an accounting integration settles these itself, somebody in the office does, once the money or the credit note has gone.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”id
required
UUID v7
string format: uuid
Example
019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8fUUID v7
Responses
Section titled “Responses”Settled
Media typeapplication/json
object
id
required
UUID v7
string format: uuid
customerId
required
UUID v7
string | null format: uuid
customerName
required
string | null
deliveryAddressId
required
UUID v7
string | null format: uuid
deliverToName
required
string | null
deliverToAddress
required
string | null
location
required
object
latitude
required
number
longitude
required
number
roundId
required
UUID v7
string | null format: uuid
status
required
string
fulfilment
required
Delivery: goes on a round. collection: the customer picks it up from the yard; never planned onto a van, and comes off stock when marked collected.
string
source
required
string
externalRef
required
string | null
trackingRef
required
string
leaveInstruction
required
string | null
leaveDetail
required
string | null
deliveryOptionId
required
UUID v7
string | null format: uuid
deliveryOptionName
required
string | null
expectedFrom
required
string | null format: date
expectedTo
required
string | null format: date
deliveryChargePence
required
integer
paymentMethod
required
On_account: billed later, nothing to collect. link: a payment link raised in the accounting system. cash: the driver takes it at the door.
string
wantedOn
required
string | null format: date
notes
required
string | null
lines
required
Array<object>
object
id
required
UUID v7
string format: uuid
productId
required
UUID v7
string format: uuid
productName
required
string
quantity
required
integer
unitPrice
required
Pence, excluding VAT.
integer
total
required
integer
deliveredQuantity
required
integer
cancelledQuantity
required
integer
collect
required
Array<object>
object
productId
required
UUID v7
string format: uuid
productName
required
string
quantity
required
integer
total
required
integer
refundDue
required
integer
refundSettledAt
required
string | null format: date-time
paidAt
required
string | null format: date-time
paidVia
required
string | null
paymentLink
required
string | null format: uri
invoice
required
object
id
required
UUID v7
string format: uuid
number
required
string
status
required
string
canEmailPaymentLink
required
boolean
paymentRequestedAt
required
string | null format: date-time
deliveredAt
required
string | null format: date-time
createdAt
required
string format: date-time
updatedAt
required
string format: date-time
Example
{ "id": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f", "customerId": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f", "deliveryAddressId": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f", "roundId": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f", "status": "placed", "fulfilment": "delivery", "source": "office", "trackingRef": "7K3M9QWXZ2", "leaveInstruction": "none", "deliveryOptionId": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f", "paymentMethod": "on_account", "lines": [ { "id": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f", "productId": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f", "productName": "19kg propane" } ], "collect": [ { "productId": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f", "productName": "19kg propane" } ], "paidVia": "stripe", "invoice": { "id": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f", "number": "INV-BTL00042", "status": "sent" }}Not signed in
Media typeapplication/json
object
error
required
string
message
required
string
Example
{ "error": "not_found", "message": "Customer not found"}Not a member, or without the permission this needs
Media typeapplication/json
object
error
required
string
message
required
string
Example
{ "error": "not_found", "message": "Customer not found"}Not found
Media typeapplication/json
object
error
required
string
message
required
string
Example
{ "error": "not_found", "message": "Customer not found"}No refund is due, or it is already settled
Media typeapplication/json
object
error
required
string
message
required
string
Example
{ "error": "not_found", "message": "Customer not found"}Validation failed, or a line names something not sold
Media typeapplication/json
object
error
required
string
message
required
string
issues
required
Array<object>
object
path
required
string
message
required
string
Example
{ "error": "validation", "issues": [ { "path": "email", "message": "Invalid email" } ]}