VoPay IQ11 API

VoPay's IQ11 API — 8 documented operation(s) across 7 path(s) on VoPay's API-first embedded finance platform for Canadian and cross-border money movement.

OpenAPI Specification

vopay-iq11.json Raw ↑
{"openapi":"3.0.0","info":{"version":"2.0","title":"IQ11","description":"The iQ11 API allows you to generate a unique URL to embed into your application using an iFrame. End users will use this to log in to their online banking and select a bank account to make a payment from.","contact":{"name":"API Support","email":"help@vopay.com"}},"paths":{"/iq11/generate-embed-url":{"post":{"description":"This endpoint is used to generate a unique URL to embed into your application using an iFrame. End users will use this to log in to their online banking and select a bank account to make a payment from. For additional details on iQ11 and RedirectMethod, please visit our [Iq11 Overview](https://docs.vopay.com/docs/iq11-overview)","summary":"iq11/generate-embed-url","tags":["IQ11 Endpoints"],"operationId":"Iq11GenerateEmbedUrlPost","deprecated":false,"requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"type":"object","properties":{"AccountID":{"description":"Your account ID","type":"string"},"Key":{"description":"API key for the account","type":"string"},"Signature":{"description":"Hashed signature for the request","type":"string"},"ClientAccountID":{"description":"When provided, the bank account submitted will be attached to the Client Account ID","type":"string"},"RedirectURL":{"description":"URL to redirect to after the customer logs in to their online banking account. The bank account token will be passed as a GET parameter, for example https://redirect.com/page?Token=1234. If not provided, RedirectMethod defaults to javascriptmessage.","type":"string"},"CompanyName":{"description":"Name of the Company. Defaults to the account name if not provided.","type":"string"},"Language":{"description":"Language of iQ11 iFrame- en (English) or fr (French). Default value is en (English)","type":"string"},"RedirectMethod":{"description":"This parameter accepts InnerRedirect, OuterRedirect, and JavascriptMessage as parameter values. Defaults to innerredirect if RedirectURL is provided, otherwise javascriptmessage.","type":"string"},"AccountSelectionMethod":{"description":"This parameter accepts any, online and manual as parameter values. Defaults to any.","type":"string"},"PaymentSelectionMethod":{"description":"This parameter accepts any, bank, email, credit, debitcard, googlepay, applepay, paypal, or venmo as parameter values. Defaults to any.","type":"string"},"ClientControlled":{"description":"When set to true, the connected bank account will be linked to your VoPay account. Default is false.","type":"boolean"},"ClientReferenceNumber":{"description":"An optional reference number to associate with the bank account.","type":"string"},"Country":{"description":"This parameter accepts country codes [CA, US]. Default is CA","type":"string"},"RequireDebitAuthorityAgreement":{"description":"This parameter will determine if we display a debit authority agreement to the end-user before they connect their payment method. You must request this feature to be enabled for your account. Default is true.","type":"boolean"},"Verify":{"description":"A comma-separated list of payment methods to verify once the user has connected their payment method. Allowed values are: 'bank', 'interacbasic', 'interacenhanced', 'cardbasic', 'cardenhanced'. If no value is provided, no verification will be performed.","type":"string"},"CardTypeValidation":{"description":"When set to true, the card type will be validated to ensure the entered information represents the selected card option. Default is false.","type":"boolean"},"Trigger3DS":{"description":"When set to true, 3DS authentication will be triggered during the card addition process. Default is false.","type":"boolean"},"AcceptedCardBrands":{"description":"A comma-separated list of accepted card brands to restrict which cards can be added.","type":"string"},"AccountHolderType":{"description":"The type of account holder. Used to restrict the type of bank account that can be connected.","type":"string","enum":["individual","business"]},"DarkMode":{"description":"When set to true, the iFrame will be displayed in dark mode. Default is false.","type":"boolean"}},"required":["AccountID","Key","Signature"]}}},"required":true},"responses":{"200":{"description":"","headers":{},"content":{"application/x-yaml":{"schema":{"type":"object","properties":{"Success":{"type":"boolean","description":"True if the request was successful, false if it failed","example":"true"},"ErrorMessage":{"type":"string","description":"Contains a description of the error if the request failed","example":""},"EmbedURL":{"type":"string","description":"Custom generated iQ11 iframe url for users to use","example":"https://earthnode-dev.vopay.com/visa_direct/embed/{Key Returned by Vopay}"},"IframeKey":{"type":"string","description":"Unique key attached to the generated iFrame","example":"a1b2c3"}}}}}}}}},"/iq11/token-info":{"get":{"description":"This endpoint is used to return the payment details associated with an iQ11 Token.","summary":"iq11/token-info","tags":["IQ11 Endpoints"],"operationId":"Iq11TokenInfoGet","deprecated":false,"parameters":[{"name":"AccountID","in":"query","required":true,"description":"Your account ID","schema":{"type":"string"}},{"name":"Key","in":"query","required":true,"description":"API key for the account","schema":{"type":"string"}},{"name":"Signature","in":"query","required":true,"description":"Hashed signature for the request","schema":{"type":"string"}},{"name":"Token","in":"query","required":true,"description":"iQ11 token","schema":{"type":"string"}}],"responses":{"200":{"description":"","headers":{},"content":{"application/x-yaml":{"schema":{"type":"object","properties":{"Success":{"type":"boolean","description":"True if the request was successful, false if it failed","example":"true"},"ErrorMessage":{"type":"string","description":"Contains a description of the error if the request failed","example":""},"MaskedAccount":{"type":"string","description":"The last four digits of a Bank account number. For example: ****1234","example":"****1234"},"Bank":{"type":"string","description":"Three digit institution number of a Canadian bank.","example":"001"},"TransitNumber":{"type":"string","description":"Five digit branch transit number of a Canadian bank.","example":"12345"},"ABARoutingNumber":{"type":"string","description":"ABA Routing number of a US bank.","example":"12345789"},"FullName":{"type":"string","description":"Full name of the account holder.","example":"John Doe"},"BankName":{"type":"string","description":"Name of the FI.","example":"TD"},"TokenType":{"type":"string","description":"The type of the token; either manual or iq11.","example":"iq11"},"EmailAddress":{"type":"string","description":"Email address of the account holder.","example":"subaccount.mail@email.com"},"PhoneNumber":{"type":"string","description":"Phone number of the account holder.","example":"1234567890"},"Question":{"type":"string","description":"Question provided to the account holder.","example":"What is your favorite color?"},"Answer":{"type":"string","description":"Answer provided to the account holder.","example":"Blue"},"Language":{"type":"string","description":"Language of the account holder.","example":"en"},"Message":{"type":"string","description":"Message to the account holder.","example":"Hello"},"AutoDepositEnabled":{"type":"boolean","description":"True if auto deposit is enabled, false if it is not. Used for Interac only.","example":"true"},"CreditCardNumber":{"type":"string","description":"Credit card number","example":"1234-1234-1234-1234"},"CreditCardExpiryYear":{"type":"string","description":"Credit card expiry year","example":"2020"},"CreditCardExpiryMonth":{"type":"string","description":"Credit card expiry month","example":"12"},"CreditCardBrand":{"type":"string","description":"Credit card brand","example":"visa"},"CredtCardType":{"type":"string","description":"Credit card connection types. Valid values are: 'creditcard', 'googlepay', 'applepay'","example":"creditcard"},"DebitCardNumber":{"type":"string","description":"Debit card number","example":"1234-1234-1234-1234"},"DebitCardExpiryYear":{"type":"string","description":"Debit card expiry year","example":"2020"},"DebitCardExpiryMonth":{"type":"string","description":"Debit card expiry month","example":"12"},"DebitCardBrand":{"type":"string","description":"Debit card brand","example":"visa"},"ClientReferenceNumber":{"type":"string","description":"Client reference number","example":"ABC1234"},"Type":{"type":"string","description":"Payment method type. Valid values are 'bank', 'email', 'credit', 'debit'","example":"bank"}}}}}}}}},"/iq11/tokenize":{"post":{"description":"This endpoint allows you to submit payment method details (bank account, email address), and will return a token which can be used to perform transactions.","summary":"iq11/tokenize","tags":["IQ11 Endpoints"],"operationId":"Iq11TokenizePost","deprecated":false,"requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"type":"object","properties":{"AccountID":{"description":"Your account ID","type":"string"},"Key":{"description":"API key for the account","type":"string"},"Signature":{"description":"Hashed signature for the request","type":"string"},"ClientAccountID":{"description":"Client Account ID","type":"string"},"AccountHolderName":{"description":"String that defines the account holder name. Used for all payment methods.","type":"string"},"AccountNumber":{"description":"Customer's bank account number.","type":"string"},"FinancialInstitutionNumber":{"description":"Three digit institution number for a Canadian bank account.","type":"string"},"BranchTransitNumber":{"description":"Five digit branch transit number for a Canadian bank account.","type":"string"},"ABARoutingNumber":{"description":"Nine digit ABA Routing number of a US bank account.","type":"string"},"FlinksAccountID":{"description":"Flinks Account ID. Must be accompanied by a FlinksLoginID. VoPay will fetch the associated bank account details from Flinks.","type":"string"},"FlinksLoginID":{"description":"Flinks Login ID. Must be accompanied by a FlinksAccountID. VoPay will fetch the associated bank account details from Flinks.","type":"string"},"PlaidProcessorToken":{"description":"Plaid Processor Token. VoPay will fetch the associated bank account details from Plaid.","type":"string"},"MxProcessorToken":{"description":"Mx Processor Token. VoPay will fetch the associated bank account details from Mx.","type":"string"},"Currency":{"description":"Three letter currency code.","type":"string"},"Address1":{"description":"First line of the address. Ex: 123 Main St.","type":"string"},"City":{"description":"City","type":"string"},"State":{"description":"State","type":"string"},"ZipCode":{"description":"Zip code","type":"string"},"Province":{"description":"Province","type":"string"},"PostalCode":{"description":"Postal code","type":"string"},"Country":{"description":"Two letter country code.","type":"string"},"VerifyAccount":{"description":"When set to true, the connected bank account will be verified. Default is false. Only applicable when Flinks or Plaid credentials are provided.","type":"boolean"},"EmailAddress":{"description":"Email address","type":"string","format":"email"},"PhoneNumber":{"description":"Phone number","type":"string"},"Question":{"description":"Security question (used for Interac transactions)","type":"string"},"Answer":{"description":"Security answer (used for Interac transactions)","type":"string"},"Language":{"description":"Language - en (English) or fr (French). Default value is en (English)","type":"string"},"Message":{"description":"Message sent to recipient (used for Interac)","type":"string"},"ClientControlled":{"description":"When set to true, the connected bank account will be linked to your VoPay account. Default is false.","type":"boolean"},"ClientReferenceNumber":{"description":"An optional reference number to associate with the bank account.","type":"string"},"Type":{"description":"The type of payment method you are tokenizing. Valid values are: 'bank', 'email'. Default is 'bank'.","type":"string"}},"required":["AccountID","Key","Signature"]}}},"required":true},"responses":{"200":{"description":"","headers":{},"content":{"application/x-yaml":{"schema":{"type":"object","properties":{"Success":{"type":"boolean","description":"True if the request was successful, false if it failed","example":"true"},"ErrorMessage":{"type":"string","description":"Contains a description of the error if the request failed","example":""},"Token":{"type":"string","description":"A codify variable that contains the bank account","example":"{Token}"}}}}}}}}},"/iq11/transactions":{"get":{"description":"This endpoint is used to return the transaction history associated with an iQ11 Token.","summary":"iq11/transactions","tags":["IQ11 Endpoints"],"operationId":"Iq11TransactionsGet","deprecated":false,"parameters":[{"name":"AccountID","in":"query","required":true,"description":"Your account ID","schema":{"type":"string"}},{"name":"Key","in":"query","required":true,"description":"API key for the account","schema":{"type":"string"}},{"name":"Signature","in":"query","required":true,"description":"Hashed signature for the request","schema":{"type":"string"}},{"name":"Token","in":"query","required":true,"description":"Your iQ11 Token that has been generated using Custom iFrame.","schema":{"type":"string"}}],"responses":{"200":{"description":"","headers":{},"content":{"application/x-yaml":{"schema":{"type":"object","properties":{"Success":{"type":"boolean","description":"True if the request was successful, false if it failed","example":"true"},"ErrorMessage":{"type":"string","description":"Contains a description of the error if the request failed","example":""},"Transactions":{"type":"string","description":"JSON payload containing the bank account's transaction history","example":"{ 0: { Id: 13bd9695-1686-472f-b6f8-a36a7547c51b, Code: null, Date: 2021-12-06, Debit: 1500, Credit: null, Balance: 1261.34, Description: Rent Payment }, 1: { Id: 0bcd3935-8e9a-4b90-a4c1-c662ff240d55, Code: null, Date: 2021-12-01, Debit: 141.03, Credit: null, Balance: 1121.31, Description: Groceries } }"},"LastRetrievedTime":{"type":"string","format":"date-time","description":"The date and time the transaction history was retrieved for the assoicated bank account.","example":"2022-11-03 01:00:00"}}}}}}}}},"/iq11/balance":{"get":{"description":"This endpoint is used to return the bank account balance associated with an iQ11 Token.","summary":"iq11/balance","tags":["IQ11 Endpoints"],"operationId":"Iq11BalanceGet","deprecated":false,"parameters":[{"name":"AccountID","in":"query","required":true,"description":"Your account ID","schema":{"type":"string"}},{"name":"Key","in":"query","required":true,"description":"API key for the account","schema":{"type":"string"}},{"name":"Signature","in":"query","required":true,"description":"Hashed signature for the request","schema":{"type":"string"}},{"name":"Token","in":"query","required":true,"description":"Your iQ11 Token that has been generated using Custom iFrame.","schema":{"type":"string"}}],"responses":{"200":{"description":"","headers":{},"content":{"application/x-yaml":{"schema":{"type":"object","properties":{"Success":{"type":"boolean","description":"True if the request was successful, false if it failed","example":"true"},"ErrorMessage":{"type":"string","description":"Contains a description of the error if the request failed","example":""},"AccountBalance":{"type":"string","description":"The balance of the associated bank account","example":"1000.00"},"BalanceAsAtDate":{"type":"string","format":"date-time","description":"The date and time the balance was retrieved from the associated bank account.","example":"2022-11-03 01:00:00"}}}}}}}}},"/iq11/enrich-data":{"post":{"description":"This endpoint is used to enrich transaction data associated with a iQ11 Token.","summary":"iq11/enrich-data","tags":["IQ11 Data Enrichment Endpoints"],"operationId":"Iq11EnrichDataPOST","deprecated":false,"parameters":[{"name":"AccountID","in":"query","required":true,"description":"Your account ID","schema":{"type":"string"}},{"name":"Key","in":"query","required":true,"description":"API key for the account","schema":{"type":"string"}},{"name":"Signature","in":"query","required":true,"description":"Hashed signature for the request","schema":{"type":"string"}},{"name":"Token","in":"query","required":true,"description":"Your iQ11 Token that has associated transactions to be enriched.","schema":{"type":"string"}}],"responses":{"200":{"description":"","headers":{},"content":{"application/x-yaml":{"schema":{"type":"object","properties":{"Success":{"type":"boolean","description":"True if the request was successful, false if it failed","example":"true"},"ErrorMessage":{"type":"string","description":"Contains a description of the error if the request failed","example":""},"RequestID":{"type":"string","description":"A unique identifier for the data enrichemnt process.","example":"1131nnzuwulms269zrtj5fp9co3ooi9ba43400k3"}}}}}}}},"get":{"description":"This endpoint is used to fetch transaction reports generated from the enriched data.","summary":"iq11/enrich-data","tags":["IQ11 Data Enrichment Endpoints"],"operationId":"Iq11EnrichDataGET","deprecated":false,"parameters":[{"name":"AccountID","in":"query","required":true,"description":"Your account ID","schema":{"type":"string"}},{"name":"Key","in":"query","required":true,"description":"API key for the account","schema":{"type":"string"}},{"name":"Signature","in":"query","required":true,"description":"Hashed signature for the request","schema":{"type":"string"}},{"name":"Token","in":"query","required":true,"description":"Your iQ11 Token that has enriched data associated with it.","schema":{"type":"string"}},{"name":"EnrichedDataType","in":"query","required":true,"description":"The type of report you want to generate, valid types are: credit-transactions, employment-credit-transactions, government-credit-transactions, tax-credit-transactions, debit-transactions, rent-debit-transactions, utility-debit-transactions, telecom-debit-transactions, loan-debit-transactions, insurance-debit-transactions, bank-fee-transactions, subscription-debit-transactions, nsf-fee-transactions, transaction-report, risk-report.","schema":{"type":"string"}}],"responses":{"200":{"description":"","headers":{},"content":{"application/x-yaml":{"schema":{"type":"object","properties":{"Success":{"type":"boolean","description":"True if the request was successful, false if it failed","example":"true"},"ErrorMessage":{"type":"string","description":"Contains a description of the error if the request failed","example":""},"EnrichedData":{"type":"object","description":"A generated report containing transaction analysis and insights.","example":{"DateOfFirstTransaction":"2021-10-12","DateOfLastTransaction":"2021-12-06","TotalNumberOfTransactions":25,"AveragePayment":1137.83,"AverageDaysBetweenPayments":2.29,"LastTwoPaymentDates":{"0":"2021-12-01","1":"2021-12-06"},"TotalAmount":28445.79,"SumPerMonth":{"2021-10":13991.42,"2021-11":14061.13,"2021-12":393.24},"CountPerMonth":{"2021-10":7,"2021-11":15,"2021-12":3}},"properties":{"DateOfFirstTransaction":{"type":"string","format":"date","description":"The date of the earliest transaction in the dataset"},"DateOfLastTransaction":{"type":"string","format":"date","description":"The date of the most recent transaction in the dataset"},"TotalNumberOfTransactions":{"type":"integer","description":"The total count of transactions in the dataset"},"AveragePayment":{"type":"number","format":"float","description":"The average amount across all payments"},"AverageDaysBetweenPayments":{"type":"number","format":"float","description":"The average number of days between consecutive payments"},"LastTwoPaymentDates":{"type":"object","description":"The dates of the two most recent payments"},"TotalAmount":{"type":"number","format":"float","description":"The sum of all transaction amounts"},"SumPerMonth":{"type":"object","description":"Monthly breakdown of transaction amounts"},"CountPerMonth":{"type":"object","description":"Monthly breakdown of transaction counts"}}}}}}}}}}},"/iq11/enrich-data/status":{"get":{"description":"This endpoint is used to check the status of a data enrichment request.","summary":"iq11/enrich-data/status","tags":["IQ11 Data Enrichment Endpoints"],"operationId":"Iq11EnrichDataStatusGet","deprecated":false,"parameters":[{"name":"AccountID","in":"query","required":true,"description":"Your account ID","schema":{"type":"string"}},{"name":"Key","in":"query","required":true,"description":"API key for the account","schema":{"type":"string"}},{"name":"Signature","in":"query","required":true,"description":"Hashed signature for the request","schema":{"type":"string"}},{"name":"RequestID","in":"query","required":true,"description":"The unique identifier returned from the /iq11/enrich-data POST call","schema":{"type":"string"}}],"responses":{"200":{"description":"","headers":{},"content":{"application/x-yaml":{"schema":{"type":"object","properties":{"Success":{"type":"boolean","description":"True if the request was successful, false if it failed","example":true},"ErrorMessage":{"type":"string","description":"Contains a description of the error if the request failed","example":""},"Status":{"type":"string","description":"The current status of the data enrichment process","example":"In Progress","enum":["Complete","In Progress"]},"PercentComplete":{"type":"string","description":"The percentage of transactions that have been enriched","example":"75%"},"EnrichedCount":{"type":"integer","description":"The number of transactions that have been enriched","example":15},"TotalCount":{"type":"integer","description":"The total number of transactions in the dataset","example":20}}}}}}}}}},"servers":[{"url":"https://earthnode-dev.vopay.com/api/v2"}]}