Skip to main content
To start using Fintoc’s Transfers API to create outbound transfers, once you have completed the setup guide, you just need to follow these steps:
  1. Configure JWS Signing Keys and generate JWS Signature
  2. Add funds to the Account’s root_account_number
  3. From your backend, create a Transfer using your Secret Key and a JWS Signature
  4. Monitor transfer status
The following diagram shows how Fintoc will interact with you and the counterparty receiving the payout.

Step 1: Configure JWS Signing Keys and generate JWS Signature

To make requests to our Transfers endpoints, a JSON Web Signature (JWS) is required. JWS is a standard mechanism used to digitally sign a piece of data to ensure its integrity and authenticity. To learn how to sign an API call, follow the steps in the JWS Signature guide.

Step 2: Add funds to Fintoc

To create Transfers, fund your Account first. You can achieve this by adding funds to the root_account_number. This will appear as an Inbound Transfer.

Step 3: Create Transfer

You can start making real-time transfers once you add funds to your account. Using your test Secret Key and including your JWS Signature, create a Transfer from your backend with the origin account (where the funds should come out of), amount, currency, and counterparty that will receive the payment. The examples below show successful Transfer responses. You can test out unsuccessful results with the predefined inputs in the Test your integration section.

Use an Idempotency Key

Fintoc supports idempotency to safely retry Transfers without accidentally performing the same operation twice. When creating a Transfer, use an idempotency key. Then, if a connection error occurs, you can safely repeat the Transfers request without risk of creating a second Transfer. To perform an idempotent request, provide an Idempotency-Key header to the request. Learn more about idempotent request in this guide.

Create a Transfer for Mexico 🇲🇽

Here is an example of how to create a Transfer for $590.13 Mexican Pesos:
Currencies are represented as integersThe Fintoc API represents currencies in its smallest possible units with no decimals (as an integer). That means that an amount of MXN $10.29 gets represented by Fintoc as 1029.You can read more about currencies here.

Remember to add the institution ID

When transferring to a CLABE, no Counterparty Institution ID is necessary since Fintoc can deduce it from the CLABE number. However, if your Counterparty is a mobile phone number or debit card, you must include the institution ID, as a 5 digit number as shown here . Otherwise, you will get a 400 Error.

Using our SDK

If you are using our Python SDK or Node SDK, you can create the transfer like this:
Node
In Mexico, the Counterparty object is defined by a minimum of 1 attribute: A successful request response looks like this:

Create a Transfer for Chile 🇨🇱

Here is an example to create a transfer of $1869 Chilean Pesos:

Using our SDK

If you are using our Python SDK or Node SDK, you can create the transfer like this:
Node

In Chile, the Counterparty object is defined by a minimum of 5 attributes: A successful request response looks like this:

Step 4: Monitor transfer status

Transfer status flow

Transfers’ status can be either pending, succeeded, failed, returned, return_pending or rejected. For more details on transfer statuses, check out the Transfers data model.

Monitor status using webhooks

Fintoc sends a transfer.outbound.succeeded event when the transfer settles. Use the webhook guide to receive these events and run actions, such as sending a notification email to your customer or logging the transfer in your ERP. We recommend handling the following events:
Webhooks may arrive in disorderFor example: a transfer.outbound.rejected webhook event could arrive before the same transfer’s transfer.outbound.succeeded webhook, even though the transfer first succeeded and then was rejected.