nasspay
Version:
TypeScript/JavaScript SDK for integrating with the Nass Merchant Payment Gateway. Supports both Portal and Direct API integration methods with comprehensive type definitions.
46 lines (45 loc) • 2.95 kB
TypeScript
import { DirectApiTransactionInitRequest, DirectApiTransactionInitResponse, CardDetails, StatusCheckResponse } from "./types";
/**
* Initiates a transaction for Direct API Integration.
* This is the first step where you get pSign and transactionParams.
* @param baseUrl The base URL for the Nass Payment Gateway API (Portal part, for initial transaction request).
* @param accessToken The access token obtained from authentication.
* @param transactionDetails Details of the transaction to initiate.
* @returns A Promise that resolves to the initial transaction response. The response will contain pSign and transactionParams (including nonce and timestamp), which are required for Direct API Integration. [cite: 32]
* @throws {Error} If the initiation fails.
*/
export declare function initiateDirectApiTransaction(baseUrl: string, accessToken: string, transactionDetails: DirectApiTransactionInitRequest): Promise<DirectApiTransactionInitResponse>;
/**
* Sends cardholder data for authorization in Direct API Integration.
* After receiving the response from /transaction, the merchant system must send a POST request to the transaction processing URL (tURL). [cite: 33]
* @param transactionProcessingUrl The direct transaction processing URL (tURL).
* @param pSign The signature from the initial transaction response. [cite: 34]
* @param nonce A unique identifier for the transaction. [cite: 34]
* @param cardDetails Cardholder details (PAN, expiry date, CVV). [cite: 34]
* @param orderDetails Order Number, Amount and all other parameters from the initial request. [cite: 35]
* @returns A Promise that resolves to the authorization response (likely an HTML string for redirection).
* @throws {Error} If sending cardholder data fails.
*/
export declare function sendCardholderData(transactionProcessingUrl: string, pSign: string, // pSign: The signature from the initial transaction response [cite: 34]
nonce: string, // NONCE: A unique identifier for the transaction [cite: 34]
cardDetails: CardDetails, // Cardholder details (PAN, expiry date, CVV). [cite: 34]
orderDetails: {
orderId: string;
amount: string;
currency: string;
transactionType: string;
terminalId: string;
orderDesc: string;
timestamp: string;
backRefUrl: string;
}): Promise<string>;
/**
* Checks the status of a transaction initiated via Direct API Integration.
* Merchants can check the status of a transaction within 24 hours of initiation. [cite: 44]
* @param baseUrl The base URL for the Nass Payment Gateway API (Portal part, for status check).
* @param accessToken The access token obtained from authentication.
* @param orderId The unique order identifier.
* @returns A Promise that resolves to the transaction status response.
* @throws {Error} If checking the status fails.
*/
export declare function checkDirectApiStatus(baseUrl: string, accessToken: string, orderId: string): Promise<StatusCheckResponse>;