@codingwithmanny/iyzipay-js
Version:
A Typesafe Iyzico JS SDK
93 lines (92 loc) • 2.95 kB
text/typescript
// Imports
// =================================
import type {
SubmerchantCreateType,
SubmerchantRetrieveType,
SubmerchantUpdateType,
} from "../types/models";
import baseRequest from "../utils/baseRequest";
import { baseClient } from "../client";
/**
* @dev EN:
* @dev TR:
* @param client
* @returns
*/
export default function (client: ReturnType<typeof baseClient>) {
return {
/**
* @dev EN: Create a submerchant
* @dev TR: Alt bayi oluştur
* @param payload
* @returns
*/
create: (payload: SubmerchantCreateType) =>
baseRequest(client, {
endpoint: "/onboarding/submerchant",
method: "POST",
body: {
locale: payload?.["locale"],
conversationId: payload?.["conversationId"],
name: payload?.["name"],
email: payload?.["email"],
gsmNumber: payload?.["gsmNumber"],
address: payload?.["address"],
iban: payload?.["iban"],
taxOffice: payload?.["taxOffice"],
contactName: payload?.["contactName"],
contactSurname: payload?.["contactSurname"],
legalCompanyTitle: payload?.["legalCompanyTitle"],
swiftCode: payload?.["swiftCode"],
currency: payload?.["currency"],
subMerchantExternalId: payload?.["subMerchantExternalId"],
identityNumber: payload?.["identityNumber"],
taxNumber: payload?.["taxNumber"],
subMerchantType: payload?.["subMerchantType"],
},
}),
/**
* @dev EN: Retrieve a submerchant
* @dev TR: Alt bayi detaylarını getir
* @param payload
* @returns
*/
retrieve: (payload: SubmerchantRetrieveType) => baseRequest(client, {
endpoint: "/onboarding/submerchant/detail",
method: "POST",
body: {
locale: payload?.["locale"],
conversationId: payload?.["conversationId"],
subMerchantExternalId: payload?.["subMerchantExternalId"],
},
}),
/**
* @dev EN: Update a submerchant
* @dev TR: Alt bayi güncelle
* @param payload
* @returns
*/
update: (payload: SubmerchantUpdateType) => baseRequest(client, {
endpoint: "/onboarding/submerchant",
method: "PUT",
body: {
locale: payload?.["locale"],
conversationId: payload?.["conversationId"],
name: payload?.["name"],
email: payload?.["email"],
gsmNumber: payload?.["gsmNumber"],
address: payload?.["address"],
iban: payload?.["iban"],
contactName: payload?.["contactName"],
contactSurname: payload?.["contactSurname"],
currency: payload?.["currency"],
subMerchantKey: payload?.["subMerchantKey"],
identityNumber: payload?.["identityNumber"],
taxOffice: payload?.["taxOffice"],
legalCompanyTitle: payload?.["legalCompanyTitle"],
swiftCode: payload?.["swiftCode"],
taxNumber: payload?.["taxNumber"],
},
}),
}
}