@fiado/type-kit 3.392.0 → 3.394.0
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/bin/account/dtos/BankAccountPocketTransferRequest.d.ts +8 -0
- package/bin/account/dtos/BankAccountPocketTransferRequest.js +5 -1
- package/bin/remittance/dtos/RemittanceAddBeneficiaryRequest.d.ts +4 -3
- package/bin/remittance/dtos/RemittancePayerAdditionalFieldDto.d.ts +7 -2
- package/bin/remittance/dtos/RemittancePayerDto.d.ts +18 -0
- package/bin/remittance/enums/RemittanceFieldBelongsTo.d.ts +8 -0
- package/bin/remittance/enums/RemittanceFieldBelongsTo.js +12 -0
- package/bin/remittance/enums/index.d.ts +1 -0
- package/bin/remittance/enums/index.js +1 -0
- package/package.json +1 -1
- package/src/account/dtos/BankAccountPocketTransferRequest.ts +9 -0
- package/src/remittance/dtos/RemittanceAddBeneficiaryRequest.ts +4 -3
- package/src/remittance/dtos/RemittancePayerAdditionalFieldDto.ts +8 -2
- package/src/remittance/dtos/RemittancePayerDto.ts +19 -0
- package/src/remittance/enums/RemittanceFieldBelongsTo.ts +8 -0
- package/src/remittance/enums/index.ts +1 -0
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
import { OperationEnum } from "../../transaction";
|
|
2
2
|
import { PocketOperationTypeEnum } from "../enums/PocketOperationTypeEnum";
|
|
3
|
+
/** Mismas keys que el additional_data de un service payment en CP. */
|
|
4
|
+
export declare class PocketTransferMetadata {
|
|
5
|
+
provider?: string;
|
|
6
|
+
subcategory?: string;
|
|
7
|
+
service?: string;
|
|
8
|
+
referenceNumber?: string;
|
|
9
|
+
}
|
|
3
10
|
export declare class BankAccountPocketTransferRequest {
|
|
4
11
|
externalAccountId: string;
|
|
5
12
|
amount: number;
|
|
@@ -7,4 +14,5 @@ export declare class BankAccountPocketTransferRequest {
|
|
|
7
14
|
operation: OperationEnum;
|
|
8
15
|
operationType: PocketOperationTypeEnum;
|
|
9
16
|
originalRelatedId?: string;
|
|
17
|
+
metadata?: PocketTransferMetadata;
|
|
10
18
|
}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BankAccountPocketTransferRequest = void 0;
|
|
3
|
+
exports.BankAccountPocketTransferRequest = exports.PocketTransferMetadata = void 0;
|
|
4
|
+
/** Mismas keys que el additional_data de un service payment en CP. */
|
|
5
|
+
class PocketTransferMetadata {
|
|
6
|
+
}
|
|
7
|
+
exports.PocketTransferMetadata = PocketTransferMetadata;
|
|
4
8
|
class BankAccountPocketTransferRequest {
|
|
5
9
|
}
|
|
6
10
|
exports.BankAccountPocketTransferRequest = BankAccountPocketTransferRequest;
|
|
@@ -31,9 +31,10 @@ export declare class RemittanceAddBeneficiaryRequest {
|
|
|
31
31
|
payerBranchCode?: string;
|
|
32
32
|
address: RemittanceBeneficiaryAddressDTO;
|
|
33
33
|
/**
|
|
34
|
-
* Additional fields requeridos por algunos payers (ej. `accountType`
|
|
35
|
-
*
|
|
36
|
-
*
|
|
34
|
+
* Additional fields de beneficiario requeridos por algunos payers (ej. `accountType` en
|
|
35
|
+
* Account Credit, identificación del remitente en algunos Cash Pickup). Se pasan tal cual
|
|
36
|
+
* a UNIR como `additionalFieldInfo`. Los nombres/valores válidos vienen de
|
|
37
|
+
* GET /payers/{code}/fields (fieldName + fieldOptions; para dropdowns se envía el `key`).
|
|
37
38
|
*/
|
|
38
39
|
additionalFields?: RemittanceBeneficiaryAdditionalFieldDTO[];
|
|
39
40
|
}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
+
import { RemittanceFieldBelongsTo } from "../enums/RemittanceFieldBelongsTo";
|
|
1
2
|
/**
|
|
2
3
|
* Campo adicional requerido por un payer/receptionMethod, devuelto por el
|
|
3
4
|
* endpoint público `GET /remittance/payers/{code}/fields?...`.
|
|
4
5
|
*
|
|
5
6
|
* El frontend renderiza un control según `fieldType` y valida con `regex` /
|
|
6
7
|
* `minLen`/`maxLen` antes de submit. El valor capturado se envía al backend
|
|
7
|
-
* como `
|
|
8
|
-
*
|
|
8
|
+
* como `additionalFields: [{ name, value }, ...]` — en AddBeneficiary si
|
|
9
|
+
* `belongsTo` es BENEFICIARY, en SendPreview si es TRANSACTION. Para dropdowns
|
|
10
|
+
* el `value` enviado es el `key` de la opción, nunca el label.
|
|
9
11
|
*
|
|
10
12
|
* Ejemplo real (Banco Industrial GTQ Account Credit): 1 field `accountType`
|
|
11
13
|
* dropdown con opciones { key:"01", value:"Checking" }, { key:"02", value:"Savings" }.
|
|
@@ -15,7 +17,10 @@ export interface RemittancePayerAdditionalFieldDto {
|
|
|
15
17
|
fieldLabel: string;
|
|
16
18
|
/** "dropdown" | "text" | "number" | etc. — UI elige control según este valor. */
|
|
17
19
|
fieldType: string;
|
|
20
|
+
/** UNIR no manda flag: un campo presente en el catálogo del payer es requerido. */
|
|
18
21
|
required: boolean;
|
|
22
|
+
/** Entidad a la que pertenece el campo. Ausente = BENEFICIARY (compat). */
|
|
23
|
+
belongsTo?: RemittanceFieldBelongsTo;
|
|
19
24
|
/** Solo si `fieldType === "dropdown"`. */
|
|
20
25
|
fieldOptions?: Array<{
|
|
21
26
|
key: string;
|
|
@@ -12,6 +12,22 @@ import { ReceptionMethod } from "../enums/ReceptionMethod";
|
|
|
12
12
|
* 3. Valide el `accNumber` del lado del cliente con `accNumberRegex` antes
|
|
13
13
|
* de hacer submit (mejor UX que esperar 400 del backend).
|
|
14
14
|
*/
|
|
15
|
+
/**
|
|
16
|
+
* Detalle por reception method de un payer. UNIR reporta los flags, el regex de
|
|
17
|
+
* cuenta y el límite POR MÉTODO; los campos planos de `RemittancePayerDto` son
|
|
18
|
+
* un agregado payer-level que puede sobre-reportar (ej. `requiresAdditionalFields`
|
|
19
|
+
* es el OR entre métodos). La UI debe preferir este detalle cuando esté presente.
|
|
20
|
+
*/
|
|
21
|
+
export interface RemittancePayerReceptionMethodDetailDto {
|
|
22
|
+
method: ReceptionMethod;
|
|
23
|
+
requiresAdditionalFields: boolean;
|
|
24
|
+
requiresBranch: boolean;
|
|
25
|
+
/** Regex de validación del `accNumber` para este método (UNIR solo lo define en ACCOUNT_CREDIT). */
|
|
26
|
+
accNumberRegex?: string;
|
|
27
|
+
accNumberHelperText?: string;
|
|
28
|
+
/** Límite USD por transacción reportado por UNIR para este payer+método. */
|
|
29
|
+
txnLimit?: number;
|
|
30
|
+
}
|
|
15
31
|
export interface RemittancePayerDto {
|
|
16
32
|
/** Código UNIR del payer (ej. "GCA10" Banrural). Usado como `payerCode` en AddBeneficiary. */
|
|
17
33
|
payerCode: string;
|
|
@@ -31,4 +47,6 @@ export interface RemittancePayerDto {
|
|
|
31
47
|
logoUrl?: string;
|
|
32
48
|
/** Orden de aparición sugerido por UNIR (asc). */
|
|
33
49
|
sortOrder?: number;
|
|
50
|
+
/** Detalle por método (flags/regex/límite reales de UNIR). Preferir sobre los campos planos. */
|
|
51
|
+
receptionMethodDetails?: RemittancePayerReceptionMethodDetailDto[];
|
|
34
52
|
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A qué entidad pertenece un additional field del payer (UNIR `fieldBelongsTo`).
|
|
3
|
+
* BENEFICIARY viaja en AddBeneficiary; TRANSACTION viaja en el SendPreview de la transacción.
|
|
4
|
+
*/
|
|
5
|
+
export declare enum RemittanceFieldBelongsTo {
|
|
6
|
+
BENEFICIARY = "BENEFICIARY",
|
|
7
|
+
TRANSACTION = "TRANSACTION"
|
|
8
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RemittanceFieldBelongsTo = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* A qué entidad pertenece un additional field del payer (UNIR `fieldBelongsTo`).
|
|
6
|
+
* BENEFICIARY viaja en AddBeneficiary; TRANSACTION viaja en el SendPreview de la transacción.
|
|
7
|
+
*/
|
|
8
|
+
var RemittanceFieldBelongsTo;
|
|
9
|
+
(function (RemittanceFieldBelongsTo) {
|
|
10
|
+
RemittanceFieldBelongsTo["BENEFICIARY"] = "BENEFICIARY";
|
|
11
|
+
RemittanceFieldBelongsTo["TRANSACTION"] = "TRANSACTION";
|
|
12
|
+
})(RemittanceFieldBelongsTo || (exports.RemittanceFieldBelongsTo = RemittanceFieldBelongsTo = {}));
|
|
@@ -39,3 +39,4 @@ __exportStar(require("./RuleOperator"), exports);
|
|
|
39
39
|
__exportStar(require("./RuleActionType"), exports);
|
|
40
40
|
__exportStar(require("./AuditResult"), exports);
|
|
41
41
|
__exportStar(require("./RemittanceExceptionCode"), exports);
|
|
42
|
+
__exportStar(require("./RemittanceFieldBelongsTo"), exports);
|
package/package.json
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
import { OperationEnum } from "../../transaction";
|
|
2
2
|
import { PocketOperationTypeEnum } from "../enums/PocketOperationTypeEnum";
|
|
3
3
|
|
|
4
|
+
/** Mismas keys que el additional_data de un service payment en CP. */
|
|
5
|
+
export class PocketTransferMetadata {
|
|
6
|
+
provider?: string;
|
|
7
|
+
subcategory?: string;
|
|
8
|
+
service?: string;
|
|
9
|
+
referenceNumber?: string;
|
|
10
|
+
}
|
|
11
|
+
|
|
4
12
|
export class BankAccountPocketTransferRequest {
|
|
5
13
|
externalAccountId!: string;
|
|
6
14
|
amount!: number;
|
|
@@ -8,4 +16,5 @@ export class BankAccountPocketTransferRequest {
|
|
|
8
16
|
operation: OperationEnum;
|
|
9
17
|
operationType: PocketOperationTypeEnum;
|
|
10
18
|
originalRelatedId?: string;
|
|
19
|
+
metadata?: PocketTransferMetadata;
|
|
11
20
|
}
|
|
@@ -92,9 +92,10 @@ export class RemittanceAddBeneficiaryRequest {
|
|
|
92
92
|
address!: RemittanceBeneficiaryAddressDTO;
|
|
93
93
|
|
|
94
94
|
/**
|
|
95
|
-
* Additional fields requeridos por algunos payers (ej. `accountType`
|
|
96
|
-
*
|
|
97
|
-
*
|
|
95
|
+
* Additional fields de beneficiario requeridos por algunos payers (ej. `accountType` en
|
|
96
|
+
* Account Credit, identificación del remitente en algunos Cash Pickup). Se pasan tal cual
|
|
97
|
+
* a UNIR como `additionalFieldInfo`. Los nombres/valores válidos vienen de
|
|
98
|
+
* GET /payers/{code}/fields (fieldName + fieldOptions; para dropdowns se envía el `key`).
|
|
98
99
|
*/
|
|
99
100
|
@IsOptional()
|
|
100
101
|
@ValidateNested({ each: true })
|
|
@@ -1,11 +1,14 @@
|
|
|
1
|
+
import { RemittanceFieldBelongsTo } from "../enums/RemittanceFieldBelongsTo";
|
|
2
|
+
|
|
1
3
|
/**
|
|
2
4
|
* Campo adicional requerido por un payer/receptionMethod, devuelto por el
|
|
3
5
|
* endpoint público `GET /remittance/payers/{code}/fields?...`.
|
|
4
6
|
*
|
|
5
7
|
* El frontend renderiza un control según `fieldType` y valida con `regex` /
|
|
6
8
|
* `minLen`/`maxLen` antes de submit. El valor capturado se envía al backend
|
|
7
|
-
* como `
|
|
8
|
-
*
|
|
9
|
+
* como `additionalFields: [{ name, value }, ...]` — en AddBeneficiary si
|
|
10
|
+
* `belongsTo` es BENEFICIARY, en SendPreview si es TRANSACTION. Para dropdowns
|
|
11
|
+
* el `value` enviado es el `key` de la opción, nunca el label.
|
|
9
12
|
*
|
|
10
13
|
* Ejemplo real (Banco Industrial GTQ Account Credit): 1 field `accountType`
|
|
11
14
|
* dropdown con opciones { key:"01", value:"Checking" }, { key:"02", value:"Savings" }.
|
|
@@ -15,7 +18,10 @@ export interface RemittancePayerAdditionalFieldDto {
|
|
|
15
18
|
fieldLabel: string;
|
|
16
19
|
/** "dropdown" | "text" | "number" | etc. — UI elige control según este valor. */
|
|
17
20
|
fieldType: string;
|
|
21
|
+
/** UNIR no manda flag: un campo presente en el catálogo del payer es requerido. */
|
|
18
22
|
required: boolean;
|
|
23
|
+
/** Entidad a la que pertenece el campo. Ausente = BENEFICIARY (compat). */
|
|
24
|
+
belongsTo?: RemittanceFieldBelongsTo;
|
|
19
25
|
/** Solo si `fieldType === "dropdown"`. */
|
|
20
26
|
fieldOptions?: Array<{ key: string; value: string }>;
|
|
21
27
|
regex?: string;
|
|
@@ -13,6 +13,23 @@ import { ReceptionMethod } from "../enums/ReceptionMethod";
|
|
|
13
13
|
* 3. Valide el `accNumber` del lado del cliente con `accNumberRegex` antes
|
|
14
14
|
* de hacer submit (mejor UX que esperar 400 del backend).
|
|
15
15
|
*/
|
|
16
|
+
/**
|
|
17
|
+
* Detalle por reception method de un payer. UNIR reporta los flags, el regex de
|
|
18
|
+
* cuenta y el límite POR MÉTODO; los campos planos de `RemittancePayerDto` son
|
|
19
|
+
* un agregado payer-level que puede sobre-reportar (ej. `requiresAdditionalFields`
|
|
20
|
+
* es el OR entre métodos). La UI debe preferir este detalle cuando esté presente.
|
|
21
|
+
*/
|
|
22
|
+
export interface RemittancePayerReceptionMethodDetailDto {
|
|
23
|
+
method: ReceptionMethod;
|
|
24
|
+
requiresAdditionalFields: boolean;
|
|
25
|
+
requiresBranch: boolean;
|
|
26
|
+
/** Regex de validación del `accNumber` para este método (UNIR solo lo define en ACCOUNT_CREDIT). */
|
|
27
|
+
accNumberRegex?: string;
|
|
28
|
+
accNumberHelperText?: string;
|
|
29
|
+
/** Límite USD por transacción reportado por UNIR para este payer+método. */
|
|
30
|
+
txnLimit?: number;
|
|
31
|
+
}
|
|
32
|
+
|
|
16
33
|
export interface RemittancePayerDto {
|
|
17
34
|
/** Código UNIR del payer (ej. "GCA10" Banrural). Usado como `payerCode` en AddBeneficiary. */
|
|
18
35
|
payerCode: string;
|
|
@@ -32,4 +49,6 @@ export interface RemittancePayerDto {
|
|
|
32
49
|
logoUrl?: string;
|
|
33
50
|
/** Orden de aparición sugerido por UNIR (asc). */
|
|
34
51
|
sortOrder?: number;
|
|
52
|
+
/** Detalle por método (flags/regex/límite reales de UNIR). Preferir sobre los campos planos. */
|
|
53
|
+
receptionMethodDetails?: RemittancePayerReceptionMethodDetailDto[];
|
|
35
54
|
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A qué entidad pertenece un additional field del payer (UNIR `fieldBelongsTo`).
|
|
3
|
+
* BENEFICIARY viaja en AddBeneficiary; TRANSACTION viaja en el SendPreview de la transacción.
|
|
4
|
+
*/
|
|
5
|
+
export enum RemittanceFieldBelongsTo {
|
|
6
|
+
BENEFICIARY = "BENEFICIARY",
|
|
7
|
+
TRANSACTION = "TRANSACTION",
|
|
8
|
+
}
|