@mnpay/golomt
v1.3.0
Published
Client library for Golomt Bank’s payment API — invoices, inquiries and token confirmation.
Maintainers
Readme
Golomt Package
The Golomt package is a client library for interacting with Golomt's API. It provides a set of functions to handle various operations such as creating invoices, making inquiries, confirming tokens, and more.
Installation
To install the package, use npm or yarn:
npm install @mnpay/golomtor
yarn add @mnpay/golomtUsage
First, import the useGolomt function from the package:
import { useGolomt } from '@mnpay/golomt';Configuration
To use the Golomt client, you need to provide a configuration object. The configuration should include your API endpoint and token:
const config = {
endpoint: 'https://api.golomt.com', // Optional, defaults to golomtDefaultBaseUrl
token: 'your-access-token', // Required
secret: 'your-secret'
};Initialize the Client
Create an instance of the Golomt client using the useGolomt function:
const golomtClient = useGolomt(config);Available Methods
The Golomt client provides the following methods:
- createInvoice: Create a new invoice.
- inquiry: Make an inquiry request.
- tokenConfirmation: Confirm a token.
- payTransaction: Process a payment transaction.
- checkTransaction: Check the status of a transaction.
- tokenCreation: Create a new token.
- getSettlementDetails: Retrieve settlement details.
- onNotification: Handle notifications.
Example
Here's an example of how to create an invoice:
const invoiceData = {
// Your invoice data here
};
golomtClient.createInvoice(invoiceData)
.then(response => {
console.log('Invoice created:', response);
})
.catch(error => {
console.error('Error creating invoice:', error);
});Inquiry Request Example
Here's how to make an inquiry request:
const inquiryParams = {
transactionId: 'unique-transaction-id',
checksum: 'calculated-checksum',
};
golomtClient.inquiry(inquiryParams)
.then(response => {
console.log('Inquiry Response:', response);
})
.catch(error => {
console.error('Error during inquiry:', error);
});Invoice Request Example
Here's how to create an invoice:
const invoiceParams = {
amount: 1000,
callback: 'https://your-callback-url.com',
genToken: 'Y',
returnType: 'POST',
transactionId: 'unique-transaction-id',
socialDeeplink: 'N',
};
golomtClient.createInvoice(invoiceParams)
.then(response => {
console.log('Invoice Created:', response);
})
.catch(error => {
console.error('Error creating invoice:', error);
});Notification Example
Handling a notification:
const handleNotification = (notificationPayload) => {
console.log('Notification received:', notificationPayload);
// Process the notification payload
};
golomtClient.onNotification(handleNotification);Pay Transaction Request Example
Here's how to process a payment transaction:
const payTransactionParams = {
amount: '1000',
checksum: 'calculated-checksum',
transactionId: 'unique-transaction-id',
lang: 'en',
token: 'your-token',
};
golomtClient.payTransaction(payTransactionParams)
.then(response => {
console.log('Payment Transaction Response:', response);
})
.catch(error => {
console.error('Error processing payment transaction:', error);
});Token Creation Request Example
Here's how to create a token:
const tokenCreationParams = {
callback: 'https://your-callback-url.com',
checksum: 'calculated-checksum',
returnType: 'POST',
transactionId: 'unique-transaction-id',
};
golomtClient.tokenCreation(tokenCreationParams)
.then(response => {
console.log('Token Created:', response);
})
.catch(error => {
console.error('Error creating token:', error);
});Check Transaction Request Example
Here's how to check a transaction:
const checkTransactionParams = {
checksum: 'calculated-checksum',
transactionId: 'unique-transaction-id',
};
golomtClient.checkTransaction(checkTransactionParams)
.then(response => {
console.log('Check Transaction Response:', response);
})
.catch(error => {
console.error('Error checking transaction:', error);
});Request and Response Documentation
Inquiry Request
Request Parameters:
transactionId(string): Unique transaction ID provided by the organization.checksum(string): A checksum calculated astransactionId + transactionId.
Response Parameters:
status(string): Status of the payment, either 'SENT' or 'PENDING'.amount(string): Amount deducted from the card.bank(string): Name of the card-issuing bank.cardHolder(string): Name of the cardholder.cardNumber(string): Card number used for the transaction.errorDesc(string): Description of the status code.errorCode(string): Status code of the transaction.transactionId(string): Merchant's transaction ID.checksum(string): Checksum calculated astransactionId + errorCode + amount + token.token(string, optional): Token number representing the card, present only if the token is created.
Invoice Request
Request Parameters:
amount(number): Amount to be deducted from the card.callback(string): Merchant's URL for callback or redirect.checksum(string, optional): Checksum calculated astransactionId + amount + returnType + callback.genToken(YesNo): 'Y' to generate a token after the transaction, 'N' otherwise.returnType(string): Method for redirecting to the merchant's URL, either 'POST', 'GET', or 'MOBILE'.transactionId(string): Merchant's transaction ID.socialDeeplink(YesNo): 'Y' to receive a social pay deeplink, 'N' otherwise.
Response Parameters:
checksum(string): Checksum generated by the bank.transactionId(string): Merchant's transaction ID.invoice(string): Invoice number generated for the transaction.socialDeeplink(string): Social pay deeplink.
Notification
Payload Parameters:
amount(string): Amount involved in the transaction.bank(string): Name of the bank.errorDesc(string): Description of any error.checksum(string): Checksum for verification.errorCode(string): Error code if any.cardHolder(string): Name of the cardholder.transactionId(string): Transaction ID.cardNumber(string): Card number used.token(string, optional): Token number, if available.
Pay Transaction Request
Request Parameters:
amount(string): Amount to be paid.checksum(string): Checksum for verification.transactionId(string): Transaction ID.lang(string): Language code.token(string): Token for the transaction.
Response Parameters:
amount(string): Amount involved in the transaction.errorDesc(string): Description of any error.checksum(string): Checksum for verification.errorCode(string): Error code if any.cardNumber(string): Card number used.transactionId(string): Transaction ID.
Token Creation Request
Request Parameters:
callback(string): Callback URL.checksum(string): Checksum for verification.returnType(string): Return type for the callback.transactionId(string): Transaction ID.
Response Parameters:
checksum(string): Checksum for verification.transactionId(string): Transaction ID.invoice(string): Invoice number.
Check Transaction Request
Request Parameters:
checksum(string): Checksum for verification.transactionId(string): Transaction ID.
Response Parameters:
amount(string): Amount involved in the transaction.errorDesc(string): Description of any error.checksum(string): Checksum for verification.errorCode(string): Error code if any.transactionId(string): Transaction ID.cardNumber(string): Card number used.token(string, optional): Token number, if available.
