portone-api-v2
Version:
PortOne REST API v2
142 lines • 3.94 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Payments = void 0;
const request_1 = require("../request");
class Payments extends request_1.PortOneRequest {
constructor(portone) {
super(portone);
}
/**
* 결제 정보 사전 등록
* @param paymentId 결제 건 ID
*/
async preRegister(paymentId, data) {
return this.request({
method: 'POST',
url: `/payments/${paymentId}/pre-register`,
data,
});
}
/**
* 결제 단건 조회
* @param paymentId 조회할 결제 ID
* @param storeId (Optional) 상점 ID. 미입력시 토큰 내 상점 ID 사용
*/
async find(paymentId, storeId) {
return this.request({
method: 'GET',
url: this.setQuery(`/payments/${paymentId}`, { storeId }),
});
}
/**
* 결제 다건 조회(페이지 기반)
*/
async findMany(data) {
return this.request({
method: 'GET',
url: '/payments',
data,
});
}
/**
* 결제 취소
* @param paymentId 결제 건 ID
*/
async cancel(paymentId, data) {
return this.request({
method: 'POST',
url: `/payments/${paymentId}/cancel`,
data,
});
}
/**
* 빌링키 결제
* @param paymentId 결제 건 ID
*/
async payWithBillingKey(paymentId, data) {
return this.request({
method: 'POST',
url: `/payments/${paymentId}/billing-key`,
data,
});
}
/**
* 수기 결제
* @param paymentId 결제 건 ID
*/
async payInstant(paymentId, data) {
return this.request({
method: 'POST',
url: `/payments/${paymentId}/instant`,
data,
});
}
/**
* 가상계좌 말소
* @param paymentId 결제 건 ID
* @param storeId (Optional) 상점 ID. 미입력시 토큰 내 상점 ID 사용
*/
async closeVirtualAccount(paymentId, storeId) {
return this.request({
method: 'POST',
url: this.setQuery(`/payments/${paymentId}/virtual-account/close`, { storeId }),
});
}
/**
* 에스크로 배송 정보 등록
* @param paymentId 결제 건 ID
*/
async createEscrowLogistics(paymentId, data) {
return this.request({
method: 'POST',
url: `/payments/${paymentId}/escrow/logistics`,
data,
});
}
/**
* 에스크로 배송 정보 수정
* @param paymentId 결제 건 ID
*/
async updateEscrowLogistics(paymentId, data) {
return this.request({
method: 'PATCH',
url: `/payments/${paymentId}/escrow/logistics`,
data,
});
}
/**
* 에스크로 구매 확정
* @param paymentId 결제 건 ID
*/
async completeEscrow(paymentId, data) {
return this.request({
method: 'POST',
url: `/payments/${paymentId}/escrow/complete`,
data,
});
}
/**
* 웹훅 재발송
* @param paymentId 결제 건 ID
*/
async resendWebhook(paymentId, data) {
return this.request({
method: 'POST',
url: `/payments/${paymentId}/resend-webhook`,
data,
});
}
/**
* 영수증 내 하위 상점 거래 등록. 지원되는 PG사: KG이니시스(이용 전 콘솔>결제연동에서 INIApi Key 등록 필요)
* @param paymentId 등록할 하위 상점 결제 건 ID
*/
async registerStoreReceipt(paymentId, data) {
return this.request({
method: 'POST',
url: `/payments/${paymentId}/register-store-receipt`,
data,
});
}
}
exports.Payments = Payments;
//# sourceMappingURL=payments.js.map