Expense & purchase approvals
Sign off on spend from your phone, with the decision on the record.
New $1,200/yr software subscription
Over the $1,000 auto-approve limit — needs a manager's yes.
- Amount
- $1,200/yr
- Requested by
- Lena O.
- Vendor
- Linear
- Budget
- Engineering
A notification that opens into a decision
Every Roundtrip request is one loop: something happens, a person decides on their phone, and the decision lands back in your app, signed.
- 1Trigger
The trigger
Someone submits an expense, a new subscription, or a purchase that crosses a threshold. It needs a manager's decision before it goes through — the kind of thing that usually waits in an inbox for days.
Someone submits an expense, a new subscription, or a purchase that crosses a threshold. It needs a manager's decision before it goes through — the kind of thing that usually waits in an inbox for days.
- 2Ask
The ask
The approver gets a card with the amount, who's asking, and what it's for, plus Approve / Decline. No spreadsheet to open, no separate tool to log into — just the decision, where they already are.
The approver gets a card with the amount, who's asking, and what it's for, plus Approve / Decline. No spreadsheet to open, no separate tool to log into — just the decision, where they already are.
- 3Response
What comes back
The verdict returns to your system, signed, so the purchase is unblocked or rejected automatically and the approval is logged against the request — not buried in a thread.
The verdict returns to your system, signed, so the purchase is unblocked or rejected automatically and the approval is logged against the request — not buried in a thread.
One request out, one signed response back
The card on the phone is rendered straight from the request body, not a mockup. When the recipient responds, Roundtrip POSTs a signed event to your webhook and retries until it lands.
{
"channels": [
"approvals"
],
"notification": {
"title": "Expense · approval",
"body": "New $1,200/yr subscription is over the limit — needs your yes."
},
"content": {
"title": "New $1,200/yr software subscription",
"description": "Over the $1,000 auto-approve limit — needs a manager's yes.",
"status": {
"label": "Pending",
"tone": "warning"
},
"sections": [
{
"type": "keyvalue",
"columns": 2,
"items": [
{
"label": "Amount",
"value": "$1,200/yr",
"mono": true
},
{
"label": "Requested by",
"value": "Lena O."
},
{
"label": "Vendor",
"value": "Linear"
},
{
"label": "Budget",
"value": "Engineering"
}
]
}
],
"actions": [
{
"id": "approve",
"label": "Approve",
"style": "primary"
},
{
"id": "decline",
"label": "Decline",
"style": "destructive"
}
]
},
"response": {
"mode": "required",
"webhook": "https://api.example.com/roundtrip"
}
}New $1,200/yr software subscription
Over the $1,000 auto-approve limit — needs a manager's yes.
- Amount
- $1,200/yr
- Requested by
- Lena O.
- Vendor
- Linear
- Budget
- Engineering
{
"requestId": "req_8Kx2…",
"channel": "approvals",
"kind": "tap",
"action": "approve",
"respondedAt": "2026-06-20T16:41:09Z"
}