Flipdish Payments & Payouts API

Handle payouts, payout reports, bank accounts, Stripe Custom Connect, invoices, payments, and subscriptions.

OpenAPI Specification

flipdish-payments-openapi.json Raw ↑
{
  "openapi": "3.0.3",
  "info": {
    "title": "Flipdish API - Payments",
    "version": "v1.0",
    "description": "Flipdish Open API v1.0 \u2014 Payments operations. Flipdish is an online ordering and branded-app platform for restaurants and takeaways. This specification was derived from the official Flipdish Swagger document and grouped by resource domain.",
    "contact": {
      "name": "Flipdish Support",
      "email": "[email protected]",
      "url": "https://help.flipdish.com"
    },
    "x-generated-from": "https://api.flipdish.co/swagger/docs/v1.0",
    "x-last-validated": "2026-06-02"
  },
  "servers": [
    {
      "url": "https://api.flipdish.co",
      "description": "Flipdish production API"
    }
  ],
  "security": [
    {
      "oauth2": [
        "api"
      ]
    }
  ],
  "tags": [
    {
      "name": "BankAccount",
      "description": "Operations for Bank Account."
    },
    {
      "name": "Invoices",
      "description": "Operations for Invoices."
    },
    {
      "name": "PaymentIntents",
      "description": "Operations for Payment Intents."
    },
    {
      "name": "Payments",
      "description": "Operations for Payments."
    },
    {
      "name": "PayoutReports",
      "description": "Operations for Payout Reports."
    },
    {
      "name": "Payouts",
      "description": "Operations for Payouts."
    },
    {
      "name": "PayoutsExport",
      "description": "Operations for Payouts Export."
    },
    {
      "name": "ProcessingFeeConfigs",
      "description": "Operations for Processing Fee Configs."
    },
    {
      "name": "Receipts",
      "description": "Operations for Receipts."
    },
    {
      "name": "StripeCustomConnect",
      "description": "Operations for Stripe Custom Connect."
    },
    {
      "name": "Subscriptions",
      "description": "Operations for Subscriptions."
    }
  ],
  "paths": {
    "/api/v1.0/{appId}/bankaccounts": {
      "get": {
        "tags": [
          "BankAccount"
        ],
        "operationId": "GetBankAccounts",
        "parameters": [
          {
            "name": "appId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The app id path parameter.",
            "example": "500123"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RestApiArrayResult_BankAccountSummary_"
                },
                "examples": {
                  "GetBankAccounts200Example": {
                    "summary": "Default GetBankAccounts 200 response",
                    "x-microcks-default": true,
                    "value": {
                      "Data": []
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "GetBankAccounts400Example": {
                    "summary": "Default GetBankAccounts 400 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Authentication has been denied for this request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "GetBankAccounts401Example": {
                    "summary": "Default GetBankAccounts 401 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Successful authentication, but authorization has been denied for this request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "GetBankAccounts403Example": {
                    "summary": "Default GetBankAccounts 403 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "GetBankAccounts500Example": {
                    "summary": "Default GetBankAccounts 500 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "api"
            ]
          }
        ],
        "summary": "Flipdish Get Bank Accounts",
        "description": "Get Bank Accounts via the Flipdish Open API v1.0 (GET /api/v1.0/{appId}/bankaccounts).",
        "x-microcks-operation": {
          "delay": 0,
          "dispatcher": "FALLBACK"
        }
      },
      "post": {
        "tags": [
          "BankAccount"
        ],
        "operationId": "CreateBankAccount",
        "parameters": [
          {
            "name": "appId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The app id path parameter.",
            "example": "500123"
          }
        ],
        "requestBody": {
          "required": false,
          "content": {}
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RestApiResult_BankAccountDetail_"
                },
                "examples": {
                  "CreateBankAccount200Example": {
                    "summary": "Default CreateBankAccount 200 response",
                    "x-microcks-default": true,
                    "value": {
                      "Data": {
                        "Id": 500123,
                        "StoreNames": [
                          "Example Name"
                        ],
                        "AccountState": "Unverified",
                        "StripeConnectedAccountInfo": {
                          "AccountStatus": "Disabled",
                          "StripeId": "500123",
                          "CardPaymentStatus": "Inactive",
                          "PayoutScheduleInterval": "Manual",
                          "PayoutsEnabled": true,
                          "PayoutsPaused": true,
                          "PaymentsEnabled": true
                        },
                        "BankAddress": "string",
                        "BankCountryCode": "IE",
                        "AccountHolderAddress": "string",
                        "AccountHolderCountryCode": "IE",
                        "VatNumber": "string",
                        "CurrencyCode": "EUR",
                        "StoreIds": [
                          1
                        ],
                        "BankName": "Example Name",
                        "AccountName": "Example Name",
                        "Iban": "string",
                        "Swift": "string",
                        "NationalClearingCode": "string",
                        "PopulatedAccountFields": [],
                        "RejectionReason": "string",
                        "BusinessType": "Individual"
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "CreateBankAccount400Example": {
                    "summary": "Default CreateBankAccount 400 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Authentication has been denied for this request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "CreateBankAccount401Example": {
                    "summary": "Default CreateBankAccount 401 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Successful authentication, but authorization has been denied for this request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "CreateBankAccount403Example": {
                    "summary": "Default CreateBankAccount 403 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "CreateBankAccount500Example": {
                    "summary": "Default CreateBankAccount 500 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "api"
            ]
          }
        ],
        "summary": "Flipdish Create Bank Account",
        "description": "Create Bank Account via the Flipdish Open API v1.0 (POST /api/v1.0/{appId}/bankaccounts).",
        "x-microcks-operation": {
          "delay": 0,
          "dispatcher": "FALLBACK"
        }
      }
    },
    "/api/v1.0/{appId}/bankaccounts/{bankAccountId}": {
      "get": {
        "tags": [
          "BankAccount"
        ],
        "operationId": "GetBankAccountById",
        "parameters": [
          {
            "name": "bankAccountId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            },
            "description": "The bank account id path parameter.",
            "example": 500123
          },
          {
            "name": "appId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The app id path parameter.",
            "example": "500123"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RestApiResult_BankAccountDetail_"
                },
                "examples": {
                  "GetBankAccountById200Example": {
                    "summary": "Default GetBankAccountById 200 response",
                    "x-microcks-default": true,
                    "value": {
                      "Data": {
                        "Id": 500123,
                        "StoreNames": [
                          "Example Name"
                        ],
                        "AccountState": "Unverified",
                        "StripeConnectedAccountInfo": {
                          "AccountStatus": "Disabled",
                          "StripeId": "500123",
                          "CardPaymentStatus": "Inactive",
                          "PayoutScheduleInterval": "Manual",
                          "PayoutsEnabled": true,
                          "PayoutsPaused": true,
                          "PaymentsEnabled": true
                        },
                        "BankAddress": "string",
                        "BankCountryCode": "IE",
                        "AccountHolderAddress": "string",
                        "AccountHolderCountryCode": "IE",
                        "VatNumber": "string",
                        "CurrencyCode": "EUR",
                        "StoreIds": [
                          1
                        ],
                        "BankName": "Example Name",
                        "AccountName": "Example Name",
                        "Iban": "string",
                        "Swift": "string",
                        "NationalClearingCode": "string",
                        "PopulatedAccountFields": [],
                        "RejectionReason": "string",
                        "BusinessType": "Individual"
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "GetBankAccountById400Example": {
                    "summary": "Default GetBankAccountById 400 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Authentication has been denied for this request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "GetBankAccountById401Example": {
                    "summary": "Default GetBankAccountById 401 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Successful authentication, but authorization has been denied for this request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "GetBankAccountById403Example": {
                    "summary": "Default GetBankAccountById 403 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "GetBankAccountById500Example": {
                    "summary": "Default GetBankAccountById 500 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "api"
            ]
          }
        ],
        "summary": "Flipdish Get Bank Account by Id",
        "description": "Get Bank Account by Id via the Flipdish Open API v1.0 (GET /api/v1.0/{appId}/bankaccounts/{bankAccountId}).",
        "x-microcks-operation": {
          "delay": 0,
          "dispatcher": "FALLBACK"
        }
      },
      "post": {
        "tags": [
          "BankAccount"
        ],
        "operationId": "UpdateBankAccount",
        "parameters": [
          {
            "name": "appId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The app id path parameter.",
            "example": "500123"
          },
          {
            "name": "bankAccountId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            },
            "description": "The bank account id path parameter.",
            "example": 500123
          }
        ],
        "requestBody": {
          "required": false,
          "content": {}
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "UpdateBankAccount400Example": {
                    "summary": "Default UpdateBankAccount 400 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Authentication has been denied for this request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "UpdateBankAccount401Example": {
                    "summary": "Default UpdateBankAccount 401 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Successful authentication, but authorization has been denied for this request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "UpdateBankAccount403Example": {
                    "summary": "Default UpdateBankAccount 403 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "UpdateBankAccount500Example": {
                    "summary": "Default UpdateBankAccount 500 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "api"
            ]
          }
        ],
        "summary": "Flipdish Update Bank Account",
        "description": "Update Bank Account via the Flipdish Open API v1.0 (POST /api/v1.0/{appId}/bankaccounts/{bankAccountId}).",
        "x-microcks-operation": {
          "delay": 0,
          "dispatcher": "FALLBACK"
        }
      },
      "delete": {
        "tags": [
          "BankAccount"
        ],
        "operationId": "DeleteBankAccount",
        "parameters": [
          {
            "name": "appId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The app id path parameter.",
            "example": "500123"
          },
          {
            "name": "bankAccountId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            },
            "description": "The bank account id path parameter.",
            "example": 500123
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "DeleteBankAccount400Example": {
                    "summary": "Default DeleteBankAccount 400 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Authentication has been denied for this request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "DeleteBankAccount401Example": {
                    "summary": "Default DeleteBankAccount 401 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Successful authentication, but authorization has been denied for this request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "DeleteBankAccount403Example": {
                    "summary": "Default DeleteBankAccount 403 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "DeleteBankAccount500Example": {
                    "summary": "Default DeleteBankAccount 500 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "api"
            ]
          }
        ],
        "summary": "Flipdish Delete Bank Account",
        "description": "Delete Bank Account via the Flipdish Open API v1.0 (DELETE /api/v1.0/{appId}/bankaccounts/{bankAccountId}).",
        "x-microcks-operation": {
          "delay": 0,
          "dispatcher": "FALLBACK"
        }
      }
    },
    "/api/v1.0/{appId}/bankaccounts/field-definitions": {
      "get": {
        "tags": [
          "BankAccount"
        ],
        "operationId": "GetFieldDefinitions",
        "parameters": [
          {
            "name": "appId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The app id path parameter.",
            "example": "500123"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RestApiResult_AccountFieldsDefinitions_"
                },
                "examples": {
                  "GetFieldDefinitions200Example": {
                    "summary": "Default GetFieldDefinitions 200 response",
                    "x-microcks-default": true,
                    "value": {
                      "Data": {
                        "DefinitionsPerCountry": {}
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "GetFieldDefinitions400Example": {
                    "summary": "Default GetFieldDefinitions 400 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Authentication has been denied for this request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "GetFieldDefinitions401Example": {
                    "summary": "Default GetFieldDefinitions 401 response",
                    "x-microcks-default": true,
                    "value": {
                      "error": {
                        "errorMessage": "Invalid or missing parameters.",
                        "errorCode": "BadRequest",
                        "details": "Validation failed for field 'storeId'."
                      }
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Successful authentication, but authorization has been denied for this request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FlipdishError"
                },
                "examples": {
                  "GetFieldDefinitions403Example": {
                    "summary": "Default GetFieldDefinitions 403 response",
              

# --- truncated at 32 KB (474 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/flipdish/refs/heads/main/openapi/flipdish-payments-openapi.json