payment
This commit is contained in:
@@ -21,7 +21,7 @@ export class ZarinpalGateway implements IPaymentGateway {
|
||||
private readonly zarinpalVerifyUrl: string;
|
||||
private readonly zarinpalPaymentBaseUrl: string;
|
||||
private readonly zarinpalMerchantId: string;
|
||||
private readonly websiteUrl: string = 'https://negareh.ir'
|
||||
private readonly apiUrl: string = 'https://negareh-api.dev.danakcorp.com/'
|
||||
private readonly axiosConfig = {
|
||||
timeout: 10_000,
|
||||
headers: {
|
||||
@@ -31,10 +31,10 @@ export class ZarinpalGateway implements IPaymentGateway {
|
||||
|
||||
constructor(private readonly configService: ConfigService) {
|
||||
const zarinpalBaseUrl = this.configService.get<string>('ZARINPAL_BASE_URL') || 'https://sandbox.zarinpal.com';
|
||||
this.zarinpalPaymentBaseUrl = zarinpalBaseUrl;
|
||||
this.zarinpalRequestUrl = `${zarinpalBaseUrl}/pg/v4/payment/request.json`;
|
||||
this.zarinpalVerifyUrl = `${zarinpalBaseUrl}/pg/v4/payment/verify.json`;
|
||||
this.zarinpalMerchantId = this.configService.getOrThrow<string>('ZARINPAL_BASE_MERCHANT')
|
||||
this.apiUrl = this.configService.getOrThrow<string>('API_URL') || 'https://negareh-api.dev.danakcorp.com/'
|
||||
}
|
||||
|
||||
private getAxiosErrorData(error: unknown): { status?: number; data?: unknown } | null {
|
||||
@@ -44,7 +44,7 @@ export class ZarinpalGateway implements IPaymentGateway {
|
||||
|
||||
async requestPayment({ amount, invoiceId }: IRequestPaymentParams): Promise<IRequestPaymentData> {
|
||||
// Transform camelCase to snake_case for Zarinpal API v4
|
||||
const callbackUrl = `${this.websiteUrl}/verify/${invoiceId}`;
|
||||
const callbackUrl = `${this.apiUrl}/verify/${invoiceId}`;
|
||||
const zarinpalRequest: IZarinpalRequestPayment = {
|
||||
amount,
|
||||
merchant_id: this.zarinpalMerchantId,
|
||||
|
||||
Reference in New Issue
Block a user