get_payment_options

Fetch the live payment options for a Dineout booking. Renders a payment picker (UPI apps + scan-QR) that auto-detects the user's device. Call this when a paid reservation is ready to pay.

Fetch the live payment options for a Dineout booking — the source of truth for what the user can pay with. A single call fetches BOTH device surfaces (mobile UPI apps + desktop scan-QR) and merges them into one payment picker widget that auto-detects the user's device. You do NOT need to ask the user which device they're on. This applies to paid reservations (deal ticket bookings); free reservations skip payment entirely.

See get_payment_options in actionComing soon

Example

const result = await client.callTool({
  name: "get_payment_options",
  arguments: {},
});

Parameters

ParameterTypeRequiredDescription

This tool takes no parameters — cart context is resolved server-side. create_cart already embeds a payment snapshot, but calling this returns the live picker widget.

Session credentials (user identity, access token) are supplied automatically by the authenticated MCP session - you do not pass them in the tool call. See Authenticate.

Response

All Swiggy MCP tools return:

{
  "success": true,
  "data": { /* tool-specific payload */ },
  "message": "optional human-readable message"
}

The data payload carries the picker model:

{
  "success": true,
  "data": {
    "platforms": {
      "mobile": { "methods": [ { "id": "com.google.android.apps.nbu.paisa.user", "label": "Google Pay" } ] },
      "desktop": { "methods": [ { "id": "PayWithQR", "label": "Scan QR to pay" } ] }
    },
    "allMethods": [ /* flat list across surfaces, for text rendering */ ]
  },
  "message": "human-readable list of payment options"
}
  • platforms.mobile.methods[] — UPI apps (intent). Each method id MUST be echoed byte-for-byte into book_table's intentApp argument.
  • platforms.desktop.methods[] — desktop scan-QR. Set generateUPIQR=true on book_table (no intentApp).
  • platforms is omitted when UPI isn't available for this cart.

On failure:

{
  "success": false,
  "error": { "message": "description of what went wrong" }
}

See Error codes for the full catalogue.

Details

FieldValue
Nameget_payment_options
MCP ServerDineout
EndpointPOST mcp.swiggy.com/dineout
StagePayment
Behaviourread-only

Agent guidance

How Swiggy agents and orchestration logic use this tool. Surface these expectations in your prompts or tool-selection policies.

WHEN TO CALL:

  • Call this when a paid reservation (deal ticket) is ready to pay — it renders the picker widget. Free reservations do not need it.
  • When the user explicitly asks "what payment options are available?", wants UPI, or mentions GPay, PhonePe, Paytm, etc.

HANDOFF TO BOOK TABLE: The user picks a method in the widget. Pass their choice straight into book_table:

  • UPI app → intentApp = the selected method id, byte-for-byte.
  • Desktop scan-QR → generateUPIQR=true (no intentApp).

NPCI compliance: UPI Collect and saved VPAs are not surfaced. Do not attempt to collect a VPA from the user.

Next in this journey →

Continue with book_table to place the paid reservation with the selected payment method.