@fiado/api-invoker 5.147.0 → 5.149.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.
@@ -1,7 +1,8 @@
1
1
  import { IPomeloApi } from "./interfaces/IPomeloApi.js";
2
- import { IHttpRequest } from "@fiado/http-client";
2
+ import type { IHttpRequest } from "@fiado/http-client";
3
3
  import { CreateBankAccountRequest, CreateBankAccountUserRequest, UpdateBankAccountUserRequest } from "@fiado/type-kit/bin/account/index.js";
4
4
  import { ActivateBankAccountCardRequest, AssignCardRequest, CreateBankAccountCardShippingRequest, GetBankAccountShippingRequest, UpdateBankAccountCardRequest } from "@fiado/type-kit/bin/card/index.js";
5
+ import { PomeloThreeDSChallengeAnswerRequest, PomeloWalletProvisioningRequest } from "@fiado/type-kit/bin/card/index.js";
5
6
  export default class PomeloApi implements IPomeloApi {
6
7
  private httpRequest;
7
8
  private readonly baseUrl;
@@ -22,4 +23,9 @@ export default class PomeloApi implements IPomeloApi {
22
23
  getUserToken(externalUserId: string): Promise<any>;
23
24
  createShipment(object: CreateBankAccountCardShippingRequest): Promise<any>;
24
25
  getShipment(object: GetBankAccountShippingRequest): Promise<any>;
26
+ provisionWallet(request: PomeloWalletProvisioningRequest): Promise<any>;
27
+ getCardTokens(externalCardId: string): Promise<any>;
28
+ deleteCardToken(externalCardId: string, tokenId: string): Promise<any>;
29
+ getPendingThreeDSChallenges(externalCardIds: string[]): Promise<any>;
30
+ answerThreeDSChallenge(threedsTransactionId: string, request: PomeloThreeDSChallengeAnswerRequest): Promise<any>;
25
31
  }
@@ -84,6 +84,32 @@ let PomeloApi = class PomeloApi {
84
84
  const url = `${this.baseUrl}shipment/${object.externalShippingId}`;
85
85
  return await this.httpRequest.get(url);
86
86
  }
87
+ // public async replaceCardByExternalId(object: ExternalReplaceCardRequest): Promise<any> {
88
+ // const url: string = `${this.baseUrl}cards/${object.externalCardId}/replace`;
89
+ // return await this.httpRequest.put(url, object);
90
+ // }
91
+ // //Wallet y 3DS
92
+ async provisionWallet(request) {
93
+ const url = `${this.baseUrl}tokenization/provisioning`;
94
+ return await this.httpRequest.post(url, request);
95
+ }
96
+ async getCardTokens(externalCardId) {
97
+ const url = `${this.baseUrl}cards/${encodeURIComponent(externalCardId)}/tokens`;
98
+ return await this.httpRequest.get(url);
99
+ }
100
+ async deleteCardToken(externalCardId, tokenId) {
101
+ const url = `${this.baseUrl}tokens/${encodeURIComponent(tokenId)}/deletion`;
102
+ return await this.httpRequest.post(url, { cardId: externalCardId });
103
+ }
104
+ async getPendingThreeDSChallenges(externalCardIds) {
105
+ const cardIds = externalCardIds.map((id) => encodeURIComponent(id)).join(',');
106
+ const url = `${this.baseUrl}threeds/challenges/pending?cardIds=${cardIds}`;
107
+ return await this.httpRequest.get(url);
108
+ }
109
+ async answerThreeDSChallenge(threedsTransactionId, request) {
110
+ const url = `${this.baseUrl}threeds/challenges/${encodeURIComponent(threedsTransactionId)}/answer`;
111
+ return await this.httpRequest.post(url, request);
112
+ }
87
113
  };
