UNPKG

@congminh1254/shopee-sdk

Version:
116 lines (115 loc) 5.19 kB
import { ShopeeConfig } from "../sdk.js"; import { BaseManager } from "./base.manager.js"; import { QueryBrShopEnrollmentStatusParams, QueryBrShopEnrollmentStatusResponse, QueryBrShopBlockStatusParams, QueryBrShopBlockStatusResponse, QueryBrShopInvoiceErrorParams, QueryBrShopInvoiceErrorResponse, QueryBrSkuBlockStatusParams, QueryBrSkuBlockStatusResponse } from "../schemas/fbs.js"; export declare class FbsManager extends BaseManager { constructor(config: ShopeeConfig); /** * Check whether a given shop_id is eligible to enroll in the Brazil Fulfilled-by-Shopee (FBS) service. * This API is for Brazil region only. * * @param params - Parameters for querying enrollment status (empty object) * * @returns A promise that resolves to the enrollment status response containing: * - shop_id: Shopee's unique identifier for the shop * - enrollment_status: 1=enable enrollment, 2=disable enrollment, 3=already enrollment * - enable_enrollment_time: The time when the shop can enroll in FBS * * @throws {Error} When the API request fails or returns an error * * @example * ```typescript * const status = await sdk.fbs.queryBrShopEnrollmentStatus({}); * if (status.response.enrollment_status === 1) { * console.log('Shop can enroll in FBS'); * } * ``` */ queryBrShopEnrollmentStatus(params?: QueryBrShopEnrollmentStatusParams): Promise<QueryBrShopEnrollmentStatusResponse>; /** * Check whether an FBS shop is blocked due to invoice-related issues. * When blocked, the shop cannot create new Inbound Requests, and its warehouse * inventory is restricted from being sold. This API is for Brazil region only. * * @param params - Parameters for querying shop block status (empty object) * * @returns A promise that resolves to the block status response containing: * - shop_id: Shopee's unique identifier for the shop * - is_block: Whether the shop is blocked * * @throws {Error} When the API request fails or returns an error * * @example * ```typescript * const status = await sdk.fbs.queryBrShopBlockStatus({}); * if (status.response.is_block) { * console.log('Shop is blocked due to invoice issues'); * } * ``` */ queryBrShopBlockStatus(params?: QueryBrShopBlockStatusParams): Promise<QueryBrShopBlockStatusResponse>; /** * Get failed invoice issuance information for FBS-related processes. * This covers Inbound Requests, RTS Requests, Sales Orders, and Move Transfer Orders. * This API is for Brazil region only. * * @param params - Parameters for querying invoice errors * @param params.page_no - Page number (default: 1) * @param params.page_size - Page size, max: 100 (default: 10) * * @returns A promise that resolves to the invoice error response containing: * - total: Total number of invoice errors * - list: List of invoice errors with details including: * - biz_request_type: Type of business request (1=Inbound, 2=RTS, 3=Sales, 4=Move Transfer, 5=IA) * - biz_request_id: Business request ID * - fail_reason: Reason for invoice failure * - fail_type: 1=SKU tax info error, 2=seller tax info error * - invoice_deadline_time: Deadline to fix the issue * - shop_sku_list: List of SKUs with errors * * @throws {Error} When the API request fails or returns an error * * @example * ```typescript * const errors = await sdk.fbs.queryBrShopInvoiceError({ * page_no: 1, * page_size: 20, * }); * * errors.response.list.forEach(error => { * console.log(`Request ID: ${error.biz_request_id}`); * console.log(`Failed reason: ${error.fail_reason}`); * }); * ``` */ queryBrShopInvoiceError(params?: QueryBrShopInvoiceErrorParams): Promise<QueryBrShopInvoiceErrorResponse>; /** * Check whether an FBS product is blocked due to invoice-related issues. * When blocked, the product cannot be included in new Inbound Requests, and its * warehouse inventory is restricted from being sold. This API is for Brazil region only. * * @param params - Parameters for querying SKU block status * @param params.shop_sku_id - Shop SKU ID in format "itemID_modelID" * * @returns A promise that resolves to the SKU block status response containing: * - shop_sku_id: The queried SKU ID * - is_block: Whether the SKU is blocked * - shop_item_id: Item ID * - shop_model_id: Model ID * - shop_item_name: Item name * - shop_model_name: Model name * * @throws {Error} When the API request fails or returns an error * * @example * ```typescript * const status = await sdk.fbs.queryBrSkuBlockStatus({ * shop_sku_id: '123456_789012', * }); * * if (status.response.is_block) { * console.log(`SKU ${status.response.shop_item_name} is blocked`); * } * ``` */ queryBrSkuBlockStatus(params: QueryBrSkuBlockStatusParams): Promise<QueryBrSkuBlockStatusResponse>; }