Paiements instantanés

Notre interface API Paiements instantanés est le choix idéal pour les paiements en temps réel au Canada. Grâce au service Virement Interac, vous pouvez rapidement envoyer ou demander de l'argent, être sûr que les fonds seront disponibles immédiatement et suivre leur état en temps réel. Tout ce dont vous avez besoin, c'est l'adresse courriel ou le numéro de compte du destinataire.

Aperçu

Limites:

25 000 $/paiement

25 000 $/demande de fonds

1 paiement/appel

1 demande de fonds/appel

Appels illimités

Pays :

Canada seulement

CAD seulement

Vitesse :

Dépôts instantanés (numéros de compte et courriels avec Dépôt automatique)

Jusqu'à 30 minutes (courriels sans Dépôt automatique)

Heures limites (jours ouvrables) :

Toujours disponible

Vue rapprochée

Intégration harmonieuse dans les applis – Notre interface API « Demander des fonds » vous permet de percevoir des paiements instantanés auprès des utilisateurs sans qu'ils aient à quitter votre appli ou votre site web. Il vous suffit de créer une demande de fonds pour le montant choisi et notre interface API vous renverra une URL de passerelle. Dans votre appli, les utilisateurs peuvent alors se connecter à leur banque et effectuer la transaction.

Confirmez la vitesse de dépôt avant de payer – Notre interface API « Obtenir les options de paiement » vous indique à l'avance si des dépôts en temps réel sont disponibles pour l'adresse courriel ou le numéro de compte du destinataire.

Suivi de bout en bout – Demandez des mises à jour d'état pour l'ensemble du cycle de vie de vos paiements et demandes de fonds ou recevez des alertes automatiques en temps réel par API, courriel ou message texte à l'aide de notre interace API Notifications push

Paiements définitifs et irrévocables – Nous utilisons les virements Interac qui ne peuvent pas être révoqués une fois effectués. Cependant, vous pouvez annuler les paiements et les demandes de fonds en attente à l'aide de notre interace API « Annuler un paiement/une demande de fonds ».

Dates d'expiration personnalisées – Pour les demandes de fonds et les paiements envoyés à des adresses courriel sans Dépôt automatique, vous pouvez définir vos propres dates d'expiration allant de 2 heures à 30 jours pour les demandes de fonds et de 1 à 30 jours pour les paiements.

Endpoints Summary

post
/tpp/interac-etransfer/payment-initiation/get-transaction
Obtain Payment Status
post
/tpp/interac-etransfer/payment-initiation/get-request-for-payment-transaction
Obtain Request for Payment Status
post
/tpp/interac-etransfer/payment-initiation/creditor-payment-activation-request
Send Request for Payment
post
/tpp/interac-etransfer/payment-initiation/get-emt-recipient-payment-options/get
Get Payment Option
post
/tpp/interac-etransfer/payment-initiation/customer-credit-transfer-initiation
Send Payment

Chiffrement de la charge utile

Pour des raisons de sécurité, toutes les demandes envoyées à nos interfaces API de paiement et toutes les réponses provenant de celles-ci doivent être chiffrées. Pour obtenir des instructions détaillées, consultez notre processus de chiffrement.

Voir la documentation sur le chiffrement

Obtenir l'état du paiement

Une fois votre paiement soumis, vous pouvez demander son état actuel à tout moment (CAMT.005). Veuillez consulter notre tableau ci-dessous pour plus d'informations sur les états possibles qui peuvent être renvoyés (Pain.002).

Remarque : Au lieu de vérifier manuellement, vous pouvez également demander des alertes automatiques chaque fois que l'état d'un paiement change. Vous pouvez choisir les états pour lesquels vous souhaitez être averti et si vous souhaitez les recevoir par API Webhook, courriel ou message texte. Pour plus d'informations, veuillez contacter votre représentant de BMO ou obtenir de l'aide pour configurer vos API Webhooks grâce à notre documentation sur l'interface API Notifications push.

