margot

Refund one of the founder's own payments (a plan charge or a top-up) in full.

Named by kind + charged_on from account_summary.refundable_charges; every rule is checked again here. A plan refund ends the plan now and takes back the unused credits of that payment.

post/margot/actions/refund

Request

  • Base URL: https://api.nanocorp.so (the document declares no server; this is the origin it was published from)
  • URL: https://api.nanocorp.so/margot/actions/refund
  • Auth: HTTP bearer

Request body

external_idstring nullable

The founder's NanoCorp user id (external_id on the helpdesk contact).

emailstring nullable

The founder's email. Used as a fallback identity and a cross-check.

companystring nullable

Optional company name/handle hint, resolved against the caller's own companies.

limitinteger nullable

Optional row limit for list actions.

requested_by'customer' | 'team' required

'customer': the Customer Agent acting on a founder's ticket. 'team': the Internal Agent acting for a teammate.

ticket_idstring required

The helpdesk ticket id (customer) or the Parahelp task id (team). A repeated call with the same ticket_id returns the first result instead of acting twice.

ticket_urlstring nullable

https link to the ticket or task, for the audit line.

team_memberstring nullable

The teammate's email. Required when requested_by is 'team'.

kind'plan' | 'topup' required

'plan' or 'topup', as in refundable_charges.

charged_onstring required

YYYY-MM-DD (UTC), copied from refundable_charges.

amountstring required

What was paid, copied from refundable_charges as is, e.g. '15.00 USD': the refund runs only on the payment of that amount, the one the approval showed.

notestring nullable

Internal note, never shown to the founder. Kept to its first 500 characters.

Response

Successful Response

foundboolean
outcome'done' | 'already_done' | 'pending' | 'refused' required

done: it happened now. already_done: an earlier call of this ticket already did it. pending: the refund went to the bank and its result is unknown, a teammate checks it. refused: nothing happened.

reasonstring nullable

The refusal or pending code. Null when done.

handoffboolean

True: hand the ticket to a human now.

kindstring nullable

'plan' or 'topup', as in refundable_charges.

charged_onstring nullable
amountstring nullable

Refunded, always the full payment, e.g. '30.00 USD'.

credits_removednumber nullable

Unused credits of that payment taken off the balance.

credit_balancenumber nullable
plan_endedboolean

A plan refund ended the plan now.

plan_cancel_pendingboolean

The money is refunded but the plan could not be ended; a teammate ends it.

auto_topup_disabledboolean

The refund turned auto top-up off.

Changes