znmi
Version:
A simple and easy TypeScript wrapper around NMI's API
1,134 lines (1,132 loc) • 685 kB
TypeScript
import { z } from 'zod';
declare const TRANSACTION_URL = "https://secure.nmi.com/api/transact.php";
declare const TransactionTypeSchema: z.ZodEnum<["sale", "auth", "credit", "validate", "offline", "complete_partial_payment"]>;
declare const ProductDataSchema: z.ZodObject<{
item_product_code: z.ZodString;
item_description: z.ZodString;
item_commodity_code: z.ZodString;
item_unit_of_measure: z.ZodString;
item_unit_cost: z.ZodNumber;
item_quantity: z.ZodNumber;
item_total_amount: z.ZodNumber;
item_tax_amount: z.ZodNumber;
item_tax_rate: z.ZodNumber;
item_discount_amount: z.ZodNumber;
item_tax_type: z.ZodString;
item_alternate_tax_id: z.ZodString;
}, "strip", z.ZodTypeAny, {
item_product_code: string;
item_description: string;
item_commodity_code: string;
item_unit_of_measure: string;
item_unit_cost: number;
item_quantity: number;
item_total_amount: number;
item_tax_amount: number;
item_tax_rate: number;
item_discount_amount: number;
item_tax_type: string;
item_alternate_tax_id: string;
}, {
item_product_code: string;
item_description: string;
item_commodity_code: string;
item_unit_of_measure: string;
item_unit_cost: number;
item_quantity: number;
item_total_amount: number;
item_tax_amount: number;
item_tax_rate: number;
item_discount_amount: number;
item_tax_type: string;
item_alternate_tax_id: string;
}>;
declare const TransactionSchema: z.ZodObject<{
type: z.ZodEnum<["sale", "auth", "credit", "validate", "offline", "complete_partial_payment"]>;
payment_token: z.ZodOptional<z.ZodString>;
transaction_session_id: z.ZodOptional<z.ZodString>;
googlepay_payment_data: z.ZodOptional<z.ZodString>;
ccnumber: z.ZodOptional<z.ZodString>;
ccexp: z.ZodOptional<z.ZodString>;
cvv: z.ZodOptional<z.ZodString>;
checkname: z.ZodOptional<z.ZodString>;
checkaba: z.ZodOptional<z.ZodString>;
checkaccount: z.ZodOptional<z.ZodString>;
account_holder_type: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"business">, z.ZodLiteral<"personal">]>>;
account_type: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"checking">, z.ZodLiteral<"savings">]>>;
sec_code: z.ZodOptional<z.ZodUnion<[z.ZodUnion<[z.ZodUnion<[z.ZodLiteral<"PPD">, z.ZodLiteral<"WEB">]>, z.ZodLiteral<"TEL">]>, z.ZodLiteral<"CCD">]>>;
amount: z.ZodOptional<z.ZodNumber>;
surcharge: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
convenience_fee: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
misc_fee: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
misc_fee_name: z.ZodOptional<z.ZodDefault<z.ZodString>>;
tip: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
currency: z.ZodOptional<z.ZodDefault<z.ZodString>>;
payment: z.ZodDefault<z.ZodUnion<[z.ZodUnion<[z.ZodLiteral<"creditcard">, z.ZodLiteral<"check">]>, z.ZodLiteral<"cash">]>>;
processor_id: z.ZodOptional<z.ZodString>;
authorization_code: z.ZodOptional<z.ZodString>;
dup_seconds: z.ZodOptional<z.ZodNumber>;
descriptor: z.ZodOptional<z.ZodString>;
descriptor_phone: z.ZodOptional<z.ZodString>;
descriptor_address: z.ZodOptional<z.ZodString>;
descriptor_city: z.ZodOptional<z.ZodString>;
descriptor_state: z.ZodOptional<z.ZodString>;
descriptor_postal: z.ZodOptional<z.ZodString>;
descriptor_country: z.ZodOptional<z.ZodString>;
descriptor_mcc: z.ZodOptional<z.ZodString>;
descriptor_merchant_id: z.ZodOptional<z.ZodString>;
descriptor_url: z.ZodOptional<z.ZodString>;
billing_method: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"recurring">, z.ZodLiteral<"installment">]>>;
billing_number: z.ZodOptional<z.ZodNumber>;
billing_total: z.ZodOptional<z.ZodNumber>;
order_template: z.ZodOptional<z.ZodString>;
order_description: z.ZodOptional<z.ZodString>;
orderid: z.ZodOptional<z.ZodString>;
ipaddress: z.ZodOptional<z.ZodString>;
tax: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
shipping: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
ponumber: z.ZodOptional<z.ZodString>;
first_name: z.ZodOptional<z.ZodString>;
last_name: z.ZodOptional<z.ZodString>;
company: z.ZodOptional<z.ZodString>;
address1: z.ZodOptional<z.ZodString>;
address2: z.ZodOptional<z.ZodString>;
city: z.ZodOptional<z.ZodString>;
state: z.ZodOptional<z.ZodString>;
zip: z.ZodOptional<z.ZodString>;
country: z.ZodOptional<z.ZodString>;
phone: z.ZodOptional<z.ZodString>;
fax: z.ZodOptional<z.ZodString>;
email: z.ZodOptional<z.ZodString>;
social_security_number: z.ZodOptional<z.ZodString>;
drivers_license_number: z.ZodOptional<z.ZodString>;
drivers_license_dob: z.ZodOptional<z.ZodString>;
drivers_license_state: z.ZodOptional<z.ZodString>;
shipping_firstname: z.ZodOptional<z.ZodString>;
shipping_lastname: z.ZodOptional<z.ZodString>;
shipping_company: z.ZodOptional<z.ZodString>;
shipping_address1: z.ZodOptional<z.ZodString>;
shipping_address2: z.ZodOptional<z.ZodString>;
shipping_city: z.ZodOptional<z.ZodString>;
shipping_state: z.ZodOptional<z.ZodString>;
shipping_zip: z.ZodOptional<z.ZodString>;
shipping_country: z.ZodOptional<z.ZodString>;
shipping_email: z.ZodOptional<z.ZodString>;
custom_fields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber]>>>;
customer_receipt: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
signature_image: z.ZodOptional<z.ZodString>;
cardholder_auth: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"verified">, z.ZodLiteral<"attempted">]>>;
cavv: z.ZodOptional<z.ZodString>;
xid: z.ZodOptional<z.ZodString>;
three_ds_version: z.ZodOptional<z.ZodString>;
directory_server_id: z.ZodOptional<z.ZodString>;
source_transaction_id: z.ZodOptional<z.ZodString>;
pinless_debit_override: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"Y">, z.ZodLiteral<"N">]>>;
recurring: z.ZodOptional<z.ZodLiteral<"add_subscription">>;
plan_id: z.ZodOptional<z.ZodString>;
plan_payments: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
plan_amount: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
day_frequency: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
month_frequency: z.ZodOptional<z.ZodNumber>;
day_of_month: z.ZodOptional<z.ZodNumber>;
start_date: z.ZodOptional<z.ZodString>;
customer_vault: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"add_customer">, z.ZodLiteral<"update_customer">]>>;
customer_vault_id: z.ZodOptional<z.ZodString>;
initiated_by: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"customer">, z.ZodLiteral<"merchant">]>>;
initial_transaction_id: z.ZodOptional<z.ZodString>;
stored_credential_indicator: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"stored">, z.ZodLiteral<"used">]>>;
shipping_postal: z.ZodOptional<z.ZodString>;
ship_from_postal: z.ZodOptional<z.ZodString>;
summary_commodity_code: z.ZodOptional<z.ZodString>;
duty_amount: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
discount_amount: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
national_tax_amount: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
alternate_tax_amount: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
alternate_tax_id: z.ZodOptional<z.ZodString>;
vat_tax_amount: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
vat_tax_rate: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
vat_invoice_reference_number: z.ZodOptional<z.ZodString>;
customer_vat_registration: z.ZodOptional<z.ZodString>;
merchant_vat_registration: z.ZodOptional<z.ZodString>;
order_date: z.ZodOptional<z.ZodString>;
products: z.ZodOptional<z.ZodArray<z.ZodObject<{
item_product_code: z.ZodString;
item_description: z.ZodString;
item_commodity_code: z.ZodString;
item_unit_of_measure: z.ZodString;
item_unit_cost: z.ZodNumber;
item_quantity: z.ZodNumber;
item_total_amount: z.ZodNumber;
item_tax_amount: z.ZodNumber;
item_tax_rate: z.ZodNumber;
item_discount_amount: z.ZodNumber;
item_tax_type: z.ZodString;
item_alternate_tax_id: z.ZodString;
}, "strip", z.ZodTypeAny, {
item_product_code: string;
item_description: string;
item_commodity_code: string;
item_unit_of_measure: string;
item_unit_cost: number;
item_quantity: number;
item_total_amount: number;
item_tax_amount: number;
item_tax_rate: number;
item_discount_amount: number;
item_tax_type: string;
item_alternate_tax_id: string;
}, {
item_product_code: string;
item_description: string;
item_commodity_code: string;
item_unit_of_measure: string;
item_unit_cost: number;
item_quantity: number;
item_total_amount: number;
item_tax_amount: number;
item_tax_rate: number;
item_discount_amount: number;
item_tax_type: string;
item_alternate_tax_id: string;
}>, "many">>;
payment_facilitator_id: z.ZodOptional<z.ZodString>;
submerchant_id: z.ZodOptional<z.ZodString>;
submerchant_name: z.ZodOptional<z.ZodString>;
submerchant_address: z.ZodOptional<z.ZodString>;
submerchant_city: z.ZodOptional<z.ZodString>;
submerchant_state: z.ZodOptional<z.ZodString>;
submerchant_postal: z.ZodOptional<z.ZodString>;
submerchant_country: z.ZodOptional<z.ZodString>;
submerchant_phone: z.ZodOptional<z.ZodString>;
submerchant_email: z.ZodOptional<z.ZodString>;
partial_payment_id: z.ZodOptional<z.ZodString>;
partial_payments: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"settle_partial">, z.ZodLiteral<"payment_in_full">]>>;
}, "strip", z.ZodTypeAny, {
type: "sale" | "auth" | "credit" | "validate" | "offline" | "complete_partial_payment";
payment: "creditcard" | "check" | "cash";
payment_token?: string | undefined;
transaction_session_id?: string | undefined;
googlepay_payment_data?: string | undefined;
ccnumber?: string | undefined;
ccexp?: string | undefined;
cvv?: string | undefined;
checkname?: string | undefined;
checkaba?: string | undefined;
checkaccount?: string | undefined;
account_holder_type?: "business" | "personal" | undefined;
account_type?: "checking" | "savings" | undefined;
sec_code?: "PPD" | "WEB" | "TEL" | "CCD" | undefined;
amount?: number | undefined;
surcharge?: number | undefined;
convenience_fee?: number | undefined;
misc_fee?: number | undefined;
misc_fee_name?: string | undefined;
tip?: number | undefined;
currency?: string | undefined;
processor_id?: string | undefined;
authorization_code?: string | undefined;
dup_seconds?: number | undefined;
descriptor?: string | undefined;
descriptor_phone?: string | undefined;
descriptor_address?: string | undefined;
descriptor_city?: string | undefined;
descriptor_state?: string | undefined;
descriptor_postal?: string | undefined;
descriptor_country?: string | undefined;
descriptor_mcc?: string | undefined;
descriptor_merchant_id?: string | undefined;
descriptor_url?: string | undefined;
recurring?: "add_subscription" | undefined;
billing_method?: "recurring" | "installment" | undefined;
billing_number?: number | undefined;
billing_total?: number | undefined;
order_template?: string | undefined;
order_description?: string | undefined;
orderid?: string | undefined;
ipaddress?: string | undefined;
tax?: number | undefined;
shipping?: number | undefined;
ponumber?: string | undefined;
first_name?: string | undefined;
last_name?: string | undefined;
company?: string | undefined;
address1?: string | undefined;
address2?: string | undefined;
city?: string | undefined;
state?: string | undefined;
zip?: string | undefined;
country?: string | undefined;
phone?: string | undefined;
fax?: string | undefined;
email?: string | undefined;
social_security_number?: string | undefined;
drivers_license_number?: string | undefined;
drivers_license_dob?: string | undefined;
drivers_license_state?: string | undefined;
shipping_firstname?: string | undefined;
shipping_lastname?: string | undefined;
shipping_company?: string | undefined;
shipping_address1?: string | undefined;
shipping_address2?: string | undefined;
shipping_city?: string | undefined;
shipping_state?: string | undefined;
shipping_zip?: string | undefined;
shipping_country?: string | undefined;
shipping_email?: string | undefined;
custom_fields?: Record<string, string | number> | undefined;
customer_receipt?: boolean | undefined;
signature_image?: string | undefined;
cardholder_auth?: "verified" | "attempted" | undefined;
cavv?: string | undefined;
xid?: string | undefined;
three_ds_version?: string | undefined;
directory_server_id?: string | undefined;
source_transaction_id?: string | undefined;
pinless_debit_override?: "Y" | "N" | undefined;
plan_id?: string | undefined;
plan_payments?: number | undefined;
plan_amount?: number | undefined;
day_frequency?: number | undefined;
month_frequency?: number | undefined;
day_of_month?: number | undefined;
start_date?: string | undefined;
customer_vault?: "add_customer" | "update_customer" | undefined;
customer_vault_id?: string | undefined;
initiated_by?: "customer" | "merchant" | undefined;
initial_transaction_id?: string | undefined;
stored_credential_indicator?: "stored" | "used" | undefined;
shipping_postal?: string | undefined;
ship_from_postal?: string | undefined;
summary_commodity_code?: string | undefined;
duty_amount?: number | undefined;
discount_amount?: number | undefined;
national_tax_amount?: number | undefined;
alternate_tax_amount?: number | undefined;
alternate_tax_id?: string | undefined;
vat_tax_amount?: number | undefined;
vat_tax_rate?: number | undefined;
vat_invoice_reference_number?: string | undefined;
customer_vat_registration?: string | undefined;
merchant_vat_registration?: string | undefined;
order_date?: string | undefined;
products?: {
item_product_code: string;
item_description: string;
item_commodity_code: string;
item_unit_of_measure: string;
item_unit_cost: number;
item_quantity: number;
item_total_amount: number;
item_tax_amount: number;
item_tax_rate: number;
item_discount_amount: number;
item_tax_type: string;
item_alternate_tax_id: string;
}[] | undefined;
payment_facilitator_id?: string | undefined;
submerchant_id?: string | undefined;
submerchant_name?: string | undefined;
submerchant_address?: string | undefined;
submerchant_city?: string | undefined;
submerchant_state?: string | undefined;
submerchant_postal?: string | undefined;
submerchant_country?: string | undefined;
submerchant_phone?: string | undefined;
submerchant_email?: string | undefined;
partial_payment_id?: string | undefined;
partial_payments?: "settle_partial" | "payment_in_full" | undefined;
}, {
type: "sale" | "auth" | "credit" | "validate" | "offline" | "complete_partial_payment";
payment_token?: string | undefined;
transaction_session_id?: string | undefined;
googlepay_payment_data?: string | undefined;
ccnumber?: string | undefined;
ccexp?: string | undefined;
cvv?: string | undefined;
checkname?: string | undefined;
checkaba?: string | undefined;
checkaccount?: string | undefined;
account_holder_type?: "business" | "personal" | undefined;
account_type?: "checking" | "savings" | undefined;
sec_code?: "PPD" | "WEB" | "TEL" | "CCD" | undefined;
amount?: number | undefined;
surcharge?: number | undefined;
convenience_fee?: number | undefined;
misc_fee?: number | undefined;
misc_fee_name?: string | undefined;
tip?: number | undefined;
currency?: string | undefined;
payment?: "creditcard" | "check" | "cash" | undefined;
processor_id?: string | undefined;
authorization_code?: string | undefined;
dup_seconds?: number | undefined;
descriptor?: string | undefined;
descriptor_phone?: string | undefined;
descriptor_address?: string | undefined;
descriptor_city?: string | undefined;
descriptor_state?: string | undefined;
descriptor_postal?: string | undefined;
descriptor_country?: string | undefined;
descriptor_mcc?: string | undefined;
descriptor_merchant_id?: string | undefined;
descriptor_url?: string | undefined;
recurring?: "add_subscription" | undefined;
billing_method?: "recurring" | "installment" | undefined;
billing_number?: number | undefined;
billing_total?: number | undefined;
order_template?: string | undefined;
order_description?: string | undefined;
orderid?: string | undefined;
ipaddress?: string | undefined;
tax?: number | undefined;
shipping?: number | undefined;
ponumber?: string | undefined;
first_name?: string | undefined;
last_name?: string | undefined;
company?: string | undefined;
address1?: string | undefined;
address2?: string | undefined;
city?: string | undefined;
state?: string | undefined;
zip?: string | undefined;
country?: string | undefined;
phone?: string | undefined;
fax?: string | undefined;
email?: string | undefined;
social_security_number?: string | undefined;
drivers_license_number?: string | undefined;
drivers_license_dob?: string | undefined;
drivers_license_state?: string | undefined;
shipping_firstname?: string | undefined;
shipping_lastname?: string | undefined;
shipping_company?: string | undefined;
shipping_address1?: string | undefined;
shipping_address2?: string | undefined;
shipping_city?: string | undefined;
shipping_state?: string | undefined;
shipping_zip?: string | undefined;
shipping_country?: string | undefined;
shipping_email?: string | undefined;
custom_fields?: Record<string, string | number> | undefined;
customer_receipt?: boolean | undefined;
signature_image?: string | undefined;
cardholder_auth?: "verified" | "attempted" | undefined;
cavv?: string | undefined;
xid?: string | undefined;
three_ds_version?: string | undefined;
directory_server_id?: string | undefined;
source_transaction_id?: string | undefined;
pinless_debit_override?: "Y" | "N" | undefined;
plan_id?: string | undefined;
plan_payments?: number | undefined;
plan_amount?: number | undefined;
day_frequency?: number | undefined;
month_frequency?: number | undefined;
day_of_month?: number | undefined;
start_date?: string | undefined;
customer_vault?: "add_customer" | "update_customer" | undefined;
customer_vault_id?: string | undefined;
initiated_by?: "customer" | "merchant" | undefined;
initial_transaction_id?: string | undefined;
stored_credential_indicator?: "stored" | "used" | undefined;
shipping_postal?: string | undefined;
ship_from_postal?: string | undefined;
summary_commodity_code?: string | undefined;
duty_amount?: number | undefined;
discount_amount?: number | undefined;
national_tax_amount?: number | undefined;
alternate_tax_amount?: number | undefined;
alternate_tax_id?: string | undefined;
vat_tax_amount?: number | undefined;
vat_tax_rate?: number | undefined;
vat_invoice_reference_number?: string | undefined;
customer_vat_registration?: string | undefined;
merchant_vat_registration?: string | undefined;
order_date?: string | undefined;
products?: {
item_product_code: string;
item_description: string;
item_commodity_code: string;
item_unit_of_measure: string;
item_unit_cost: number;
item_quantity: number;
item_total_amount: number;
item_tax_amount: number;
item_tax_rate: number;
item_discount_amount: number;
item_tax_type: string;
item_alternate_tax_id: string;
}[] | undefined;
payment_facilitator_id?: string | undefined;
submerchant_id?: string | undefined;
submerchant_name?: string | undefined;
submerchant_address?: string | undefined;
submerchant_city?: string | undefined;
submerchant_state?: string | undefined;
submerchant_postal?: string | undefined;
submerchant_country?: string | undefined;
submerchant_phone?: string | undefined;
submerchant_email?: string | undefined;
partial_payment_id?: string | undefined;
partial_payments?: "settle_partial" | "payment_in_full" | undefined;
}>;
declare const TransactionRequestSchema: z.ZodEffects<z.ZodObject<{
type: z.ZodEnum<["sale", "auth", "credit", "validate", "offline", "complete_partial_payment"]>;
payment_token: z.ZodOptional<z.ZodString>;
transaction_session_id: z.ZodOptional<z.ZodString>;
googlepay_payment_data: z.ZodOptional<z.ZodString>;
ccnumber: z.ZodOptional<z.ZodString>;
ccexp: z.ZodOptional<z.ZodString>;
cvv: z.ZodOptional<z.ZodString>;
checkname: z.ZodOptional<z.ZodString>;
checkaba: z.ZodOptional<z.ZodString>;
checkaccount: z.ZodOptional<z.ZodString>;
account_holder_type: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"business">, z.ZodLiteral<"personal">]>>;
account_type: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"checking">, z.ZodLiteral<"savings">]>>;
sec_code: z.ZodOptional<z.ZodUnion<[z.ZodUnion<[z.ZodUnion<[z.ZodLiteral<"PPD">, z.ZodLiteral<"WEB">]>, z.ZodLiteral<"TEL">]>, z.ZodLiteral<"CCD">]>>;
amount: z.ZodOptional<z.ZodNumber>;
surcharge: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
convenience_fee: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
misc_fee: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
misc_fee_name: z.ZodOptional<z.ZodDefault<z.ZodString>>;
tip: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
currency: z.ZodOptional<z.ZodDefault<z.ZodString>>;
payment: z.ZodDefault<z.ZodUnion<[z.ZodUnion<[z.ZodLiteral<"creditcard">, z.ZodLiteral<"check">]>, z.ZodLiteral<"cash">]>>;
processor_id: z.ZodOptional<z.ZodString>;
authorization_code: z.ZodOptional<z.ZodString>;
dup_seconds: z.ZodOptional<z.ZodNumber>;
descriptor: z.ZodOptional<z.ZodString>;
descriptor_phone: z.ZodOptional<z.ZodString>;
descriptor_address: z.ZodOptional<z.ZodString>;
descriptor_city: z.ZodOptional<z.ZodString>;
descriptor_state: z.ZodOptional<z.ZodString>;
descriptor_postal: z.ZodOptional<z.ZodString>;
descriptor_country: z.ZodOptional<z.ZodString>;
descriptor_mcc: z.ZodOptional<z.ZodString>;
descriptor_merchant_id: z.ZodOptional<z.ZodString>;
descriptor_url: z.ZodOptional<z.ZodString>;
billing_method: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"recurring">, z.ZodLiteral<"installment">]>>;
billing_number: z.ZodOptional<z.ZodNumber>;
billing_total: z.ZodOptional<z.ZodNumber>;
order_template: z.ZodOptional<z.ZodString>;
order_description: z.ZodOptional<z.ZodString>;
orderid: z.ZodOptional<z.ZodString>;
ipaddress: z.ZodOptional<z.ZodString>;
tax: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
shipping: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
ponumber: z.ZodOptional<z.ZodString>;
first_name: z.ZodOptional<z.ZodString>;
last_name: z.ZodOptional<z.ZodString>;
company: z.ZodOptional<z.ZodString>;
address1: z.ZodOptional<z.ZodString>;
address2: z.ZodOptional<z.ZodString>;
city: z.ZodOptional<z.ZodString>;
state: z.ZodOptional<z.ZodString>;
zip: z.ZodOptional<z.ZodString>;
country: z.ZodOptional<z.ZodString>;
phone: z.ZodOptional<z.ZodString>;
fax: z.ZodOptional<z.ZodString>;
email: z.ZodOptional<z.ZodString>;
social_security_number: z.ZodOptional<z.ZodString>;
drivers_license_number: z.ZodOptional<z.ZodString>;
drivers_license_dob: z.ZodOptional<z.ZodString>;
drivers_license_state: z.ZodOptional<z.ZodString>;
shipping_firstname: z.ZodOptional<z.ZodString>;
shipping_lastname: z.ZodOptional<z.ZodString>;
shipping_company: z.ZodOptional<z.ZodString>;
shipping_address1: z.ZodOptional<z.ZodString>;
shipping_address2: z.ZodOptional<z.ZodString>;
shipping_city: z.ZodOptional<z.ZodString>;
shipping_state: z.ZodOptional<z.ZodString>;
shipping_zip: z.ZodOptional<z.ZodString>;
shipping_country: z.ZodOptional<z.ZodString>;
shipping_email: z.ZodOptional<z.ZodString>;
custom_fields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber]>>>;
customer_receipt: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
signature_image: z.ZodOptional<z.ZodString>;
cardholder_auth: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"verified">, z.ZodLiteral<"attempted">]>>;
cavv: z.ZodOptional<z.ZodString>;
xid: z.ZodOptional<z.ZodString>;
three_ds_version: z.ZodOptional<z.ZodString>;
directory_server_id: z.ZodOptional<z.ZodString>;
source_transaction_id: z.ZodOptional<z.ZodString>;
pinless_debit_override: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"Y">, z.ZodLiteral<"N">]>>;
recurring: z.ZodOptional<z.ZodLiteral<"add_subscription">>;
plan_id: z.ZodOptional<z.ZodString>;
plan_payments: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
plan_amount: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
day_frequency: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
month_frequency: z.ZodOptional<z.ZodNumber>;
day_of_month: z.ZodOptional<z.ZodNumber>;
start_date: z.ZodOptional<z.ZodString>;
customer_vault: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"add_customer">, z.ZodLiteral<"update_customer">]>>;
customer_vault_id: z.ZodOptional<z.ZodString>;
initiated_by: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"customer">, z.ZodLiteral<"merchant">]>>;
initial_transaction_id: z.ZodOptional<z.ZodString>;
stored_credential_indicator: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"stored">, z.ZodLiteral<"used">]>>;
shipping_postal: z.ZodOptional<z.ZodString>;
ship_from_postal: z.ZodOptional<z.ZodString>;
summary_commodity_code: z.ZodOptional<z.ZodString>;
duty_amount: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
discount_amount: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
national_tax_amount: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
alternate_tax_amount: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
alternate_tax_id: z.ZodOptional<z.ZodString>;
vat_tax_amount: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
vat_tax_rate: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
vat_invoice_reference_number: z.ZodOptional<z.ZodString>;
customer_vat_registration: z.ZodOptional<z.ZodString>;
merchant_vat_registration: z.ZodOptional<z.ZodString>;
order_date: z.ZodOptional<z.ZodString>;
products: z.ZodOptional<z.ZodArray<z.ZodObject<{
item_product_code: z.ZodString;
item_description: z.ZodString;
item_commodity_code: z.ZodString;
item_unit_of_measure: z.ZodString;
item_unit_cost: z.ZodNumber;
item_quantity: z.ZodNumber;
item_total_amount: z.ZodNumber;
item_tax_amount: z.ZodNumber;
item_tax_rate: z.ZodNumber;
item_discount_amount: z.ZodNumber;
item_tax_type: z.ZodString;
item_alternate_tax_id: z.ZodString;
}, "strip", z.ZodTypeAny, {
item_product_code: string;
item_description: string;
item_commodity_code: string;
item_unit_of_measure: string;
item_unit_cost: number;
item_quantity: number;
item_total_amount: number;
item_tax_amount: number;
item_tax_rate: number;
item_discount_amount: number;
item_tax_type: string;
item_alternate_tax_id: string;
}, {
item_product_code: string;
item_description: string;
item_commodity_code: string;
item_unit_of_measure: string;
item_unit_cost: number;
item_quantity: number;
item_total_amount: number;
item_tax_amount: number;
item_tax_rate: number;
item_discount_amount: number;
item_tax_type: string;
item_alternate_tax_id: string;
}>, "many">>;
payment_facilitator_id: z.ZodOptional<z.ZodString>;
submerchant_id: z.ZodOptional<z.ZodString>;
submerchant_name: z.ZodOptional<z.ZodString>;
submerchant_address: z.ZodOptional<z.ZodString>;
submerchant_city: z.ZodOptional<z.ZodString>;
submerchant_state: z.ZodOptional<z.ZodString>;
submerchant_postal: z.ZodOptional<z.ZodString>;
submerchant_country: z.ZodOptional<z.ZodString>;
submerchant_phone: z.ZodOptional<z.ZodString>;
submerchant_email: z.ZodOptional<z.ZodString>;
partial_payment_id: z.ZodOptional<z.ZodString>;
partial_payments: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"settle_partial">, z.ZodLiteral<"payment_in_full">]>>;
}, "strip", z.ZodTypeAny, {
type: "sale" | "auth" | "credit" | "validate" | "offline" | "complete_partial_payment";
payment: "creditcard" | "check" | "cash";
payment_token?: string | undefined;
transaction_session_id?: string | undefined;
googlepay_payment_data?: string | undefined;
ccnumber?: string | undefined;
ccexp?: string | undefined;
cvv?: string | undefined;
checkname?: string | undefined;
checkaba?: string | undefined;
checkaccount?: string | undefined;
account_holder_type?: "business" | "personal" | undefined;
account_type?: "checking" | "savings" | undefined;
sec_code?: "PPD" | "WEB" | "TEL" | "CCD" | undefined;
amount?: number | undefined;
surcharge?: number | undefined;
convenience_fee?: number | undefined;
misc_fee?: number | undefined;
misc_fee_name?: string | undefined;
tip?: number | undefined;
currency?: string | undefined;
processor_id?: string | undefined;
authorization_code?: string | undefined;
dup_seconds?: number | undefined;
descriptor?: string | undefined;
descriptor_phone?: string | undefined;
descriptor_address?: string | undefined;
descriptor_city?: string | undefined;
descriptor_state?: string | undefined;
descriptor_postal?: string | undefined;
descriptor_country?: string | undefined;
descriptor_mcc?: string | undefined;
descriptor_merchant_id?: string | undefined;
descriptor_url?: string | undefined;
recurring?: "add_subscription" | undefined;
billing_method?: "recurring" | "installment" | undefined;
billing_number?: number | undefined;
billing_total?: number | undefined;
order_template?: string | undefined;
order_description?: string | undefined;
orderid?: string | undefined;
ipaddress?: string | undefined;
tax?: number | undefined;
shipping?: number | undefined;
ponumber?: string | undefined;
first_name?: string | undefined;
last_name?: string | undefined;
company?: string | undefined;
address1?: string | undefined;
address2?: string | undefined;
city?: string | undefined;
state?: string | undefined;
zip?: string | undefined;
country?: string | undefined;
phone?: string | undefined;
fax?: string | undefined;
email?: string | undefined;
social_security_number?: string | undefined;
drivers_license_number?: string | undefined;
drivers_license_dob?: string | undefined;
drivers_license_state?: string | undefined;
shipping_firstname?: string | undefined;
shipping_lastname?: string | undefined;
shipping_company?: string | undefined;
shipping_address1?: string | undefined;
shipping_address2?: string | undefined;
shipping_city?: string | undefined;
shipping_state?: string | undefined;
shipping_zip?: string | undefined;
shipping_country?: string | undefined;
shipping_email?: string | undefined;
custom_fields?: Record<string, string | number> | undefined;
customer_receipt?: boolean | undefined;
signature_image?: string | undefined;
cardholder_auth?: "verified" | "attempted" | undefined;
cavv?: string | undefined;
xid?: string | undefined;
three_ds_version?: string | undefined;
directory_server_id?: string | undefined;
source_transaction_id?: string | undefined;
pinless_debit_override?: "Y" | "N" | undefined;
plan_id?: string | undefined;
plan_payments?: number | undefined;
plan_amount?: number | undefined;
day_frequency?: number | undefined;
month_frequency?: number | undefined;
day_of_month?: number | undefined;
start_date?: string | undefined;
customer_vault?: "add_customer" | "update_customer" | undefined;
customer_vault_id?: string | undefined;
initiated_by?: "customer" | "merchant" | undefined;
initial_transaction_id?: string | undefined;
stored_credential_indicator?: "stored" | "used" | undefined;
shipping_postal?: string | undefined;
ship_from_postal?: string | undefined;
summary_commodity_code?: string | undefined;
duty_amount?: number | undefined;
discount_amount?: number | undefined;
national_tax_amount?: number | undefined;
alternate_tax_amount?: number | undefined;
alternate_tax_id?: string | undefined;
vat_tax_amount?: number | undefined;
vat_tax_rate?: number | undefined;
vat_invoice_reference_number?: string | undefined;
customer_vat_registration?: string | undefined;
merchant_vat_registration?: string | undefined;
order_date?: string | undefined;
products?: {
item_product_code: string;
item_description: string;
item_commodity_code: string;
item_unit_of_measure: string;
item_unit_cost: number;
item_quantity: number;
item_total_amount: number;
item_tax_amount: number;
item_tax_rate: number;
item_discount_amount: number;
item_tax_type: string;
item_alternate_tax_id: string;
}[] | undefined;
payment_facilitator_id?: string | undefined;
submerchant_id?: string | undefined;
submerchant_name?: string | undefined;
submerchant_address?: string | undefined;
submerchant_city?: string | undefined;
submerchant_state?: string | undefined;
submerchant_postal?: string | undefined;
submerchant_country?: string | undefined;
submerchant_phone?: string | undefined;
submerchant_email?: string | undefined;
partial_payment_id?: string | undefined;
partial_payments?: "settle_partial" | "payment_in_full" | undefined;
}, {
type: "sale" | "auth" | "credit" | "validate" | "offline" | "complete_partial_payment";
payment_token?: string | undefined;
transaction_session_id?: string | undefined;
googlepay_payment_data?: string | undefined;
ccnumber?: string | undefined;
ccexp?: string | undefined;
cvv?: string | undefined;
checkname?: string | undefined;
checkaba?: string | undefined;
checkaccount?: string | undefined;
account_holder_type?: "business" | "personal" | undefined;
account_type?: "checking" | "savings" | undefined;
sec_code?: "PPD" | "WEB" | "TEL" | "CCD" | undefined;
amount?: number | undefined;
surcharge?: number | undefined;
convenience_fee?: number | undefined;
misc_fee?: number | undefined;
misc_fee_name?: string | undefined;
tip?: number | undefined;
currency?: string | undefined;
payment?: "creditcard" | "check" | "cash" | undefined;
processor_id?: string | undefined;
authorization_code?: string | undefined;
dup_seconds?: number | undefined;
descriptor?: string | undefined;
descriptor_phone?: string | undefined;
descriptor_address?: string | undefined;
descriptor_city?: string | undefined;
descriptor_state?: string | undefined;
descriptor_postal?: string | undefined;
descriptor_country?: string | undefined;
descriptor_mcc?: string | undefined;
descriptor_merchant_id?: string | undefined;
descriptor_url?: string | undefined;
recurring?: "add_subscription" | undefined;
billing_method?: "recurring" | "installment" | undefined;
billing_number?: number | undefined;
billing_total?: number | undefined;
order_template?: string | undefined;
order_description?: string | undefined;
orderid?: string | undefined;
ipaddress?: string | undefined;
tax?: number | undefined;
shipping?: number | undefined;
ponumber?: string | undefined;
first_name?: string | undefined;
last_name?: string | undefined;
company?: string | undefined;
address1?: string | undefined;
address2?: string | undefined;
city?: string | undefined;
state?: string | undefined;
zip?: string | undefined;
country?: string | undefined;
phone?: string | undefined;
fax?: string | undefined;
email?: string | undefined;
social_security_number?: string | undefined;
drivers_license_number?: string | undefined;
drivers_license_dob?: string | undefined;
drivers_license_state?: string | undefined;
shipping_firstname?: string | undefined;
shipping_lastname?: string | undefined;
shipping_company?: string | undefined;
shipping_address1?: string | undefined;
shipping_address2?: string | undefined;
shipping_city?: string | undefined;
shipping_state?: string | undefined;
shipping_zip?: string | undefined;
shipping_country?: string | undefined;
shipping_email?: string | undefined;
custom_fields?: Record<string, string | number> | undefined;
customer_receipt?: boolean | undefined;
signature_image?: string | undefined;
cardholder_auth?: "verified" | "attempted" | undefined;
cavv?: string | undefined;
xid?: string | undefined;
three_ds_version?: string | undefined;
directory_server_id?: string | undefined;
source_transaction_id?: string | undefined;
pinless_debit_override?: "Y" | "N" | undefined;
plan_id?: string | undefined;
plan_payments?: number | undefined;
plan_amount?: number | undefined;
day_frequency?: number | undefined;
month_frequency?: number | undefined;
day_of_month?: number | undefined;
start_date?: string | undefined;
customer_vault?: "add_customer" | "update_customer" | undefined;
customer_vault_id?: string | undefined;
initiated_by?: "customer" | "merchant" | undefined;
initial_transaction_id?: string | undefined;
stored_credential_indicator?: "stored" | "used" | undefined;
shipping_postal?: string | undefined;
ship_from_postal?: string | undefined;
summary_commodity_code?: string | undefined;
duty_amount?: number | undefined;
discount_amount?: number | undefined;
national_tax_amount?: number | undefined;
alternate_tax_amount?: number | undefined;
alternate_tax_id?: string | undefined;
vat_tax_amount?: number | undefined;
vat_tax_rate?: number | undefined;
vat_invoice_reference_number?: string | undefined;
customer_vat_registration?: string | undefined;
merchant_vat_registration?: string | undefined;
order_date?: string | undefined;
products?: {
item_product_code: string;
item_description: string;
item_commodity_code: string;
item_unit_of_measure: string;
item_unit_cost: number;
item_quantity: number;
item_total_amount: number;
item_tax_amount: number;
item_tax_rate: number;
item_discount_amount: number;
item_tax_type: string;
item_alternate_tax_id: string;
}[] | undefined;
payment_facilitator_id?: string | undefined;
submerchant_id?: string | undefined;
submerchant_name?: string | undefined;
submerchant_address?: string | undefined;
submerchant_city?: string | undefined;
submerchant_state?: string | undefined;
submerchant_postal?: string | undefined;
submerchant_country?: string | undefined;
submerchant_phone?: string | undefined;
submerchant_email?: string | undefined;
partial_payment_id?: string | undefined;
partial_payments?: "settle_partial" | "payment_in_full" | undefined;
}>, {
type: "sale" | "auth" | "credit" | "validate" | "offline" | "complete_partial_payment";
payment: "creditcard" | "check" | "cash";
payment_token?: string | undefined;
transaction_session_id?: string | undefined;
googlepay_payment_data?: string | undefined;
ccnumber?: string | undefined;
ccexp?: string | undefined;
cvv?: string | undefined;
checkname?: string | undefined;
checkaba?: string | undefined;
checkaccount?: string | undefined;
account_holder_type?: "business" | "personal" | undefined;
account_type?: "checking" | "savings" | undefined;
sec_code?: "PPD" | "WEB" | "TEL" | "CCD" | undefined;
amount?: number | undefined;
surcharge?: number | undefined;
convenience_fee?: number | undefined;
misc_fee?: number | undefined;
misc_fee_name?: string | undefined;
tip?: number | undefined;
currency?: string | undefined;
processor_id?: string | undefined;
authorization_code?: string | undefined;
dup_seconds?: number | undefined;
descriptor?: string | undefined;
descriptor_phone?: string | undefined;
descriptor_address?: string | undefined;
descriptor_city?: string | undefined;
descriptor_state?: string | undefined;
descriptor_postal?: string | undefined;
descriptor_country?: string | undefined;
descriptor_mcc?: string | undefined;
descriptor_merchant_id?: string | undefined;
descriptor_url?: string | undefined;
recurring?: "add_subscription" | undefined;
billing_method?: "recurring" | "installment" | undefined;
billing_number?: number | undefined;
billing_total?: number | undefined;
order_template?: string | undefined;
order_description?: string | undefined;
orderid?: string | undefined;
ipaddress?: string | undefined;
tax?: number | undefined;
shipping?: number | undefined;
ponumber?: string | undefined;
first_name?: string | undefined;
last_name?: string | undefined;
company?: string | undefined;
address1?: string | undefined;
address2?: string | undefined;
city?: string | undefined;
state?: string | undefined;
zip?: string | undefined;
country?: string | undefined;
phone?: string | undefined;
fax?: string | undefined;
email?: string | undefined;
social_security_number?: string | undefined;
drivers_license_number?: string | undefined;
drivers_license_dob?: string | undefined;
drivers_license_state?: string | undefined;
shipping_firstname?: string | undefined;
shipping_lastname?: string | undefined;
shipping_company?: string | undefined;
shipping_address1?: string | undefined;
shipping_address2?: string | undefined;
shipping_city?: string | undefined;
shipping_state?: string | undefined;
shipping_zip?: string | undefined;
shipping_country?: string | undefined;
shipping_email?: string | undefined;
custom_fields?: Record<string, string | number> | undefined;
customer_receipt?: boolean | undefined;
signature_image?: string | undefined;
cardholder_auth?: "verified" | "attempted" | undefined;
cavv?: string | undefined;
xid?: string | undefined;
three_ds_version?: string | undefined;
directory_server_id?: string | undefined;
source_transaction_id?: string | undefined;
pinless_debit_override?: "Y" | "N" | undefined;
plan_id?: string | undefined;
plan_payments?: number | undefined;
plan_amount?: number | undefined;
day_frequency?: number | undefined;
month_frequency?: number | undefined;
day_of_month?: number | undefined;
start_date?: string | undefined;
customer_vault?: "add_customer" | "update_customer" | undefined;
customer_vault_id?: string | undefined;
initiated_by?: "customer" | "merchant" | undefined;
initial_transaction_id?: string | undefined;
stored_credential_indicator?: "stored" | "used" | undefined;
shipping_postal?: string | undefined;
ship_from_postal?: string | undefined;
summary_commodity_code?: string | undefined;
duty_amount?: number | undefined;
discount_amount?: number | undefined;
national_tax_amount?: number | undefined;
alternate_tax_amount?: number | undefined;
alternate_tax_id?: string | undefined;
vat_tax_amount?: number | undefined;
vat_tax_rate?: number | undefined;
vat_invoice_reference_number?: string | undefined;
customer_vat_registration?: string | undefined;
merchant_vat_registration?: string | undefined;
order_date?: string | undefined;
products?: {
item_product_code: string;
item_description: string;
item_commodity_code: string;
item_unit_of_measure: string;
item_unit_cost: number;
item_quantity: number;
item_total_amount: number;
item_tax_amount: number;
item_tax_rate: number;
item_discount_amount: number;
item_tax_type: string;
item_alternate_tax_id: string;
}[] | undefined;
payment_facilitator_id?: string | undefined;
submerchant_id?: string | undefined;
submerchant_name?: string | undefined;
submerchant_address?: string | undefined;
submerchant_city?: string | undefined;
submerchant_state?: string | undefined;
submerchant_postal?: string | undefined;
submerchant_country?: string | undefined;
submerchant_phone?: string | undefined;
submerchant_email?: string | undefined;
partial_payment_id?: string | undefined;
partial_payments?: "settle_partial" | "payment_in_full" | undefined;
}, {
type: "sale" | "auth" | "credit" | "validate" | "offline" | "complete_partial_payment";
payment_token?: string | undefined;
transaction_session_id?: string | undefined;
googlepay_payment_data?: string | undefined;
ccnumber?: string | undefined;
ccexp?: string | undefined;
cvv?: string | undefined;
checkname?: string | undefined;
checkaba?: string | undefined;
checkaccount?: string | undefined;
account_holder_type?: "business" | "personal" | undefined;
account_type?: "checking" | "savings" | undefined;
sec_code?: "PPD" | "WEB" | "TEL" | "CCD" | undefined;
amount?: number | undefined;
surcharge?: number | undefined;
convenience_fee?: number | undefined;
misc_fee?: number | undefined;
misc_fee_name?: string | undefined;
tip?: number | undefined;
currency?: string | undefined;
payment?: "creditcard" | "check" | "cash" | undefined;
processor_id?: string | undefined;
authorization_code?: string | undefined;
dup_seconds?: number | undefined;
descriptor?: string | undefined;
descriptor_phone?: string | undefined;
descriptor_address?: string | undefined;
descriptor_city?: string | undefined;
descriptor_state?: string | undefined;
descriptor_postal?: string | undefined;
descriptor_country?: string | undefined;
descriptor_mcc?: string | undefined;
descriptor_merchant_id?: string | undefined;
descriptor_url?: string | undefined;
recurring?: "add_subscription" | undefined;
billing_method?: "recurring" | "installment" | undefined;
billing_number?: number | undefined;
billing_total?: number | undefined;
order_template?: string | undefined;
order_description?: string | undefined;
orderid?: string | undefined;
ipaddress?: string | undefined;
tax?: number | undefined;
shipping?: number | undefined;
ponumber?: string | undefined;
first_name?: string | undefined;
last_name?: string | undefined;
company?: string | undefined;
address1?: string | undefined;
address2?: string | undefined;
city?: string | undefined;
state?: string | undefined;
zip?: string | undefined;
country?: string | undefined;
phone?: string | undefined;
fax?: string | undefined;
email?: string | undefined;
social_security_number?: string | undefined;
drivers_license_number?: string | undefined;
drivers_license_dob?: string | undefined;
drivers_license_state?: string | undefined;
shipping_firstname?: string | undefined;
shipping_lastname?: string | undefined;
shipping_company?: string | undefined;
shipping_address1?: string | undefined;
shipping_address2?: string | undefined;
shipping_city?: string | undefined;
shipping_state?: string | undefined;
shipping_zip?: string | undefined;
shipping_country?: string | undefined;
shipping_email?: string | undefined;
custom_fields?: Record<string, string | number> | undefined;
customer_receipt?: boolean | undefined;
signature_image?: string | undefined;
cardholder_auth?: "verified" | "attempted" | undefined;
cavv?: string | undefined;
xid?: string | undefined;
three_ds_version?: string | undefined;
directory_server_id?: string | undefined;
source_transaction_id?: string | undefined;
pinless_debit_override?: "Y" | "N" | undefined;
plan_id?: string | undefined;
plan_payments?: number | undefined;
plan_amount?: number | undefined;
day_frequency?: number | undefined;
month_frequency?: number | undefined;
day_of_month?: number | undefined;
start_date?: string | undefined;
customer_vault?: "add_customer" | "update_customer" | undefined;
customer_vault_id?: string | undefined;
initiated_by?: "customer" | "merchant" | undefined;
initial_transaction_id?: string | undefined;
stored_credential_indicator?: "stored" | "used" | undefined;
shipping_postal?: string | undefined;
ship_from_postal?: string | undefined;
summary_commodity_code?: string | undefined;
duty_amount?: number | undefined;