/// <summary> /// GEL, USD, EUR... To ლ, $, . /// </summary> /// <param name="currency"></param> /// <returns></returns> public static string ToCurrencySymbol(ISO4217.ISO4217 currency) { switch (currency) { case ISO4217.ISO4217.EUR: return("€"); case ISO4217.ISO4217.GBP: return("£"); case ISO4217.ISO4217.GEL: return("₾"); case ISO4217.ISO4217.RUB: return("₽"); case ISO4217.ISO4217.USD: return("$"); default: return(string.Empty); } }
public async Task <ExecuteTransactionResponse> ExecuteRegularPaymentAsync(int amount, ISO4217.ISO4217 currency, string clientIp, string description, string language, string regularPaymentId) { return(await ExecuteRegularPaymentAsync(amount, (int)currency, clientIp, description, language, regularPaymentId)); }
/// <summary> /// Request for SMS transaction/DMS authorization registration /// </summary> /// <param name="amount">transaction amount in fractional units, mandatory (up to 12 digits)</param> /// <param name="currency">transaction currency code (ISO 4217), mandatory, (3 digits)</param> /// <param name="clientIp">client’s IP address, mandatory (15 characters)</param> /// <param name="description">transaction details (up to 125 characters)</param> /// <param name="language"></param> /// <param name="regularPaymentId">merchant-selected regular payment identifier</param> /// <param name="expiry">preferred deadline for a regular payment MMYY</param> /// <param name="overwriteExistingRecurring">If recurring payment for current client (card) is already defined for template, it needs to be overwritten. Overwriting recurring payments can be done by specifying additional parameter perspayee_overwrite=1. In this case all existing recurring payments for template defined for current client (card) will be deleted.</param> /// <param name="dms"></param> /// <returns></returns> public async Task <RegisterRegularPayment> RegisterRegularPaymentAsync(int amount, ISO4217.ISO4217 currency, string clientIp, string description, string language, string regularPaymentId, DateTime expiry, bool overwriteExistingRecurring = false, bool dms = false) { return(await RegisterRegularPaymentAsync(amount, (int)currency, clientIp, description, language, regularPaymentId, expiry, overwriteExistingRecurring, dms)); }
/// <summary> /// პრეავტორიზაციის კომიტი (ბლოკში არსებული თანხის ჩამოსაჭრელად) /// </summary> /// <param name="transactionId"></param> /// <param name="amount"></param> /// <param name="currency"></param> /// <param name="clientIp"></param> /// <param name="description"></param> /// <param name="language">Language EN or GE</param> /// <returns> /// შედეგი: /// RESULT: OK /// RESULT_CODE: 000 /// RRN: 123456789012 /// APPROVAL_CODE: 123456 /// CARD_NUMBER: 9***********999 /// </returns> public Task <ExecuteDmsTransactionResponse> ExecuteDmsTransactionAsync(string transactionId, int amount, ISO4217.ISO4217 currency, string clientIp, string description, string language) => ExecuteDmsTransactionAsync(transactionId, amount, (int)currency, clientIp, description, language);
/// <summary> /// პრეავტორიზაციის კომიტი (ბლოკში არსებული თანხის ჩამოსაჭრელად) /// </summary> /// <param name="transactionId"></param> /// <param name="amount"></param> /// <param name="currency"></param> /// <param name="clientIp"></param> /// <param name="description"></param> /// <param name="language">Language EN or GE</param> /// <returns> /// შედეგი: /// RESULT: OK /// RESULT_CODE: 000 /// RRN: 123456789012 /// APPROVAL_CODE: 123456 /// CARD_NUMBER: 9***********999 /// </returns> public Task <ExecuteDmsTransactionResponse> ExecuteDmsTransactionAsync(string transactionId, decimal amount, ISO4217.ISO4217 currency, string clientIp, string description, string language) => ExecuteDmsTransactionAsync(transactionId, Convert.ToInt32(amount * 100M), (int)currency, clientIp, description, language);
/// <summary> /// Registering DMS authorization (block amount) / Регистрация DMS авторизации (Прошу учесть, что после этой команды необходимо выполнить процедуру 1.1.3 Transaction result, для выяснения результата.) /// </summary> /// <param name="amount"></param> /// <param name="currency"></param> /// <param name="clientIp"></param> /// <param name="description"></param> /// <param name="language">Language EN or GE</param> /// <returns>transaction identifier (28 characters in base64 encoding). In case of an error, the returned string of symbols begins with ‘error:‘.</returns> public Task <TransactionResponse> RegisterDmsAuthorizationAsync(int amount, ISO4217.ISO4217 currency, string clientIp, string description, string language) => RegisterDmsAuthorizationAsync(amount, (int)currency, clientIp, description, language);
/// <summary> /// Registering DMS authorization (block amount) / Регистрация DMS авторизации (Прошу учесть, что после этой команды необходимо выполнить процедуру 1.1.3 Transaction result, для выяснения результата.) /// </summary> /// <param name="amount"></param> /// <param name="currency"></param> /// <param name="clientIp"></param> /// <param name="description"></param> /// <param name="language">Language EN or GE</param> /// <returns>transaction identifier (28 characters in base64 encoding). In case of an error, the returned string of symbols begins with ‘error:‘.</returns> public Task <TransactionResponse> RegisterDmsAuthorizationAsync(decimal amount, ISO4217.ISO4217 currency, string clientIp, string description, string language) => RegisterDmsAuthorizationAsync(Convert.ToInt32(amount * 100M), (int)currency, clientIp, description, language);