Grubhub · Schema
Payment
A single payment source
Food DeliveryRestaurantMarketplaceOnline OrderingPoint-of-SaleLogisticsLast Mile DeliveryMenu ManagementHospitalityLocal CommerceDelivery
Properties
| Name | Type | Description |
|---|---|---|
| payment_type | string | The payment type. Note all non-CASH payment types should be treated as pre-paid to a Grubhub tender or house account in the POS. |
| amount | integer | The payment amount in US Cents |
| payment_source | string | The source of payment Possible values are `DINER`, `MERCHANT`, `GRUBHUB`, `OTHER`, or `UNKNOWN |
| tax_application | string | Whether this payment is applied `POST_TAX`, `PRE_TAX`, or that the tax applied to this payment is`UNKNOWN`. Most payment types will be applied `POST_TAX`; however, loyalty rewards are applied by the m |
| promotion_title | string | The name of the applied promotion. |
| external_promotion_id | string | The external ID that the partner uses to reference the applied promotion |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/grubhub/main/json-schema/grubhub-payment-schema.json",
"title": "Payment",
"x-generated": "2026-09-17",
"x-method": "derived",
"x-source": "openapi/grubhub-orders-openapi.yml#/components/schemas/Payment",
"type": "object",
"properties": {
"payment_type": {
"type": "string",
"description": "The payment type. Note all non-CASH payment types should be treated as pre-paid to a Grubhub tender or house account in the POS.",
"enum": [
"CREDIT_CARD",
"PROMO_CODE",
"UNIFIED_REWARD",
"REWARD",
"GRUBCASH",
"SUBSCRIPTION",
"GIFT_CARD",
"CREDIT_CARD",
"APPLE_PAY",
"PAYPAL_EXPRESS",
"CORPORATE_LINE_OF_CREDIT",
"ANDROID_PAY",
"VENMO_PAY",
"CASH",
"CAMPUS_CARD",
"AMEX_EXPRESS",
"AMAZON_PAY",
"THIRDPARTY_CREDIT",
"THIRDPARTY_GIFT_CARD",
"THIRDPARTY_PROMO",
"CASH_APP"
]
},
"amount": {
"type": "integer",
"description": "The payment amount in US Cents",
"format": "int32"
},
"payment_source": {
"type": "string",
"description": "The source of payment Possible values are `DINER`, `MERCHANT`, `GRUBHUB`, `OTHER`, or `UNKNOWN",
"enum": [
"DINER",
"MERCHANT",
"GRUBHUB",
"OTHER",
"UNKNOWN"
]
},
"tax_application": {
"type": "string",
"description": "Whether this payment is applied `POST_TAX`, `PRE_TAX`, or that the tax applied to this payment is`UNKNOWN`. Most payment types will be applied `POST_TAX`; however, loyalty rewards are applied by the merchant and therefore lower the taxable amount of the order. These payments from the merchant will generally be listed as `PRE_TAX'.",
"enum": [
"PRE_TAX",
"POST_TAX",
"UNKNOWN"
]
},
"promotion_title": {
"type": "string",
"description": "The name of the applied promotion."
},
"external_promotion_id": {
"type": "string",
"description": "The external ID that the partner uses to reference the applied promotion"
}
},
"description": "A single payment source",
"example": "{\n\"payment_type\": \"UNIFIED_REWARD\",\n\"amount\": 1000,\n\"payment_source\": \"MERCHANT\",\n\"tax_application\": \"PRE_TAX\"\n\"promotion_title\": \"$5 off $25 or more\"\n\"external_promotion_id\": \"12345\"\n}"
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/grubhub-payment"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.