UNPKG

chargebee

Version:

A library for integrating with Chargebee.

500 lines (499 loc) 21.2 kB
// Generated Zod schemas: CreditNote // Actions: create, retrieve, pdf, refund, recordRefund, voidCreditNote, list, creditNotesForCustomer, delete, removeTaxWithheldRefund, importCreditNote // Do not edit manually – regenerate via sdk-generator import { z } from 'zod'; //CreditNote.create const CreateCreditNoteLineItemsSchema = z.object({ reference_line_item_id: z.array(z.string().max(40).optional()).optional(), unit_amount: z.array(z.number().int().optional()).optional(), unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), quantity: z.array(z.number().int().optional()).optional(), quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), amount: z.array(z.number().int().optional()).optional(), date_from: z.array(z.number().int().optional()).optional(), date_to: z.array(z.number().int().optional()).optional(), description: z.array(z.string().max(250).optional()).optional(), entity_type: z .array(z .enum([ 'adhoc', 'plan_item_price', 'addon_item_price', 'charge_item_price', 'plan', 'addon', ]) .optional()) .optional(), entity_id: z.array(z.string().max(100).optional()).optional(), }); const CreateCreditNoteBodySchema = z.looseObject({ reference_invoice_id: z.string().max(50).optional(), customer_id: z.string().max(50).optional(), total: z.number().int().min(0).optional(), type: z.enum(['adjustment', 'refundable', 'store']), reason_code: z .enum([ 'product_unsatisfactory', 'service_unsatisfactory', 'order_change', 'order_cancellation', 'waiver', 'other', ]) .optional(), create_reason_code: z.string().max(100).optional(), date: z.number().int().optional(), customer_notes: z.string().max(2000).optional(), currency_code: z.string().max(3).optional(), comment: z.string().max(300).optional(), line_items: CreateCreditNoteLineItemsSchema.optional(), }); export { CreateCreditNoteBodySchema }; //CreditNote.retrieve const RetrieveCreditNoteSubscriptionIdSchema = z.object({ is: z.string().min(1).optional(), }); const RetrieveCreditNoteCustomerIdSchema = z.object({ is: z.string().min(1).optional(), }); const RetrieveCreditNoteLineItemSchema = z.object({ subscription_id: RetrieveCreditNoteSubscriptionIdSchema.optional(), customer_id: RetrieveCreditNoteCustomerIdSchema.optional(), }); const RetrieveCreditNoteBodySchema = z.looseObject({ line_items_limit: z.number().int().min(1).max(300).optional(), line_items_offset: z.string().max(1000).optional(), line_item: RetrieveCreditNoteLineItemSchema.optional(), }); export { RetrieveCreditNoteBodySchema }; //CreditNote.pdf const PdfCreditNoteBodySchema = z.looseObject({ disposition_type: z.enum(['attachment', 'inline']).optional(), }); export { PdfCreditNoteBodySchema }; //CreditNote.refund const RefundCreditNoteBodySchema = z.looseObject({ refund_amount: z.number().int().min(1).optional(), customer_notes: z.string().max(2000).optional(), refund_reason_code: z.string().max(100).optional(), }); export { RefundCreditNoteBodySchema }; //CreditNote.recordRefund const RecordRefundCreditNoteTransactionSchema = z.object({ id: z.string().max(40).optional(), amount: z.number().int().min(0).optional(), payment_method: z.enum([ 'cash', 'check', 'chargeback', 'bank_transfer', 'other', 'app_store', 'play_store', 'custom', ]), reference_number: z.string().max(100).optional(), custom_payment_method_id: z.string().max(50).optional(), date: z.number().int(), }); const RecordRefundCreditNoteBodySchema = z.looseObject({ refund_reason_code: z.string().max(100).optional(), comment: z.string().max(300).optional(), transaction: RecordRefundCreditNoteTransactionSchema.optional(), }); export { RecordRefundCreditNoteBodySchema }; //CreditNote.voidCreditNote const VoidCreditNoteCreditNoteBodySchema = z.looseObject({ comment: z.string().max(300).optional(), }); export { VoidCreditNoteCreditNoteBodySchema }; //CreditNote.list const ListCreditNoteIdSchema = z.object({ is: z.string().min(1).optional(), is_not: z.string().min(1).optional(), starts_with: z.string().min(1).optional(), in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), not_in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), }); const ListCreditNoteCustomerIdSchema = z.object({ is: z.string().min(1).optional(), is_not: z.string().min(1).optional(), starts_with: z.string().min(1).optional(), in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), not_in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), }); const ListCreditNoteSubscriptionIdSchema = z.object({ is: z.string().min(1).optional(), is_not: z.string().min(1).optional(), starts_with: z.string().min(1).optional(), is_present: z.enum(['true', 'false']).optional(), in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), not_in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), }); const ListCreditNoteReferenceInvoiceIdSchema = z.object({ is: z.string().min(1).optional(), is_not: z.string().min(1).optional(), starts_with: z.string().min(1).optional(), is_present: z.enum(['true', 'false']).optional(), in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), not_in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), }); const ListCreditNoteTypeSchema = z.object({ is: z.enum(['adjustment', 'refundable', 'store']).optional(), is_not: z.enum(['adjustment', 'refundable', 'store']).optional(), in: z.enum(['adjustment', 'refundable', 'store']).optional(), not_in: z.enum(['adjustment', 'refundable', 'store']).optional(), }); const ListCreditNoteReasonCodeSchema = z.object({ is: z .enum([ 'write_off', 'subscription_change', 'subscription_cancellation', 'subscription_pause', 'chargeback', 'product_unsatisfactory', 'service_unsatisfactory', 'order_change', 'order_cancellation', 'waiver', 'other', 'fraudulent', ]) .optional(), is_not: z .enum([ 'write_off', 'subscription_change', 'subscription_cancellation', 'subscription_pause', 'chargeback', 'product_unsatisfactory', 'service_unsatisfactory', 'order_change', 'order_cancellation', 'waiver', 'other', 'fraudulent', ]) .optional(), in: z .enum([ 'write_off', 'subscription_change', 'subscription_cancellation', 'subscription_pause', 'chargeback', 'product_unsatisfactory', 'service_unsatisfactory', 'order_change', 'order_cancellation', 'waiver', 'other', 'fraudulent', ]) .optional(), not_in: z .enum([ 'write_off', 'subscription_change', 'subscription_cancellation', 'subscription_pause', 'chargeback', 'product_unsatisfactory', 'service_unsatisfactory', 'order_change', 'order_cancellation', 'waiver', 'other', 'fraudulent', ]) .optional(), }); const ListCreditNoteCreateReasonCodeSchema = z.object({ is: z.string().min(1).optional(), is_not: z.string().min(1).optional(), starts_with: z.string().min(1).optional(), in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), not_in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), }); const ListCreditNoteStatusSchema = z.object({ is: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), is_not: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), in: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), not_in: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), }); const ListCreditNoteDateSchema = z.object({ after: z.string().regex(RegExp('^\\d{10}$')).optional(), before: z.string().regex(RegExp('^\\d{10}$')).optional(), on: z.string().regex(RegExp('^\\d{10}$')).optional(), between: z.string().regex(RegExp('^\\[\\d{10},\\d{10}\\]$')).optional(), }); const ListCreditNoteTotalSchema = z.object({ is: z.string().regex(RegExp('^-?\\d+$')).optional(), is_not: z.string().regex(RegExp('^-?\\d+$')).optional(), lt: z.string().regex(RegExp('^-?\\d+$')).optional(), lte: z.string().regex(RegExp('^-?\\d+$')).optional(), gt: z.string().regex(RegExp('^-?\\d+$')).optional(), gte: z.string().regex(RegExp('^-?\\d+$')).optional(), between: z.string().regex(RegExp('^\\[-?\\d+,-?\\d+\\]$')).optional(), }); const ListCreditNotePriceTypeSchema = z.object({ is: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), is_not: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), in: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), not_in: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), }); const ListCreditNoteAmountAllocatedSchema = z.object({ is: z.string().regex(RegExp('^-?\\d+$')).optional(), is_not: z.string().regex(RegExp('^-?\\d+$')).optional(), lt: z.string().regex(RegExp('^-?\\d+$')).optional(), lte: z.string().regex(RegExp('^-?\\d+$')).optional(), gt: z.string().regex(RegExp('^-?\\d+$')).optional(), gte: z.string().regex(RegExp('^-?\\d+$')).optional(), between: z.string().regex(RegExp('^\\[-?\\d+,-?\\d+\\]$')).optional(), }); const ListCreditNoteAmountRefundedSchema = z.object({ is: z.string().regex(RegExp('^-?\\d+$')).optional(), is_not: z.string().regex(RegExp('^-?\\d+$')).optional(), lt: z.string().regex(RegExp('^-?\\d+$')).optional(), lte: z.string().regex(RegExp('^-?\\d+$')).optional(), gt: z.string().regex(RegExp('^-?\\d+$')).optional(), gte: z.string().regex(RegExp('^-?\\d+$')).optional(), between: z.string().regex(RegExp('^\\[-?\\d+,-?\\d+\\]$')).optional(), }); const ListCreditNoteAmountAvailableSchema = z.object({ is: z.string().regex(RegExp('^-?\\d+$')).optional(), is_not: z.string().regex(RegExp('^-?\\d+$')).optional(), lt: z.string().regex(RegExp('^-?\\d+$')).optional(), lte: z.string().regex(RegExp('^-?\\d+$')).optional(), gt: z.string().regex(RegExp('^-?\\d+$')).optional(), gte: z.string().regex(RegExp('^-?\\d+$')).optional(), between: z.string().regex(RegExp('^\\[-?\\d+,-?\\d+\\]$')).optional(), }); const ListCreditNoteVoidedAtSchema = z.object({ after: z.string().regex(RegExp('^\\d{10}$')).optional(), before: z.string().regex(RegExp('^\\d{10}$')).optional(), on: z.string().regex(RegExp('^\\d{10}$')).optional(), between: z.string().regex(RegExp('^\\[\\d{10},\\d{10}\\]$')).optional(), }); const ListCreditNoteUpdatedAtSchema = z.object({ after: z.string().regex(RegExp('^\\d{10}$')).optional(), before: z.string().regex(RegExp('^\\d{10}$')).optional(), on: z.string().regex(RegExp('^\\d{10}$')).optional(), between: z.string().regex(RegExp('^\\[\\d{10},\\d{10}\\]$')).optional(), }); const ListCreditNoteSortBySchema = z.looseObject({ asc: z.enum(['date']).optional(), desc: z.enum(['date']).optional(), }); const ListCreditNoteChannelSchema = z.object({ is: z.enum(['web', 'app_store', 'play_store']).optional(), is_not: z.enum(['web', 'app_store', 'play_store']).optional(), in: z.enum(['web', 'app_store', 'play_store']).optional(), not_in: z.enum(['web', 'app_store', 'play_store']).optional(), }); const ListCreditNoteEinvoiceSchema = z.object({ status: ListCreditNoteStatusSchema.optional(), }); const ListCreditNoteBodySchema = z.looseObject({ limit: z.number().int().min(1).max(100).optional(), offset: z.string().max(1000).optional(), include_deleted: z.boolean().default(false).optional(), id: ListCreditNoteIdSchema.optional(), customer_id: ListCreditNoteCustomerIdSchema.optional(), subscription_id: ListCreditNoteSubscriptionIdSchema.optional(), reference_invoice_id: ListCreditNoteReferenceInvoiceIdSchema.optional(), type: ListCreditNoteTypeSchema.optional(), reason_code: ListCreditNoteReasonCodeSchema.optional(), create_reason_code: ListCreditNoteCreateReasonCodeSchema.optional(), status: ListCreditNoteStatusSchema.optional(), date: ListCreditNoteDateSchema.optional(), total: ListCreditNoteTotalSchema.optional(), price_type: ListCreditNotePriceTypeSchema.optional(), amount_allocated: ListCreditNoteAmountAllocatedSchema.optional(), amount_refunded: ListCreditNoteAmountRefundedSchema.optional(), amount_available: ListCreditNoteAmountAvailableSchema.optional(), voided_at: ListCreditNoteVoidedAtSchema.optional(), updated_at: ListCreditNoteUpdatedAtSchema.optional(), sort_by: ListCreditNoteSortBySchema.optional(), channel: ListCreditNoteChannelSchema.optional(), einvoice: ListCreditNoteEinvoiceSchema.optional(), }); export { ListCreditNoteBodySchema }; //CreditNote.creditNotesForCustomer const CreditNotesForCustomerCreditNoteBodySchema = z.looseObject({ limit: z.number().int().min(1).max(100).optional(), offset: z.string().max(1000).optional(), }); export { CreditNotesForCustomerCreditNoteBodySchema }; //CreditNote.delete const DeleteCreditNoteBodySchema = z.looseObject({ comment: z.string().max(300).optional(), }); export { DeleteCreditNoteBodySchema }; //CreditNote.removeTaxWithheldRefund const RemoveTaxWithheldRefundCreditNoteTaxWithheldSchema = z.object({ id: z.string().max(40), }); const RemoveTaxWithheldRefundCreditNoteBodySchema = z.looseObject({ tax_withheld: RemoveTaxWithheldRefundCreditNoteTaxWithheldSchema.optional(), }); export { RemoveTaxWithheldRefundCreditNoteBodySchema }; //CreditNote.importCreditNote const ImportCreditNoteCreditNoteLineItemsSchema = z.object({ reference_line_item_id: z.array(z.string().max(40).optional()).optional(), id: z.array(z.string().max(40).optional()).optional(), date_from: z.array(z.number().int().optional()).optional(), date_to: z.array(z.number().int().optional()).optional(), subscription_id: z.array(z.string().max(50).optional()).optional(), description: z.array(z.string().max(250).optional()), unit_amount: z.array(z.number().int().optional()).optional(), quantity: z.array(z.number().int().optional()).optional(), amount: z.array(z.number().int().optional()).optional(), unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), amount_in_decimal: z.array(z.string().max(39).optional()).optional(), entity_type: z .array(z .enum([ 'adhoc', 'plan_item_price', 'addon_item_price', 'charge_item_price', 'plan_setup', 'plan', 'addon', ]) .optional()) .optional(), entity_id: z.array(z.string().max(100).optional()).optional(), item_level_discount1_entity_id: z .array(z.string().max(100).optional()) .optional(), item_level_discount1_amount: z .array(z.number().int().min(0).optional()) .optional(), item_level_discount2_entity_id: z .array(z.string().max(100).optional()) .optional(), item_level_discount2_amount: z .array(z.number().int().min(0).optional()) .optional(), tax1_name: z.array(z.string().max(50).optional()).optional(), tax1_amount: z.array(z.number().int().min(0).optional()).optional(), tax2_name: z.array(z.string().max(50).optional()).optional(), tax2_amount: z.array(z.number().int().min(0).optional()).optional(), tax3_name: z.array(z.string().max(50).optional()).optional(), tax3_amount: z.array(z.number().int().min(0).optional()).optional(), tax4_name: z.array(z.string().max(50).optional()).optional(), tax4_amount: z.array(z.number().int().min(0).optional()).optional(), tax5_name: z.array(z.string().max(50).optional()).optional(), tax5_amount: z.array(z.number().int().min(0).optional()).optional(), tax6_name: z.array(z.string().max(50).optional()).optional(), tax6_amount: z.array(z.number().int().min(0).optional()).optional(), tax7_name: z.array(z.string().max(50).optional()).optional(), tax7_amount: z.array(z.number().int().min(0).optional()).optional(), tax8_name: z.array(z.string().max(50).optional()).optional(), tax8_amount: z.array(z.number().int().min(0).optional()).optional(), tax9_name: z.array(z.string().max(50).optional()).optional(), tax9_amount: z.array(z.number().int().min(0).optional()).optional(), tax10_name: z.array(z.string().max(50).optional()).optional(), tax10_amount: z.array(z.number().int().min(0).optional()).optional(), }); const ImportCreditNoteCreditNoteLineItemTiersSchema = z.object({ line_item_id: z.array(z.string().max(40).optional()), starting_unit: z.array(z.number().int().min(0).optional()).optional(), ending_unit: z.array(z.number().int().optional()).optional(), quantity_used: z.array(z.number().int().min(0).optional()).optional(), unit_amount: z.array(z.number().int().min(0).optional()).optional(), starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), quantity_used_in_decimal: z.array(z.string().max(33).optional()).optional(), unit_amount_in_decimal: z.array(z.string().max(40).optional()).optional(), }); const ImportCreditNoteCreditNoteDiscountsSchema = z.object({ line_item_id: z.array(z.string().max(40).optional()).optional(), entity_type: z.array(z .enum([ 'item_level_coupon', 'document_level_coupon', 'promotional_credits', 'item_level_discount', 'document_level_discount', ]) .optional()), entity_id: z.array(z.string().max(100).optional()).optional(), description: z.array(z.string().max(250).optional()).optional(), amount: z.array(z.number().int().min(0).optional()), }); const ImportCreditNoteCreditNoteTaxesSchema = z.object({ name: z.array(z.string().max(100).optional()), rate: z.array(z.number().min(0).max(100).optional()), amount: z.array(z.number().int().min(0).optional()).optional(), description: z.array(z.string().max(50).optional()).optional(), juris_type: z .array(z .enum([ 'country', 'federal', 'state', 'county', 'city', 'special', 'unincorporated', 'other', ]) .optional()) .optional(), juris_name: z.array(z.string().max(250).optional()).optional(), juris_code: z.array(z.string().max(250).optional()).optional(), }); const ImportCreditNoteCreditNoteAllocationsSchema = z.object({ invoice_id: z.array(z.string().max(50).optional()), allocated_amount: z.array(z.number().int().min(1).optional()), allocated_at: z.array(z.number().int().optional()), }); const ImportCreditNoteCreditNoteLinkedRefundsSchema = z.object({ id: z.array(z.string().max(40).optional()).optional(), amount: z.array(z.number().int().min(1).optional()), payment_method: z.array(z .enum([ 'cash', 'check', 'bank_transfer', 'other', 'app_store', 'play_store', 'custom', ]) .optional()), date: z.array(z.number().int().optional()), reference_number: z.array(z.string().max(100).min(1).optional()).optional(), }); const ImportCreditNoteCreditNoteBodySchema = z.looseObject({ id: z.string().max(50), customer_id: z.string().max(50).optional(), subscription_id: z.string().max(50).optional(), reference_invoice_id: z.string().max(50), type: z.enum(['adjustment', 'refundable', 'store']), currency_code: z.string().max(3).optional(), create_reason_code: z.string().max(100), date: z.number().int(), status: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), total: z.number().int().min(0).optional(), refunded_at: z.number().int().optional(), voided_at: z.number().int().optional(), sub_total: z.number().int().min(0).optional(), round_off_amount: z.number().int().min(-99).max(99).optional(), fractional_correction: z.number().int().min(-50000).max(50000).optional(), vat_number_prefix: z.string().max(10).optional(), line_items: ImportCreditNoteCreditNoteLineItemsSchema.optional(), line_item_tiers: ImportCreditNoteCreditNoteLineItemTiersSchema.optional(), discounts: ImportCreditNoteCreditNoteDiscountsSchema.optional(), taxes: ImportCreditNoteCreditNoteTaxesSchema.optional(), allocations: ImportCreditNoteCreditNoteAllocationsSchema.optional(), linked_refunds: ImportCreditNoteCreditNoteLinkedRefundsSchema.optional(), }); export { ImportCreditNoteCreditNoteBodySchema };