Post
/tpp/interac-etransfer/payment-initiation/get-transaction

Request

Code Samples

Headers

x-fapi-financial-id
string
x-fapi-customer-last-logged-time
string
x-fapi-customer-ip-address
string
x-fapi-interaction-id required
string
x-fapi-customer-user-agent
string
x-client-id required
string
x-request-id required
string
Authorization required
string
x-app-cat-id
string
true-client-ip required
string
x-crypto-key
string
x-api-key required
string

Body

Response

Obtenir l'état de la demande de fonds

Une fois votre demande de fonds soumise, vous pouvez demander son état actuel à tout moment (CAMT.005). Veuillez consulter notre tableau ci-dessous pour plus d'informations sur les états possibles qui peuvent être renvoyés (Pain.002).

Remarque : Au lieu de vérifier manuellement, vous pouvez également demander des alertes automatiques chaque fois que l'état d'une demande de fonds change. Vous pouvez choisir les états pour lesquels vous souhaitez être averti et si vous souhaitez les recevoir par API Webhook, courriel ou message texte. Pour plus d'informations, veuillez contacter votre représentant de BMO ou obtenir de l'aide pour configurer vos API Webhooks grâce à notre documentation sur l'interface API Notifications push.

Post
/tpp/interac-etransfer/payment-initiation/get-request-for-payment-transaction

Request

Code Samples

Headers

x-fapi-financial-id
string
x-fapi-customer-last-logged-time
string
x-fapi-customer-ip-address
string
x-fapi-interaction-id required
string
x-fapi-customer-user-agent
string
x-client-id required
string
x-request-id required
string
Authorization required
string
x-app-cat-id
string
true-client-ip required
string
x-crypto-key
string
x-api-key required
string

Body

Response

Demander des fonds

Vous pouvez rapidement demander de l'argent par courriel ou percevoir des paiements instantanés dans votre propre application pour des achats ou pour approvisionner les portefeuilles digitaux. Voici comment cela fonctionne :

Option 1: Demander des fonds par courriel

Étape 1: À l'aide de notre point de terminaison API « Demander des fonds », vous nous envoyez votre demande de fonds pour le montant choisi (Pain.013). Nous la validons ensuite et vous envoyons une réponse (Pain.014). Vous pouvez spécifier une période d'expiration personnalisée comprise entre 2 heures et 30 jours.

Étape 2: Si tout est en ordre, nous transmettons la demande à Interac, qui l'envoie par courriel au destinataire.

Étape 3: Le destinataire ouvre le courriel et examine votre demande. S'il accepte de payer, il clique sur le bouton.

Étape 4: Le destinataire est redirigé vers une URL passerelle où il sélectionne son institution financière.

Étape 5: Le destinataire ouvre une session et effectue le paiement.

Étape 6: Le paiement est immédiatement déposé dans le compte que vous avez indiqué dans votre demande initiale.

Vous et le destinataire recevez un courriel confirmant que le paiement a été déposé.

Option 2 : Percevoir des fonds dans votre application

Étape 1: Le client décide de payer un montant fixe ou personnalisé lors du passage en caisse et sélectionne son mode de paiement.

Étape 2: À l'aide de notre point de terminaison API « Demander des fonds », votre application nous envoie la demande de fonds en précisant que les courriels Interac doivent être bloqués (Pain.013). Ensuite, nous validons la demande et vous envoyons une réponse (Pain.014).

Remarque : Vous devez tout de même transmettre l'adresse courriel de l'utilisateur, même si vous décidez de bloquer les courriels Interac.

Étape 3: Si tout est en ordre, nous transmettons ensuite la demande à Interac, qui renvoie une URL de passerelle et bloque les courriels habituels.

Étape 4: Pour récupérer l'URL de passerelle, utilisez notre point de terminaison « Obtenir l’état du paiement » (CAMT.005) ou laissez notre interface API Notifications push la renvoyer automatiquement.