88
114
  PomeloApi = __decorate([
89
115
  injectable(),
@@ -1,5 +1,6 @@
1
1
  import { CreateBankAccountRequest, CreateBankAccountUserRequest, UpdateBankAccountUserRequest } from "@fiado/type-kit/bin/account/index.js";
2
2
  import { ActivateBankAccountCardRequest, AssignCardRequest, CreateBankAccountCardShippingRequest, GetBankAccountShippingRequest, UpdateBankAccountCardRequest } from "@fiado/type-kit/bin/card/index.js";
3
+ import { PomeloThreeDSChallengeAnswerRequest, PomeloWalletProvisioningRequest } from "@fiado/type-kit/bin/card/index.js";
3
4
  export interface IPomeloApi {
4
5
  updateUser(object: UpdateBankAccountUserRequest): Promise<any>;
5
6
  getUserById(externalUserId: string): Promise<any>;
@@ -16,4 +17,9 @@ export interface IPomeloApi {
16
17
  assignCardToUser(request: AssignCardRequest): Promise<any>;
17
18
  createShipment(object: CreateBankAccountCardShippingRequest): Promise<any>;
18
19
  getShipment(object: GetBankAccountShippingRequest): Promise<any>;
20
+ provisionWallet(request: PomeloWalletProvisioningRequest): Promise<any>;
21
+ getCardTokens(externalCardId: string): Promise<any>;
22
+ deleteCardToken(externalCardId: string, tokenId: string): Promise<any>;
23
+ getPendingThreeDSChallenges(externalCardIds: string[]): Promise<any>;
24
+ answerThreeDSChallenge(threedsTransactionId: string, request: PomeloThreeDSChallengeAnswerRequest): Promise<any>;
19
25
  }
@@ -1,7 +1,7 @@
1
1
  import type { IHttpRequest } from "@fiado/http-client";
2
2
  import { ApiGatewayResponse } from "@fiado/gateway-adapter";
3
3
  import { ConnectorCatalogItem } from "@fiado/type-kit/bin/benefitCenter/index.js";
4
- import { CohortCountRequest, CohortCountResponse, CohortUserMatchRequest, CohortUserMatchResponse, PricingMetricsRequest, PricingMetricsResponse, PromotionReachRequest, PromotionReachResponse, SegmentMetricsRequest, SegmentMetricsResponse, WholesaleRateRequest, WholesaleRateResponse, KycUserDetail, KycUsersListResponse, KycOnboardingAttemptsResponse, RefreshUserProfileResponse, RegisterOnboardingBlockRequest, RegisterOnboardingBlockResponse, RemittanceAddBeneficiaryRequest, RemittanceBackofficeDashboardSummary, RemittanceBackofficeStats, RemittanceBackofficeStatsRangeRequest, RemittanceBackofficeStatsPeriod, RemittanceBackofficeCancelCloseRequest, RemittanceBackofficeCancelCloseResponse, RemittanceBackofficeTransaction, RemittanceBackofficeTxListResponse, RemittanceBackofficeUserDetail, RemittanceBackofficeUserListResponse, RemittanceBeneficiary, RemittanceCancelRequest, RemittanceCancelResponse, RemittanceHomeResponse, RemittanceListBeneficiariesResponse, RemittanceOnboardRequest, RemittanceOnboardResponse, RemittancePayRequest, RemittancePayResponse, RemittancePayerAdditionalFieldDto, RemittancePayerBranchDto, RemittancePayerDto, RemittanceQuoteRequest, RemittanceQuoteResponse, RemittanceSecurityQuestionsResponse, RemittanceSendPreviewRequest, RemittanceSendPreviewResponse, RemittanceSmsRequest, RemittanceStateDto, RemittanceTransactionDetail, RemittanceTransactionReceipt, RemittanceTransactionsListRequest, RemittanceTransactionsListResponse, RemittanceUpdateBeneficiaryRequest, RemittanceUserLimits, RemittanceUserLimitsBatchResponse, RemittanceCorridor, PricingScheduleResponse } from "@fiado/type-kit/bin/remittance/index.js";
4
+ import { CohortCountRequest, CohortCountResponse, CohortUserMatchRequest, CohortUserMatchResponse, PricingMetricsRequest, PricingMetricsResponse, PromotionReachRequest, PromotionReachResponse, SegmentMetricsRequest, SegmentMetricsResponse, WholesaleRateRequest, WholesaleRateResponse, KycUserDetail, KycUsersListResponse, KycOnboardingAttemptsResponse, RefreshUserProfileResponse, RegisterOnboardingBlockRequest, RegisterOnboardingBlockResponse, RemittanceAddBeneficiaryRequest, RemittanceBackofficeDashboardSummary, RemittanceBackofficeStats, RemittanceBackofficeStatsRangeRequest, RemittanceBackofficeStatsPeriod, RemittanceBackofficeCancelCloseRequest, RemittanceBackofficeCancelCloseResponse, RemittanceBackofficeTransaction, RemittanceBackofficeTxListResponse, RemittanceBackofficeUserDetail, RemittanceBackofficeUserListResponse, RemittanceBeneficiary, RemittanceCancelRequest, RemittanceCancelResponse, RemittanceHomeResponse, RemittanceListBeneficiariesResponse, RemittanceOnboardRequest, RemittanceOnboardResponse, RemittancePayRequest, RemittancePayResponse, RemittancePayerAdditionalFieldDto, RemittancePayerBranchDto, RemittancePayerDto, RemittanceQuoteRequest, RemittanceQuoteResponse, RemittanceSecurityQuestionsResponse, RemittanceSendPreviewRequest, RemittanceSendPreviewResponse, RemittanceSmsRequest, RemittanceStateDto, RemittanceTransactionDetail, RemittanceTransactionReceipt, RemittanceTransactionsListRequest, RemittanceTransactionsListResponse, RemittanceUpdateBeneficiaryRequest, RemittanceUserLimits, RemittanceUserLimitsBatchResponse, RemittanceCorridor, PricingScheduleRequest, PricingScheduleResponse } from "@fiado/type-kit/bin/remittance/index.js";
5
5
  import { IUnitellerConnectorApi } from "./interfaces/IUnitellerConnectorApi.js";
6
6
  export default class UnitellerConnectorApi implements IUnitellerConnectorApi {
7
7
  private httpRequest;
@@ -33,7 +33,7 @@ export default class UnitellerConnectorApi implements IUnitellerConnectorApi {
33
33
  deactivated: boolean;
34
34
  beneficiaryId: string;
35
35
  }>>;
36
- pricingSchedule(directoryId: string, corridor: RemittanceCorridor): Promise<ApiGatewayResponse<PricingScheduleResponse>>;
36
+ pricingSchedule(directoryId: string, corridor: RemittanceCorridor, costContext?: Pick<PricingScheduleRequest, "payerCode" | "receptionMethod">): Promise<ApiGatewayResponse<PricingScheduleResponse>>;
37
37
  quote(directoryId: string, request: RemittanceQuoteRequest): Promise<ApiGatewayResponse<RemittanceQuoteResponse>>;
38
38
  sendPreview(directoryId: string, request: RemittanceSendPreviewRequest): Promise<ApiGatewayResponse<RemittanceSendPreviewResponse>>;
39
39
  pay(directoryId: string, request: RemittancePayRequest): Promise<ApiGatewayResponse<RemittancePayResponse>>;
@@ -77,9 +77,15 @@ let UnitellerConnectorApi = class UnitellerConnectorApi {
77
77
  const url = `${this.baseUrl}/beneficiaries/${encodeURIComponent(beneficiaryId)}/deactivate`;
78
78
  return await this.httpRequest.post(url, { directoryId, ...(actor && { actor }) });
79
79
  }
80
- async pricingSchedule(directoryId, corridor) {
80
+ async pricingSchedule(directoryId, corridor, costContext) {
81
81
  const url = `${this.baseUrl}/pricing/schedule`;
82
- return await this.httpRequest.post(url, { directoryId, corridor });
82
+ // Solo los campos que vienen: sin ellos el body queda igual que antes.
83
+ return await this.httpRequest.post(url, {
84
+ directoryId,
85
+ corridor,
86
+ ...(costContext?.payerCode && { payerCode: costContext.payerCode }),
87
+ ...(costContext?.receptionMethod && { receptionMethod: costContext.receptionMethod }),
88
+ });
83
89
  }
84
90
  async quote(directoryId, request) {
85
91
  const url = `${this.baseUrl}/quote`;
@@ -1,6 +1,6 @@
1
1
  import { ApiGatewayResponse } from "@fiado/gateway-adapter";
2
2
  import { ConnectorCatalogItem } from "@fiado/type-kit/bin/benefitCenter/index.js";
3
- import { CohortCountRequest, CohortCountResponse, CohortUserMatchRequest, CohortUserMatchResponse, PricingMetricsRequest, PricingMetricsResponse, PromotionReachRequest, PromotionReachResponse, SegmentMetricsRequest, SegmentMetricsResponse, WholesaleRateRequest, WholesaleRateResponse, RemittanceCorridor, PricingScheduleResponse, KycUserDetail, KycUsersListResponse, KycOnboardingAttemptsResponse, RefreshUserProfileResponse, RegisterOnboardingBlockRequest, RegisterOnboardingBlockResponse, RemittanceAddBeneficiaryRequest, RemittanceBackofficeDashboardSummary, RemittanceBackofficeStats, RemittanceBackofficeStatsRangeRequest, RemittanceBackofficeStatsPeriod, RemittanceBackofficeCancelCloseRequest, RemittanceBackofficeCancelCloseResponse, RemittanceBackofficeTransaction, RemittanceBackofficeTxListResponse, RemittanceBackofficeUserDetail, RemittanceBackofficeUserListResponse, RemittanceBeneficiary, RemittanceCancelRequest, RemittanceCancelResponse, RemittanceHomeResponse, RemittanceListBeneficiariesResponse, RemittanceOnboardRequest, RemittanceOnboardResponse, RemittancePayRequest, RemittancePayResponse, RemittancePayerAdditionalFieldDto, RemittancePayerBranchDto, RemittancePayerDto, RemittanceQuoteRequest, RemittanceQuoteResponse, RemittanceSecurityQuestionsResponse, RemittanceSendPreviewRequest, RemittanceSendPreviewResponse, RemittanceSmsRequest, RemittanceStateDto, RemittanceTransactionDetail, RemittanceTransactionReceipt, RemittanceTransactionsListRequest, RemittanceTransactionsListResponse, RemittanceUpdateBeneficiaryRequest, RemittanceUserLimits, RemittanceUserLimitsBatchResponse } from "@fiado/type-kit/bin/remittance/index.js";
3
+ import { CohortCountRequest, CohortCountResponse, CohortUserMatchRequest, CohortUserMatchResponse, PricingMetricsRequest, PricingMetricsResponse, PromotionReachRequest, PromotionReachResponse, SegmentMetricsRequest, SegmentMetricsResponse, WholesaleRateRequest, WholesaleRateResponse, RemittanceCorridor, PricingScheduleRequest, PricingScheduleResponse, KycUserDetail, KycUsersListResponse, KycOnboardingAttemptsResponse, RefreshUserProfileResponse, RegisterOnboardingBlockRequest, RegisterOnboardingBlockResponse, RemittanceAddBeneficiaryRequest, RemittanceBackofficeDashboardSummary, RemittanceBackofficeStats, RemittanceBackofficeStatsRangeRequest, RemittanceBackofficeStatsPeriod, RemittanceBackofficeCancelCloseRequest, RemittanceBackofficeCancelCloseResponse, RemittanceBackofficeTransaction, RemittanceBackofficeTxListResponse, RemittanceBackofficeUserDetail, RemittanceBackofficeUserListResponse, RemittanceBeneficiary, RemittanceCancelRequest, RemittanceCancelResponse, RemittanceHomeResponse, RemittanceListBeneficiariesResponse, RemittanceOnboardRequest, RemittanceOnboardResponse, RemittancePayRequest, RemittancePayResponse, RemittancePayerAdditionalFieldDto, RemittancePayerBranchDto, RemittancePayerDto, RemittanceQuoteRequest, RemittanceQuoteResponse, RemittanceSecurityQuestionsResponse, RemittanceSendPreviewRequest, RemittanceSendPreviewResponse, RemittanceSmsRequest, RemittanceStateDto, RemittanceTransactionDetail, RemittanceTransactionReceipt, RemittanceTransactionsListRequest, RemittanceTransactionsListResponse, RemittanceUpdateBeneficiaryRequest, RemittanceUserLimits, RemittanceUserLimitsBatchResponse } from "@fiado/type-kit/bin/remittance/index.js";
4
4
  export interface IUnitellerConnectorApi {
5
5
  /** Estado del módulo remesas para un directoryId. */
6
6
  getHome(directoryId: string): Promise<ApiGatewayResponse<RemittanceHomeResponse>>;
@@ -45,8 +45,11 @@ export interface IUnitellerConnectorApi {
45
45
  deactivated: boolean;
46
46
  beneficiaryId: string;
47
47
  }>>;
48
- /** Schedule de tramos de service fee + promo automática por corredor (F2 app; passthrough a remittance-business). POST /pricing/schedule. */
49
- pricingSchedule(directoryId: string, corridor: RemittanceCorridor): Promise<ApiGatewayResponse<PricingScheduleResponse>>;
48
+ /**
49
+ * Schedule de tramos de service fee + promo automática por corredor (F2 app; passthrough a remittance-business). POST /pricing/schedule.
50
+ * Con payer y método (opcionales) cada fee incluye el cobro extra de su grupo de costo.
51
+ */
52
+ pricingSchedule(directoryId: string, corridor: RemittanceCorridor, costContext?: Pick<PricingScheduleRequest, "payerCode" | "receptionMethod">): Promise<ApiGatewayResponse<PricingScheduleResponse>>;
50
53
  /** Cotización rápida (debounce). Read-only. */
51
54
  quote(directoryId: string, request: RemittanceQuoteRequest): Promise<ApiGatewayResponse<RemittanceQuoteResponse>>;
52
55
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fiado/api-invoker",
3
- "version": "5.147.0",
3
+ "version": "5.149.0",
4
4
  "description": "Sirve como un puente entre diferentes funciones lambda, facilitando la comunicación entre ellas a través de invocaciones http",
5
5
  "type": "module",
6
6
  "main": "bin/index.js",
@@ -34,7 +34,7 @@
34
34
  "@fiado/gateway-adapter": "^3.14.0",
35
35
  "@fiado/http-client": "^2.0.1",
36
36
  "@fiado/logger": "^1.1.3",
37
- "@fiado/type-kit": "^3.585.0",
37
+ "@fiado/type-kit": "^3.594.0",
38
38
  "dotenv": "^16.4.7"
39
39
  },
40
40
  "peerDependencies": {
@@ -1,8 +1,9 @@
1
1
  import { IPomeloApi } from "./interfaces/IPomeloApi.js";
2
2
  import { inject, injectable } from "inversify";
3
- import { IHttpRequest } from "@fiado/http-client";
3
+ import type { IHttpRequest } from "@fiado/http-client";
4
4
  import { CreateBankAccountRequest, CreateBankAccountUserRequest, UpdateBankAccountUserRequest } from "@fiado/type-kit/bin/account/index.js";
5
5
  import { ActivateBankAccountCardRequest, AssignCardRequest, CreateBankAccountCardShippingRequest, GetBankAccountShippingRequest, UpdateBankAccountCardRequest } from "@fiado/type-kit/bin/card/index.js";
6
+ import { PomeloThreeDSChallengeAnswerRequest, PomeloWalletProvisioningRequest } from "@fiado/type-kit/bin/card/index.js";
6
7
 
7
8
 
8
9
  @injectable()
@@ -103,7 +104,31 @@ export default class PomeloApi implements IPomeloApi {
103
104
  // return await this.httpRequest.put(url, object);
104
105
  // }
105
106
 
107
+ // //Wallet y 3DS
106
108
 
109
+ public async provisionWallet(request: PomeloWalletProvisioningRequest): Promise<any> {
110
+ const url: string = `${this.baseUrl}tokenization/provisioning`;
111
+ return await this.httpRequest.post(url, request);
112
+ }
113
+
114
+ public async getCardTokens(externalCardId: string): Promise<any> {
115
+ const url: string = `${this.baseUrl}cards/${encodeURIComponent(externalCardId)}/tokens`;
116
+ return await this.httpRequest.get(url);
117
+ }
107
118
 
119
+ public async deleteCardToken(externalCardId: string, tokenId: string): Promise<any> {
120
+ const url: string = `${this.baseUrl}tokens/${encodeURIComponent(tokenId)}/deletion`;
121
+ return await this.httpRequest.post(url, { cardId: externalCardId });
122
+ }
108
123
 
124
+ public async getPendingThreeDSChallenges(externalCardIds: string[]): Promise<any> {
125
+ const cardIds = externalCardIds.map((id) => encodeURIComponent(id)).join(',');
126
+ const url: string = `${this.baseUrl}threeds/challenges/pending?cardIds=${cardIds}`;
127
+ return await this.httpRequest.get(url);
128
+ }
129
+
130
+ public async answerThreeDSChallenge(threedsTransactionId: string, request: PomeloThreeDSChallengeAnswerRequest): Promise<any> {
131
+ const url: string = `${this.baseUrl}threeds/challenges/${encodeURIComponent(threedsTransactionId)}/answer`;
132
+ return await this.httpRequest.post(url, request);
133
+ }
109
134
  }
@@ -1,5 +1,6 @@
1
1
  import {CreateBankAccountRequest, CreateBankAccountUserRequest, UpdateBankAccountUserRequest } from "@fiado/type-kit/bin/account/index.js";
2
2
  import { ActivateBankAccountCardRequest, AssignCardRequest, CreateBankAccountCardShippingRequest, GetBankAccountShippingRequest, UpdateBankAccountCardRequest } from "@fiado/type-kit/bin/card/index.js";
3
+ import { PomeloThreeDSChallengeAnswerRequest, PomeloWalletProvisioningRequest } from "@fiado/type-kit/bin/card/index.js";
3
4
 
4
5
  export interface IPomeloApi {
5
6
 
@@ -25,6 +26,13 @@ export interface IPomeloApi {
25
26
  createShipment(object: CreateBankAccountCardShippingRequest): Promise<any>
26
27
  getShipment(object: GetBankAccountShippingRequest): Promise<any>
27
28
 
29
+ // //Wallet y 3DS
30
+ provisionWallet(request: PomeloWalletProvisioningRequest): Promise<any>;
31
+ getCardTokens(externalCardId: string): Promise<any>;
32
+ deleteCardToken(externalCardId: string, tokenId: string): Promise<any>;
33
+ getPendingThreeDSChallenges(externalCardIds: string[]): Promise<any>;
34
+ answerThreeDSChallenge(threedsTransactionId: string, request: PomeloThreeDSChallengeAnswerRequest): Promise<any>;
35
+
28
36
 
29
37
 
30
38
  }
@@ -59,6 +59,7 @@ import {
59
59
  RemittanceUserLimits,
60
60
  RemittanceUserLimitsBatchResponse,
61
61
  RemittanceCorridor,
62
+ PricingScheduleRequest,
62
63
  PricingScheduleResponse,
63
64
  } from "@fiado/type-kit/bin/remittance/index.js";
64
65
  import { IUnitellerConnectorApi } from "./interfaces/IUnitellerConnectorApi.js";
@@ -142,9 +143,19 @@ export default class UnitellerConnectorApi implements IUnitellerConnectorApi {
142
143
  return await this.httpRequest.post(url, { directoryId, ...(actor && { actor }) });
143
144
  }
144
145
 
145
- async pricingSchedule(directoryId: string, corridor: RemittanceCorridor): Promise<ApiGatewayResponse<PricingScheduleResponse>> {
146
+ async pricingSchedule(
147
+ directoryId: string,
148
+ corridor: RemittanceCorridor,
149
+ costContext?: Pick<PricingScheduleRequest, "payerCode" | "receptionMethod">,
150
+ ): Promise<ApiGatewayResponse<PricingScheduleResponse>> {
146
151
  const url = `${this.baseUrl}/pricing/schedule`;
147
- return await this.httpRequest.post(url, { directoryId, corridor });
152
+ // Solo los campos que vienen: sin ellos el body queda igual que antes.
153
+ return await this.httpRequest.post(url, {
154
+ directoryId,
155
+ corridor,
156
+ ...(costContext?.payerCode && { payerCode: costContext.payerCode }),
157
+ ...(costContext?.receptionMethod && { receptionMethod: costContext.receptionMethod }),
158
+ });
148
159
  }
149
160
 
150
161
  async quote(directoryId: string, request: RemittanceQuoteRequest): Promise<ApiGatewayResponse<RemittanceQuoteResponse>> {
@@ -14,6 +14,7 @@ import {
14
14
  WholesaleRateRequest,
15
15
  WholesaleRateResponse,
16
16
  RemittanceCorridor,
17
+ PricingScheduleRequest,
17
18
  PricingScheduleResponse,
18
19
  KycUserDetail,
19
20
  KycUsersListResponse,
@@ -113,8 +114,15 @@ export interface IUnitellerConnectorApi {
113
114
  addBeneficiary(directoryId: string, request: RemittanceAddBeneficiaryRequest, actor?: string): Promise<ApiGatewayResponse<RemittanceBeneficiary>>;
114
115
  updateBeneficiary(directoryId: string, beneficiaryId: string, request: RemittanceUpdateBeneficiaryRequest, actor?: string): Promise<ApiGatewayResponse<RemittanceBeneficiary>>;
115
116
  deactivateBeneficiary(directoryId: string, beneficiaryId: string, actor?: string): Promise<ApiGatewayResponse<{ deactivated: boolean; beneficiaryId: string }>>;
116
- /** Schedule de tramos de service fee + promo automática por corredor (F2 app; passthrough a remittance-business). POST /pricing/schedule. */
117
- pricingSchedule(directoryId: string, corridor: RemittanceCorridor): Promise<ApiGatewayResponse<PricingScheduleResponse>>;
117
+ /**
118
+ * Schedule de tramos de service fee + promo automática por corredor (F2 app; passthrough a remittance-business). POST /pricing/schedule.
119
+ * Con payer y método (opcionales) cada fee incluye el cobro extra de su grupo de costo.
120
+ */
121
+ pricingSchedule(
122
+ directoryId: string,
123
+ corridor: RemittanceCorridor,
124
+ costContext?: Pick<PricingScheduleRequest, "payerCode" | "receptionMethod">,
125
+ ): Promise<ApiGatewayResponse<PricingScheduleResponse>>;
118
126
 
119
127
  // ─── Quote + Preview (F5) ────────────────────────────────────────────────────
120
128