diff --git a/.gitignore b/.gitignore index 7ade57d..3908299 100644 --- a/.gitignore +++ b/.gitignore @@ -75,6 +75,7 @@ artifacts/ *.pidb *.svclog *.scc +*.DS_Store # Chutzpah Test files _Chutzpah* diff --git a/GoCardless/Resources/BillingRequest.cs b/GoCardless/Resources/BillingRequest.cs index 38a2b08..b4916f6 100644 --- a/GoCardless/Resources/BillingRequest.cs +++ b/GoCardless/Resources/BillingRequest.cs @@ -844,6 +844,20 @@ public class BillingRequestPaymentRequest [JsonProperty("description")] public string Description { get; set; } + /// + /// This field will decide how GoCardless handles settlement of funds + /// from the customer. + /// + /// - `managed` will be moved through GoCardless' account, batched, and + /// payed out. + /// - `direct` will be a direct transfer from the payer's account to the + /// merchant where + /// invoicing will be handled separately. + /// + /// + [JsonProperty("funds_settlement")] + public BillingRequestPaymentRequestFundsSettlement? FundsSettlement { get; set; } + /// /// Resources linked to this BillingRequestPaymentRequest. /// @@ -870,6 +884,28 @@ public class BillingRequestPaymentRequest public string Scheme { get; set; } } + /// + /// This field will decide how GoCardless handles settlement of funds from the customer. + /// + /// - `managed` will be moved through GoCardless' account, batched, and payed out. + /// - `direct` will be a direct transfer from the payer's account to the merchant where + /// invoicing will be handled separately. + /// + /// + [JsonConverter(typeof(GcStringEnumConverter), (int)Unknown)] + public enum BillingRequestPaymentRequestFundsSettlement { + /// Unknown status + [EnumMember(Value = "unknown")] + Unknown = 0, + + /// `funds_settlement` with a value of "managed" + [EnumMember(Value = "managed")] + Managed, + /// `funds_settlement` with a value of "direct" + [EnumMember(Value = "direct")] + Direct, + } + /// /// Resources linked to this BillingRequestPaymentRequest /// diff --git a/GoCardless/Services/BankDetailsLookupService.cs b/GoCardless/Services/BankDetailsLookupService.cs index 6905475..3f65eb8 100644 --- a/GoCardless/Services/BankDetailsLookupService.cs +++ b/GoCardless/Services/BankDetailsLookupService.cs @@ -33,9 +33,11 @@ public BankDetailsLookupService(GoCardlessClient goCardlessClient) } /// - /// Performs a bank details lookup. As part of the lookup, a modulus - /// check and - /// reachability check are performed. + /// Performs a bank details lookup. As part of the lookup, some + /// validations are performed such as a modulus check for GBP accounts + /// and a reachability check for PayTo. These checks vary per scheme. + /// Please reach out to us if you require more information about the + /// checks. /// /// If your request returns an [error](#api-usage-errors) or the /// `available_debit_schemes` @@ -79,9 +81,10 @@ public Task CreateAsync(BankDetailsLookupCreateReques /// - /// Performs a bank details lookup. As part of the lookup, a modulus check - /// and - /// reachability check are performed. + /// Performs a bank details lookup. As part of the lookup, some validations + /// are performed such as a modulus check for GBP accounts and a + /// reachability check for PayTo. These checks vary per scheme. Please reach + /// out to us if you require more information about the checks. /// /// If your request returns an [error](#api-usage-errors) or the /// `available_debit_schemes` diff --git a/GoCardless/Services/BillingRequestService.cs b/GoCardless/Services/BillingRequestService.cs index 87bc575..0b314a3 100644 --- a/GoCardless/Services/BillingRequestService.cs +++ b/GoCardless/Services/BillingRequestService.cs @@ -786,6 +786,42 @@ public class BillingRequestPaymentRequest [JsonProperty("description")] public string Description { get; set; } + /// + /// This field will decide how GoCardless handles settlement of + /// funds from the customer. + /// + /// - `managed` will be moved through GoCardless' account, batched, + /// and payed out. + /// - `direct` will be a direct transfer from the payer's account to + /// the merchant where + /// invoicing will be handled separately. + /// + /// + [JsonProperty("funds_settlement")] + public BillingRequestFundsSettlement? FundsSettlement { get; set; } + /// + /// This field will decide how GoCardless handles settlement of funds + /// from the customer. + /// + /// - `managed` will be moved through GoCardless' account, batched, and + /// payed out. + /// - `direct` will be a direct transfer from the payer's account to the + /// merchant where + /// invoicing will be handled separately. + /// + /// + [JsonConverter(typeof(StringEnumConverter))] + public enum BillingRequestFundsSettlement + { + + /// `funds_settlement` with a value of "managed" + [EnumMember(Value = "managed")] + Managed, + /// `funds_settlement` with a value of "direct" + [EnumMember(Value = "direct")] + Direct, + } + /// /// Key-value store of custom data. Up to 3 keys are permitted, with /// key names up to 50 characters and values up to 500 characters. diff --git a/tmp-push-files-checkout b/tmp-push-files-checkout new file mode 160000 index 0000000..20e7621 --- /dev/null +++ b/tmp-push-files-checkout @@ -0,0 +1 @@ +Subproject commit 20e76216b52d30afddf16600febe29a25d5e8938