Every API here is available over the APIs.io API and to AI agents over MCP.
{
"openapi": "3.0.3",
"info": {
"title": "Checkout",
"description": "Checkout support a buyer's shopping journey, enabling them to receive and purchase products through personalized payment agreement options",
"version": "2.0.0",
"contact": {
"email": "partnership-growth@getbread.com"
}
},
"servers": [
{
"url": "https://api-preview.platform.breadpayments.com/",
"description": "Preview environment"
},
{
"url": "https://api.platform.breadpayments.com/",
"description": "Production environment"
}
],
"paths": {
"/api/application": {
"get": {
"tags": [
"Application"
],
"summary": "List Applications by Filter",
"description": "Allows a consumer to list all Applications within their user scope (e.g. Tenants, Buyers and Merchants can only retrieve their own Applications). By providing query parameters, the list results can be filtered.\n\nUpon success, a paginated list of relevant Applications will be returned. If no Applications were found with the provided filters, the response will be 200 OK with an empty array of Applications.\n\n**JWT Claim Authorization:**\n**TenantID**: Required (non-nil); scopes results to the caller's tenant.\n**MerchantID**: Optional; if present in token and a `merchantID` query filter is also provided, they must match or the request is rejected. If present in token, applied as a filter.\n**ProgramID**: Optional; if present in token, applied as a filter.\n**BuyerID**: Optional; if present in token, limits results to the caller's own applications.",
"operationId": "listApplications",
"parameters": [
{
"name": "buyerID.eq",
"in": "query",
"description": "The unique identifier of the Buyer.",
"required": false,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "merchantID.eq",
"in": "query",
"description": "The unique identifier of the Merchant. Must match merchantID on the JWT if provided.",
"required": false,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "status.eq",
"in": "query",
"description": "The status to filter the Application records by.",
"required": false,
"schema": {
"type": "string",
"enum": [
"APPROVED",
"ATTEMPTED_CHECKOUT",
"ATTEMPTED_PREPARE_CHECKOUT",
"CANCELLED",
"CHECKOUT_EXTENDED",
"CHECKOUT_COMPLETED",
"CHECKOUT_PREPARED",
"DENIED",
"EXPIRED",
"INELIGIBLE",
"NEEDS_ACTION",
"STARTED"
]
}
},
{
"name": "statusCode.eq",
"in": "query",
"description": "The status code to filter the Application records by.",
"required": false,
"style": "form",
"explode": true,
"schema": {
"type": "array",
"minItems": 0,
"items": {
"type": "string",
"pattern": "^[0-9]{6}$",
"example": "030101"
}
}
},
{
"name": "statusCode.ne",
"in": "query",
"description": "The status code that don't match to filter the Application records by.",
"required": false,
"style": "form",
"explode": true,
"schema": {
"type": "array",
"minItems": 0,
"items": {
"type": "string",
"pattern": "^[0-9]{6}$",
"example": "030101"
}
}
},
{
"name": "showExpired.eq",
"in": "query",
"required": false,
"description": "Show expired applications. Defaults to true.",
"schema": {
"type": "boolean"
}
},
{
"name": "normalizedAddressHash.eq",
"in": "query",
"required": false,
"description": "Show applications associated with provided normalized address hash.",
"schema": {
"type": "string",
"format": "sha256"
}
},
{
"name": "metadata.eq",
"in": "query",
"description": "Show metadata associated with the application. Defaults to false.",
"required": false,
"schema": {
"type": "boolean"
}
},
{
"name": "updatedAt.gte",
"in": "query",
"description": "The lower bound of the date range, inclusive.",
"required": false,
"schema": {
"type": "string",
"format": "YYYY-MM-DD"
}
},
{
"name": "updatedAt.lte",
"in": "query",
"description": "The upper bound of the date range, inclusive.",
"required": false,
"schema": {
"type": "string",
"format": "YYYY-MM-DD"
}
},
{
"name": "lastTimestamp.eq",
"in": "query",
"description": "The timestamp value formatted per RFC3339 of the last Application from the previous page, used for keyset pagination. Depends on whether createdAt or updatedAt is used for sorting.",
"required": false,
"schema": {
"type": "string",
"format": "date-time",
"example": "2025-12-31T20:44:29.057144-04:00"
}
},
{
"name": "lastID.eq",
"in": "query",
"description": "The unique identifier of the last ID from the previous page, used for keyset pagination.",
"required": false,
"schema": {
"type": "string",
"format": "uuid",
"example": "652ee2a3-7b25-431b-bd22-0490db77c444"
}
},
{
"name": "sort",
"in": "query",
"description": "Specifies the sort order for paginated results. Accepts createdAt or updatedAt fields with ascending or descending order.",
"required": false,
"schema": {
"type": "string",
"enum": [
"createdAt.asc",
"createdAt.desc",
"updatedAt.asc",
"updatedAt.desc"
]
}
},
{
"in": "query",
"name": "limit",
"description": "The maximum number of records that will be returned in a result set.",
"required": false,
"schema": {
"type": "integer",
"minimum": 1,
"maximum": 200,
"default": 10
},
"example": 50
},
{
"in": "query",
"name": "offset",
"description": "The number of records to skip before starting to collect the result set. Used in conjunction with limit query parameter for pagination support",
"required": false,
"schema": {
"type": "integer",
"minimum": 0,
"default": 0
},
"example": 20
}
],
"security": [
{
"bearerAuthApplication": [
"r:application"
]
}
],
"responses": {
"200": {
"description": "The list of Applications including pagination.",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"applications": {
"description": "The list of Applications that satisfy the provided filtering and scope conditions.",
"type": "array",
"items": {
"type": "object",
"title": "Application",
"description": "The Application for a given Buyer with Payment Agreement(s), if any.",
"required": [
"id",
"buyerID",
"createdAt",
"expiresAt",
"tenantID",
"merchantID",
"paymentAgreements",
"programID",
"offers",
"order",
"updatedAt"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "Unique identifier of the Application."
},
"buyerID": {
"type": "string",
"format": "uuid",
"description": "Unique identifier of the Buyer."
},
"tenantID": {
"type": "string",
"format": "uuid",
"description": "Unique identifier of the Tenant."
},
"merchantID": {
"type": "string",
"format": "uuid",
"description": "Unique identifier of the Merchant."
},
"programID": {
"type": "string",
"format": "uuid",
"description": "Unique identifier of the Program."
},
"paymentMethodID": {
"type": "string",
"format": "uuid",
"description": "If exists, unique identifier of the payment method for an application."
},
"locationID": {
"type": "string",
"format": "uuid",
"description": "Unique identifier of the Location for instore applications."
},
"cartID": {
"type": "string",
"format": "uuid",
"description": "Unique identifier of the Cart for applications associated with a Cart"
},
"billingContact": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"required": [
"familyName",
"givenName"
],
"type": "object",
"properties": {
"givenName": {
"type": "string",
"description": "Given name",
"example": "John"
},
"familyName": {
"type": "string",
"description": "Family name",
"example": "Doe"
},
"additionalName": {
"type": "string",
"description": "Additional name, if any"
}
},
"description": "Represents the full name"
},
"phone": {
"type": "string",
"description": "Telephone number including country code",
"example": "+14539842345"
},
"address": {
"required": [
"address1",
"locality",
"postalCode",
"region",
"country"
],
"type": "object",
"properties": {
"address1": {
"type": "string",
"description": "First address line",
"example": "156 5th Avenue"
},
"address2": {
"type": "string",
"description": "Second address line"
},
"locality": {
"type": "string",
"description": "The locality (e.g. City) of the address.",
"example": "New York"
},
"postalCode": {
"type": "string",
"description": "The administrative postal code (e.g. Zip Code)",
"example": "10019"
},
"region": {
"type": "string",
"description": "The region or first-level administration division (e.g. State/Province) of the address.",
"example": "US-NY",
"minLength": 2,
"externalDocs": {
"description": "ISO-3166-2",
"url": "https://en.wikipedia.org/wiki/ISO_3166-2"
}
},
"country": {
"type": "string",
"description": "The two character ISO-3166-1 country code.",
"example": "US",
"minLength": 2,
"maxLength": 2,
"externalDocs": {
"description": "ISO-3166-1",
"url": "https://en.wikipedia.org/wiki/ISO_3166-1"
}
}
},
"description": "Represents a fully defined address for an entity"
},
"email": {
"type": "string",
"format": "email",
"description": "Email address",
"example": "john.doe@gmail.com"
}
},
"description": "Represents contact information for an entity"
},
"shippingContact": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"required": [
"familyName",
"givenName"
],
"type": "object",
"properties": {
"givenName": {
"type": "string",
"description": "Given name",
"example": "John"
},
"familyName": {
"type": "string",
"description": "Family name",
"example": "Doe"
},
"additionalName": {
"type": "string",
"description": "Additional name, if any"
}
},
"description": "Represents the full name"
},
"phone": {
"type": "string",
"description": "Telephone number including country code",
"example": "+14539842345"
},
"address": {
"required": [
"address1",
"locality",
"postalCode",
"region",
"country"
],
"type": "object",
"properties": {
"address1": {
"type": "string",
"description": "First address line",
"example": "156 5th Avenue"
},
"address2": {
"type": "string",
"description": "Second address line"
},
"locality": {
"type": "string",
"description": "The locality (e.g. City) of the address.",
"example": "New York"
},
"postalCode": {
"type": "string",
"description": "The administrative postal code (e.g. Zip Code)",
"example": "10019"
},
"region": {
"type": "string",
"description": "The region or first-level administration division (e.g. State/Province) of the address.",
"example": "US-NY",
"minLength": 2,
"externalDocs": {
"description": "ISO-3166-2",
"url": "https://en.wikipedia.org/wiki/ISO_3166-2"
}
},
"country": {
"type": "string",
"description": "The two character ISO-3166-1 country code.",
"example": "US",
"minLength": 2,
"maxLength": 2,
"externalDocs": {
"description": "ISO-3166-1",
"url": "https://en.wikipedia.org/wiki/ISO_3166-1"
}
}
},
"description": "Represents a fully defined address for an entity"
},
"email": {
"type": "string",
"format": "email",
"description": "Email address",
"example": "john.doe@gmail.com"
}
},
"description": "Represents contact information for an entity"
},
"order": {
"description": "The collection of items that the Buyer wants to purchase with a Bread product.",
"allOf": [
{
"type": "object",
"title": "Order",
"description": "The collection of items that the Buyer wants to purchase with a Bread product.",
"required": [
"subTotal",
"totalDiscounts",
"totalPrice",
"totalShipping",
"totalTax"
],
"properties": {
"subTotal": {
"description": "The total price of items excluding tax. The value must be greater than or equal to 0. If there are items, subTotal must equal the sum of all items'' unitPrice values accounting for quantities.",
"allOf": [
{
"required": [
"currency",
"value"
],
"properties": {
"currency": {
"type": "string",
"description": "The three letter currency code as defined in ISO 4217.",
"example": "USD",
"minLength": 3,
"maxLength": 3,
"externalDocs": {
"description": "ISO 4217",
"url": "https://en.wikipedia.org/wiki/ISO_4217"
}
},
"value": {
"type": "integer",
"description": "Monetary value as an integral number of the currency fractional unit e.g for USD: cents",
"format": "int64",
"example": 100
}
},
"description": "Represents a monetary amount in the specified currency",
"example": {
"currency": "USD",
"value": 50000
}
}
]
},
"totalDiscounts": {
"description": "The total price of discounts applied to this Order. The value must be greater than or equal to 0.",
"allOf": [
{
"required": [
"currency",
"value"
],
"properties": {
"currency": {
"type": "string",
"description": "The three letter currency code as defined in ISO 4217.",
"example": "USD",
"minLength": 3,
"maxLength": 3,
"externalDocs": {
"description": "ISO 4217",
"url": "https://en.wikipedia.org/wiki/ISO_4217"
}
},
"value": {
"type": "integer",
"description": "Monetary value as an integral number of the currency fractional unit e.g for USD: cents",
"format": "int64",
"example": 100
}
},
"description": "Represents a monetary amount in the specified currency",
"example": {
"currency": "USD",
"value": 50000
}
}
]
},
"totalPrice": {
"description": "The total price of the Order. The value must be greater than 0 and equal to the sum of subTotal, totalShipping and totalTax minus the totalDiscounts.",
"allOf": [
{
"required": [
"currency",
"value"
],
"properties": {
"currency": {
"type": "string",
"description": "The three letter currency code as defined in ISO 4217.",
"example": "USD",
"minLength": 3,
"maxLength": 3,
"externalDocs": {
"description": "ISO 4217",
"url": "https://en.wikipedia.org/wiki/ISO_4217"
}
},
"value": {
"type": "integer",
"description": "Monetary value as an integral number of the currency fractional unit e.g for USD: cents",
"format": "int64",
"example": 100
}
},
"description": "Represents a monetary amount in the specified currency",
"example": {
"currency": "USD",
"value": 50000
}
}
]
},
"totalShipping": {
"description": "The total shipping costs for this Order. The value must be greater than or equal to 0.",
"allOf": [
{
"required": [
"currency",
"value"
],
"properties": {
"currency": {
"type": "string",
"description": "The three letter currency code as defined in ISO 4217.",
"example": "USD",
"minLength": 3,
"maxLength": 3,
"externalDocs": {
"description": "ISO 4217",
"url": "https://en.wikipedia.org/wiki/ISO_4217"
}
},
"value": {
"type": "integer",
"description": "Monetary value as an integral number of the currency fractional unit e.g for USD: cents",
"format": "int64",
"example": 100
}
},
"description": "Represents a monetary amount in the specified currency",
"example": {
"currency": "USD",
"value": 50000
}
}
]
},
"totalTax": {
"description": "The total amount of tax applied to this Order. The value must be greater than or equal to 0. If there are items, totalTax must equal the sum of all items'' unitTax values accounting for quantities.",
"allOf": [
{
"required": [
"currency",
"value"
],
"properties": {
"currency": {
"type": "string",
"description": "The three letter currency code as defined in ISO 4217.",
"example": "USD",
"minLength": 3,
"maxLength": 3,
"externalDocs": {
"description": "ISO 4217",
"url": "https://en.wikipedia.org/wiki/ISO_4217"
}
},
"value": {
"type": "integer",
"descri
# --- truncated at 32 KB (2955 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/bread-financial/refs/heads/main/openapi/bread-checkout-openapi.json