Merchant direct integration for MIT
This is a direct integration for MIT only merchants
Data Flow
1. Sending all orders for customized risk model. (Transmit API)
2. Processing declined rebills with FlexCharge (Evaluate API)
Step 1. Create a Sandbox account
If you don't already have a Sandbox account with the required credentials to start using our APIs, you can request one at [email protected]
Ask our support to enable MIT for your account.
Step 2. Authentication
All API requests are made over HTTPS. Requests without authentication will fail.
How to authenticate.
Step 3. Transmit API
The Transmit API needs to receive a copy of each processed payment transaction (authorized or declined) related to any of your orders. The data sent the Transmit API is used to build customer profiles and DOES NOT activate the FlexCharge service.
Once transmitted, our API will respond with a transaction key.
This key can be used to update the order object, for example with its outcome.
How to implement /transmit.
Step 4. Evaluate API
Payment Method tokenization
PCI data needs to be tokenized for this step.
Your tokenization key can be found on the Developers > Tokenization section on the merchant portal.

How to /tokenize.
/evaluate
On declined/failed transactions, you will have to invoke FlexCharge's Evaluate API.
This ACTIVATES the FlexCharge service.
Specific fields to provide for this integration
isMIT | Boolean | |
isRecurring | Boolean | |
expiryDateUtc | date-time | Indicates period during which FlexCharge will retry the transaction. |
subscription | Object | Information about the subscription. |
For subscriptions, you will need to set an expiryDateUTC
(minimum 2 weeks, ideally 3 weeks). FlexCharge will retry these transactions during this period of time while sending status update notifications via webhook.
Once called, our API will respond with both a Submitted
status and a orderSessionKey
.
When retrying, FlexCharge will respond with a Submitted
status as long as the Payment Transaction was not deemed eligible for rescue. If it is eventually eligible, then FlexCharge will respond with a Approved
status. If the status remains Submitted
by the end of the expiryDateUTC
, then the transaction was not rescuable.
How to implement /evaluate
Exclusive retry mechanism with MIT that have just failed
The FlexCharge service is optimized to work with failed Merchant Initiated Transactions (MIT) that have just failed. These need to be passed to FlexCharge on that day (and not after a few days or weeks) and should not be retried by the Merchant up to the set expiry date.
Step 5. Receive outcome
Receive updates on the transactions that were rescued by FlexCharge through a Webhook, and/or via the Outcome API.
Webhook
Processing on MIT is asynchronous. In order to get notified when the status is updated, you must subscribe to a webhook.
How to manage webhooks
Outcome API
Invoke /outcome regularly to retrieve information about orders that have been submitted through /evaluate.
How to implement /outcome.
Your integration is now done
You can now test transactions in your test environment.
Updated 13 days ago