From fec690e63c8b5c02544f3ba07bb0ab0e25bdb7f7 Mon Sep 17 00:00:00 2001 From: "gocardless-ci-robot[bot]" <123969075+gocardless-ci-robot[bot]@users.noreply.github.com> Date: Thu, 30 Oct 2025 13:29:50 +0000 Subject: [PATCH 01/15] Changes generated by b02fc62a651494e317c78e5e447b95d846f1952e This commit was automatically created from gocardless/gocardless-pro-java-template@b02fc62a651494e317c78e5e447b95d846f1952e by the `push-files` action. Workflow run: https://github.com/gocardless/gocardless-pro-java-template/actions/runs/18942202127 --- .../com/gocardless/resources/BillingRequest.java | 4 ++-- .../resources/BillingRequestWithAction.java | 4 ++-- src/main/java/com/gocardless/resources/Payment.java | 2 +- .../java/com/gocardless/resources/Subscription.java | 4 ++-- .../gocardless/services/BillingRequestService.java | 12 ++++++------ .../services/BillingRequestWithActionService.java | 4 ++-- .../services/InstalmentScheduleService.java | 4 ++-- .../java/com/gocardless/services/PaymentService.java | 4 ++-- .../com/gocardless/services/SubscriptionService.java | 4 ++-- 9 files changed, 21 insertions(+), 21 deletions(-) diff --git a/src/main/java/com/gocardless/resources/BillingRequest.java b/src/main/java/com/gocardless/resources/BillingRequest.java index 055aafed..b334d36d 100644 --- a/src/main/java/com/gocardless/resources/BillingRequest.java +++ b/src/main/java/com/gocardless/resources/BillingRequest.java @@ -478,7 +478,7 @@ public String getPaymentReference() { /** * On failure, automatically retry payments using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to be * enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). @@ -1756,7 +1756,7 @@ public String getPaymentReference() { /** * On failure, automatically retry payments using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to be * enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). diff --git a/src/main/java/com/gocardless/resources/BillingRequestWithAction.java b/src/main/java/com/gocardless/resources/BillingRequestWithAction.java index 29e6d39a..0a6164b5 100644 --- a/src/main/java/com/gocardless/resources/BillingRequestWithAction.java +++ b/src/main/java/com/gocardless/resources/BillingRequestWithAction.java @@ -680,7 +680,7 @@ public String getPaymentReference() { /** * On failure, automatically retry payments using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to * be enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). @@ -1970,7 +1970,7 @@ public String getPaymentReference() { /** * On failure, automatically retry payments using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to * be enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). diff --git a/src/main/java/com/gocardless/resources/Payment.java b/src/main/java/com/gocardless/resources/Payment.java index 66af110e..bf545ee7 100644 --- a/src/main/java/com/gocardless/resources/Payment.java +++ b/src/main/java/com/gocardless/resources/Payment.java @@ -145,7 +145,7 @@ public String getReference() { /** * On failure, automatically retry the payment using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to be * enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). diff --git a/src/main/java/com/gocardless/resources/Subscription.java b/src/main/java/com/gocardless/resources/Subscription.java index 79ba1e13..fb0550c7 100644 --- a/src/main/java/com/gocardless/resources/Subscription.java +++ b/src/main/java/com/gocardless/resources/Subscription.java @@ -208,8 +208,8 @@ public String getPaymentReference() { } /** - * On failure, automatically retry payments using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * On failure, automatically retry payments using [intelligent retries](/success-plus/overview). + * Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to be * enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). diff --git a/src/main/java/com/gocardless/services/BillingRequestService.java b/src/main/java/com/gocardless/services/BillingRequestService.java index 2285470f..17c34b9d 100644 --- a/src/main/java/com/gocardless/services/BillingRequestService.java +++ b/src/main/java/com/gocardless/services/BillingRequestService.java @@ -293,7 +293,7 @@ public BillingRequestCreateRequest withInstalmentScheduleRequestPaymentReference /** * On failure, automatically retry payments using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to be * enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). @@ -663,7 +663,7 @@ public BillingRequestCreateRequest withPaymentRequestReference(String reference) /** * On failure, automatically retry payments using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to be * enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). @@ -851,7 +851,7 @@ public BillingRequestCreateRequest withSubscriptionRequestPaymentReference( /** * On failure, automatically retry payments using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to be * enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). @@ -1161,7 +1161,7 @@ public InstalmentScheduleRequest withPaymentReference(String paymentReference) { /** * On failure, automatically retry payments using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to * be enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). @@ -1670,7 +1670,7 @@ public PaymentRequest withReference(String reference) { /** * On failure, automatically retry payments using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to * be enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). @@ -1827,7 +1827,7 @@ public SubscriptionRequest withPaymentReference(String paymentReference) { /** * On failure, automatically retry payments using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to * be enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). diff --git a/src/main/java/com/gocardless/services/BillingRequestWithActionService.java b/src/main/java/com/gocardless/services/BillingRequestWithActionService.java index a08847d3..bbbb5c03 100644 --- a/src/main/java/com/gocardless/services/BillingRequestWithActionService.java +++ b/src/main/java/com/gocardless/services/BillingRequestWithActionService.java @@ -481,7 +481,7 @@ public BillingRequestWithActionCreateWithActionsRequest withPaymentRequestRefere /** * On failure, automatically retry payments using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to be * enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). @@ -1620,7 +1620,7 @@ public PaymentRequest withReference(String reference) { /** * On failure, automatically retry payments using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to * be enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). diff --git a/src/main/java/com/gocardless/services/InstalmentScheduleService.java b/src/main/java/com/gocardless/services/InstalmentScheduleService.java index fbe604c6..e563850c 100644 --- a/src/main/java/com/gocardless/services/InstalmentScheduleService.java +++ b/src/main/java/com/gocardless/services/InstalmentScheduleService.java @@ -252,7 +252,7 @@ public InstalmentScheduleCreateWithDatesRequest withPaymentReference( /** * On failure, automatically retry payments using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to be * enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). @@ -578,7 +578,7 @@ public InstalmentScheduleCreateWithScheduleRequest withPaymentReference( /** * On failure, automatically retry payments using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to be * enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). diff --git a/src/main/java/com/gocardless/services/PaymentService.java b/src/main/java/com/gocardless/services/PaymentService.java index b2530e00..cb6d3fa8 100644 --- a/src/main/java/com/gocardless/services/PaymentService.java +++ b/src/main/java/com/gocardless/services/PaymentService.java @@ -241,7 +241,7 @@ public PaymentCreateRequest withReference(String reference) { /** * On failure, automatically retry the payment using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to be * enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). @@ -890,7 +890,7 @@ public PaymentUpdateRequest withMetadata(String key, String value) { /** * On failure, automatically retry the payment using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to be * enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). diff --git a/src/main/java/com/gocardless/services/SubscriptionService.java b/src/main/java/com/gocardless/services/SubscriptionService.java index 22d8d595..301a9ef0 100644 --- a/src/main/java/com/gocardless/services/SubscriptionService.java +++ b/src/main/java/com/gocardless/services/SubscriptionService.java @@ -356,7 +356,7 @@ public SubscriptionCreateRequest withPaymentReference(String paymentReference) { /** * On failure, automatically retry payments using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to be * enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus). @@ -855,7 +855,7 @@ public SubscriptionUpdateRequest withPaymentReference(String paymentReference) { /** * On failure, automatically retry payments using [intelligent - * retries](#success-intelligent-retries). Default is `false`. + * retries](/success-plus/overview). Default is `false`. *
* Important: To be able to use intelligent retries, Success+ needs to be
* enabled in [GoCardless dashboard](https://manage.gocardless.com/success-plus).
From 5db4c0c3a831bebb200d33e5fd53a851d9c4549c Mon Sep 17 00:00:00 2001
From: "gocardless-ci-robot[bot]"
<123969075+gocardless-ci-robot[bot]@users.noreply.github.com>
Date: Wed, 5 Nov 2025 12:56:14 +0000
Subject: [PATCH 02/15] Changes generated by
ef5b702b6e25c522c3b56a3ea3bfc54400d0948c
This commit was automatically created from gocardless/gocardless-pro-java-template@ef5b702b6e25c522c3b56a3ea3bfc54400d0948c
by the `push-files` action.
Workflow run: https://github.com/gocardless/gocardless-pro-java-template/actions/runs/19102625039
---
.../java/com/gocardless/GoCardlessClient.java | 9 +
.../resources/PaymentAccountTransaction.java | 146 +++++++++++++++
.../PaymentAccountTransactionService.java | 169 ++++++++++++++++++
3 files changed, 324 insertions(+)
create mode 100644 src/main/java/com/gocardless/resources/PaymentAccountTransaction.java
create mode 100644 src/main/java/com/gocardless/services/PaymentAccountTransactionService.java
diff --git a/src/main/java/com/gocardless/GoCardlessClient.java b/src/main/java/com/gocardless/GoCardlessClient.java
index 4a54b034..52e7227a 100644
--- a/src/main/java/com/gocardless/GoCardlessClient.java
+++ b/src/main/java/com/gocardless/GoCardlessClient.java
@@ -43,6 +43,7 @@ public class GoCardlessClient {
private final PayerAuthorisationService payerAuthorisations;
private final PayerThemeService payerThemes;
private final PaymentService payments;
+ private final PaymentAccountTransactionService paymentAccountTransactions;
private final PayoutService payouts;
private final PayoutItemService payoutItems;
private final RedirectFlowService redirectFlows;
@@ -204,6 +205,7 @@ private GoCardlessClient(HttpClient httpClient) {
this.payerAuthorisations = new PayerAuthorisationService(httpClient);
this.payerThemes = new PayerThemeService(httpClient);
this.payments = new PaymentService(httpClient);
+ this.paymentAccountTransactions = new PaymentAccountTransactionService(httpClient);
this.payouts = new PayoutService(httpClient);
this.payoutItems = new PayoutItemService(httpClient);
this.redirectFlows = new RedirectFlowService(httpClient);
@@ -420,6 +422,13 @@ public PaymentService payments() {
return payments;
}
+ /**
+ * A service class for working with payment account transaction resources.
+ */
+ public PaymentAccountTransactionService paymentAccountTransactions() {
+ return paymentAccountTransactions;
+ }
+
/**
* A service class for working with payout resources.
*/
diff --git a/src/main/java/com/gocardless/resources/PaymentAccountTransaction.java b/src/main/java/com/gocardless/resources/PaymentAccountTransaction.java
new file mode 100644
index 00000000..621511fd
--- /dev/null
+++ b/src/main/java/com/gocardless/resources/PaymentAccountTransaction.java
@@ -0,0 +1,146 @@
+package com.gocardless.resources;
+
+import com.google.gson.annotations.SerializedName;
+
+/**
+ * Represents a payment account transaction resource returned from the API.
+ *
+ * Payment account transactions represent movements of funds on a given payment account. The payment
+ * account is provisioned by GoCardless and is used to fund [outbound
+ * payments](#core-endpoints-outbound-payments).
+ */
+public class PaymentAccountTransaction {
+ private PaymentAccountTransaction() {
+ // blank to prevent instantiation
+ }
+
+ private Integer amount;
+ private Integer balanceAfterTransaction;
+ private String counterpartyName;
+ private Currency currency;
+ private String description;
+ private Direction direction;
+ private String id;
+ private Links links;
+ private String reference;
+ private String valueDate;
+
+ /**
+ * Amount, in the lowest denomination for the currency (e.g. pence in GBP, cents in EUR).
+ */
+ public Integer getAmount() {
+ return amount;
+ }
+
+ /**
+ * Balance after transaction, in the lowest denomination for the currency (e.g. pence in GBP,
+ * cents in EUR).
+ */
+ public Integer getBalanceAfterTransaction() {
+ return balanceAfterTransaction;
+ }
+
+ /**
+ * The name of the counterparty of the transaction. The counterparty is the recipient for a
+ * credit, or the sender for a debit.
+ */
+ public String getCounterpartyName() {
+ return counterpartyName;
+ }
+
+ /**
+ * The currency of the transaction.
+ */
+ public Currency getCurrency() {
+ return currency;
+ }
+
+ /**
+ * The description of the transaction, if available
+ */
+ public String getDescription() {
+ return description;
+ }
+
+ /**
+ * The direction of the transaction. Debits mean money leaving the account (e.g. outbound
+ * payment), while credits signify money coming in (e.g. manual top-up).
+ */
+ public Direction getDirection() {
+ return direction;
+ }
+
+ /**
+ * The unique ID of the payment account transaction.
+ */
+ public String getId() {
+ return id;
+ }
+
+ public Links getLinks() {
+ return links;
+ }
+
+ /**
+ * The reference of the transaction. This is typically supplied by the sender.
+ */
+ public String getReference() {
+ return reference;
+ }
+
+ /**
+ * The date of when the transaction occurred.
+ */
+ public String getValueDate() {
+ return valueDate;
+ }
+
+ public enum Currency {
+ @SerializedName("GBP")
+ GBP, @SerializedName("unknown")
+ UNKNOWN
+ }
+
+ public enum Direction {
+ @SerializedName("credit")
+ CREDIT, @SerializedName("debit")
+ DEBIT, @SerializedName("unknown")
+ UNKNOWN
+ }
+
+ /**
+ * Represents a link resource returned from the API.
+ *
+ *
+ */
+ public static class Links {
+ private Links() {
+ // blank to prevent instantiation
+ }
+
+ private String outboundPayment;
+ private String paymentBankAccount;
+ private String payout;
+
+ /**
+ * ID of the [outbound_payment](#core-endpoints-outbound-payments) linked to the transaction
+ */
+ public String getOutboundPayment() {
+ return outboundPayment;
+ }
+
+ /**
+ * ID of the payment bank account.
+ */
+ public String getPaymentBankAccount() {
+ return paymentBankAccount;
+ }
+
+ /**
+ * ID of the [payout](#core-endpoints-payouts) linked to the transaction.
+ */
+ public String getPayout() {
+ return payout;
+ }
+ }
+}
diff --git a/src/main/java/com/gocardless/services/PaymentAccountTransactionService.java b/src/main/java/com/gocardless/services/PaymentAccountTransactionService.java
new file mode 100644
index 00000000..a4f233f4
--- /dev/null
+++ b/src/main/java/com/gocardless/services/PaymentAccountTransactionService.java
@@ -0,0 +1,169 @@
+package com.gocardless.services;
+
+import com.gocardless.http.*;
+import com.gocardless.resources.PaymentAccountTransaction;
+import com.google.common.collect.ImmutableMap;
+import com.google.gson.annotations.SerializedName;
+import com.google.gson.reflect.TypeToken;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Service class for working with payment account transaction resources.
+ *
+ * Payment account transactions represent movements of funds on a given payment account. The payment
+ * account is provisioned by GoCardless and is used to fund [outbound
+ * payments](#core-endpoints-outbound-payments).
+ */
+public class PaymentAccountTransactionService {
+ private final HttpClient httpClient;
+
+ /**
+ * Constructor. Users of this library should have no need to call this - an instance of this
+ * class can be obtained by calling
+ * {@link com.gocardless.GoCardlessClient#paymentAccountTransactions() }.
+ */
+ public PaymentAccountTransactionService(HttpClient httpClient) {
+ this.httpClient = httpClient;
+ }
+
+ /**
+ * List transactions for a given payment account.
+ */
+ public PaymentAccountTransactionListRequest
- * Restricted: Outbound Payments are currently in Early Access and available only
- * to a limited list of organisations. If you are interested in using this feature, please stay
- * tuned for our public launch announcement. We are actively testing and refining our API to ensure
- * it meets your needs and provides the best experience.
- *
- * Restricted: Outbound Payments are currently in Early Access and available only
- * to a limited list of organisations. If you are interested in using this feature, please stay
- * tuned for our public launch announcement. We are actively testing and refining our API to ensure
- * it meets your needs and provides the best experience.
- *
+ extends ListRequest {
+ @PathParam
+ private final String identity;
+ private Direction direction;
+ private String valueDateFrom;
+ private String valueDateTo;
+
+ /**
+ * Cursor pointing to the start of the desired set.
+ */
+ public PaymentAccountTransactionListRequest withAfter(String after) {
+ setAfter(after);
+ return this;
+ }
+
+ /**
+ * Cursor pointing to the end of the desired set.
+ */
+ public PaymentAccountTransactionListRequest withBefore(String before) {
+ setBefore(before);
+ return this;
+ }
+
+ /**
+ * The direction of the transaction. Debits mean money leaving the account (e.g. outbound
+ * payment), while credits signify money coming in (e.g. manual top-up).
+ */
+ public PaymentAccountTransactionListRequest withDirection(Direction direction) {
+ this.direction = direction;
+ return this;
+ }
+
+ /**
+ * Number of records to return.
+ */
+ public PaymentAccountTransactionListRequest withLimit(Integer limit) {
+ setLimit(limit);
+ return this;
+ }
+
+ /**
+ * The beginning of query period
+ */
+ public PaymentAccountTransactionListRequest withValueDateFrom(String valueDateFrom) {
+ this.valueDateFrom = valueDateFrom;
+ return this;
+ }
+
+ /**
+ * The end of query period
+ */
+ public PaymentAccountTransactionListRequest withValueDateTo(String valueDateTo) {
+ this.valueDateTo = valueDateTo;
+ return this;
+ }
+
+ private PaymentAccountTransactionListRequest(HttpClient httpClient,
+ ListRequestExecutor executor, String identity) {
+ super(httpClient, executor);
+ this.identity = identity;
+ }
+
+ public PaymentAccountTransactionListRequest withHeader(String headerName,
+ String headerValue) {
+ this.addHeader(headerName, headerValue);
+ return this;
+ }
+
+ @Override
+ protected Map> getTypeToken() {
+ return new TypeToken
>() {};
+ }
+
+ public enum Direction {
+ @SerializedName("credit")
+ CREDIT, @SerializedName("debit")
+ DEBIT, @SerializedName("unknown")
+ UNKNOWN;
+
+ @Override
+ public String toString() {
+ return name().toLowerCase();
+ }
+ }
+ }
+}
From 4447a60328a0af47ede49851e4e2434bde41ef14 Mon Sep 17 00:00:00 2001
From: "gocardless-ci-robot[bot]"
<123969075+gocardless-ci-robot[bot]@users.noreply.github.com>
Date: Mon, 10 Nov 2025 12:18:57 +0000
Subject: [PATCH 03/15] Changes generated by
55a4a26d9bed83d42efdb88316b46a9801b2a072
This commit was automatically created from gocardless/gocardless-pro-java-template@55a4a26d9bed83d42efdb88316b46a9801b2a072
by the `push-files` action.
Workflow run: https://github.com/gocardless/gocardless-pro-java-template/actions/runs/19231298762
---
.../services/OutboundPaymentService.java | 22 +++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/src/main/java/com/gocardless/services/OutboundPaymentService.java b/src/main/java/com/gocardless/services/OutboundPaymentService.java
index 2c024924..5f7f0e92 100644
--- a/src/main/java/com/gocardless/services/OutboundPaymentService.java
+++ b/src/main/java/com/gocardless/services/OutboundPaymentService.java
@@ -138,6 +138,18 @@ public OutboundPaymentCreateRequest withLinks(Links links) {
return this;
}
+ /**
+ * ID of the app that created the outbound payment.
+ * _Note_: this property will only be present if the payment was created through an app.
+ */
+ public OutboundPaymentCreateRequest withLinksApp(String app) {
+ if (links == null) {
+ links = new Links();
+ }
+ links.withApp(app);
+ return this;
+ }
+
/**
* ID of the creditor who sends the outbound payment.
*/
@@ -257,9 +269,19 @@ public String toString() {
}
public static class Links {
+ private String app;
private String creditor;
private String recipientBankAccount;
+ /**
+ * ID of the app that created the outbound payment.
+ * _Note_: this property will only be present if the payment was created through an app.
+ */
+ public Links withApp(String app) {
+ this.app = app;
+ return this;
+ }
+
/**
* ID of the creditor who sends the outbound payment.
*/
From b46c6f4f894705b3d32dca218564bc74c8bc2fac Mon Sep 17 00:00:00 2001
From: "gocardless-ci-robot[bot]"
<123969075+gocardless-ci-robot[bot]@users.noreply.github.com>
Date: Tue, 11 Nov 2025 15:53:21 +0000
Subject: [PATCH 04/15] Changes generated by
dae6cd0c39fd9545f4236c1bada19c4f15b35fba
This commit was automatically created from gocardless/gocardless-pro-java-template@dae6cd0c39fd9545f4236c1bada19c4f15b35fba
by the `push-files` action.
Workflow run: https://github.com/gocardless/gocardless-pro-java-template/actions/runs/19271033487
---
.../gocardless/resources/BillingRequest.java | 7 +++--
.../resources/BillingRequestWithAction.java | 7 +++--
.../resources/CustomerBankAccount.java | 5 ++--
.../resources/PayerAuthorisation.java | 8 +++--
.../services/BillingRequestService.java | 8 +++--
.../BillingRequestWithActionService.java | 7 +++--
.../services/CustomerBankAccountService.java | 8 +++--
.../services/MandateImportEntryService.java | 15 ++++++----
.../services/PayerAuthorisationService.java | 30 +++++++++++--------
9 files changed, 57 insertions(+), 38 deletions(-)
diff --git a/src/main/java/com/gocardless/resources/BillingRequest.java b/src/main/java/com/gocardless/resources/BillingRequest.java
index b334d36d..0f8d9516 100644
--- a/src/main/java/com/gocardless/resources/BillingRequest.java
+++ b/src/main/java/com/gocardless/resources/BillingRequest.java
@@ -1386,9 +1386,10 @@ private CustomerBankAccount() {
private Map
- * _Note_: this property will only be present if the payment was created through an app.
- */
- public OutboundPaymentCreateRequest withLinksApp(String app) {
- if (links == null) {
- links = new Links();
- }
- links.withApp(app);
- return this;
- }
-
/**
* ID of the creditor who sends the outbound payment.
*/
@@ -262,19 +250,9 @@ public String toString() {
}
public static class Links {
- private String app;
private String creditor;
private String recipientBankAccount;
- /**
- * ID of the app that created the outbound payment.
- * _Note_: this property will only be present if the payment was created through an app.
- */
- public Links withApp(String app) {
- this.app = app;
- return this;
- }
-
/**
* ID of the creditor who sends the outbound payment.
*/
From 1979f5e4367c0180af8694203eeeb56f688b4667 Mon Sep 17 00:00:00 2001
From: "gocardless-ci-robot[bot]"
<123969075+gocardless-ci-robot[bot]@users.noreply.github.com>
Date: Fri, 12 Dec 2025 13:34:59 +0000
Subject: [PATCH 07/15] Changes generated by
0c8509563061f2301a470d9e1f3d4157f38a5aca
This commit was automatically created from gocardless/gocardless-pro-java-template@0c8509563061f2301a470d9e1f3d4157f38a5aca
by the `push-files` action.
Workflow run: https://github.com/gocardless/gocardless-pro-java-template/actions/runs/20168383588
---
.../java/com/gocardless/GoCardlessClient.java | 9 +
.../BankAccountHolderVerification.java | 94 +++++++++
.../BankAccountHolderVerificationService.java | 193 ++++++++++++++++++
3 files changed, 296 insertions(+)
create mode 100644 src/main/java/com/gocardless/resources/BankAccountHolderVerification.java
create mode 100644 src/main/java/com/gocardless/services/BankAccountHolderVerificationService.java
diff --git a/src/main/java/com/gocardless/GoCardlessClient.java b/src/main/java/com/gocardless/GoCardlessClient.java
index 52e7227a..b11b632d 100644
--- a/src/main/java/com/gocardless/GoCardlessClient.java
+++ b/src/main/java/com/gocardless/GoCardlessClient.java
@@ -16,6 +16,7 @@ public class GoCardlessClient {
private final HttpClient httpClient;
private final BalanceService balances;
private final BankAccountDetailService bankAccountDetails;
+ private final BankAccountHolderVerificationService bankAccountHolderVerifications;
private final BankAuthorisationService bankAuthorisations;
private final BankDetailsLookupService bankDetailsLookups;
private final BillingRequestService billingRequests;
@@ -178,6 +179,7 @@ private GoCardlessClient(HttpClient httpClient) {
this.httpClient = httpClient;
this.balances = new BalanceService(httpClient);
this.bankAccountDetails = new BankAccountDetailService(httpClient);
+ this.bankAccountHolderVerifications = new BankAccountHolderVerificationService(httpClient);
this.bankAuthorisations = new BankAuthorisationService(httpClient);
this.bankDetailsLookups = new BankDetailsLookupService(httpClient);
this.billingRequests = new BillingRequestService(httpClient);
@@ -233,6 +235,13 @@ public BankAccountDetailService bankAccountDetails() {
return bankAccountDetails;
}
+ /**
+ * A service class for working with bank account holder verification resources.
+ */
+ public BankAccountHolderVerificationService bankAccountHolderVerifications() {
+ return bankAccountHolderVerifications;
+ }
+
/**
* A service class for working with bank authorisation resources.
*/
diff --git a/src/main/java/com/gocardless/resources/BankAccountHolderVerification.java b/src/main/java/com/gocardless/resources/BankAccountHolderVerification.java
new file mode 100644
index 00000000..45f996f1
--- /dev/null
+++ b/src/main/java/com/gocardless/resources/BankAccountHolderVerification.java
@@ -0,0 +1,94 @@
+package com.gocardless.resources;
+
+import com.google.gson.annotations.SerializedName;
+
+/**
+ * Represents a bank account holder verification resource returned from the API.
+ *
+ * Create a bank account holder verification for a bank account.
+ */
+public class BankAccountHolderVerification {
+ private BankAccountHolderVerification() {
+ // blank to prevent instantiation
+ }
+
+ private String actualAccountName;
+ private String id;
+ private Result result;
+ private Status status;
+ private Type type;
+
+ /**
+ * The actual account name returned by the recipient's bank, populated only in the case of a
+ * partial match.
+ */
+ public String getActualAccountName() {
+ return actualAccountName;
+ }
+
+ /**
+ * The unique identifier for the bank account holder verification resource, e.g. "BAHV123".
+ */
+ public String getId() {
+ return id;
+ }
+
+ /**
+ * Result of the verification, could be one of
+ *
+ *
+ */
+ public Result getResult() {
+ return result;
+ }
+
+ /**
+ * The status of the bank account holder verification.
+ *
+ *
+ *
+ */
+ public Status getStatus() {
+ return status;
+ }
+
+ /**
+ * Type of the verification that has been performed eg. [Confirmation of
+ * Payee](https://www.wearepay.uk/what-we-do/overlay-services/confirmation-of-payee/)
+ */
+ public Type getType() {
+ return type;
+ }
+
+ public enum Result {
+ @SerializedName("full_match")
+ FULL_MATCH, @SerializedName("partial_match")
+ PARTIAL_MATCH, @SerializedName("no_match")
+ NO_MATCH, @SerializedName("unable_to_match")
+ UNABLE_TO_MATCH, @SerializedName("unknown")
+ UNKNOWN
+ }
+
+ public enum Status {
+ @SerializedName("pending")
+ PENDING, @SerializedName("completed")
+ COMPLETED, @SerializedName("unknown")
+ UNKNOWN
+ }
+
+ public enum Type {
+ @SerializedName("confirmation_of_payee")
+ CONFIRMATION_OF_PAYEE, @SerializedName("unknown")
+ UNKNOWN
+ }
+}
diff --git a/src/main/java/com/gocardless/services/BankAccountHolderVerificationService.java b/src/main/java/com/gocardless/services/BankAccountHolderVerificationService.java
new file mode 100644
index 00000000..a413932c
--- /dev/null
+++ b/src/main/java/com/gocardless/services/BankAccountHolderVerificationService.java
@@ -0,0 +1,193 @@
+package com.gocardless.services;
+
+import com.gocardless.http.*;
+import com.gocardless.resources.BankAccountHolderVerification;
+import com.google.common.collect.ImmutableMap;
+import com.google.gson.annotations.SerializedName;
+import java.util.Map;
+
+/**
+ * Service class for working with bank account holder verification resources.
+ *
+ * Create a bank account holder verification for a bank account.
+ */
+public class BankAccountHolderVerificationService {
+ private final HttpClient httpClient;
+
+ /**
+ * Constructor. Users of this library should have no need to call this - an instance of this
+ * class can be obtained by calling
+ * {@link com.gocardless.GoCardlessClient#bankAccountHolderVerifications() }.
+ */
+ public BankAccountHolderVerificationService(HttpClient httpClient) {
+ this.httpClient = httpClient;
+ }
+
+ /**
+ * Verify the account holder of the bank account. A complete verification can be attached when
+ * creating an outbound payment. This endpoint allows partner merchants to create Confirmation
+ * of Payee checks on customer bank accounts before sending outbound payments.
+ */
+ public BankAccountHolderVerificationCreateRequest create() {
+ return new BankAccountHolderVerificationCreateRequest(httpClient);
+ }
+
+ /**
+ * Fetches a bank account holder verification by ID.
+ */
+ public BankAccountHolderVerificationGetRequest get(String identity) {
+ return new BankAccountHolderVerificationGetRequest(httpClient, identity);
+ }
+
+ /**
+ * Request class for {@link BankAccountHolderVerificationService#create }.
+ *
+ * Verify the account holder of the bank account. A complete verification can be attached when
+ * creating an outbound payment. This endpoint allows partner merchants to create Confirmation
+ * of Payee checks on customer bank accounts before sending outbound payments.
+ */
+ public static final class BankAccountHolderVerificationCreateRequest
+ extends IdempotentPostRequest extends ListRequest {
+ private PaymentAccountListRequest(HttpClient httpClient,
+ ListRequestExecutor executor) {
+ super(httpClient, executor);
+ }
+
+ public PaymentAccountListRequest withHeader(String headerName, String headerValue) {
+ this.addHeader(headerName, headerValue);
+ return this;
+ }
+
+ @Override
+ protected Map> getTypeToken() {
+ return new TypeToken
>() {};
+ }
+ }
+}
From 3f8f8710c0f106630c232989f78baca7f5868687 Mon Sep 17 00:00:00 2001
From: "gocardless-ci-robot[bot]"
<123969075+gocardless-ci-robot[bot]@users.noreply.github.com>
Date: Fri, 12 Dec 2025 16:15:39 +0000
Subject: [PATCH 09/15] Changes generated by
84510c4e27710bfe38ae0bc946e007e72653909a
This commit was automatically created from gocardless/gocardless-pro-java-template@84510c4e27710bfe38ae0bc946e007e72653909a
by the `push-files` action.
Workflow run: https://github.com/gocardless/gocardless-pro-java-template/actions/runs/20172747369
---
.../services/OutboundPaymentService.java | 45 +++++++++++++++++++
1 file changed, 45 insertions(+)
diff --git a/src/main/java/com/gocardless/services/OutboundPaymentService.java b/src/main/java/com/gocardless/services/OutboundPaymentService.java
index 3e50f775..504d2597 100644
--- a/src/main/java/com/gocardless/services/OutboundPaymentService.java
+++ b/src/main/java/com/gocardless/services/OutboundPaymentService.java
@@ -86,6 +86,13 @@ public OutboundPaymentUpdateRequest update(String identity) {
return new OutboundPaymentUpdateRequest(httpClient, identity);
}
+ /**
+ * Retrieve aggregate statistics on outbound payments.
+ */
+ public OutboundPaymentStatsRequest stats() {
+ return new OutboundPaymentStatsRequest(httpClient);
+ }
+
/**
* Request class for {@link OutboundPaymentService#create }.
*
@@ -801,4 +808,42 @@ protected boolean hasBody() {
return true;
}
}
+
+ /**
+ * Request class for {@link OutboundPaymentService#stats }.
+ *
+ * Retrieve aggregate statistics on outbound payments.
+ */
+ public static final class OutboundPaymentStatsRequest extends GetRequest
extends ListRequest {
+ /**
+ * Cursor pointing to the start of the desired set.
+ */
+ public PaymentAccountListRequest withAfter(String after) {
+ setAfter(after);
+ return this;
+ }
+
+ /**
+ * Cursor pointing to the end of the desired set.
+ */
+ public PaymentAccountListRequest withBefore(String before) {
+ setBefore(before);
+ return this;
+ }
+
+ /**
+ * Number of records to return.
+ */
+ public PaymentAccountListRequest withLimit(Integer limit) {
+ setLimit(limit);
+ return this;
+ }
+
private PaymentAccountListRequest(HttpClient httpClient,
ListRequestExecutor executor) {
super(httpClient, executor);
From 77c59839dc7a0a660bf29ff3482c7e4d1210a47e Mon Sep 17 00:00:00 2001
From: "gocardless-ci-robot[bot]"
<123969075+gocardless-ci-robot[bot]@users.noreply.github.com>
Date: Mon, 12 Jan 2026 17:20:13 +0000
Subject: [PATCH 14/15] Changes generated by
1bc756013b8a5b08af35b9131c1691c8a633b779
This commit was automatically created from gocardless/gocardless-pro-java-template@1bc756013b8a5b08af35b9131c1691c8a633b779
by the `push-files` action.
Workflow run: https://github.com/gocardless/gocardless-pro-java-template/actions/runs/20928454805
---
README.md | 4 ++--
build.gradle | 2 +-
src/main/java/com/gocardless/http/HttpClient.java | 4 ++--
3 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/README.md b/README.md
index 7daaec76..d0e8674e 100644
--- a/README.md
+++ b/README.md
@@ -14,14 +14,14 @@ With Maven:
withMandate(String mandate) {
}
/**
- * ID of an outbound_payment. If specified, this endpoint will return all events for the
- * given payment.
+ * ID of an [outbound_payment](#core-endpoints-outbound-payments). If specified, this
+ * endpoint will return all events for the given payment.
*/
public EventListRequest withOutboundPayment(String outboundPayment) {
this.outboundPayment = outboundPayment;