@sastatesla/payment-gateway-sdk
Version:
A unified interface for integrating multiple payment providers (e.g., Razorpay, Cashfree) in your Node.js application.
52 lines • 2.39 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.paymentManagerConfigSchema = exports.paymentStatusSchema = exports.refundStatusSchema = exports.settlementDetailsSchema = exports.listAllPaymentsSchema = exports.listUserPaymentsSchema = exports.refundSchema = exports.chargeSchema = void 0;
const joi_1 = __importDefault(require("joi"));
exports.chargeSchema = joi_1.default.object({
amount: joi_1.default.number().integer().min(1).required(),
currency: joi_1.default.string().length(3).uppercase().required(),
source: joi_1.default.string().required(),
metadata: joi_1.default.object().optional()
});
exports.refundSchema = joi_1.default.object({
transactionId: joi_1.default.string().required(),
amount: joi_1.default.number().integer().min(1).optional(),
currency: joi_1.default.string().length(3).uppercase().optional(),
note: joi_1.default.string().max(500).optional()
});
exports.listUserPaymentsSchema = joi_1.default.object({
userId: joi_1.default.string().required(),
filters: joi_1.default.object({
status: joi_1.default.string()
.valid("created", "authorized", "captured", "failed", "refunded")
.optional(),
fromDate: joi_1.default.date().iso().optional(),
toDate: joi_1.default.date().iso().optional()
}).optional()
});
exports.listAllPaymentsSchema = joi_1.default.object({
filters: joi_1.default.object({
status: joi_1.default.string()
.valid("created", "authorized", "captured", "failed", "refunded")
.optional(),
fromDate: joi_1.default.date().iso().optional(),
toDate: joi_1.default.date().iso().optional()
}).optional()
});
exports.settlementDetailsSchema = joi_1.default.object({
settlementId: joi_1.default.string().required()
});
exports.refundStatusSchema = joi_1.default.object({
refundId: joi_1.default.string().required()
});
exports.paymentStatusSchema = joi_1.default.object({
transactionId: joi_1.default.string().required()
});
exports.paymentManagerConfigSchema = joi_1.default.object({
provider: joi_1.default.string().required(),
config: joi_1.default.object().required()
});
//# sourceMappingURL=validation.js.map