@paykit-sdk/gopay 1.0.0 → 1.0.4
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/README.md +41 -34
- package/dist/controllers/auth.js +21 -5
- package/dist/controllers/auth.mjs +21 -5
- package/dist/gopay-provider.js +116 -55
- package/dist/gopay-provider.mjs +116 -55
- package/dist/index.js +123 -56
- package/dist/index.mjs +123 -56
- package/dist/utils/mapper.js +13 -5
- package/dist/utils/mapper.mjs +13 -5
- package/package.json +8 -9
package/dist/index.mjs
CHANGED
|
@@ -4050,7 +4050,11 @@ var AuthController = class {
|
|
|
4050
4050
|
constructor(opts) {
|
|
4051
4051
|
this.opts = opts;
|
|
4052
4052
|
const debug = opts.debug ?? true;
|
|
4053
|
-
this._client = new HTTPClient({
|
|
4053
|
+
this._client = new HTTPClient({
|
|
4054
|
+
baseUrl: this.opts.baseUrl,
|
|
4055
|
+
headers: {},
|
|
4056
|
+
retryOptions: { max: 3, baseDelay: 1e3, debug }
|
|
4057
|
+
});
|
|
4054
4058
|
}
|
|
4055
4059
|
_client;
|
|
4056
4060
|
_accessToken = null;
|
|
@@ -4060,10 +4064,18 @@ var AuthController = class {
|
|
|
4060
4064
|
const expiry = parseInt(expiryStr || "0", 10);
|
|
4061
4065
|
if (expiry > Date.now()) return token;
|
|
4062
4066
|
}
|
|
4063
|
-
const credentials = Buffer.from(
|
|
4067
|
+
const credentials = Buffer.from(
|
|
4068
|
+
`${this.opts.clientId}:${this.opts.clientSecret}`
|
|
4069
|
+
).toString("base64");
|
|
4064
4070
|
const response = await this._client.post("/oauth2/token", {
|
|
4065
|
-
headers: {
|
|
4066
|
-
|
|
4071
|
+
headers: {
|
|
4072
|
+
Authorization: `Basic ${credentials}`,
|
|
4073
|
+
"Content-Type": "application/x-www-form-urlencoded"
|
|
4074
|
+
},
|
|
4075
|
+
body: new URLSearchParams({
|
|
4076
|
+
grant_type: "client_credentials",
|
|
4077
|
+
scope: "payment-all"
|
|
4078
|
+
}).toString()
|
|
4067
4079
|
});
|
|
4068
4080
|
if (!response.ok || !response.value.access_token) {
|
|
4069
4081
|
throw new OperationFailedError("getAccessToken", "gopay", {
|
|
@@ -4077,11 +4089,17 @@ var AuthController = class {
|
|
|
4077
4089
|
};
|
|
4078
4090
|
getAuthHeaders = async () => {
|
|
4079
4091
|
const token = await this.getAccessToken();
|
|
4080
|
-
return {
|
|
4092
|
+
return {
|
|
4093
|
+
Authorization: `Bearer ${token}`,
|
|
4094
|
+
"Content-Type": "application/json",
|
|
4095
|
+
Accept: "application/json"
|
|
4096
|
+
};
|
|
4081
4097
|
};
|
|
4082
4098
|
};
|
|
4083
4099
|
var paykitPayment$InboundSchema = (data) => {
|
|
4084
|
-
const itemId = JSON.parse(
|
|
4100
|
+
const itemId = JSON.parse(
|
|
4101
|
+
data.additional_params?.find((param) => param.name === PAYKIT_METADATA_KEY)?.value ?? "{}"
|
|
4102
|
+
).itemId;
|
|
4085
4103
|
const metadata = omitInternalMetadata(
|
|
4086
4104
|
data.additional_params?.reduce(
|
|
4087
4105
|
(acc, param) => {
|
|
@@ -4097,13 +4115,17 @@ var paykitPayment$InboundSchema = (data) => {
|
|
|
4097
4115
|
currency: data.currency,
|
|
4098
4116
|
customer: data.payer ?? { email: data.payer?.email ?? "" },
|
|
4099
4117
|
status: data.state,
|
|
4100
|
-
|
|
4118
|
+
item_id: itemId,
|
|
4101
4119
|
metadata
|
|
4102
4120
|
};
|
|
4103
4121
|
};
|
|
4104
4122
|
var paykitInvoice$InboundSchema = (data, isSubscription) => {
|
|
4105
|
-
const quantity = JSON.parse(
|
|
4106
|
-
|
|
4123
|
+
const quantity = JSON.parse(
|
|
4124
|
+
data.additional_params?.find((param) => param.name === PAYKIT_METADATA_KEY)?.value ?? "{}"
|
|
4125
|
+
).qty;
|
|
4126
|
+
const itemId = JSON.parse(
|
|
4127
|
+
data.additional_params?.find((param) => param.name === PAYKIT_METADATA_KEY)?.value ?? "{}"
|
|
4128
|
+
).itemId;
|
|
4107
4129
|
const status = (() => {
|
|
4108
4130
|
if (data.state === "PAID") return "paid";
|
|
4109
4131
|
return "open";
|
|
@@ -4133,7 +4155,9 @@ var paykitInvoice$InboundSchema = (data, isSubscription) => {
|
|
|
4133
4155
|
};
|
|
4134
4156
|
};
|
|
4135
4157
|
var paykitSubscription$InboundSchema = (data) => {
|
|
4136
|
-
const itemId = JSON.parse(
|
|
4158
|
+
const itemId = JSON.parse(
|
|
4159
|
+
data.additional_params?.find((param) => param.name === PAYKIT_METADATA_KEY)?.value ?? "{}"
|
|
4160
|
+
).itemId;
|
|
4137
4161
|
const billingIntervalMap = {
|
|
4138
4162
|
DAY: "day",
|
|
4139
4163
|
WEEK: "week",
|
|
@@ -4214,12 +4238,8 @@ var GoPayProvider = class extends AbstractPayKitProvider {
|
|
|
4214
4238
|
method: "createCheckout"
|
|
4215
4239
|
});
|
|
4216
4240
|
}
|
|
4217
|
-
const {
|
|
4218
|
-
amount,
|
|
4219
|
-
currency = "CZK",
|
|
4220
|
-
successUrl
|
|
4221
|
-
} = validateRequiredKeys(
|
|
4222
|
-
["amount", "currency", "successUrl"],
|
|
4241
|
+
const { amount, currency = "CZK" } = validateRequiredKeys(
|
|
4242
|
+
["amount", "currency"],
|
|
4223
4243
|
data.provider_metadata,
|
|
4224
4244
|
"The following fields must be present in the provider_metadata of createCheckout: {keys}"
|
|
4225
4245
|
);
|
|
@@ -4246,12 +4266,22 @@ var GoPayProvider = class extends AbstractPayKitProvider {
|
|
|
4246
4266
|
currency,
|
|
4247
4267
|
order_number: crypto.randomBytes(8).toString("hex").slice(0, 15),
|
|
4248
4268
|
order_description: data.metadata?.description || "Checkout",
|
|
4249
|
-
items: [
|
|
4269
|
+
items: [
|
|
4270
|
+
{
|
|
4271
|
+
name: data.item_id,
|
|
4272
|
+
amount: Number(amount),
|
|
4273
|
+
count: data.quantity,
|
|
4274
|
+
type: "ITEM"
|
|
4275
|
+
}
|
|
4276
|
+
],
|
|
4250
4277
|
lang: data.provider_metadata?.lang ? data.provider_metadata.lang : "EN",
|
|
4251
|
-
callback: { return_url:
|
|
4278
|
+
callback: { return_url: data.success_url, notification_url: this.opts.webhookUrl },
|
|
4252
4279
|
additional_params: Object.entries({
|
|
4253
4280
|
...data.metadata,
|
|
4254
|
-
[PAYKIT_METADATA_KEY]: JSON.stringify({
|
|
4281
|
+
[PAYKIT_METADATA_KEY]: JSON.stringify({
|
|
4282
|
+
itemId: data.item_id,
|
|
4283
|
+
qty: data.quantity
|
|
4284
|
+
})
|
|
4255
4285
|
}).map(([name, value]) => ({
|
|
4256
4286
|
name,
|
|
4257
4287
|
value: String(value)
|
|
@@ -4265,9 +4295,12 @@ var GoPayProvider = class extends AbstractPayKitProvider {
|
|
|
4265
4295
|
return response.value;
|
|
4266
4296
|
};
|
|
4267
4297
|
retrieveCheckout = async (id) => {
|
|
4268
|
-
const response = await this._client.get(
|
|
4269
|
-
|
|
4270
|
-
|
|
4298
|
+
const response = await this._client.get(
|
|
4299
|
+
`/payments/payment/${id}`,
|
|
4300
|
+
{
|
|
4301
|
+
headers: await this.authController.getAuthHeaders()
|
|
4302
|
+
}
|
|
4303
|
+
);
|
|
4271
4304
|
if (!response.ok) {
|
|
4272
4305
|
throw new OperationFailedError("retrieveCheckout", this.providerName, {
|
|
4273
4306
|
cause: new Error("Failed to retrieve checkout")
|
|
@@ -4318,8 +4351,8 @@ var GoPayProvider = class extends AbstractPayKitProvider {
|
|
|
4318
4351
|
method: "createCheckout"
|
|
4319
4352
|
});
|
|
4320
4353
|
}
|
|
4321
|
-
const {
|
|
4322
|
-
["
|
|
4354
|
+
const { quantity, success_url } = validateRequiredKeys(
|
|
4355
|
+
["quantity", "success_url"],
|
|
4323
4356
|
data.provider_metadata,
|
|
4324
4357
|
"The following fields must be present in the provider_metadata of createCheckout: {keys}"
|
|
4325
4358
|
);
|
|
@@ -4329,6 +4362,18 @@ var GoPayProvider = class extends AbstractPayKitProvider {
|
|
|
4329
4362
|
month: "MONTH",
|
|
4330
4363
|
year: "MONTH"
|
|
4331
4364
|
};
|
|
4365
|
+
const currentPeriodEnd = (() => {
|
|
4366
|
+
if (data.billing_interval === "day") {
|
|
4367
|
+
return new Date(Date.now() + 1 * 24 * 60 * 60 * 1e3).toISOString();
|
|
4368
|
+
}
|
|
4369
|
+
if (data.billing_interval === "week") {
|
|
4370
|
+
return new Date(Date.now() + 7 * 24 * 60 * 60 * 1e3).toISOString();
|
|
4371
|
+
}
|
|
4372
|
+
if (data.billing_interval === "month") {
|
|
4373
|
+
return new Date(Date.now() + 30 * 24 * 60 * 60 * 1e3).toISOString();
|
|
4374
|
+
}
|
|
4375
|
+
return new Date(Date.now() + 365 * 24 * 60 * 60 * 1e3).toISOString();
|
|
4376
|
+
})();
|
|
4332
4377
|
const recurrenceCycle = intervalMap[data.billing_interval] ?? "ON_DEMAND";
|
|
4333
4378
|
const goPaySubscriptionOptions = {
|
|
4334
4379
|
payer: {
|
|
@@ -4341,13 +4386,15 @@ var GoPayProvider = class extends AbstractPayKitProvider {
|
|
|
4341
4386
|
currency: data.currency ?? "CZK",
|
|
4342
4387
|
order_number: crypto.randomBytes(8).toString("hex").slice(0, 15),
|
|
4343
4388
|
order_description: data.metadata?.description || "Subscription",
|
|
4344
|
-
items: [
|
|
4389
|
+
items: [
|
|
4390
|
+
{ name: data.item_id, amount: Number(data.amount), count: parseInt(quantity) }
|
|
4391
|
+
],
|
|
4345
4392
|
recurrence: {
|
|
4346
4393
|
recurrence_cycle: recurrenceCycle,
|
|
4347
4394
|
recurrence_period: parseInt(quantity),
|
|
4348
|
-
recurrence_date_to:
|
|
4395
|
+
recurrence_date_to: currentPeriodEnd
|
|
4349
4396
|
},
|
|
4350
|
-
callback: { return_url:
|
|
4397
|
+
callback: { return_url: success_url, notification_url: this.opts.webhookUrl }
|
|
4351
4398
|
};
|
|
4352
4399
|
const response = await this._client.post("/payments/payment", {
|
|
4353
4400
|
body: JSON.stringify(goPaySubscriptionOptions),
|
|
@@ -4392,9 +4439,12 @@ var GoPayProvider = class extends AbstractPayKitProvider {
|
|
|
4392
4439
|
return null;
|
|
4393
4440
|
};
|
|
4394
4441
|
retrieveSubscription = async (id) => {
|
|
4395
|
-
const response = await this._client.get(
|
|
4396
|
-
|
|
4397
|
-
|
|
4442
|
+
const response = await this._client.get(
|
|
4443
|
+
`/payments/payment/${id}`,
|
|
4444
|
+
{
|
|
4445
|
+
headers: await this.authController.getAuthHeaders()
|
|
4446
|
+
}
|
|
4447
|
+
);
|
|
4398
4448
|
if (!response.ok) {
|
|
4399
4449
|
throw new OperationFailedError("retrieveSubscription", this.providerName, {
|
|
4400
4450
|
cause: new Error("Failed to retrieve subscription")
|
|
@@ -4405,24 +4455,23 @@ var GoPayProvider = class extends AbstractPayKitProvider {
|
|
|
4405
4455
|
};
|
|
4406
4456
|
createPayment = async (params) => {
|
|
4407
4457
|
const { error, data } = createPaymentSchema.safeParse(params);
|
|
4408
|
-
if (error)
|
|
4458
|
+
if (error)
|
|
4459
|
+
throw ValidationError.fromZodError(error, this.providerName, "createPayment");
|
|
4409
4460
|
if (typeof data.customer == "string" || typeof data.customer === "object" && !data.customer.email) {
|
|
4410
4461
|
throw new InvalidTypeError("customer", "object (customer) with email", "string", {
|
|
4411
4462
|
provider: this.providerName,
|
|
4412
4463
|
method: "createPayment"
|
|
4413
4464
|
});
|
|
4414
4465
|
}
|
|
4415
|
-
if (!data.
|
|
4416
|
-
throw new ConfigurationError(
|
|
4417
|
-
|
|
4418
|
-
|
|
4419
|
-
|
|
4466
|
+
if (!data.item_id) {
|
|
4467
|
+
throw new ConfigurationError(
|
|
4468
|
+
"item_id is required, this is the name of the item in GoPay",
|
|
4469
|
+
{
|
|
4470
|
+
provider: this.providerName,
|
|
4471
|
+
missingKeys: ["item_id"]
|
|
4472
|
+
}
|
|
4473
|
+
);
|
|
4420
4474
|
}
|
|
4421
|
-
const { quantity } = validateRequiredKeys(
|
|
4422
|
-
["quantity"],
|
|
4423
|
-
data.provider_metadata,
|
|
4424
|
-
"The following fields must be present in the provider_metadata of createPayment: {keys}"
|
|
4425
|
-
);
|
|
4426
4475
|
const goPayRequest = {
|
|
4427
4476
|
payer: {
|
|
4428
4477
|
allowed_payment_instruments: ["PAYMENT_CARD", "BANK_ACCOUNT"],
|
|
@@ -4433,13 +4482,13 @@ var GoPayProvider = class extends AbstractPayKitProvider {
|
|
|
4433
4482
|
amount: data.amount,
|
|
4434
4483
|
currency: data.currency ?? "CZK",
|
|
4435
4484
|
order_number: crypto.randomBytes(8).toString("hex").slice(0, 15),
|
|
4436
|
-
order_description: data.
|
|
4437
|
-
items: [{ name: data.
|
|
4485
|
+
order_description: `Payment for ${data.item_id} by ${data.customer.email}`,
|
|
4486
|
+
items: [{ name: data.item_id, amount: data.amount, count: 1 }],
|
|
4438
4487
|
preauthorization: false,
|
|
4439
4488
|
// automatically captures the payment
|
|
4440
4489
|
additional_params: Object.entries({
|
|
4441
4490
|
...data.metadata,
|
|
4442
|
-
[PAYKIT_METADATA_KEY]: JSON.stringify({ itemId: data.
|
|
4491
|
+
[PAYKIT_METADATA_KEY]: JSON.stringify({ itemId: data.item_id, qty: 1 })
|
|
4443
4492
|
}).map(([name, value]) => ({
|
|
4444
4493
|
name,
|
|
4445
4494
|
value: String(value)
|
|
@@ -4458,9 +4507,12 @@ var GoPayProvider = class extends AbstractPayKitProvider {
|
|
|
4458
4507
|
return response.value;
|
|
4459
4508
|
};
|
|
4460
4509
|
retrievePayment = async (id) => {
|
|
4461
|
-
const response = await this._client.get(
|
|
4462
|
-
|
|
4463
|
-
|
|
4510
|
+
const response = await this._client.get(
|
|
4511
|
+
`/payments/payment/${id}`,
|
|
4512
|
+
{
|
|
4513
|
+
headers: await this.authController.getAuthHeaders()
|
|
4514
|
+
}
|
|
4515
|
+
);
|
|
4464
4516
|
if (!response.ok) {
|
|
4465
4517
|
throw new OperationFailedError("retrievePayment", this.providerName, {
|
|
4466
4518
|
cause: new Error("Failed to retrieve payment")
|
|
@@ -4476,9 +4528,12 @@ var GoPayProvider = class extends AbstractPayKitProvider {
|
|
|
4476
4528
|
});
|
|
4477
4529
|
};
|
|
4478
4530
|
capturePayment = async (id, params) => {
|
|
4479
|
-
const payment = await this._client.get(
|
|
4480
|
-
|
|
4481
|
-
|
|
4531
|
+
const payment = await this._client.get(
|
|
4532
|
+
`/payments/payment/${id}`,
|
|
4533
|
+
{
|
|
4534
|
+
headers: await this.authController.getAuthHeaders()
|
|
4535
|
+
}
|
|
4536
|
+
);
|
|
4482
4537
|
if (!payment.ok) {
|
|
4483
4538
|
throw new OperationFailedError("capturePayment", this.providerName, {
|
|
4484
4539
|
cause: new Error("Failed to retrieve payment")
|
|
@@ -4506,9 +4561,12 @@ var GoPayProvider = class extends AbstractPayKitProvider {
|
|
|
4506
4561
|
return paykitPayment$InboundSchema(payment.value);
|
|
4507
4562
|
};
|
|
4508
4563
|
cancelPayment = async (id) => {
|
|
4509
|
-
const response = await this._client.post(
|
|
4510
|
-
|
|
4511
|
-
|
|
4564
|
+
const response = await this._client.post(
|
|
4565
|
+
`/payments/payment/${id}/void-authorization`,
|
|
4566
|
+
{
|
|
4567
|
+
headers: await this.authController.getAuthHeaders()
|
|
4568
|
+
}
|
|
4569
|
+
);
|
|
4512
4570
|
console.dir({ response }, { depth: 100 });
|
|
4513
4571
|
const payment = await this.retrievePayment(id);
|
|
4514
4572
|
if (!payment) {
|
|
@@ -4533,7 +4591,8 @@ var GoPayProvider = class extends AbstractPayKitProvider {
|
|
|
4533
4591
|
};
|
|
4534
4592
|
async createRefund(params) {
|
|
4535
4593
|
const { error, data } = createRefundSchema.safeParse(params);
|
|
4536
|
-
if (error)
|
|
4594
|
+
if (error)
|
|
4595
|
+
throw ValidationError.fromZodError(error, this.providerName, "createRefund");
|
|
4537
4596
|
const payment = await this.retrievePayment(data.payment_id);
|
|
4538
4597
|
if (!payment) {
|
|
4539
4598
|
throw new OperationFailedError("createRefund", this.providerName, {
|
|
@@ -4579,7 +4638,9 @@ var GoPayProvider = class extends AbstractPayKitProvider {
|
|
|
4579
4638
|
})
|
|
4580
4639
|
);
|
|
4581
4640
|
if (error) {
|
|
4582
|
-
throw new WebhookError("Failed to retrieve payment", {
|
|
4641
|
+
throw new WebhookError("Failed to retrieve payment", {
|
|
4642
|
+
provider: this.providerName
|
|
4643
|
+
});
|
|
4583
4644
|
}
|
|
4584
4645
|
if (!payment.value) {
|
|
4585
4646
|
throw new WebhookError("Payment not found", { provider: this.providerName });
|
|
@@ -4738,7 +4799,13 @@ var createGopay = (config) => {
|
|
|
4738
4799
|
};
|
|
4739
4800
|
var gopay = () => {
|
|
4740
4801
|
const envVars = validateRequiredKeys(
|
|
4741
|
-
[
|
|
4802
|
+
[
|
|
4803
|
+
"GOPAY_CLIENT_ID",
|
|
4804
|
+
"GOPAY_CLIENT_SECRET",
|
|
4805
|
+
"GOPAY_GO_ID",
|
|
4806
|
+
"GOPAY_SANDBOX",
|
|
4807
|
+
"GOPAY_WEBHOOK_URL"
|
|
4808
|
+
],
|
|
4742
4809
|
process.env,
|
|
4743
4810
|
"Missing required environment variables: {keys}"
|
|
4744
4811
|
);
|
package/dist/utils/mapper.js
CHANGED
|
@@ -4,7 +4,9 @@ var core = require('@paykit-sdk/core');
|
|
|
4
4
|
|
|
5
5
|
// src/utils/mapper.ts
|
|
6
6
|
var paykitPayment$InboundSchema = (data) => {
|
|
7
|
-
const itemId = JSON.parse(
|
|
7
|
+
const itemId = JSON.parse(
|
|
8
|
+
data.additional_params?.find((param) => param.name === core.PAYKIT_METADATA_KEY)?.value ?? "{}"
|
|
9
|
+
).itemId;
|
|
8
10
|
const metadata = core.omitInternalMetadata(
|
|
9
11
|
data.additional_params?.reduce(
|
|
10
12
|
(acc, param) => {
|
|
@@ -20,13 +22,17 @@ var paykitPayment$InboundSchema = (data) => {
|
|
|
20
22
|
currency: data.currency,
|
|
21
23
|
customer: data.payer ?? { email: data.payer?.email ?? "" },
|
|
22
24
|
status: data.state,
|
|
23
|
-
|
|
25
|
+
item_id: itemId,
|
|
24
26
|
metadata
|
|
25
27
|
};
|
|
26
28
|
};
|
|
27
29
|
var paykitInvoice$InboundSchema = (data, isSubscription) => {
|
|
28
|
-
const quantity = JSON.parse(
|
|
29
|
-
|
|
30
|
+
const quantity = JSON.parse(
|
|
31
|
+
data.additional_params?.find((param) => param.name === core.PAYKIT_METADATA_KEY)?.value ?? "{}"
|
|
32
|
+
).qty;
|
|
33
|
+
const itemId = JSON.parse(
|
|
34
|
+
data.additional_params?.find((param) => param.name === core.PAYKIT_METADATA_KEY)?.value ?? "{}"
|
|
35
|
+
).itemId;
|
|
30
36
|
const status = (() => {
|
|
31
37
|
if (data.state === "PAID") return "paid";
|
|
32
38
|
return "open";
|
|
@@ -56,7 +62,9 @@ var paykitInvoice$InboundSchema = (data, isSubscription) => {
|
|
|
56
62
|
};
|
|
57
63
|
};
|
|
58
64
|
var paykitSubscription$InboundSchema = (data) => {
|
|
59
|
-
const itemId = JSON.parse(
|
|
65
|
+
const itemId = JSON.parse(
|
|
66
|
+
data.additional_params?.find((param) => param.name === core.PAYKIT_METADATA_KEY)?.value ?? "{}"
|
|
67
|
+
).itemId;
|
|
60
68
|
const billingIntervalMap = {
|
|
61
69
|
DAY: "day",
|
|
62
70
|
WEEK: "week",
|
package/dist/utils/mapper.mjs
CHANGED
|
@@ -2,7 +2,9 @@ import { PAYKIT_METADATA_KEY, omitInternalMetadata } from '@paykit-sdk/core';
|
|
|
2
2
|
|
|
3
3
|
// src/utils/mapper.ts
|
|
4
4
|
var paykitPayment$InboundSchema = (data) => {
|
|
5
|
-
const itemId = JSON.parse(
|
|
5
|
+
const itemId = JSON.parse(
|
|
6
|
+
data.additional_params?.find((param) => param.name === PAYKIT_METADATA_KEY)?.value ?? "{}"
|
|
7
|
+
).itemId;
|
|
6
8
|
const metadata = omitInternalMetadata(
|
|
7
9
|
data.additional_params?.reduce(
|
|
8
10
|
(acc, param) => {
|
|
@@ -18,13 +20,17 @@ var paykitPayment$InboundSchema = (data) => {
|
|
|
18
20
|
currency: data.currency,
|
|
19
21
|
customer: data.payer ?? { email: data.payer?.email ?? "" },
|
|
20
22
|
status: data.state,
|
|
21
|
-
|
|
23
|
+
item_id: itemId,
|
|
22
24
|
metadata
|
|
23
25
|
};
|
|
24
26
|
};
|
|
25
27
|
var paykitInvoice$InboundSchema = (data, isSubscription) => {
|
|
26
|
-
const quantity = JSON.parse(
|
|
27
|
-
|
|
28
|
+
const quantity = JSON.parse(
|
|
29
|
+
data.additional_params?.find((param) => param.name === PAYKIT_METADATA_KEY)?.value ?? "{}"
|
|
30
|
+
).qty;
|
|
31
|
+
const itemId = JSON.parse(
|
|
32
|
+
data.additional_params?.find((param) => param.name === PAYKIT_METADATA_KEY)?.value ?? "{}"
|
|
33
|
+
).itemId;
|
|
28
34
|
const status = (() => {
|
|
29
35
|
if (data.state === "PAID") return "paid";
|
|
30
36
|
return "open";
|
|
@@ -54,7 +60,9 @@ var paykitInvoice$InboundSchema = (data, isSubscription) => {
|
|
|
54
60
|
};
|
|
55
61
|
};
|
|
56
62
|
var paykitSubscription$InboundSchema = (data) => {
|
|
57
|
-
const itemId = JSON.parse(
|
|
63
|
+
const itemId = JSON.parse(
|
|
64
|
+
data.additional_params?.find((param) => param.name === PAYKIT_METADATA_KEY)?.value ?? "{}"
|
|
65
|
+
).itemId;
|
|
58
66
|
const billingIntervalMap = {
|
|
59
67
|
DAY: "day",
|
|
60
68
|
WEEK: "week",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@paykit-sdk/gopay",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.4",
|
|
4
4
|
"description": "GoPay provider for PayKit",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.mjs",
|
|
@@ -15,10 +15,6 @@
|
|
|
15
15
|
"files": [
|
|
16
16
|
"dist"
|
|
17
17
|
],
|
|
18
|
-
"scripts": {
|
|
19
|
-
"build": "tsup",
|
|
20
|
-
"prepublishOnly": "rm -rf dist && npm run build"
|
|
21
|
-
},
|
|
22
18
|
"keywords": [
|
|
23
19
|
"paykit",
|
|
24
20
|
"gopay"
|
|
@@ -26,13 +22,13 @@
|
|
|
26
22
|
"author": "Emmanuel Odii",
|
|
27
23
|
"license": "ISC",
|
|
28
24
|
"peerDependencies": {
|
|
29
|
-
"@paykit-sdk/core": ">=1.1.
|
|
25
|
+
"@paykit-sdk/core": ">=1.1.96"
|
|
30
26
|
},
|
|
31
27
|
"devDependencies": {
|
|
32
|
-
"@paykit-sdk/core": "workspace:*",
|
|
33
28
|
"tsup": "^8.5.0",
|
|
34
29
|
"typescript": "^5.9.2",
|
|
35
|
-
"zod": "^3.24.2"
|
|
30
|
+
"zod": "^3.24.2",
|
|
31
|
+
"@paykit-sdk/core": "1.1.96"
|
|
36
32
|
},
|
|
37
33
|
"publishConfig": {
|
|
38
34
|
"access": "public"
|
|
@@ -43,5 +39,8 @@
|
|
|
43
39
|
},
|
|
44
40
|
"bugs": {
|
|
45
41
|
"url": "https://github.com/usepaykit/paykit-sdk/issues"
|
|
42
|
+
},
|
|
43
|
+
"scripts": {
|
|
44
|
+
"build": "tsup"
|
|
46
45
|
}
|
|
47
|
-
}
|
|
46
|
+
}
|