Étape 5: Votre application affiche l'URL de passerelle à l'utilisateur qui choisit son institution financière.

Étape 6: L’utilisateur ouvre une session et effectue le paiement.

Étape 7: Votre application confirme l'état du dépôt (CAMT.005 ou interface API Notifications push) et affiche un message de réussite.

L'achat ou le financement du portefeuille digital est complet et irrévocable sans que l'utilisateur ne quitte jamais votre application. Les courriels de confirmation Interac sont bloqués pour éviter toute confusion.

Post
/tpp/interac-etransfer/payment-initiation/creditor-payment-activation-request

Request

Code Samples

Headers

x-fapi-financial-id
string
x-fapi-customer-last-logged-time
string
x-fapi-customer-ip-address
string
x-fapi-interaction-id required
string
x-fapi-customer-user-agent
string
x-client-id required
string
x-request-id required
string
Authorization required
string
x-app-cat-id
string
true-client-ip required
string
x-crypto-key
string
x-api-key required
string

Body

Response

Obtenir les options de paiement

Avant de pouvoir envoyer un paiement, vous devez d'abord vérifier quelle option de paiement est disponible pour l'adresse courriel ou le numéro de compte du destinataire :

Dépôts en temps réel

Courriels avec Dépôt automatique

Numéro de compte pris en charge par la banque du destinataire

Virement Interac avec question de sécurité

Courriels sans Dépôt automatique

À l'aide de notre point de terminaison API « Obtenir les options de paiement », vous soumettrez votre demande chiffrée au format ACMT.023. Dans notre réponse (ACMT.024), nous vous indiquerons si les dépôts en temps réel sont disponibles et vous fournirons un numéro de référence que vous devrez inclure lors de la soumission de votre paiement (Pain.001). Les numéros de référence expirent après 10 minutes.

Remarque : Si vous essayez d'envoyer un paiement à une adresse courriel enregistrée pour le Dépôt automatique, notre réponse ACMT.024 comprendra également le nom commercial ou le nom légal enregistré du titulaire du compte. Cela permet de confirmer que vous payez la bonne personne ou la bonne entreprise.

Post
/tpp/interac-etransfer/payment-initiation/get-emt-recipient-payment-options/get

Request

Code Samples

Headers

x-fapi-financial-id
string
x-fapi-customer-last-logged-time
string
x-fapi-customer-ip-address
string
x-fapi-interaction-id required
string
x-fapi-customer-user-agent
string
x-client-id required
string
x-request-id required
string
Authorization required
string
x-app-cat-id
string
true-client-ip required
string
x-crypto-key
string
x-api-key required
string

Body

Response

Envoyer un paiement

Maintenant que vous savez quelle option de paiement est prise en charge, il est temps de créer votre paiement. À l'aide de notre point de terminaison API « Envoyer un paiement », vous soumettrez vos détails de paiement chiffrés (Pain.001). Vous devez le faire avant l'expiration de votre numéro de référence provenant de l'appel précédent. Pour les paiements envoyés à une adresse courriel sans Dépôt automatique, vous pouvez spécifier une date d'expiration personnalisée comprise entre 1 et 30 jours.

Cet appel renvoie une confirmation si votre fichier a passé nos validations (Pain.002). Si aucun problème n'est détecté, les paiements sont immédiatement transmis à Interac pour traitement. Il n'est pas possible de programmer des paiements futurs via notre interface API.

Post
/tpp/interac-etransfer/payment-initiation/customer-credit-transfer-initiation

Request

Code Samples

Headers

x-fapi-financial-id
string
x-fapi-customer-last-logged-time
string
x-fapi-customer-ip-address
string
x-fapi-interaction-id required
string
x-fapi-customer-user-agent
string
x-client-id required
string
x-request-id required
string
Authorization required
string
x-app-cat-id
string
true-client-ip required
string
x-crypto-key
string
x-api-key required
string

Body

Response