---
agentTools:
  projectIndex: https://financial-cloud.readme.io/llms.txt
---

# Start Open Banking Flow

Starts the Open Banking Flow with GoCardless.

# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "info": {
    "title": "Helpdesk",
    "description": "The helpdesk API allows customers to interact and manage their accounts on our platform.",
    "version": "10.0.2"
  },
  "tags": [
    {
      "name": "payments",
      "description": "Endpoints for payment management."
    }
  ],
  "servers": [
    {
      "url": "{protocol}://{domain}/helpdesk",
      "description": "Dynamic server",
      "variables": {
        "protocol": {
          "enum": [
            "http",
            "https"
          ],
          "default": "https"
        },
        "domain": {
          "enum": [
            "public.glabs.financial-cloud.co.uk",
            "localhost:8080"
          ],
          "default": "public.glabs.financial-cloud.co.uk"
        }
      }
    }
  ],
  "paths": {
    "/payment/openbanking/flow": {
      "post": {
        "summary": "Start Open Banking Flow",
        "description": "Starts the Open Banking Flow with GoCardless.",
        "tags": [
          "payments"
        ],
        "security": [
          {
            "ReferenceAuth": []
          },
          {
            "ApiKeyAuth": []
          }
        ],
        "parameters": [
          {
            "in": "query",
            "name": "reference",
            "schema": {
              "type": "integer"
            },
            "description": "Reference number of account to user to charge, if x-access-token is sent, this is ignored"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "example": {
                "amount": 100,
                "email": "test@email.com",
                "given_name": "test",
                "family_name": "test2",
                "start_date": "2023-09-06"
              },
              "schema": {
                "$ref": "#/components/schemas/OpenBankingFlow"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Identity"
                }
              }
            }
          },
          "400": {
            "description": "invalid payload",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GenericMessage"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "ApiKeyAuth": {
        "type": "apiKey",
        "in": "header",
        "name": "x-access-token"
      },
      "ReferenceAuth": {
        "type": "apiKey",
        "in": "query",
        "name": "reference"
      }
    },
    "schemas": {
      "Identity": {
        "title": "LUUID",
        "description": "An object containing the LUUID of the document",
        "type": "object",
        "example": {
          "LUUID": "2ae526b8-8953-4867-b18a-e54aa797bcce"
        },
        "properties": {
          "LUUID": {
            "type": "string",
            "description": "The Lifetime UUID of the document/ entity",
            "example": "2ae526b8-8953-4867-b18a-e54aa797bcce"
          }
        }
      },
      "OpenBankingFlow": {
        "title": "Open Banking Flow",
        "type": "object",
        "description": "Contains the required information for starting an Open Banking flow.",
        "required": [
          "amount",
          "start_date",
          "email",
          "given_name",
          "family_name"
        ],
        "properties": {
          "email": {
            "type": "string",
            "description": "The email address of the account holder.",
            "example": "example@email.com"
          },
          "given_name": {
            "type": "string",
            "description": "The given name of the account holder.",
            "example": "John"
          },
          "family_name": {
            "type": "string",
            "description": "The family name of the account holder.",
            "example": "Doe"
          },
          "amount": {
            "type": "number",
            "description": "The amount to be paid.",
            "example": 100
          },
          "start_date": {
            "type": "string",
            "description": "The start date of the payment plan.",
            "example": "2023-09-01T12:00:00Z"
          }
        }
      },
      "GenericMessage": {
        "title": "GenericMessage",
        "type": "object",
        "required": [
          "message"
        ],
        "description": "A schema for generic message responses, often used for errors or notifications.",
        "properties": {
          "message": {
            "title": "Message",
            "type": "string",
            "description": "A generic message detailing the nature of the response.",
            "example": "details do not match our records"
          }
        },
        "example": {
          "message": "details do not match our records"
        }
      }
    }
  },
  "x-readme": {
    "explorer-enabled": true,
    "proxy-enabled": true
  },
  "_id": {
    "buffer": {
      "0": 100,
      "1": 237,
      "2": 233,
      "3": 61,
      "4": 213,
      "5": 219,
      "6": 87,
      "7": 0,
      "8": 100,
      "9": 246,
      "10": 124,
      "11": 81
    }
  }
}
```