123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148 |
- export interface CustomerInfo {
- // 必填字段
- type: 'PERSONAL' | 'BUSINESS';
- country: string;
- email: string;
- // 个人用户必填字段
- company: BusinessInfo;
- individual: IndividualInfo;
- }
- export interface IndividualInfo {
- firstName: string; // 名(必填)
- lastName: string; // 姓(必填)
- countryCode: string; // 国家编码(必填)
- city: string; // 城市(必填)
- addressLine: string; // 地址栏(必填)
- postCode: string; // 邮政编码(必填)
- email: string; // 邮箱(必填)
- phoneNumber: string; // 手机号码(必填)
- certificateType: CertificateType; // 证件类型(必填)
- idNumber: string; // 证件号码(必填)
- birthDate: string; // 出生日期(必填)
- validTimeStart: string; // 有效期开始时间(必填)
- validTimeEnd: string; // 有效期结束时间(必填)
- }
- export interface BusinessInfo {
- name: string; // 公司名称(必填)
- type: BusinessType; // 公司类型(必填)
- countryCode: string; // 国家编码(必填)
- city: string; // 城市(必填)
- addressLine: string; // 地址栏(必填)
- postCode: string; // 邮政编码(必填)
- email: string; // 邮箱(必填)
- phoneNumber: string; // 手机号码(必填)
- registrationNumber: string; // 注册号码(必填)
- contact: string; // 联系方式(必填)
- registrationDate: string; // 注册日期(必填)
- }
- export enum BusinessType {
- OTHER = 'OTHER', // 其他
- PUBLIC_LIMITED_COMPANY = 'PUBLIC_LIMITED_COMPANY', // 公共有限公司
- PARTNERSHIP = 'PARTNERSHIP', // 合伙企业
- CHARITY = 'CHARITY', // 慈善机构
- PRIVATE_LIMITED_COMPANY = 'PRIVATE_LIMITED_COMPANY', // 私营有限公司
- JOINT_STOCK_COMPANY = 'JOINT_STOCK_COMPANY', // 股份公司
- LIMITED_LIABILITY = 'LIMITED_LIABILITY', // 有限责任公司
- SOLE_TRADER = 'SOLE_TRADER', // 独资经营企业
- }
- export enum CertificateType {
- IDCARD = 'IDCARD', // 身份证
- DRIVINGLICENCE = 'DRIVINGLICENCE', // 驾驶证
- PASSPORT = 'PASSPORT', // 护照
- TAX_IDENTIFICATION_NUMBER = 'TaxIdentificationNumber', // 税务识别号
- IDENTIFICATION_CODE_FOR_WORKERS = 'IdentificationCodeForWorkers', // 劳务识别码
- PERSONAL_IDENTIFICATION_CODE = 'PersonalIdentificationCode', // 身份识别编号
- FOREIGNERS_ID_CARD = 'ForeignersIDCard', // 外国人身份证
- SPECIAL_PERMIT_OF_STAY = 'SpecialPermitOfStay', // 特殊的临时居留许可
- }
- export interface CreateUserParams {
- userId: string;
- userType: 'PERSONAL' | 'BUSINESS';
- userInfo: CustomerInfo;
- }
- export interface ChannelAdapter {
- // 创建渠道用户
- createUser(params: CreateUserParams): Promise<string>;
- // 创建钱包
- createWallet(params: any): Promise<string>;
- // 获取钱包
- getWallet(params: any): Promise<any>;
- // 获取关联银行账户
- associateBankAccountRequiredFieldsAsync(params: any): Promise<any>;
- // 关联银行账户
- associateBankAccount(params: any): Promise<any>;
- // 获取钱包余额
- getWalletBalance(params: any): Promise<string>;
- // 充值
- deposit(walletId: string, amount: number, currency: string): Promise<string>;
- // 提现
- withdraw(walletId: string, amount: number, currency: string): Promise<string>;
- // 转账
- transfer(
- fromWalletId: string,
- toWalletId: string,
- amount: number,
- currency: string
- ): Promise<string>;
- // 兑换
- exchange(
- fromWalletId: string,
- fromCurrency: string,
- toWalletId: string,
- toCurrency: string,
- amount: number
- ): Promise<string>;
- // 获取余额
- getBalance(walletId: string): Promise<number>;
- // 获取银行列表
- getBanks(params: any): Promise<any>;
- // 获取银行
- getBank(params: any): Promise<any>;
- // 设置客户信息
- setCustomerInfo(params: any): Promise<any>;
- // 创建收款人
- createBeneficiary(params: any): Promise<any>;
- // 更新收款人
- updateBeneficiary(params: any): Promise<any>;
- // 删除收款人
- deleteBeneficiary(params: any): Promise<any>;
- // 创建收款人地址
- createBeneficiaryAddress(params: any): Promise<any>;
- // 更新收款人地址
- updateBeneficiaryAddress(params: any): Promise<any>;
- // 删除收款人地址
- deleteBeneficiaryAddress(params: any): Promise<any>;
- // 法币入金
- payIn(params: any): Promise<any>;
- // 法币入金订单查询
- payInOrder(params: any): Promise<any>;
- // 法币入金订单取消
- payInOrderCancel(params: any): Promise<any>;
- // 法币出金
- payOut(params: any): Promise<any>;
- // 法币出金订单查询
- payOutOrder(params: any): Promise<any>;
- // 确认出金
- confirmPayOut(orderNo: string): Promise<any>;
- // 取消出金
- cancelPayOut(orderNo: string): Promise<any>;
- // 数字货币入金
- payInByChain(params: any): Promise<any>;
- // 数字货币出金
- payOutByChain(params: any): Promise<any>;
- // 生成签名
- generateSignature(
- timestamp: string,
- nonce: string,
- body: string,
- secret: string
- ): string;
- }
|