A javascript library that makes it easier to interact with the CIP emergepay API.
import {emergepaySdk, TransactionType, Method} from 'emergepay-sdk';
//These values are provided by ChargeItPro and should be set before attempting to run any of the following SDK methods.
const oid = "your_oid";
const authToken = "your_authToken";
const environmentUrl = "environmentUrl";
const emergepay: emergepaySdk = new emergepaySdk({oid, authToken, environmentUrl});
//Get an external transaction id to use in future SDK requests
const externalTransactionId = emergepay.getExternalTransactionId();
//Start a transaction and get a transaction token.
//The transactionType you choose will depend on what type of transaction you are trying to complete.
//The method you choose will depend on which integration type you chose (modal, urlPage, or fields).
//base_amount and external_tran_id are required in the fields array.
emergepay.startTransaction({
transactionType: TransactionType.CreditSale | TransactionType.CreditReturn | TransactionType.CreditSaveCard,
method: Method.Modal | Method.UrlPage | Method.HostedFields,
fields: [
{ id: "base_amount", value: "0.01" },
{ id: "external_tran_id", value: emergepay.getExternalTransactionId() }
]
})
.then(response => {
console.log(response.transactionToken);
})
.catch(error => {
console.log(error);
});
//Cancel a transaction based on the transactionToken (the token received from the startTransaction call).
emergepay.cancelTransaction(transactionToken)
.then(response => console.log(response))
.catch(error => console.log(error));
//Void a transaction.
//Note: Ensure that you add a valid uniqueTransId before trying to run a void.
//uniqueTransId and externalTransactionId are required.
emergepay.voidTransaction({
uniqueTransId: 'uniqueTransId_goes_here',
externalTransactionId: emergepay.getExternalTransactionId()
})
.then(response => {
console.log(response);
})
.catch(error => {
console.log(error);
});
//Retrieve the results of a transaction.
//Note: Ensure that you pass in the externalTransactionId of the transaction you're trying to look up.
emergepay.retrieveTransaction(externalTransactionId)
.then(response => {
console.log(response);
})
.catch(error => {
console.log(error);
});
//Run a tokenized payment.
//Note: Ensure that your uniqueTransId is valid and that you specify an amount before trying to run the transaction.
//uniqueTransId, amount, and externalTransactionId are required.
emergepay.tokenizedPaymentTransaction({
uniqueTransId: 'uniqueTransId_goes_here',
amount: '0.01',
externalTransactionId: emergepay.getExternalTransactionId()
})
.then(response => {
console.log(response);
})
.catch(error => {
console.log(error);
});
//Run a tokenized refund.
//Note: Ensure that your uniqueTransId is valid and that you specify an amount before trying to run the transaction.
//uniqueTransId, amount, and externalTransactionId are required.
emergepay.tokenizedRefundTransaction({
uniqueTransId: 'uniqueTransId_goes_here',
amount: '0.01',
externalTransactionId: emergepay.getExternalTransactionId()
})
.then(response => {
console.log(response);
})
.catch(error => {
console.log(error);
});
//Acknowledge a transaction.
//Note: externalTransactionId is required and can be retrieved from a previous transaction.
emergepay.acknowledge("external_transaction_id_goes_here")
.then(response => {
console.log(response);
})
.catch(error => {
console.log(error);
});