ECOM Checkout (SDK)
Подключение
<script type="text/javascript" src="https://partner.life-pay.ru/gui/lifepay_widget/js/sdk.min.js">
После подключения и загрузки скрипта с SDK все методы SDK будут доступны через свойство LpWpfSdk.
<script>
// LpWpfSdk или window.LpWpfSdk
</script>
Основные свойства и методы
Методы для работы с API:
ChargeApi
InvoiceApi
QRApi
ServiceApi
TokenApi
Класс карты:
LPCard
Валидация:
validator
Методы для работы с API
ChargeApi
confirmCharge
— завершение оплаты (после 3DS);createCharge
— оплатить инвойс;getChargeById
— получить статус оплаты.
interface ConfirmChargeOperationRequest {
invoiceId: string;
chargeId: string;
confirmChargeRequest?: ConfirmChargeRequest;
}
interface CreateChargeRequest {
invoiceId: string;
createCharge?: CreateCharge;
}
interface GetChargeByIdRequest {
invoiceId: string;
chargeId: string;
}
LpWpfSdk.ChargeApi.createCharge(requestParameters: CreateChargeRequest);
LpWpfSdk.ChargeApi.confirmCharge(requestParameters: ConfirmChargeOperationRequest);
LpWpfSdk.ChargeApi.getChargeById(requestParameters: GetChargeByIdRequest);
InvoiceApi
getInvoiceById
— параметры инвойса:- номер заказа;
- телефон/email плательщика;
- сумма в валюте;
- статус;
updateInvoice
— обновить параметры инвойса: телефон/email плательщика.
export interface GetInvoiceByIdRequest {
invoiceId: string;
}
export interface UpdateInvoiceRequest {
invoiceId: string;
updateInvoice?: UpdateInvoice;
}
LpWpfSdk.InvoiceApi.getInvoiceById(requestParameters: GetInvoiceByIdRequest);
LpWpfSdk.InvoiceApi.updateInvoice(requestParameters: UpdateInvoiceRequest);
QRApi
createQrCode
— сгенерировать QR-код (для СБП) возвращает *.svg.
interface CreateQrCodeRequest {
invoiceId: string;
}
LpWpfSdk.QRApi.createQrCode(requestParameters: CreateQrCodeRequest);
ServiceApi
getServiceById
- настройки сервиса:- логотип;
- название сервиса;
- доступные каналы оплаты;
- страница для перехода после успешной оплаты;
- страница для перехода после неуспешной оплаты;
- страница на оферту для рекуррентов.
export interface GetServiceByIdRequest {
serviceId: number;
}
LpWpfSdk.ServiceApi.getServiceById(requestParameters: GetServiceByIdRequest);
TokenApi
createPaymentToken
— создать платежный токен (оплата картой);getPaymentTokenById
— статус токена карты.
export interface CreatePaymentTokenRequest {
invoiceId: string;
createPaymentToken?: CreatePaymentToken;
}
export interface GetPaymentTokenByIdRequest {
invoiceId: string;
tokenId: string;
}
LpWpfSdk.TokenApi.createPaymentToken(requestParameters: CreatePaymentTokenRequest);
LpWpfSdk.TokenApi.getPaymentTokenById(requestParameters: GetPaymentTokenByIdRequest);
Класс карты
interface CardInfo {
cardNumber: string,
name: string,
expDateMonth: string,
expDateYear: string,
cvv: string
}
const card = new LpWpfSdk.LPCard(card: CardInfo);
card.tokenize(bKey: string)
Валидация
validator:
cardNumber
— валидация номера карты;expiration
— валидация срока карты;cvv
— валидация cvv карты.
const isCardNumberValid: boolean = LpWpfSdk.validator.cardNumber('2201382000000062': string);
const isExpValid: boolean = LpWpfSdk.validator.expiration(12: number, 24: number);
const isCvvValid: boolean = LpWpfSdk.validator.cvv('229': string);