Skip to content

Commit 6c830d5

Browse files
committed
Merge branch 'release/comp-1.8.102'
2 parents 09cab59 + 76f3198 commit 6c830d5

File tree

12 files changed

+294
-10
lines changed

12 files changed

+294
-10
lines changed

src/NoFrixion.MoneyMoov/Constants/HttpClientConstants.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,10 @@ public static class HttpClientConstants
3636
public static string HTTP_BANKINGCIRCLE_DIRECTDEBIT_API_CLIENT_NAME = "BankingCircleDirectDebitApiClient";
3737

3838
public static string HTTP_BANKINGCIRCLE_FX_API_CLIENT_NAME = "BankingCircleFxClient";
39+
40+
public static string HTTP_TECHNOXANDER_TOKEN_CLIENT_NAME = "TechnoXanderTokenClient";
41+
42+
public static string HTTP_TECHNOXANDER_API_CLIENT_NAME = "TechnoXanderApiClient";
3943

4044
/// <summary>
4145
/// The minimum value the timeout for the HTTP client timeout can be set to. The HTTP client

src/NoFrixion.MoneyMoov/Enums/BeneficiaryEventTypeEnum.cs

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,5 +51,20 @@ public enum BeneficiaryEventTypeEnum
5151
/// <summary>
5252
/// An archive is a soft delete. It removes the beneficiary from the active list.
5353
/// </summary>
54-
Archive = 6
54+
Archive = 6,
55+
56+
/// <summary>
57+
/// Indicates that payee verification has been initiated for the beneficiary.
58+
/// </summary>
59+
PayeeVerificationInitiated = 7,
60+
61+
/// <summary>
62+
/// Indicates that payee verification has been completed successfully for the beneficiary.
63+
/// </summary>
64+
PayeeVerificationComplete = 8,
65+
66+
/// <summary>
67+
/// Indicates that payee verification has failed for the beneficiary.
68+
/// </summary>
69+
PayeeVerificationFailed = 9
5570
}
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
namespace NoFrixion.MoneyMoov.Enums;
2+
3+
public enum PayeeVerificationResultEnum
4+
{
5+
/// <summary>
6+
/// Indicates that the payee name verification result is unknown or not provided.
7+
/// </summary>
8+
Unknown = 0,
9+
10+
/// <summary>
11+
/// Indicates that the payee name matches the name provided.
12+
/// </summary>
13+
Match = 1,
14+
15+
/// <summary>
16+
/// Indicates that the payee name does not match the name provided.
17+
/// </summary>
18+
NoMatch = 2,
19+
20+
/// <summary>
21+
/// Indicates that the payee name closely matches the name provided, but there may be minor discrepancies (e.g., spelling variations).
22+
/// </summary>
23+
CloseMatch = 3
24+
}

src/NoFrixion.MoneyMoov/Enums/PaymentProcessorsEnum.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,5 +102,10 @@ public enum PaymentProcessorsEnum
102102
/// To pay with SEPA Direct Debit, handled by Banking Circle.
103103
/// </summary>
104104
BankingCircleDirectDebit,
105+
106+
/// <summary>
107+
/// Processor to verify account holder name using Technoxander.
108+
/// </summary>
109+
Technoxander
105110
}
106111

src/NoFrixion.MoneyMoov/Enums/PayoutEventTypesEnum.cs

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -98,9 +98,24 @@ public enum PayoutEventTypesEnum
9898
/// </summary>
9999
BeneficiaryEnabled = 15,
100100

101-
/// <summary>
102-
/// An error that occurred during an attempt to submit a payout for processing. This is not a terminal error
103-
/// and the attempt can be tried again. Errors after the payout's IsSubmitted flag is set are terminal.
101+
/// <summary>
102+
/// An error that occurred during an attempt to submit a payout for processing. This is not a terminal error
103+
/// and the attempt can be tried again. Errors after the payout's IsSubmitted flag is set are terminal.
104+
/// </summary>
105+
SubmitAttemptError = 16,
106+
107+
/// <summary>
108+
/// A payout's destination verification process has been initiated.
109+
/// </summary>
110+
PayeeVerificationInitiated = 17,
111+
112+
/// <summary>
113+
/// A payout's destination has been successfully verified.
114+
/// </summary>
115+
PayeeVerificationComplete = 18,
116+
117+
/// <summary>
118+
/// A payout's destination verification has failed.
104119
/// </summary>
105-
SubmitAttemptError = 16
120+
PayeeVerificationFailed = 19
106121
}

src/NoFrixion.MoneyMoov/Models/Beneficiary/BeneficiaryEvent.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
// MIT.
1414
// -----------------------------------------------------------------------------
1515

16+
using JetBrains.Annotations;
1617
using NoFrixion.MoneyMoov.Enums;
1718

1819
namespace NoFrixion.MoneyMoov.Models;
@@ -66,6 +67,14 @@ public class BeneficiaryEvent
6667
public bool IsEnabled { get; set; }
6768

6869
public bool IsArchived { get; set; }
70+
71+
public string SupplierPayeeVerificationResult { get; set; }
72+
73+
/// <summary>
74+
/// If this event is a payee verification complete event and the result is a close match,
75+
/// this contains the actual verified name returned by the payee verification supplier.
76+
/// </summary>
77+
public string PayeeVerifiedAccountName { get; set; }
6978

