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)

ID

How 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" }

elinx

eLinx 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" }

bankaccount

Bank 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" }

creditcard

Credit 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" }

debitcard

Debit 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" }

scheduledtransactions

Scheduled 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" }

batchrequest

Batch 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" }

batchdetail

Batch Transaction Request Detail ID

The 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" }

clientaccountbalance

Client 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", }

accountverifications

Verification Request ID

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

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

contactverification

Contact Verification Request ID

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

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

dataenrichment

Data Enrichment Request ID

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

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

transactiongroup

Transaction 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" }

virtualtransaction

VoPay 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.