Prerequisites
Before you start, you need:- A Fintoc account with an API secret key. To get one, contact your sales representative or write to sales@fintoc.com. Fintoc then activates your account and gives you access to the Fintoc dashboard. If you registered your existing Fintoc organization through the Shopify app, you can’t use that organization here. Shopify organizations can only accept payments in Shopify, so your WooCommerce store needs its own registration.
- Admin access to your WordPress site.
- WordPress 6.2+, WooCommerce 7.4+, and PHP 7.4+.
Get your API credentials
Your Fintoc dashboard shows bothtest and live secret keys. To get them, go to For Developers → API Keys. Use the button on the top left of the dashboard to switch between test and live modes. Use your live secret key (sk_live_...) to set up Fintoc in production.
Install the plugin
Install the plugin from the WordPress plugin directory:- In your WordPress admin, go to Plugins → Add New.
- Search for Fintoc for WooCommerce, then select Install Now.
- Select Activate.
Configure the plugin
- Go to WooCommerce → Settings → Payments → Fintoc.
- In the settings screen, configure:
- Enable Fintoc: the toggle that turns the gateway on.
- Title: the payment method name shown to customers at checkout. Leave it empty so the plugin names the payment methods enabled for your organization. For example, a Mexican organization with Interbank Electronic Payment System (SPEI) transfers, cards, and cash shows
Pay with SPEI, card or cash. That text matches what the plugin writes. If you write a title, the checkout always shows that title. - Description: the text shown under the payment method at checkout. Leave it empty to use the default description.
- Test mode: the toggle that uses your test secret key; leave it off to take live payments.
- Live secret key: your
sk_live_...key from the dashboard. - Test secret key: your
sk_test_...key, needed only while test mode is enabled. - Debug log: the toggle that logs API requests and webhook events under WooCommerce → Status → Logs (source
fintoc).
- Save changes.
Fintoc. After that, the checkout shows the payment methods and one logo for each.
Webhook setup
The plugin uses webhooks to confirm payments, so this step is required.- On the Fintoc settings screen in WooCommerce, copy the Webhook endpoint URL shown there.
- In your Fintoc dashboard, create a new webhook endpoint with that URL and method
POST. - Subscribe the endpoint to the
payment_intent.*,checkout_session.*, andrefund.*events. The plugin uses these events to confirm payments and reconcile refunds.
Order statuses
A bank transfer is not always confirmed in seconds. Depending on the bank, the transfer can take minutes, hours, or days. The plugin reflects that wait in the order status. Expect to see On hold whenever your customer returns to your store before Fintoc confirms the payment:Orders on hold
While an order sits in On hold, the plugin protects it:- WooCommerce does not cancel orders in On hold. WooCommerce cancels orders in Pending payment once they have been unpaid for longer than the Hold stock (minutes) setting, 60 minutes by default. Find that setting under WooCommerce → Settings → Products → Inventory.
- The order reserves its stock, so the products do not sell out to someone else while Fintoc validates the payment.
- The customer cannot start a second payment for the same order, so they cannot pay twice.
Your customer receives WooCommerce’s standard Order on-hold email when Fintoc starts validating the payment. To disable the email, go to WooCommerce → Settings → Emails → Order on-hold.
Cash payments in Mexico
When your customer chooses cash, Fintoc gives them a voucher to pay at a store. When your customer returns to your store, the order received page shows a notice with a link to the voucher. The order stays in On hold, with its stock reserved, until your customer pays at the store or the Checkout Session expires, 24 hours by default. The plugin then moves the order to Processing or Failed.Duplicate payments
If a second payment succeeds for an order that is already paid, the plugin leaves a note on the order, logs an error, and emails the store admin. The money moved twice, so refund the duplicate payment from the Fintoc dashboard.Manage refunds
You can issue full and partial refunds directly from the WooCommerce order screen. Open the order, select Refund, enter the amount, and submit. The plugin sends the request to the Fintoc Refunds API and reconciles the outcome through therefund.* webhook events.
Refund confirmation times vary by country. For bank transfers, Fintoc may retry for up to 7 days when there is insufficient balance, so a refund can stay pending until Fintoc confirms the refund.
Test the integration
- Enable Test mode on the settings screen and paste your test secret key (
sk_test_...). - Place a test order with each enabled payment method and complete the authorization in Fintoc’s sandbox. After a successful payment, the plugin moves the order to Processing and records the matching
payment_intent.*andcheckout_session.*webhook events. For test credentials and sandbox details, see Test your integration. - Enable Debug log and review WooCommerce → Status → Logs (source
fintoc) to inspect API requests and webhook events.
Go live
- Confirm that Fintoc has activated Payments for your organization. Until then,
livecheckouts fail withMissing required param: payment_method_options.bank_transfer.recipient_account. - After testing each enabled payment method, disable Test mode so the gateway uses your
livesecret key. - Place one order in
livemode with each enabled payment method to confirm the full end-to-end flow.