Attributes
- METHOD TYPEReal-Time Bank Transfer
-
DEPOSITS
-
WITHDRAWS
-
REFUNDS
Introduction
STPmex is a participant of the Interbank Electronic Payment System (SPEI®) authorized by Banco de México®, which offers technological products and services aimed at satisfying the needs of its clients in making electronic transfers.
The main objective of STP is to establish a technological architecture that offers an open, secure, robust and scalable link to the SPEI® system, enabling an online and real-time scheme in a continuous schedule for sending and receiving payments.
Prerequisites and Notes
- When a deposit request is submitted with a new user (
user_token_id
), a unique CLABE number is generated for this specific user. The CLABE number remains the same for all future deposits with the same user. All future deposits are connected to the first request. This means that for every user, we have one request in our system but there can be many transactions associated with this user. - When a user completes the deposit, a notification is sent from the provider. The generated notification from the provider for this user for all future deposits (after the first deposit) will not contain custom parameters (such as
merchant_unique_id
,userid
and others) submitted with the deposit request. - Since the user completes the deposit offline (via his bank account), the user can submit another deposit to the same CLABE number (generated on the first deposit) without having to go to the merchant’s payment page.
Supported Countries
- Mexico
Supported Currencies
- MXN
Implementation Details
Click tab to open…
{ "sessionToken":"<sessionToken from getSessionToken>", "merchantId": "<your merchantId>", "merchantSiteId": "<your merchantSiteId>", "clientRequestId": "<unique request ID in merchant system>", "amount": "1000", "currency": "MXN", "userTokenId": "<unique customer identifier in merchant system>", "clientUniqueId": "<unique transaction ID in merchant system>", "paymentOption":{ "alternativePaymentMethod":{ "paymentMethod":"apmgw_STPmex" } }, "deviceDetails":{ "ipAddress":"127.0.0.1" }, "billingAddress":{ "email":"john.smith@email.com", "country":"MX" }, "timeStamp":"<YYYYMMDDHHmmss>", "checksum":"<calculated checksum>" }
sfc.createPayment({ "sessionToken": "<sessiontoken>", "merchantId": "<your merchantId>", "merchantSiteId": "<your merchantSiteId>", "clientUniqueId": "<your clientUniqueId>", "paymentOption": { "alternativePaymentMethod": { "paymentMethod": "apmgw_STPmex" } }, "billingAddress": { "country": "MX", "email": " john.smith@email.com" } }, function(res) { console.log(res); if (res.cancelled === true) { example.querySelector('.token').innerText = 'cancelled'; } else { example.querySelector('.token').innerText = res.transactionStatus + ' – Reference: ' + res.transactionId; } example.classList.add('submitted'); });
- for REST API
-
{ "sessionToken":"<sessionToken from getSessionToken>", "merchantId": "<your merchantId>", "merchantSiteId": "<your merchantSiteId>", "clientRequestId": "<unique request ID in merchant system>", "amount": "1000", "currency": "MXN", "userTokenId": "<unique customer identifier in merchant system>", "clientUniqueId": "<unique transaction ID in merchant system>", "paymentOption":{ "alternativePaymentMethod":{ "paymentMethod":"apmgw_STPmex" } }, "deviceDetails":{ "ipAddress":"127.0.0.1" }, "billingAddress":{ "email":"john.smith@email.com", "country":"MX" }, "timeStamp":"<YYYYMMDDHHmmss>", "checksum":"<calculated checksum>" }
- for Web SDK
-
sfc.createPayment({ "sessionToken": "<sessiontoken>", "merchantId": "<your merchantId>", "merchantSiteId": "<your merchantSiteId>", "clientUniqueId": "<your clientUniqueId>", "paymentOption": { "alternativePaymentMethod": { "paymentMethod": "apmgw_STPmex" } }, "billingAddress": { "country": "MX", "email": " john.smith@email.com" } }, function(res) { console.log(res); if (res.cancelled === true) { example.querySelector('.token').innerText = 'cancelled'; } else { example.querySelector('.token').innerText = res.transactionStatus + ' – Reference: ' + res.transactionId; } example.classList.add('submitted'); });
- for Payment Page
User Experience
Deposit
- On the payment page, the user selects the SPEI/STPmex option.
- The user is redirected to a page with the generated CLABE number to which they need to transfer the funds.
- The user needs to log in to their bank account and make the transfer offline. It is possible to use the bank icons at the bottom to be redirected to the relevant bank login page.
- Once the user completes the deposit, a notification is sent from the provider.
Withdrawal
- On the payment page, the user selects the SPEI/STPmex option.
- The user enters the amount they wish to withdraw.
- The user is redirected to a bank capture page where they are required to enter their CLABE number:
- Once the user completes the form, a withdrawal request is created.
Testing Credentials
Full flow testing is not possible in an integration environment.