resurgence-data 1.1.65 → 1.1.67

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "resurgence-data",
3
- "version": "1.1.65",
3
+ "version": "1.1.67",
4
4
  "description": "DTOs and shareable resources",
5
5
  "module": "dist/index.js",
6
6
  "main": "dist/index.js",
@@ -613,7 +613,7 @@ export class CreateBillerChargeConfigurationDto extends BaseDTO {
613
613
  })
614
614
  @IsDecimal(
615
615
  { decimal_digits: "1,2", force_decimal: false },
616
- { message: "Percent amount must be a valid decimal with up to 2 decimal places" }
616
+ { message: "Percent amount must be a valid decimal with up to 2 decimal places" },
617
617
  )
618
618
  @Min(0, { message: "Percent amount must not be negative" })
619
619
  @IsOptional()
@@ -726,7 +726,7 @@ export class UpdateBillerChargeConfigurationDto extends BaseDTO {
726
726
  })
727
727
  @IsDecimal(
728
728
  { decimal_digits: "1,2", force_decimal: false },
729
- { message: "Percent amount must be a valid decimal with up to 2 decimal places" }
729
+ { message: "Percent amount must be a valid decimal with up to 2 decimal places" },
730
730
  )
731
731
  @Min(0, { message: "Percent amount must not be negative" })
732
732
  @IsOptional()
@@ -1331,6 +1331,15 @@ export class UpdateBillerItemDto extends BaseDTO {
1331
1331
  @IsOptional()
1332
1332
  name?: string;
1333
1333
 
1334
+ @ApiProperty({
1335
+ description: "Indicates if the biller item is active",
1336
+ example: true,
1337
+ required: false,
1338
+ })
1339
+ @IsBoolean({ message: "Active must be a valid boolean" })
1340
+ @IsOptional()
1341
+ active?: boolean;
1342
+
1334
1343
  @ApiProperty({
1335
1344
  description: "The source of the biller item",
1336
1345
  example: "Utility Bill",
@@ -1,3 +1,4 @@
1
1
  export * from "./api-key";
2
2
  export * from "./payment-request";
3
3
  export * from "./bank-account";
4
+ export * from "./vendor-settlement-account/vendor-settlement-account.dto";
@@ -0,0 +1,78 @@
1
+ import { ApiProperty, ApiPropertyOptional } from "@nestjs/swagger";
2
+ import { IsString, IsUUID, IsBoolean, IsOptional, IsIn } from "class-validator";
3
+
4
+ export class CreateVendorSettlementAccountDto {
5
+ @ApiProperty({
6
+ description: "ID of the settlement account to use as vendor",
7
+ example: "550e8400-e29b-41d4-a716-446655440000",
8
+ })
9
+ @IsUUID()
10
+ settlementAccountId: string;
11
+
12
+ @ApiProperty({
13
+ description: "Currency code for this vendor account (e.g., NGN, USD, GHS)",
14
+ example: "NGN",
15
+ })
16
+ @IsString()
17
+ @IsIn(["NGN", "USD", "GHS", "KES", "ZAR", "UGX"]) // Add more as needed
18
+ currency: string;
19
+ }
20
+
21
+ export class UpdateVendorSettlementAccountDto {
22
+ @ApiPropertyOptional({
23
+ description: "Currency code to update",
24
+ example: "NGN",
25
+ })
26
+ @IsOptional()
27
+ @IsString()
28
+ @IsIn(["NGN", "USD", "GHS", "KES", "ZAR", "UGX"]) // Add more as needed
29
+ currency?: string;
30
+
31
+ @ApiPropertyOptional({
32
+ description: "Whether this account is currently active for its currency",
33
+ example: true,
34
+ })
35
+ @IsOptional()
36
+ @IsBoolean()
37
+ active?: boolean;
38
+ }
39
+
40
+ export class VendorSettlementAccountResponseDto {
41
+ @ApiProperty({
42
+ description: "Unique identifier for the vendor settlement account",
43
+ })
44
+ id: string;
45
+
46
+ @ApiProperty({
47
+ description: "ID of the associated settlement account",
48
+ })
49
+ settlementAccountId: string;
50
+
51
+ @ApiProperty({
52
+ description: "Currency code",
53
+ })
54
+ currency: string;
55
+
56
+ @ApiProperty({
57
+ description: "Whether this is the active vendor account for its currency",
58
+ })
59
+ active: boolean;
60
+
61
+ @ApiProperty({
62
+ description: "Timestamp when created",
63
+ })
64
+ createdAt: Date;
65
+
66
+ @ApiProperty({
67
+ description: "Timestamp when last updated",
68
+ })
69
+ updatedAt: Date;
70
+
71
+ @ApiPropertyOptional({
72
+ description: "Flutterwave onboarded account details if available",
73
+ })
74
+ onboardedAccount?: {
75
+ id: string;
76
+ processorAccountId: string;
77
+ };
78
+ }