diff --git a/src/zatca/api/index.ts b/src/zatca/api/index.ts index 62aad37..b7470e8 100644 --- a/src/zatca/api/index.ts +++ b/src/zatca/api/index.ts @@ -49,8 +49,9 @@ interface ProductionAPIInterface { class API { - - constructor () { + baseUrl; + constructor (isProduction: boolean = false) { + this.baseUrl = isProduction? settings.PRODUCTION_BASEURL : settings.SANDBOX_BASEURL; } @@ -75,7 +76,7 @@ class API { OTP: otp }; - const response = await axios.post(`${settings.SANDBOX_BASEURL}/compliance`, + const response = await axios.post(`${this.baseUrl}/compliance`, {csr: Buffer.from(csr).toString("base64")}, {headers: {...auth_headers, ...headers}} ); @@ -95,7 +96,7 @@ class API { "Accept-Language": "en", }; - const response = await axios.post(`${settings.SANDBOX_BASEURL}/compliance/invoices`, + const response = await axios.post(`${this.baseUrl}/compliance/invoices`, { invoiceHash: invoice_hash, uuid: egs_uuid, @@ -123,7 +124,7 @@ class API { "Accept-Version": settings.API_VERSION }; - const response = await axios.post(`${settings.SANDBOX_BASEURL}/production/csids`, + const response = await axios.post(`${this.baseUrl}/production/csids`, {compliance_request_id: compliance_request_id}, {headers: {...auth_headers, ...headers}} ); @@ -144,7 +145,7 @@ class API { "Clearance-Status": "0" }; - const response = await axios.post(`${settings.SANDBOX_BASEURL}/invoices/reporting/single`, + const response = await axios.post(`${this.baseUrl}/invoices/reporting/single`, { invoiceHash: invoice_hash, uuid: egs_uuid, diff --git a/src/zatca/egs/index.ts b/src/zatca/egs/index.ts index d062b8d..6cfa250 100644 --- a/src/zatca/egs/index.ts +++ b/src/zatca/egs/index.ts @@ -126,9 +126,9 @@ export class EGS { private egs_info: EGSUnitInfo; private api: API; - constructor(egs_info: EGSUnitInfo) { + constructor(egs_info: EGSUnitInfo, isProduction: boolean = false) { this.egs_info = egs_info; - this.api = new API(); + this.api = new API(isProduction); }