From c4580a4a6114f045b6db1be2b2f6c32ed055f846 Mon Sep 17 00:00:00 2001 From: sumitkumarsage Date: Mon, 31 Aug 2026 17:32:03 +0530 Subject: [PATCH 1/7] Updated openAPI docs for POST /spender/dwolla/funding_sources/delete --- reference/spender.yaml | 77 +++++++++++++++++++ src/spender/openapi.yaml | 2 + ...spender@dwolla@funding_sources@delete.yaml | 76 ++++++++++++++++++ 3 files changed, 155 insertions(+) create mode 100644 src/spender/paths/spender@dwolla@funding_sources@delete.yaml diff --git a/reference/spender.yaml b/reference/spender.yaml index 99e6dfc5c..5ce4e3ce7 100644 --- a/reference/spender.yaml +++ b/reference/spender.yaml @@ -7144,6 +7144,83 @@ paths: type: string description: | This error means current user does not have enough permissions to perform this operation. + /spender/dwolla/funding_sources/delete: + post: + tags: + - Dwolla Funding Sources + summary: Remove the active bank funding source + operationId: dwolla_spender_funding_source_delete_v2 + requestBody: + required: true + content: + application/json: + schema: + type: object + additionalProperties: false + required: + - data + properties: + data: + type: object + additionalProperties: false + properties: {} + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + additionalProperties: false + required: + - data + properties: + data: + type: object + additionalProperties: false + required: + - removed + properties: + removed: + type: boolean + enum: + - true + '400': + description: Bad request + content: + application/json: + schema: + $ref: '#/components/schemas/400' + '401': + description: Unauthorized request + content: + application/json: + schema: + $ref: '#/components/schemas/401' + '403': + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/403' + '404': + description: Not found + content: + application/json: + schema: + type: object + additionalProperties: false + required: + - data + - error + - message + properties: + data: + nullable: true + error: + type: string + message: + type: string /spender/dwolla/funding_sources: get: tags: diff --git a/src/spender/openapi.yaml b/src/spender/openapi.yaml index 81a218a26..6746746c3 100644 --- a/src/spender/openapi.yaml +++ b/src/spender/openapi.yaml @@ -383,6 +383,8 @@ paths: $ref: paths/spender@dwolla@customers.yaml /spender/dwolla/funding_sources: $ref: paths/spender@dwolla@funding_sources.yaml + /spender/dwolla/funding_sources/delete: + $ref: paths/spender@dwolla@funding_sources@delete.yaml /spender/expenses/export_configurations: $ref: paths/spender@expenses@export_configurations.yaml /spender/expenses/export_configurations/delete/bulk: diff --git a/src/spender/paths/spender@dwolla@funding_sources@delete.yaml b/src/spender/paths/spender@dwolla@funding_sources@delete.yaml new file mode 100644 index 000000000..59a693d95 --- /dev/null +++ b/src/spender/paths/spender@dwolla@funding_sources@delete.yaml @@ -0,0 +1,76 @@ +post: + tags: + - Dwolla Funding Sources + summary: Remove the active bank funding source + operationId: dwolla_spender_funding_source_delete_v2 + requestBody: + required: true + content: + application/json: + schema: + type: object + additionalProperties: false + required: + - data + properties: + data: + type: object + additionalProperties: false + properties: {} + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + additionalProperties: false + required: + - data + properties: + data: + type: object + additionalProperties: false + required: + - removed + properties: + removed: + type: boolean + enum: + - true + '400': + description: Bad request + content: + application/json: + schema: + $ref: '../../components/schemas/400.yaml' + '401': + description: Unauthorized request + content: + application/json: + schema: + $ref: '../../components/schemas/401.yaml' + '403': + description: Forbidden + content: + application/json: + schema: + $ref: '../../components/schemas/403.yaml' + '404': + description: Not found + content: + application/json: + schema: + type: object + additionalProperties: false + required: + - data + - error + - message + properties: + data: + nullable: true + error: + type: string + message: + type: string From 7cda41346a205e0d7bd04ce1587384f521a5da37 Mon Sep 17 00:00:00 2001 From: sumitkumarsage Date: Wed, 16 Sep 2026 14:22:37 +0530 Subject: [PATCH 2/7] Added OpenAPI changes for POST /spender/dwolla/funding_sources/delete --- reference/spender.yaml | 65 +++++++++++++++++++ src/spender/openapi.yaml | 2 + ...spender@dwolla@funding_sources@delete.yaml | 64 ++++++++++++++++++ 3 files changed, 131 insertions(+) create mode 100644 src/spender/paths/spender@dwolla@funding_sources@delete.yaml diff --git a/reference/spender.yaml b/reference/spender.yaml index ce2cdb461..610b8c5cb 100644 --- a/reference/spender.yaml +++ b/reference/spender.yaml @@ -8565,6 +8565,71 @@ paths: application/json: schema: $ref: '#/components/schemas/404' + /spender/dwolla/funding_sources/delete: + post: + tags: + - Dwolla Funding Sources + summary: Remove the active bank funding source + operationId: dwolla_spender_funding_source_delete + requestBody: + required: true + content: + application/json: + schema: + type: object + additionalProperties: false + required: + - data + properties: + data: + type: object + additionalProperties: false + maxProperties: 0 + responses: + '200': + description: Funding source removed + content: + application/json: + schema: + type: object + additionalProperties: false + required: + - data + properties: + data: + type: object + additionalProperties: false + required: + - removed + properties: + removed: + type: boolean + enum: + - true + '400': + description: Bad request + content: + application/json: + schema: + $ref: '#/components/schemas/400' + '401': + description: Unauthorized request + content: + application/json: + schema: + $ref: '#/components/schemas/401' + '403': + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/403' + '404': + description: Not found + content: + application/json: + schema: + $ref: '#/components/schemas/404' /spender/expenses/export_configurations: get: x-internal: false diff --git a/src/spender/openapi.yaml b/src/spender/openapi.yaml index e89eb0746..f198d5c45 100644 --- a/src/spender/openapi.yaml +++ b/src/spender/openapi.yaml @@ -426,6 +426,8 @@ paths: $ref: paths/spender@dwolla@customers.yaml /spender/dwolla/funding_sources: $ref: paths/spender@dwolla@funding_sources.yaml + /spender/dwolla/funding_sources/delete: + $ref: paths/spender@dwolla@funding_sources@delete.yaml /spender/expenses/export_configurations: $ref: paths/spender@expenses@export_configurations.yaml /spender/expenses/export_configurations/delete/bulk: diff --git a/src/spender/paths/spender@dwolla@funding_sources@delete.yaml b/src/spender/paths/spender@dwolla@funding_sources@delete.yaml new file mode 100644 index 000000000..60b8cd490 --- /dev/null +++ b/src/spender/paths/spender@dwolla@funding_sources@delete.yaml @@ -0,0 +1,64 @@ +post: + tags: + - Dwolla Funding Sources + summary: Remove the active bank funding source + operationId: dwolla_spender_funding_source_delete + requestBody: + required: true + content: + application/json: + schema: + type: object + additionalProperties: false + required: + - data + properties: + data: + type: object + additionalProperties: false + maxProperties: 0 + responses: + '200': + description: Funding source removed + content: + application/json: + schema: + type: object + additionalProperties: false + required: + - data + properties: + data: + type: object + additionalProperties: false + required: + - removed + properties: + removed: + type: boolean + enum: + - true + '400': + description: Bad request + content: + application/json: + schema: + $ref: '../../components/schemas/400.yaml' + '401': + description: Unauthorized request + content: + application/json: + schema: + $ref: '../../components/schemas/401.yaml' + '403': + description: Forbidden + content: + application/json: + schema: + $ref: '../../components/schemas/403.yaml' + '404': + description: Not found + content: + application/json: + schema: + $ref: '../../components/schemas/404.yaml' From 4d87a73b6423b83819d478f753ffa09c5d538fee Mon Sep 17 00:00:00 2001 From: sumitkumarsage Date: Wed, 16 Sep 2026 22:10:51 +0530 Subject: [PATCH 3/7] Remove duplicate spender Dwolla customer path --- reference/spender.yaml | 66 ------------------------------------------ 1 file changed, 66 deletions(-) diff --git a/reference/spender.yaml b/reference/spender.yaml index 610b8c5cb..f5face651 100644 --- a/reference/spender.yaml +++ b/reference/spender.yaml @@ -8424,72 +8424,6 @@ paths: application/json: schema: $ref: '#/components/schemas/403' - /spender/dwolla/customers: - post: - tags: - - Dwolla Customers - summary: Create a receive-only Dwolla customer - description: | - Create a receive-only Dwolla customer for the authenticated spender. - operationId: dwolla_spender_customer_create - requestBody: - required: true - content: - application/json: - schema: - type: object - additionalProperties: false - required: - - data - properties: - data: - type: object - additionalProperties: false - properties: {} - responses: - '200': - description: OK - content: - application/json: - schema: - type: object - additionalProperties: false - required: - - data - properties: - data: - type: object - additionalProperties: false - required: - - external_id - properties: - external_id: - type: string - description: Unique identifier of the Dwolla customer. - '400': - description: Bad request - content: - application/json: - schema: - $ref: '#/components/schemas/400' - '401': - description: Unauthorized request - content: - application/json: - schema: - $ref: '#/components/schemas/401' - '403': - description: Forbidden - content: - application/json: - schema: - $ref: '#/components/schemas/403' - '404': - description: Not found - content: - application/json: - schema: - $ref: '#/components/schemas/404' /spender/dwolla/funding_sources: get: tags: From 35820f41993b33c7e4294a1800c8130ac45f24b7 Mon Sep 17 00:00:00 2001 From: sumitkumarsage Date: Tue, 29 Sep 2026 13:01:49 +0530 Subject: [PATCH 4/7] fix funding sources 404 schema --- reference/spender.yaml | 9 ++++++++- src/spender/paths/spender@dwolla@funding_sources.yaml | 9 ++++++++- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/reference/spender.yaml b/reference/spender.yaml index 4a86a7411..f5366b744 100644 --- a/reference/spender.yaml +++ b/reference/spender.yaml @@ -8405,7 +8405,14 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/404' + type: object + properties: + message: + type: string + enum: + - Employee not found + - Dwolla customer not found + description: The authenticated spender or their Dwolla customer was not found. /spender/dwolla_customers: get: x-internal: false diff --git a/src/spender/paths/spender@dwolla@funding_sources.yaml b/src/spender/paths/spender@dwolla@funding_sources.yaml index b934c5ece..865ae4ef5 100644 --- a/src/spender/paths/spender@dwolla@funding_sources.yaml +++ b/src/spender/paths/spender@dwolla@funding_sources.yaml @@ -71,4 +71,11 @@ get: content: application/json: schema: - $ref: '../../components/schemas/404.yaml' + type: object + properties: + message: + type: string + enum: + - Employee not found + - Dwolla customer not found + description: The authenticated spender or their Dwolla customer was not found. From d89d5664311fe270f7fb20df3252b28e7cd40d44 Mon Sep 17 00:00:00 2001 From: sumitkumarsage Date: Tue, 29 Sep 2026 13:29:02 +0530 Subject: [PATCH 5/7] fix funding source delete 404 schema --- reference/spender.yaml | 10 +++++++++- .../paths/spender@dwolla@funding_sources@delete.yaml | 10 +++++++++- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/reference/spender.yaml b/reference/spender.yaml index f5366b744..ea1e122c6 100644 --- a/reference/spender.yaml +++ b/reference/spender.yaml @@ -8564,7 +8564,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/404' + type: object + properties: + message: + type: string + enum: + - Employee not found + - Dwolla customer not found + - Active Dwolla funding source not found + description: The spender, their Dwolla customer, or their active funding source was not found. /spender/expenses/export_configurations: get: x-internal: false diff --git a/src/spender/paths/spender@dwolla@funding_sources@delete.yaml b/src/spender/paths/spender@dwolla@funding_sources@delete.yaml index 60b8cd490..3a2afd2dc 100644 --- a/src/spender/paths/spender@dwolla@funding_sources@delete.yaml +++ b/src/spender/paths/spender@dwolla@funding_sources@delete.yaml @@ -61,4 +61,12 @@ post: content: application/json: schema: - $ref: '../../components/schemas/404.yaml' + type: object + properties: + message: + type: string + enum: + - Employee not found + - Dwolla customer not found + - Active Dwolla funding source not found + description: The spender, their Dwolla customer, or their active funding source was not found. From 8be74891ea35948fb0c39d216e9f2906068fcab1 Mon Sep 17 00:00:00 2001 From: sumitkumarsage Date: Thu, 1 Oct 2026 12:32:09 +0530 Subject: [PATCH 6/7] docs(dwolla): normalize funding source delete tag --- reference/spender.yaml | 2 +- src/spender/paths/spender@dwolla@funding_sources@delete.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/reference/spender.yaml b/reference/spender.yaml index 3e5ac3ba6..16bf756cb 100644 --- a/reference/spender.yaml +++ b/reference/spender.yaml @@ -8506,7 +8506,7 @@ paths: /spender/dwolla/funding_sources/delete: post: tags: - - Dwolla Funding Sources + - Dwolla summary: Remove the active bank funding source operationId: dwolla_spender_funding_source_delete requestBody: diff --git a/src/spender/paths/spender@dwolla@funding_sources@delete.yaml b/src/spender/paths/spender@dwolla@funding_sources@delete.yaml index 3a2afd2dc..ee22c22ee 100644 --- a/src/spender/paths/spender@dwolla@funding_sources@delete.yaml +++ b/src/spender/paths/spender@dwolla@funding_sources@delete.yaml @@ -1,6 +1,6 @@ post: tags: - - Dwolla Funding Sources + - Dwolla summary: Remove the active bank funding source operationId: dwolla_spender_funding_source_delete requestBody: From 70a2f00497ce8c667fa079487c97a4f1a51d9849 Mon Sep 17 00:00:00 2001 From: Sumit Kumar Date: Mon, 5 Oct 2026 19:21:48 +0530 Subject: [PATCH 7/7] Apply suggestion from @yashUkalkar Co-authored-by: Yash Ukalkar --- src/spender/paths/spender@dwolla@funding_sources@delete.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/spender/paths/spender@dwolla@funding_sources@delete.yaml b/src/spender/paths/spender@dwolla@funding_sources@delete.yaml index ee22c22ee..30185db66 100644 --- a/src/spender/paths/spender@dwolla@funding_sources@delete.yaml +++ b/src/spender/paths/spender@dwolla@funding_sources@delete.yaml @@ -68,5 +68,5 @@ post: enum: - Employee not found - Dwolla customer not found - - Active Dwolla funding source not found + - Active funding source not found description: The spender, their Dwolla customer, or their active funding source was not found.