@konplit-services/common 1.30.0 → 1.30.1

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.
Files changed (22) hide show
  1. package/build/events/refund-events/inteterfaces/index.d.ts +6 -0
  2. package/build/events/refund-events/inteterfaces/index.js +7 -1
  3. package/build/events/refund-events/inteterfaces/refund-created.interface.d.ts +21 -0
  4. package/build/events/refund-events/inteterfaces/refund-created.interface.js +2 -0
  5. package/build/events/refund-events/inteterfaces/refund-customer-account-requested.interface.d.ts +16 -0
  6. package/build/events/refund-events/inteterfaces/refund-customer-account-requested.interface.js +2 -0
  7. package/build/events/refund-events/inteterfaces/refund-customer-account-updated.interface.d.ts +15 -0
  8. package/build/events/refund-events/inteterfaces/refund-customer-account-updated.interface.js +2 -0
  9. package/build/events/refund-events/inteterfaces/refund-debit-retry-scheduled.interface.d.ts +22 -0
  10. package/build/events/refund-events/inteterfaces/refund-debit-retry-scheduled.interface.js +2 -0
  11. package/build/events/refund-events/inteterfaces/refund-debit-retry-triggered.interface.d.ts +10 -0
  12. package/build/events/refund-events/inteterfaces/refund-debit-retry-triggered.interface.js +2 -0
  13. package/build/events/refund-events/inteterfaces/refund-settlement-ledger-release.interface.d.ts +1 -0
  14. package/build/events/refund-events/inteterfaces/refund-settlement-ledger-reserve-fund.interface.d.ts +1 -0
  15. package/build/events/refund-events/inteterfaces/refund-settlement-ledger-reserve-res.interface.d.ts +1 -0
  16. package/build/events/refund-events/inteterfaces/refund-webhook.interface.d.ts +24 -0
  17. package/build/events/refund-events/inteterfaces/refund-webhook.interface.js +2 -0
  18. package/build/events/subjects.d.ts +11 -0
  19. package/build/events/subjects.js +12 -0
  20. package/build/helper/refund.d.ts +19 -2
  21. package/build/helper/refund.js +22 -4
  22. package/package.json +1 -1
@@ -16,3 +16,9 @@ export * from "./refund-settlement-ledger-reserve-fund.interface";
16
16
  export * from "./refund-settlement-ledger-reserve-res.interface";
17
17
  export * from "./refund-settlement-ledger-reverse.interface";
18
18
  export * from "./refund-settlement-ledger-notfound.interface";
