softbankjs
Version:
SBPS for js
187 lines (186 loc) • 7.87 kB
TypeScript
import { Locale, SoftbankResponse, SoftbankService, XMLFieldData } from "./softbank";
/**
* @enum {string}
* @property {string} NONE 0
* @property {string} ENCRYPTED 1
*/
export declare enum EncryptedFlag {
NONE = "0",
ENCRYPTED = "1"
}
/**
* @enum {string}
* @property {string} NONE 0
* @property {string} RETURN_ALL_MARK 1
* @property {string} RETURN_4_DIGITS 2
*/
export declare enum ResponseInfoType {
NONE = "0",
RETURN_ALL_MARK = "1",
RETURN_4_DIGITS = "2"
}
/**
* @enum {string}
* @property {string} NONE 0
* @property {string} RETURNED 1
*/
export declare enum CustomerInfoReturnFlag {
NONE = "0",
RETURNED = "1"
}
/**
* @enum {string}
* @property {string} NONE 0
* @property {string} RETURNED 1
*/
export declare enum CardBrandReturnFlag {
NONE = "0",
RETURNED = "1"
}
/**
* @constant {string}
* @property {string} J JCB
* @property {string} M MasterCard
* @property {string} V Visa
* @property {string} A American Express
* @property {string} D Diners Club
* @property {string} X その他
*/
export declare const CardBrand: {
J: string;
V: string;
M: string;
A: string;
D: string;
X: string;
};
export interface SoftbankListItem {
id: string;
name: string;
quantity: number;
tax: number;
amount: number;
}
interface PaymentMethodInfo {
cc_number: XMLFieldData;
cc_expiration: XMLFieldData;
cardbrand_code: XMLFieldData;
resrv1: XMLFieldData;
resrv2: XMLFieldData;
resrv3: XMLFieldData;
}
/**
* @interface
* @extends SoftbankResponse
* @property {XMLFieldData} res_pay_method_info
*/
export interface SoftbankCustomerResponse extends SoftbankResponse {
res_pay_method_info: PaymentMethodInfo;
}
/**
* @interface
* @extends SoftbankResponse
* @property {XMLFieldData} res_sps_transaction_id
* @property {XMLFieldData} res_tracking_id
* @property {XMLFieldData} res_process_date
*/
export interface SoftbankTransactionResponse extends SoftbankResponse {
res_sps_transaction_id: XMLFieldData;
res_tracking_id: XMLFieldData;
res_process_date: XMLFieldData;
}
/**
* @constructor
* @param {string} endpoint Softbank API endpoint
* @param {string} merchantId Softbank API merchant ID
* @param {string} serviceId Softbank API service ID
* @param {string} hashKey Softbank API hash key
* @param {string} locale Softbank API locale
*/
export declare class SoftbankCreditCard extends SoftbankService {
constructor(endpoint: string, merchantId: string, serviceId: string, hashKey: string, locale?: Locale, debug?: boolean);
/**
* @function createUpdateCustomer
* @memberof SoftbankCreditCard
* @param {boolean} isCreate true: create, false: update
* @param {string} customerId is required and must be unique
* @param {string} encryptedFlg is required
* @param {string} requestDate format: YYYYMMddHHmmss
* @param {string} ccNumber is required
* @param {string} ccExpiration is required, format: YYYYMM
* @param {string} securityCode
* @returns {Promise<SoftbankTransactionResponse>}
*/
createUpdateCustomer(isCreate: boolean | undefined, customerId: string, encryptedFlg: EncryptedFlag | undefined, requestDate: string, ccNumber: string, ccExpiration: string, securityCode: string): Promise<SoftbankCustomerResponse>;
/**
* @public
* @function createUpdateCustomerWithToken
* @memberof SoftbankCreditCard
* @param {boolean} isCreate mark true: create, false: update
* @param {string} customerId is required and must be unique
* @param {string} customerInfoReturnFlg is required
* @param {EncryptedFlag} encryptedFlg is required
* @param {string} requestDate format: YYYYMMddHHmmss
* @param {string} token generate from web client
* @param {string} tokenKey generate from web client
* @param {CardBrandReturnFlag} cardbrandReturnFlg is required
* @returns {Promise<SoftbankTransactionResponse>}
*/
createUpdateCustomerWithToken(isCreate: boolean | undefined, customerId: string, customerInfoReturnFlg: CustomerInfoReturnFlag | undefined, encryptedFlg: EncryptedFlag | undefined, requestDate: string, token: string, tokenKey: string, cardbrandReturnFlg?: CardBrandReturnFlag): Promise<SoftbankCustomerResponse>;
/**
* @function getCustomer
* @memberof SoftbankCreditCard
* @param {string} customerId customerId of createUpdateCustomer or createUpdateCustomerWithToken
* @param {CustomerInfoReturnFlag} customerReturnFlg is required
* @param {ResponseInfoType} responseInfoType is required
* @param {CardBrandReturnFlag} cardbrandReturnFlg is required
* @param {EncryptedFlag} encryptedFlg is required
* @param {string} requestDate format is YYYYMMDDHHmmss
* @returns {Promise<SoftbankTransactionResponse>}
*/
getCustomer(customerId: string, customerReturnFlg: CustomerInfoReturnFlag | undefined, responseInfoType: ResponseInfoType | undefined, cardbrandReturnFlg: CardBrandReturnFlag | undefined, encryptedFlg: EncryptedFlag | undefined, requestDate: string): Promise<SoftbankCustomerResponse>;
/**
* @function createTransaction
* @memberof SoftbankCreditCard
* @param {string} customerId customerId from createUpdateCustomer or createUpdateCustomerWithToken
* @param {string} orderId is required
* @param {string} itemId is required
* @param {string} amount is required
* @param {CustomerInfoReturnFlag} customerReturnFlg is required
* @param {EncryptedFlag} encryptedFlg is required
* @param {string} requestDate format is YYYYMMDDHHmmss
* @param {string} cardbrandReturnFlg is required
* @returns {Promise<SoftbankTransactionResponse>}
*/
createTransaction(customerId: string, orderId: string, itemId: string, amount: string, customerReturnFlg: CustomerInfoReturnFlag, encryptedFlg: EncryptedFlag | undefined, requestDate: string, itemName?: string): Promise<SoftbankTransactionResponse>;
/**
* @function confirmTransaction
* @memberof SoftbankCreditCard
* @param {string} transactionId transactionId from createTransaction
* @param {string} trackingId trackingId from createTransaction
* @param {string} requestDate requestDate format YYYYMMDDHHmmss
* @returns {Promise<SoftbankTransactionResponse>}
*/
confirmTransaction(transactionId: string, trackingId: string, requestDate: string): Promise<SoftbankTransactionResponse>;
/**
* @function requestPurchase
* @memberof SoftbankCreditCard
* @param {string} transactionId transactionId from createTransaction request
* @param {string} trackingId trackingId from createTransaction request
* @param {string} processDate processDate from createTransaction request
* @param {string} requestDate requestDate format YYYYMMDDHHmmss
* @returns {Promise<SoftbankTransactionResponse>}
*/
requestPurchase(transactionId: string, trackingId: string, processDate: string, requestDate: string): Promise<SoftbankTransactionResponse>;
/**
* @function refundPurchase
* @memberof SoftbankCreditCard
* @param {string} transactionId transactionId from createTransaction request
* @param {string} trackingId trackingId from createTransaction request
* @param {string} processDate processDate from createTransaction request
* @param {string} requestDate requestDate format YYYYMMDDHHmmss
* @returns {Promise<SoftbankTransactionResponse>}
*/
refundPurchase(transactionId: string, trackingId: string, processDate: string, requestDate: string): Promise<SoftbankTransactionResponse>;
}
export {};