sdk-node-apis-efi
Version:
Module for integration with Efi Bank API
478 lines (477 loc) • 19.9 kB
JavaScript
"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();