Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 | import { TMerchantAgreementPayload } from "@components/Merchants/CreateMerchantPanel/hooks/TMerchantAgreementPayload";
import {
IMerchantBankAccount,
TBusinessOwner,
TCategoryCode,
TMerchantDocument,
} from "@components/Merchants/MerchantPreview/data.types";
import { TinType as BaseTinType } from "@validation/types";
type TinType = BaseTinType | null;
type BusinessAddressType = {
country: string;
address: string;
city: string;
state: string;
zip: string;
notes?: string;
};
type TEnterpriseInfo = {
enterpriseID: string;
enterprise_name: string;
enterprise_slug: string;
avatar_url: File | null;
category: string;
description: string;
website_url: string;
servicedPhoneNumber: string;
enterprisePhone: string;
billingDescriptor: string;
hasServiceCountries: boolean;
servicedCountries: string;
enterprise_classification: string;
classification_description: string;
};
type TBusinessProfile = {
isLinkBusinessProfile: boolean;
linkedBusinessProfile: number;
businessType: string;
ownershipType: string;
legalName: string;
DBA: string;
tinType: TinType;
ssn: string;
taxID: string;
businessOpenedAt: string;
contactPhone: string;
address: BusinessAddressType;
id?: string | number;
linkedOwnerId?: string | number;
};
type TPrimaryAccountHolder = {
firstName: string;
lastName: string;
email: string;
contact_phone: string;
assignToMe?: boolean;
};
type TConfiguration = {
enterprise_fees: {
credit_card_fee: string;
amex_credit_card_fee: string;
debit_card_fee: string;
};
};
export interface ICreateEnterpriseSchema {
agreement?: TMerchantAgreementPayload;
enterprise_info: TEnterpriseInfo;
primary_account_holder: TPrimaryAccountHolder;
businessProfile: TBusinessProfile;
businessOwners: TBusinessOwner[];
configuration: TConfiguration;
bankAccounts: IMerchantBankAccount[];
documents: {
list: TMerchantDocument[];
};
categories: TCategoryCode[];
permissions: { [key: string]: string };
}
export type EnterpriseConfiguration = {
modify_merchant: boolean;
merchant_underwriting: boolean;
merchant_underwriting_statuses: boolean;
agreement_signing: boolean;
control_mode: boolean;
b_profile_linking: boolean;
bank_account_linking: boolean;
manage_bank_account: boolean;
money_transfers: boolean;
risk_monitoring: boolean;
merchant_triggers: boolean;
risk_activity: boolean;
};
export type TEnterpriseConfigurationName =
| "modify_merchant"
| "merchant_underwriting"
| "merchant_underwriting_statuses"
| "agreement_signing"
| "control_mode"
| "b_profile_linking"
| "bank_account_linking"
| "manage_bank_account"
| "money_transfers"
| "risk_monitoring"
| "merchant_triggers"
| "risk_activity";
|