7079
public User User { get; set; }
7180
}

src/NoFrixion.MoneyMoov/Models/Payouts/PayoutCreate.cs

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,10 +48,26 @@ public class PayoutCreate
4848
public decimal? Amount { get; set; }
4949

5050
/// <summary>
51-
/// Gets or Sets the your reference property.
51+
/// The Your reference field is an optional field that gets set locally on the payer's transaction record. It does not get
52+
/// sent out through the payment network. The maximum length for the field is 256 characters. An empty value is also supported.
53+
/// Supported chracters:
54+
/// a b c d e f g h i j k l m n o p q r s t u v w x y z
55+
/// A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
56+
/// 0 1 2 3 4 5 6 7 8 9
57+
/// / - ? : ( ) . , ' + Space
58+
/// In addition the field cannot start with a : or - character.
5259
/// </summary>
5360
public string? YourReference { get; set; }
5461

62+
/// <summary>
63+
/// The Their reference field gets sent to the payee and appears on their transaction record.
64+
/// The maximum length for the field varies depending on the payment network. For SEPA (Euro) it is 140 characters. For Faster Payments (GBP) it is 18 characters.
65+
/// a b c d e f g h i j k l m n o p q r s t u v w x y z
66+
/// A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
67+
/// 0 1 2 3 4 5 6 7 8 9
68+
/// / - ? : ( ) . , ' + Space
69+
/// In addition the field cannot start with a : or - character.
70+
/// </summary>
5571
public string? TheirReference { get; set; }
5672

5773
[Obsolete("Please use Destination.")]

src/NoFrixion.MoneyMoov/Models/Payouts/PayoutEvent.cs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,4 +52,15 @@ public class PayoutEvent
5252
/// Reason for the error, if any.
5353
/// </summary>
5454
public string? ErrorReason { get; set; }
55+
56+
/// <summary>
57+
/// If this event is a payee verification event, this contains the result of the verification.
58+
/// </summary>
59+
public string? SupplierPayeeVerificationResult { get; set; }
60+
61+
/// <summary>
62+
/// If this event is a payee verification complete event and the result is a close match,
63+
/// this contains the actual verified name returned by the payee verification supplier.
64+
/// </summary>
65+
public string? PayeeVerifiedAccountName { get; set; }
5566
}

src/NoFrixion.MoneyMoov/Models/Payouts/PayoutUpdate.cs

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,30 @@ public class PayoutUpdate
3131

3232
public CurrencyTypeEnum? Currency { get; set; }
3333

34-
[Range(0.01, double.MaxValue, ErrorMessage = "Minimum value of 0.01 is required for Amount.")]
34+
[Range(0.0001, double.MaxValue, ErrorMessage = "Minimum value of 0.0001 is required for Amount.")]
3535
public decimal? Amount { get; set; }
3636

37+
/// <summary>
38+
/// The Your reference field is an optional field that gets set locally on the payer's transaction record. It does not get
39+
/// sent out through the payment network. The maximum length for the field is 256 characters. An empty value is also supported.
40+
/// Supported characters:
41+
/// a b c d e f g h i j k l m n o p q r s t u v w x y z
42+
/// A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
43+
/// 0 1 2 3 4 5 6 7 8 9
44+
/// / - ? : ( ) . , ' + Space
45+
/// In addition the field cannot start with a : or - character.
46+
/// </summary>
3747
public string? YourReference { get; set; }
3848

49+
/// <summary>
50+
/// The Their reference field gets sent to the payee and appears on their transaction record.
51+
/// The maximum length for the field varies depending on the payment network. For SEPA (Euro) it is 140 characters. For Faster Payments (GBP) it is 18 characters.
52+
/// a b c d e f g h i j k l m n o p q r s t u v w x y z
53+
/// A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
54+
/// 0 1 2 3 4 5 6 7 8 9
55+
/// / - ? : ( ) . , ' + Space
56+
/// In addition the field cannot start with a : or - character.
57+
/// </summary>
3958
public string? TheirReference { get; set; }
4059

4160
[Obsolete("Please use Destination.")]

src/NoFrixion.MoneyMoov/Models/Payouts/PayoutsValidator.cs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -89,15 +89,14 @@ public static class PayoutsValidator
8989
public const string FALLBACK_THEIR_REFERENCE = "NFXN {0}";
9090

9191
/// <summary>
92-
/// Validation reqex for the Name amd Reference (Your and Their) fields with Banking Cirlce. It must
92+
/// Validation regex for the Name and Reference (Your and Their) fields with Banking Circle. It must
9393
/// have at least one non space character. Total of all characters must be 140 or less.
9494
/// Banking Circle supported chars see https://docs.bankingcircleconnect.com/docs/initiate-payments:
9595
/// a b c d e f g h i j k l m n o p q r s t u v w x y z
9696
/// A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
9797
/// 0 1 2 3 4 5 6 7 8 9
98-
/// / - ? : ( ) . , ' +
98+
/// / - ? : ( ) . , ' + Space
9999
/// In addition the field cannot start with a : or - character and must have one none space char.
100-
/// Space
101100
/// </summary>
102101
public const string BANKING_CIRCLE_ALLOWED_CHARS_REGEX = @"^(?![\:\-])[a-zA-Z0-9\s\/\-\.\+\(\)\?\:\,']*$";
103102

0 commit comments

Comments
 (0)