Let’s focus on 💸 Optimize providers bills payment If you already show your customers the invoices they’ll need to pay within your interface, the one thing missing is a “Pay” button which will allow to pay up to 400 bills in just 1 click from their Qonto account The magic behind hitting that “Pay” button involves:
- Retrieving the transfers beneficiaries’ data
- Setting up SCA
- Creating the transfers
1. Retrieve the transfers Beneficiaries’ Data
a. Finding existing beneficiaries’ data
Objective:- Determine if the beneficiary is already trusted or if new details need to be added.
- GET /v2/beneficiaries: use this endpoint in order to retrieve the list of beneficiaries for the authenticated organization.
b. Add Beneficiaries if necessary (coming soon)
2. Set up SCA (Strong Customer Authentication)
Objective:- Secure the transaction to ensure it is authorized by the account holder or administrators
- Choose Authentication Method:
- Trusted Device: User will receive a push notification on their registered device (computer or mobile) to approve the transaction.
- Passkeys: User will receive a text message with a link to approve or set up a passkey.
- Specify Method: Use the
X-Qonto-2fa-Preference
header in your request to choose betweenpaired-device
orpasskey
. - Start SCA Process: When initiating a sensitive transaction, provide this header to indicate the preferred method of authentication.
- GET /v2/sca_sessions/<sca-session-token> : Poll this endpoint to check the status of the SCA session. The session will return one of three outcomes:
- waiting: User has not yet approved the action.
- deny: User has refused the action or the session expired (after 15 minutes).
- allow: User has authorized the action.
- Ensure the user is aware of the pending authorization and guide them on how to approve the transaction.
- Handle scenarios where the user may not receive the notification or delays in response.
3. Create Transfers
Objective:- Execute the transfer, either to a trusted beneficiary or with new beneficiary data.
- Verify that the
beneficiary_id
is correct and corresponds to the intended recipient. - Ensure that the amount and currency fields are correctly formatted and within transaction limits.
- SCA is not necessary here.
- Ensure that you are SCA-enrolled
- Double-check all beneficiary details to prevent errors in the transaction.
- Confirm the transaction details with the user before submission to ensure accuracy and prevent unauthorized transfers.
- Log all transaction attempts with timestamps and status for audit and troubleshooting purposes.
- Solo basic plans are not allowed to do bulk transfers. If a bulk transfer is attempted, it will fail and an error will be returned.
- For the rest of the plans, you can create up to 400 instant external transfers with beneficiaries data.
- Be reminded that the number of monthly transfers included in the customer’s Qonto plan is listed here.
- This endpoint requires user interaction for approval of the external transfers. If you want to fully automate external transfers, check our /v2/external_transfers endpoint.