19
+ export * from "./refund-created.interface";
20
+ export * from "./refund-webhook.interface";
21
+ export * from "./refund-customer-account-requested.interface";
22
+ export * from "./refund-customer-account-updated.interface";
23
+ export * from "./refund-debit-retry-scheduled.interface";
24
+ export * from "./refund-debit-retry-triggered.interface";
@@ -32,4 +32,10 @@ __exportStar(require("./refund-settlement-ledger-reserve-fund.interface"), expor
32
32
  __exportStar(require("./refund-settlement-ledger-reserve-res.interface"), exports);
33
33
  __exportStar(require("./refund-settlement-ledger-reverse.interface"), exports);
34
34
  __exportStar(require("./refund-settlement-ledger-notfound.interface"), exports);
35
- //commit changed
35
+ // New lifecycle events
36
+ __exportStar(require("./refund-created.interface"), exports);
37
+ __exportStar(require("./refund-webhook.interface"), exports);
38
+ __exportStar(require("./refund-customer-account-requested.interface"), exports);
39
+ __exportStar(require("./refund-customer-account-updated.interface"), exports);
40
+ __exportStar(require("./refund-debit-retry-scheduled.interface"), exports);
41
+ __exportStar(require("./refund-debit-retry-triggered.interface"), exports);
@@ -0,0 +1,21 @@
1
+ import { REFUND_TYPE, REFUND_DEBIT_STATUS } from "../../../helper";
2
+ import { StreamEvent, StreamName, Subjects } from "../../subjects";
3
+ export interface RefundCreatedEvent {
4
+ subject: Subjects.RefundCreated;
5
+ streamName: StreamName.name;
6
+ streamEvents: StreamEvent.Event;
7
+ data: {
8
+ refundId: string;
9
+ merchantId: string;
10
+ transactionId: string;
11
+ transactionRef: string;
12
+ amount: number;
13
+ currency: string;
14
+ refundType: REFUND_TYPE;
15
+ reason?: string;
16
+ createdBy: string;
17
+ idempotencyKey?: string;
18
+ debitStatus: REFUND_DEBIT_STATUS;
19
+ createdAt: string;
20
+ };
21
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,16 @@
1
+ import { StreamEvent, StreamName, Subjects } from "../../subjects";
2
+ export interface RefundCustomerAccountRequestedEvent {
3
+ subject: Subjects.RefundCustomerAccountRequested;
4
+ streamName: StreamName.name;
5
+ streamEvents: StreamEvent.Event;
6
+ data: {
7
+ refundId: string;
8
+ merchantId: string;
9
+ transactionId: string;
10
+ transactionRef: string;
11
+ amount: number;
12
+ currency: string;
13
+ requestedBy: string;
14
+ requestedAt: string;
15
+ };
16
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,15 @@
1
+ import { StreamEvent, StreamName, Subjects } from "../../subjects";
2
+ export interface RefundCustomerAccountUpdatedEvent {
3
+ subject: Subjects.RefundCustomerAccountUpdated;
4
+ streamName: StreamName.name;
5
+ streamEvents: StreamEvent.Event;
6
+ data: {
7
+ refundId: string;
8
+ merchantId: string;
9
+ transactionId: string;
10
+ transactionRef: string;
11
+ bankAccountId: string;
12
+ updatedBy: string;
13
+ updatedAt: string;
14
+ };
15
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,22 @@
1
+ import { REFUND_SOURCE, REFUND_TYPE } from "../../../helper";
2
+ import { StreamEvent, StreamName, Subjects } from "../../subjects";
3
+ export interface RefundDebitRetryScheduledEvent {
4
+ subject: Subjects.RefundDebitRetryScheduled;
5
+ streamName: StreamName.name;
6
+ streamEvents: StreamEvent.Event;
7
+ data: {
8
+ refundId: string;
9
+ merchantId: string;
10
+ transactionId: string;
11
+ transactionRef: string;
12
+ amount: number;
13
+ fees: number;
14
+ refundType: REFUND_TYPE;
15
+ refundSource?: REFUND_SOURCE;
16
+ reason?: string;
17
+ debitAttempts: number;
18
+ nextRetryAt: string;
19
+ transactionDate: Date;
20
+ settlementId?: string;
21
+ };
22
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,10 @@
1
+ import { StreamEvent, StreamName, Subjects } from "../../subjects";
2
+ export interface RefundDebitRetryTriggeredEvent {
3
+ subject: Subjects.RefundDebitRetryTriggered;
4
+ streamName: StreamName.name;
5
+ streamEvents: StreamEvent.Event;
6
+ data: {
7
+ refundId: string;
8
+ merchantId: string;
9
+ };
10
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -16,5 +16,6 @@ export interface RefundFundSettlementLedgerReleaseFundEvent {
16
16
  reason?: string;
17
17
  transactionDate: Date;
18
18
  fees: number;
19
+ skipLedgerReverse?: boolean;
19
20
  };
20
21
  }
@@ -8,6 +8,7 @@ export interface RefundFundSettlementLedgerReserveFundEvent {
8
8
  merchantId: string;
9
9
  refundId: string;
10
10
  transactionId: string;
11
+ settlementId: string;
11
12
  amount: number;
12
13
  totalAmount: number;
13
14
  refundType: REFUND_TYPE;
@@ -8,6 +8,7 @@ export interface RefundFundSettlementLedgerReserveFundEventResponseEvent {
8
8
  merchantId: string;
9
9
  refundId: string;
10
10
  transactionId: string;
11
+ settlementId: string;
11
12
  responseType: REFUND_WALLET_RESPONSE;
12
13
  refundSource: REFUND_SOURCE;
13
14
  totalAmount: number;
@@ -0,0 +1,24 @@
1
+ import { REFUND_STATUS, REFUND_WEBHOOK_TYPES, REFUND_DEBIT_STATUS } from "../../../helper";
2
+ import { StreamEvent, StreamName, Subjects } from "../../subjects";
3
+ export interface RefundWebhookEvent {
4
+ subject: Subjects.RefundWebhook;
5
+ streamName: StreamName.name;
6
+ streamEvents: StreamEvent.Event;
7
+ data: {
8
+ event: REFUND_WEBHOOK_TYPES;
9
+ refundId: string;
10
+ merchantId: string;
11
+ transactionId: string;
12
+ transactionRef: string;
13
+ amount: number;
14
+ currency: string;
15
+ status: REFUND_STATUS;
16
+ previousStatus?: REFUND_STATUS;
17
+ debitStatus?: REFUND_DEBIT_STATUS;
18
+ reason?: string;
19
+ usage: string;
20
+ createdAt?: string;
21
+ updatedAt?: string;
22
+ [key: string]: any;
23
+ };
24
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -98,6 +98,17 @@ export declare enum Subjects {
98
98
  RefundSettlementLedgerReserveFund = "events.refund.settlement.ledger.reserve.fund",
99
99
  RefundSettlementLedgerReserveFundResponse = "events.refund.settlement.ledger.reserve.fund.response",
100
100
  RefundSettlementLedgerReverseFundToLedger = "events.refund.settlement.ledger.reverse.fund.to.ledger",
101
+ RefundCreated = "events.refund.created",
102
+ RefundDeclined = "events.refund.declined",
103
+ RefundCancelled = "events.refund.cancelled",
104
+ RefundWebhook = "events.refund.webhook",
105
+ RefundDebitRetryScheduled = "events.refund.debit.retry.scheduled",
106
+ RefundCustomerAccountRequested = "events.refund.customer.account.requested",
107
+ RefundCustomerAccountUpdated = "events.refund.customer.account.updated",
108
+ RefundWalletDebitRequested = "events.refund.wallet.debit.requested",
109
+ RefundWalletDebitCompleted = "events.refund.wallet.debit.completed",
110
+ RefundWalletDebitFailed = "events.refund.wallet.debit.failed",
111
+ RefundDebitRetryTriggered = "events.refund.debit.retry.triggered",
101
112
  BANKACCOUNT_CREATED = "events.bank.account.created",
102
113
  BANKACCOUNT_UPDATED = "events.bank.account.updated",
103
114
  BANKACCOUNT_DELETED = "events.bank.account.deleted",
@@ -119,6 +119,18 @@ var Subjects;
119
119
  Subjects["RefundSettlementLedgerReserveFund"] = "events.refund.settlement.ledger.reserve.fund";
120
120
  Subjects["RefundSettlementLedgerReserveFundResponse"] = "events.refund.settlement.ledger.reserve.fund.response";
121
121
  Subjects["RefundSettlementLedgerReverseFundToLedger"] = "events.refund.settlement.ledger.reverse.fund.to.ledger";
122
+ // REFUND lifecycle events (new)
123
+ Subjects["RefundCreated"] = "events.refund.created";
124
+ Subjects["RefundDeclined"] = "events.refund.declined";
125
+ Subjects["RefundCancelled"] = "events.refund.cancelled";
126
+ Subjects["RefundWebhook"] = "events.refund.webhook";
127
+ Subjects["RefundDebitRetryScheduled"] = "events.refund.debit.retry.scheduled";
128
+ Subjects["RefundCustomerAccountRequested"] = "events.refund.customer.account.requested";
129
+ Subjects["RefundCustomerAccountUpdated"] = "events.refund.customer.account.updated";
130
+ Subjects["RefundWalletDebitRequested"] = "events.refund.wallet.debit.requested";
131
+ Subjects["RefundWalletDebitCompleted"] = "events.refund.wallet.debit.completed";
132
+ Subjects["RefundWalletDebitFailed"] = "events.refund.wallet.debit.failed";
133
+ Subjects["RefundDebitRetryTriggered"] = "events.refund.debit.retry.triggered";
122
134
  //APICONFIG
123
135
  Subjects["BANKACCOUNT_CREATED"] = "events.bank.account.created";
124
136
  Subjects["BANKACCOUNT_UPDATED"] = "events.bank.account.updated";
@@ -4,8 +4,6 @@ export declare enum REFUND_STATUS {
4
4
  PROCESSING = "PROCESSING",
5
5
  PENDING = "PENDING",
6
6
  FAILED = "FAILED",
7
- RETRY = "RETRY",
8
- APPROVED = "APPROVED",// configured by merchant to only rufund customers when approved
9
7
  CANCELLED = "CANCELLED"
10
8
  }
11
9
  export declare enum REFUND_WALLET_RESPONSE {
@@ -32,3 +30,22 @@ export declare enum REFUND_CHANNEL {
32
30
  original = "original",
33
31
  bank_transfer = "bank_transfer"
34
32
  }
33
+ /** Tracks the state of the merchant debit used to fund the refund */
34
+ export declare enum REFUND_DEBIT_STATUS {
35
+ NOT_REQUIRED = "NOT_REQUIRED",
36
+ PENDING = "PENDING",
37
+ SUCCESS = "SUCCESS",
38
+ FAILED = "FAILED",
39
+ RETRYING = "RETRYING"
40
+ }
41
+ /** Webhook event types emitted to merchants for refund lifecycle */
42
+ export declare enum REFUND_WEBHOOK_TYPES {
43
+ created = "refund.created",
44
+ declined = "refund.declined",
45
+ cancelled = "refund.cancelled",
46
+ failed = "refund.failed",
47
+ completed = "refund.completed",
48
+ processing = "refund.processing",
49
+ customer_account_needed = "refund.customer_account_needed",
50
+ customer_account_updated = "refund.customer_account_updated"
51
+ }
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.REFUND_CHANNEL = exports.REFUND_TYPE = exports.REFUND_STATUS_INTERSWITCH = exports.REFUND_SOURCE = exports.REFUND_WALLET_RESPONSE = exports.REFUND_STATUS = void 0;
3
+ exports.REFUND_WEBHOOK_TYPES = exports.REFUND_DEBIT_STATUS = exports.REFUND_CHANNEL = exports.REFUND_TYPE = exports.REFUND_STATUS_INTERSWITCH = exports.REFUND_SOURCE = exports.REFUND_WALLET_RESPONSE = exports.REFUND_STATUS = void 0;
4
4
  var REFUND_STATUS;
5
5
  (function (REFUND_STATUS) {
6
6
  REFUND_STATUS["COMPLETED"] = "COMPLETED";
@@ -8,8 +8,6 @@ var REFUND_STATUS;
8
8
  REFUND_STATUS["PROCESSING"] = "PROCESSING";
9
9
  REFUND_STATUS["PENDING"] = "PENDING";
10
10
  REFUND_STATUS["FAILED"] = "FAILED";
11
- REFUND_STATUS["RETRY"] = "RETRY";
12
- REFUND_STATUS["APPROVED"] = "APPROVED";
13
11
  REFUND_STATUS["CANCELLED"] = "CANCELLED";
14
12
  })(REFUND_STATUS || (exports.REFUND_STATUS = REFUND_STATUS = {}));
15
13
  var REFUND_WALLET_RESPONSE;
@@ -43,4 +41,24 @@ var REFUND_CHANNEL;
43
41
  REFUND_CHANNEL["original"] = "original";
44
42
  REFUND_CHANNEL["bank_transfer"] = "bank_transfer";
45
43
  })(REFUND_CHANNEL || (exports.REFUND_CHANNEL = REFUND_CHANNEL = {}));
46
- //nothing
44
+ /** Tracks the state of the merchant debit used to fund the refund */
45
+ var REFUND_DEBIT_STATUS;
46
+ (function (REFUND_DEBIT_STATUS) {
47
+ REFUND_DEBIT_STATUS["NOT_REQUIRED"] = "NOT_REQUIRED";
48
+ REFUND_DEBIT_STATUS["PENDING"] = "PENDING";
49
+ REFUND_DEBIT_STATUS["SUCCESS"] = "SUCCESS";
50
+ REFUND_DEBIT_STATUS["FAILED"] = "FAILED";
51
+ REFUND_DEBIT_STATUS["RETRYING"] = "RETRYING";
52
+ })(REFUND_DEBIT_STATUS || (exports.REFUND_DEBIT_STATUS = REFUND_DEBIT_STATUS = {}));
53
+ /** Webhook event types emitted to merchants for refund lifecycle */
54
+ var REFUND_WEBHOOK_TYPES;
55
+ (function (REFUND_WEBHOOK_TYPES) {
56
+ REFUND_WEBHOOK_TYPES["created"] = "refund.created";
57
+ REFUND_WEBHOOK_TYPES["declined"] = "refund.declined";
58
+ REFUND_WEBHOOK_TYPES["cancelled"] = "refund.cancelled";
59
+ REFUND_WEBHOOK_TYPES["failed"] = "refund.failed";
60
+ REFUND_WEBHOOK_TYPES["completed"] = "refund.completed";
61
+ REFUND_WEBHOOK_TYPES["processing"] = "refund.processing";
62
+ REFUND_WEBHOOK_TYPES["customer_account_needed"] = "refund.customer_account_needed";
63
+ REFUND_WEBHOOK_TYPES["customer_account_updated"] = "refund.customer_account_updated";
64
+ })(REFUND_WEBHOOK_TYPES || (exports.REFUND_WEBHOOK_TYPES = REFUND_WEBHOOK_TYPES = {}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@konplit-services/common",
3
- "version": "1.30.0",
3
+ "version": "1.30.1",
4
4
  "description": "",
5
5
  "main": "./build/index.js",
6
6
  "types": "./build/index.d.ts",