start_payment
Start a customer payment before the final submit. The branch is chosen from what is supplied:
Input:
charge_saved_card
Charge the eater’s saved card (vaulted on the shared MealOps Stripe account) for the order’s quote total before submitting. Phantom is charged-first merchant of record. Input:{ "restaurant_id": "…", "order": {}, "customer_id": "cus_123", "payment_method_id": "pm_123" }
Output:
charge_payment
Charge the saved card for an already-submitted order, then pay out the restaurant. Input:{ "order_id": "order_123", "customer_id": "cus_123", "payment_method_id": "pm_123" }
Output:
create_payout
Reconcile fallback: link an order’s pre-submit charge and settle it (capture + restaurant payout). This normally runs automatically when the restaurant accepts the order. While the order is still pre-acceptance the call defers (deferred: true) without capturing.
Input: { "order_id": "order_123" }
Output: { "ok": true, "payoutTriggered": false, "paymentStatus": "authorized", "deferred": true }
void_payment
Release a held authorization (e.g. the order failed to submit). No funds are charged. Input:{ "restaurant_id": "…", "order": {} }
Output: { "ok": true, "status": "canceled", "paymentIntentId": "pi_123" }
get_payment_status
Reconciliation: the current stored payment status for an order’s external reference. Input:{ "external_reference": "yourapp-order-1001" }
Output: