UNPKG

sdk-node-apis-efi

Version:

Module for integration with Efi Bank API

478 lines (477 loc) 19.9 kB
"use strict"; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __importStar = (this && this.__importStar) || (function () { var ownKeys = function(o) { ownKeys = Object.getOwnPropertyNames || function (o) { var ar = []; for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k; return ar; }; return ownKeys(o); }; return function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); __setModuleDefault(result, mod); return result; }; })(); Object.defineProperty(exports, "__esModule", { value: true }); exports.CreateCarnetHistoryParamsSchema = exports.SendCarnetParcelEmailBodySchema = exports.SendCarnetParcelEmailParamsSchema = exports.SendCarnetEmailBodySchema = exports.SendCarnetEmailParamsSchema = exports.CancelCarnetParcelParamsSchema = exports.CancelCarnetParamsSchema = exports.UpdateCarnetParcelsBodySchema = exports.UpdateCarnetParcelsParamsSchema = exports.UpdateCarnetParcelBodySchema = exports.UpdateCarnetParcelParamsSchema = exports.UpdateCarnetMetadataBodySchema = exports.UpdateCarnetMetadataParamsSchema = exports.DetailCarnetParamsSchema = exports.CreateCarnetBodySchema = exports.GetInstallmentsParamsSchema = exports.RefundCardBodySchema = exports.RefundCardParamsSchema = exports.CardPaymentRetryBodySchema = exports.CardPaymentRetryParamsSchema = exports.SettleChargeParamsSchema = exports.DefineBalanceSheetBilletBodySchema = exports.DefineBalanceSheetBilletParamsSchema = exports.CreateChargeHistoryBodySchema = exports.CreateChargeHistoryParamsSchema = exports.SendBilletEmailBodySchema = exports.SendBilletEmailParamsSchema = exports.CancelChargeParamsSchema = exports.UpdateBilletBodySchema = exports.UpdateBilletParamsSchema = exports.UpdateChargeMetadataBodySchema = exports.UpdateChargeMetadataParamsSchema = exports.ListChargesParamsSchema = exports.ChargeListStatusSchema = exports.DetailChargeParamsSchema = exports.DefinePayMethodBodySchema = exports.DefinePayMethodParamsSchema = exports.CreateOneStepChargeBodySchema = exports.CreateChargeBodySchema = exports.ChargePaymentSchema = exports.CreditCardPaymentSchema = exports.BankingBilletPaymentSchema = exports.ChargeInterestSchema = exports.ChargeConditionalDiscountSchema = exports.ChargeDiscountSchema = exports.ChargeCustomerSchema = exports.ChargeAddressSchema = exports.ChargeMetadataSchema = exports.ChargeShippingSchema = exports.ChargeItemSchema = void 0; exports.CreateChargeCardBodySchema = exports.ChargeCardCustomerSchema = exports.ChargeCardItemSchema = exports.GetNotificationParamsSchema = exports.SendLinkEmailBodySchema = exports.SendLinkEmailParamsSchema = exports.UpdateChargeLinkBodySchema = exports.UpdateChargeLinkParamsSchema = exports.DefineLinkPayMethodBodySchema = exports.DefineLinkPayMethodParamsSchema = exports.CreateOneStepSubscriptionLinkBodySchema = exports.CreateOneStepLinkBodySchema = exports.LinkSettingsSchema = exports.SendSubscriptionLinkEmailBodySchema = exports.SendSubscriptionLinkEmailParamsSchema = exports.CreateSubscriptionHistoryBodySchema = exports.CreateSubscriptionHistoryParamsSchema = exports.CancelSubscriptionParamsSchema = exports.UpdateSubscriptionBodySchema = exports.UpdateSubscriptionParamsSchema = exports.UpdateSubscriptionMetadataBodySchema = exports.UpdateSubscriptionMetadataParamsSchema = exports.CreateOneStepSubscriptionLinkParamsSchema = exports.DetailSubscriptionParamsSchema = exports.DefineSubscriptionPayMethodBodySchema = exports.DefineSubscriptionPayMethodParamsSchema = exports.CreateOneStepSubscriptionBodySchema = exports.CreateOneStepSubscriptionParamsSchema = exports.CreateSubscriptionBodySchema = exports.CreateSubscriptionParamsSchema = exports.DeletePlanParamsSchema = exports.UpdatePlanBodySchema = exports.UpdatePlanParamsSchema = exports.ListPlansParamsSchema = exports.CreatePlanBodySchema = exports.SettleCarnetParcelParamsSchema = exports.SettleCarnetParamsSchema = exports.CreateCarnetHistoryBodySchema = void 0; const z = __importStar(require("zod")); const UfSchema = z.enum([ 'AC', 'AL', 'AP', 'AM', 'BA', 'CE', 'DF', 'ES', 'GO', 'MA', 'MT', 'MS', 'MG', 'PA', 'PB', 'PR', 'PE', 'PI', 'RJ', 'RN', 'RS', 'RO', 'RR', 'SC', 'SP', 'SE', 'TO', ]); const NumberIdParamsSchema = z.object({ id: z.number().int() }).strict(); const ChargeEmailBodySchema = z.object({ email: z.string() }).strict(); const ChargeHistoryBodySchema = z.object({ description: z.string() }).strict(); exports.ChargeItemSchema = z .object({ name: z.string(), value: z.number().int(), amount: z.number().int(), marketplace: z .object({ mode: z.union([z.literal(1), z.literal(2)]).optional(), payee_code: z.string().optional(), percentage: z.number().optional(), fixed: z.number().optional(), repasses: z .array(z .object({ payee_code: z.string(), percentage: z.number().optional(), fixed: z.number().optional(), }) .strict()) .optional(), }) .strict() .optional(), }) .strict(); exports.ChargeShippingSchema = z .object({ name: z.string(), value: z.number().int(), payee_code: z.string().optional(), }) .strict(); exports.ChargeMetadataSchema = z .object({ custom_id: z.string().optional(), notification_url: z.string().optional(), }) .strict(); exports.ChargeAddressSchema = z .object({ street: z.string(), number: z.union([z.string(), z.number()]), neighborhood: z.string(), zipcode: z.string(), city: z.string(), complement: z.string().nullable().optional(), state: UfSchema.or(z.string()), }) .strict(); exports.ChargeCustomerSchema = z .object({ name: z.string().optional(), cpf: z.string().optional(), email: z.string().optional(), phone_number: z.string().optional(), birth: z.string().optional(), address: exports.ChargeAddressSchema.optional(), juridical_person: z .object({ corporate_name: z.string(), cnpj: z.string(), }) .strict() .optional(), }) .strict(); exports.ChargeDiscountSchema = z .object({ type: z.enum(['percentage', 'currency']), value: z.number().int(), }) .strict(); exports.ChargeConditionalDiscountSchema = exports.ChargeDiscountSchema.extend({ until_date: z.string(), }); exports.ChargeInterestSchema = z.union([ z.number().int(), z .object({ value: z.number().int(), type: z.enum(['monthly', 'daily']), }) .strict(), ]); exports.BankingBilletPaymentSchema = z .object({ banking_billet: z .object({ customer: exports.ChargeCustomerSchema, expire_at: z.string(), discount: exports.ChargeDiscountSchema.optional(), conditional_discount: exports.ChargeConditionalDiscountSchema.optional(), configurations: z .object({ days_to_write_off: z.number().int().optional(), fine: z.number().int().optional(), interest: exports.ChargeInterestSchema.optional(), }) .strict() .optional(), message: z.string().optional(), }) .strict(), }) .strict(); exports.CreditCardPaymentSchema = z .object({ credit_card: z .object({ customer: exports.ChargeCustomerSchema.extend({ email: z.string() }), installments: z.number().int().optional(), discount: exports.ChargeDiscountSchema.optional(), billing_address: exports.ChargeAddressSchema.optional(), payment_token: z.string(), message: z.string().optional(), trial_days: z.number().int().optional(), }) .strict(), }) .strict(); exports.ChargePaymentSchema = z.union([ exports.BankingBilletPaymentSchema.extend({ credit_card: z.never().optional() }).strict(), exports.CreditCardPaymentSchema.extend({ banking_billet: z.never().optional() }).strict(), ]); exports.CreateChargeBodySchema = z .object({ items: z.array(exports.ChargeItemSchema), shippings: z.array(exports.ChargeShippingSchema).optional(), metadata: exports.ChargeMetadataSchema.optional(), }) .strict(); exports.CreateOneStepChargeBodySchema = exports.CreateChargeBodySchema.extend({ payment: exports.ChargePaymentSchema, }).strict(); exports.DefinePayMethodParamsSchema = NumberIdParamsSchema; exports.DefinePayMethodBodySchema = z.object({ payment: exports.ChargePaymentSchema }).strict(); exports.DetailChargeParamsSchema = NumberIdParamsSchema; exports.ChargeListStatusSchema = z.enum([ 'new', 'waiting', 'link', 'paid', 'unpaid', 'canceled', 'identified', 'settled', 'expired', ]); exports.ListChargesParamsSchema = z .object({ charge_type: z.enum(['billet', 'carnet', 'subscription', 'card']), begin_date: z.string(), end_date: z.string(), date_of: z.enum(['creation', 'payment', 'expired']).optional(), status: exports.ChargeListStatusSchema.optional(), customer_document: z.string().optional(), custom_id: z.string().optional(), value: z.number().int().optional(), limit: z.number().int().optional(), page: z.number().int().optional(), }) .strict(); exports.UpdateChargeMetadataParamsSchema = NumberIdParamsSchema; exports.UpdateChargeMetadataBodySchema = exports.ChargeMetadataSchema; exports.UpdateBilletParamsSchema = NumberIdParamsSchema; exports.UpdateBilletBodySchema = z.object({ expire_at: z.string() }).strict(); exports.CancelChargeParamsSchema = NumberIdParamsSchema; exports.SendBilletEmailParamsSchema = NumberIdParamsSchema; exports.SendBilletEmailBodySchema = ChargeEmailBodySchema; exports.CreateChargeHistoryParamsSchema = NumberIdParamsSchema; exports.CreateChargeHistoryBodySchema = ChargeHistoryBodySchema; exports.DefineBalanceSheetBilletParamsSchema = NumberIdParamsSchema; exports.DefineBalanceSheetBilletBodySchema = z .object({ title: z.string(), body: z.record(z.string(), z.unknown()), }) .strict(); exports.SettleChargeParamsSchema = NumberIdParamsSchema; exports.CardPaymentRetryParamsSchema = NumberIdParamsSchema; exports.CardPaymentRetryBodySchema = exports.DefinePayMethodBodySchema; exports.RefundCardParamsSchema = NumberIdParamsSchema; exports.RefundCardBodySchema = z.object({ amount: z.number().int().optional() }).strict(); exports.GetInstallmentsParamsSchema = z .object({ total: z.number().int(), brand: z.enum(['visa', 'mastercard', 'amex', 'elo']).or(z.string()), }) .strict(); exports.CreateCarnetBodySchema = z .object({ items: z.array(exports.ChargeItemSchema), customer: exports.ChargeCustomerSchema, expire_at: z.string(), repeats: z.number().int(), split_items: z.boolean().optional(), configurations: z .object({ fine: z.number().int().optional(), interest: exports.ChargeInterestSchema.optional(), }) .strict() .optional(), discount: exports.ChargeDiscountSchema.optional(), conditional_discount: exports.ChargeConditionalDiscountSchema.optional(), message: z.string().optional(), metadata: exports.ChargeMetadataSchema.optional(), }) .strict(); exports.DetailCarnetParamsSchema = NumberIdParamsSchema; exports.UpdateCarnetMetadataParamsSchema = NumberIdParamsSchema; exports.UpdateCarnetMetadataBodySchema = exports.ChargeMetadataSchema; exports.UpdateCarnetParcelParamsSchema = z.object({ id: z.number().int(), parcel: z.number().int() }).strict(); exports.UpdateCarnetParcelBodySchema = z.object({ expire_at: z.string() }).strict(); exports.UpdateCarnetParcelsParamsSchema = NumberIdParamsSchema; exports.UpdateCarnetParcelsBodySchema = z .object({ parcels: z.array(z .object({ parcel: z.number().int(), expire_at: z.string(), }) .strict()), }) .strict(); exports.CancelCarnetParamsSchema = NumberIdParamsSchema; exports.CancelCarnetParcelParamsSchema = exports.UpdateCarnetParcelParamsSchema; exports.SendCarnetEmailParamsSchema = NumberIdParamsSchema; exports.SendCarnetEmailBodySchema = ChargeEmailBodySchema; exports.SendCarnetParcelEmailParamsSchema = exports.UpdateCarnetParcelParamsSchema; exports.SendCarnetParcelEmailBodySchema = ChargeEmailBodySchema; exports.CreateCarnetHistoryParamsSchema = NumberIdParamsSchema; exports.CreateCarnetHistoryBodySchema = ChargeHistoryBodySchema; exports.SettleCarnetParamsSchema = NumberIdParamsSchema; exports.SettleCarnetParcelParamsSchema = exports.UpdateCarnetParcelParamsSchema; exports.CreatePlanBodySchema = z .object({ name: z.string(), interval: z.number().int(), repeats: z.number().int().nullable().optional(), }) .strict(); exports.ListPlansParamsSchema = z .object({ name: z.string().optional(), limit: z.number().int().optional(), offset: z.number().int().optional(), }) .strict(); exports.UpdatePlanParamsSchema = NumberIdParamsSchema; exports.UpdatePlanBodySchema = z.object({ name: z.string() }).strict(); exports.DeletePlanParamsSchema = NumberIdParamsSchema; exports.CreateSubscriptionParamsSchema = NumberIdParamsSchema; exports.CreateSubscriptionBodySchema = exports.CreateChargeBodySchema; exports.CreateOneStepSubscriptionParamsSchema = NumberIdParamsSchema; exports.CreateOneStepSubscriptionBodySchema = exports.CreateOneStepChargeBodySchema; exports.DefineSubscriptionPayMethodParamsSchema = NumberIdParamsSchema; exports.DefineSubscriptionPayMethodBodySchema = exports.DefinePayMethodBodySchema; exports.DetailSubscriptionParamsSchema = NumberIdParamsSchema; exports.CreateOneStepSubscriptionLinkParamsSchema = NumberIdParamsSchema; exports.UpdateSubscriptionMetadataParamsSchema = NumberIdParamsSchema; exports.UpdateSubscriptionMetadataBodySchema = exports.ChargeMetadataSchema; exports.UpdateSubscriptionParamsSchema = NumberIdParamsSchema; exports.UpdateSubscriptionBodySchema = z .object({ plan_id: z.number().int().optional(), customer: z .object({ email: z.email().optional(), phone_number: z.string().optional(), }) .strict() .optional(), items: z.array(exports.ChargeItemSchema).optional(), shippings: z.array(exports.ChargeShippingSchema).optional(), payment_token: z.string().regex(/^[a-fA-F0-9]{40}$/).optional(), }) .strict(); exports.CancelSubscriptionParamsSchema = NumberIdParamsSchema; exports.CreateSubscriptionHistoryParamsSchema = NumberIdParamsSchema; exports.CreateSubscriptionHistoryBodySchema = ChargeHistoryBodySchema; exports.SendSubscriptionLinkEmailParamsSchema = NumberIdParamsSchema; exports.SendSubscriptionLinkEmailBodySchema = ChargeEmailBodySchema; exports.LinkSettingsSchema = z .object({ billet_discount: z.number().int().optional(), conditional_discount: exports.ChargeConditionalDiscountSchema.optional(), card_discount: z.number().int().optional(), message: z.string().optional(), expire_at: z.string().optional(), request_delivery_address: z.boolean().optional(), payment_method: z.enum(['banking_billet', 'credit_card', 'all']).optional(), }) .strict(); exports.CreateOneStepLinkBodySchema = exports.CreateChargeBodySchema.extend({ settings: exports.LinkSettingsSchema.optional(), }).strict(); exports.CreateOneStepSubscriptionLinkBodySchema = exports.CreateOneStepLinkBodySchema; exports.DefineLinkPayMethodParamsSchema = NumberIdParamsSchema; exports.DefineLinkPayMethodBodySchema = exports.LinkSettingsSchema; exports.UpdateChargeLinkParamsSchema = NumberIdParamsSchema; exports.UpdateChargeLinkBodySchema = exports.LinkSettingsSchema; exports.SendLinkEmailParamsSchema = NumberIdParamsSchema; exports.SendLinkEmailBodySchema = ChargeEmailBodySchema; exports.GetNotificationParamsSchema = z.object({ token: z.string() }).strict(); const ChargeCardAddressSchema = z .object({ street: z.string(), number: z.string(), neighborhood: z.string(), zipcode: z.string().regex(/^\d{8}$/), city: z.string(), complement: z.string().nullable().optional(), state: UfSchema, }) .strict(); const ChargeCardRepasseSchema = z.union([ z .object({ payee_code: z.string().regex(/^[a-fA-F0-9]{32}$/), percentage: z.number().int().min(0).max(10000), fixed: z.never().optional(), }) .strict(), z .object({ payee_code: z.string().regex(/^[a-fA-F0-9]{32}$/), fixed: z.number().int().nonnegative(), percentage: z.never().optional(), }) .strict(), ]); const ChargeCardShippingSchema = z .object({ name: z.string().max(255), value: z.number().int().nonnegative(), payee_code: z.string().regex(/^[a-fA-F0-9]{32}$/).optional(), }) .strict(); exports.ChargeCardItemSchema = z .object({ name: z.string().min(1).max(255).regex(/^[^<>]+$/), value: z.number().int().nonnegative(), amount: z.number().int().positive().optional(), marketplace: z .object({ mode: z.union([z.literal(1), z.literal(2)]).optional(), repasses: z.array(ChargeCardRepasseSchema).min(1), }) .strict() .optional(), }) .strict(); const ChargeCardCustomerBaseSchema = z.object({ email: z.email().max(255), phone_number: z.string().regex(/^[1-9]{2}9?[0-9]{8}$/), birth: z.iso.date().optional(), address: ChargeCardAddressSchema.optional(), }); exports.ChargeCardCustomerSchema = z.union([ ChargeCardCustomerBaseSchema.extend({ name: z .string() .min(1) .max(255) .regex(/^(?!.*[\u0600-\u06FF])[ ]*(.+[ ]+)+.+[ ]*$/), cpf: z.string().regex(/^\d{11}$/), juridical_person: z.never().optional(), }).strict(), ChargeCardCustomerBaseSchema.extend({ name: z.never().optional(), cpf: z.never().optional(), juridical_person: z .object({ corporate_name: z.string().min(1).max(255), cnpj: z.string().regex(/^\d{14}$/), }) .strict(), }).strict(), ]); exports.CreateChargeCardBodySchema = z .object({ items: z.array(exports.ChargeCardItemSchema).min(1), shippings: z.array(ChargeCardShippingSchema).min(1).optional(), customer: exports.ChargeCardCustomerSchema, installments: z.number().int().min(1).max(12).optional(), billing_address: ChargeCardAddressSchema.optional(), payment_token: z.string().regex(/^[a-fA-F0-9]{40}$/), tds_info: z .object({ tds_identifier: z.uuid(), challenge_callback_url: z.url().regex(/^https?:\/\//), }) .strict(), discount: z .object({ type: z.enum(['currency', 'percentage']), value: z.number().int().positive(), }) .strict() .optional(), message: z .string() .regex(/^[^\n]{0,100}(\n[^\n]{0,100}){0,3}$/) .optional(), }) .strict();