Signature Verification

To confirm that the data that we are sending is authentic and comes from VoPay rather than a party pretending to be VoPay we will send you a ValidationKey. This ValidationKey is a combination of your API shared secret key and the record ID (i.e., Transaction ID, eLinx Request ID, etc) codified by HMAC SHA1

function calculateKey($apiSharedsecret, $ID)  
{  
    return sha1($apiSharedsecret . $ID);  
}

$calculateKey = calculateKey('IUAz1NGoyM02VsoODfIzQA==', '1');  
if ($calculateKey == $validationKey) {  
    // Validation Key Ok.  
} else {  
    // Invalid Validation Key. Ignore the webhook  
}

Record IDs

Event(s)IDHow do I find this ID?
transaction
paymentreceived
VoPay Transaction ID

The VoPay Transaction ID is returned in the API response when submitting a transaction:

{
"Success": "true",
"ErrorMessage": "",
"TransactionID": "4458874"
}

elinxeLinx Request ID

The eLinx Request ID is returned in the API response when creating a eLinx request:

{
"Success": "true",
"ErrorMessage": "",
"ELinxRequestID": "548997",
"Link": "https://request.vopay.com/af10dfa3fdd1124" ,
"Status": "pending",
"Amount": "100.00",
"ReceiverName": "John",
"ReceiverEmailAddress": "[email protected] ",
"SenderName": "Jane",
"SenderEmailAddress": "[email protected] ",
"ELinxRequestType": "transaction"
"PaymentType": "fund"
}

bankaccountBank Account Token

The Bank Account Token is returned in the API response you add a bank account via the /iq11/tokenize endpoint, or after a customer connects their bank account via the iFrame:

{
"Success": "true",
"ErrorMessage": "",
"Token": "adf98dafer7d8add8"
}

creditcardCredit Card Token

The Credit Card Token is returned in the API response you add a credit card via the /credit-card/link-credit-card endpoint, or after a customer connects their credit card via the iFrame:

{
"Success": "true",
"ErrorMessage": "",
"Token": "adf98dafer7d8add8"
}

debitcardDebit Card Token

The Debit Card Token is returned in the API response you add a debit card via the /debit-card/link-card endpoint, or after a customer connects their debit card via the iFrame:

{
"Success": "true",
"ErrorMessage": "",
"Token": "adf98dafer7d8add8"
}

scheduledtransactionsScheduled Transaction ID

The Scheduled Transaction ID is returned in the API response when creating a scheduled transaction:

{
"Success": "true",
"ErrorMessage": "",
"Amount": "200.00",
"ScheduledTransactionID": "66548",
"Frequency": "single",
"Description": "",
"ScheduleStartDate": "2020-01-01",
"Status": "in progress"
}

batchrequestBatch Transaction Request ID

The Batch Transaction Request ID is returned in the API response when submitting a batch transaction request:

{
"Success": "true",
"ErrorMessage": "",
"BatchTransactionRequestID": "554879",
"TotalSubmittedTransactions": "1000"
}

batchdetailBatch Transaction Request Detail IDThe Batch Transaction Request Detail ID is returned in the API response when fetching the details of a batch transaction request:
{
"Success": "true",
"ErrorMessage": "",
"BatchDetails": {
"0": {
"ResponseData": {},
"BatchTransactionRequestDetailsRecordID": "234562",
"TransactionPayload": {},
"FailureReason": "",
"Status":"pending"
}
}
accountonboarding
accountonboardingapplication
accountbalance
accountlimit
rollingreserve
clientaccountverification
clientaccountinformationcomplete
VoPay Account ID

The VoPay Account ID is returned in the API response when creating an account:

{
"Success": "true",
"ErrorMessage": "",
"Message": "",
"AccountID": "AccountTest1",
"APISharedSecret": "AbcDefGi+KlmnopQRSTu183==",
"APIKey": "eddc0f5e37d20f98b486daf842447ec1f225f859"
}

clientaccountbalanceClient Account / Contact ID

The Client Account ID is returned in the API response when creating a a client account / contact:

{
"Success": "true",
"ErrorMessage": "",
"ClientAccountID": "ClientAccountTest",
}

accountverificationsVerification Request ID

The Verification Request ID is returned when initiating the micro deposit transaction:

{
"Success": "true",
"ErrorMessage": "",
"VerificationRequestID" : "23849"
}

contactverificationContact Verification Request ID

The Contact Verification Request ID is returned when initiating the contact verification request:

{
"Success": "true",
"ErrorMessage": "",
"VerificationRequestID" : "23849"
}

dataenrichmentData Enrichment Request ID

The Data Enrichment Request ID is returned when initiating a data enrichment request:

{
"Success": "true",
"ErrorMessage": "",
"RequestID" : "adf98dafer7d8"
}

transactiongroupTransaction Group ID

The VoPay Transaction ID is returned in the API response when submitting a transaction that require a transaction group:

{
"Success": "true",
"ErrorMessage": "",
"TransactionGroupID": "4458874"
}

virtualtransactionVoPay Transaction ID

The VoPay Transaction ID for a virtual transaction can be returned in the API response when fetching a transaction:

{
"Success": "true",
"ErrorMessage": "", "Transactions": {
"TransactionID": "4458874"
}
}

IP Addresses

All outbound webhook requests will originate from one of the following IP addresses:

15.156.104.253
52.60.226.121

Note that additional IP addresses may be added in the future.