Midtrans Promo Engine is an exclusive feature of hosted checkout page (Snap and Payment Link) integration, where merchant can easily run promotion without any additional code or technical development. From promo campaign creation to implementation in the checkout page can be set via dashboard without any technical capabilities needed.
Promo Engine makes it easy for merchant to perform the following operations :
- Implement promotion directly in the checkout flow
If promotion is active and customer is eligible, customer will see a promo sticker next to the payment method selection in Snap's payment list. Customer then can choose which promotion they want to apply to their transaction, and final amount will be deducted before customer clicks pay. Note that user can only choose 1 promotion within a transaction.
Set maximum budget (max IDR budget, trx cap, or both) per campaign. Once the budget runs out, campaign will be automatically deactivated, ensuring that merchant will not spend more then the allocated budget.
User maximum transaction cap
Limit the number of time a user (defined by either email, phone number or card number) can transact using a promotion according to the campaign rules to prevent promo abuse or fraud.
Implement BIN based campaign
For card payment specific promotions, limit which card BINs would be eligible to receive promotion, according to partner bank's terms and conditions.
Set campaign active period
Set the time period when the campaign will be active - once campaign has passed the set date, campaign will automatically deactivate.
Set campaign recurrence
Set when campaign will be applicable (certain day of the week, certain date of the month) or the frequency (reset campaign's user cap every day, every week, or every month).
Easily download promotion reports for merchant's own recon activities or to be shared with bank/payment's partners, via Midtrans's dashboard or Promo Engine's dashboard.
Supported payment method
Promo Engine currently only support Midtrans's card payment transactions - more schemes coming soon.
To activate Promo Engine on your merchant account, activate first via Midtrans's Dashboard's Payment Methods page for feature activation. Once done, you will be able to see the Promo menu in your Midtrans's dashboard.
Transaction counted as successful transaction in Promo Engine
Transaction with the status
SETTLEMENTwith the promo applied during checkout in Snap's page is counted as a successful transaction and will deduct the allocated budget/user cap set in the campaign. If the transaction's status is
FAILUREhowever, the campaign's promo limit from said transactions will be replenished.
A promo campaign is set with a budget limit of 1,000,000 IDR. If a transaction with a 10,000 IDR discount applied was made by customer and transaction status is
CAPTURE, budget will be deducted and 990,000 IDR is left. However if transaction is cancelled later on; 10,000 IDR will be returned back to the budget limit, making the budget limit of said campaign back to 1,000,000 IDR.
Promo campaigns can be created by going to Midtrans Dashboard > Promo > Create Promo. You can save the campaign as draft first by ensuring that the Promo will be automatically active during the promo period tickbox in the Promo Period section is left unticked when clicking the Submit Promo button. It's very important to note that campaigns' budget and terms cannot be modified once set to active.
To deactivate a campaign, go to the Promo List, click the
... menu on the right side of the table, then click Deactivate.
To create a campaign; set your promo details, discount terms, promotion's budget, customer's max transaction limit, and promo period within the promo creation page.
Fill in the following promotion details upon creating a campaign :
Promotion name. This will appear as the promotion name that customer can choose in Snap's checkout page.
Input the provider who sponsors this campaign. This will be available as filterable information in the Promo page.
Promotion unique code, used as promo identifier within Promo Engine. Promo code needs to be unique for every campaign.
Tick the Promo will be automatically active during the promo period checkbox in the Promo Period section if you want to activate the campaign which will run on the defined date, otherwise it will be saved as draft and needs to be activated manually. You will also need to specify at least the promo start date. If no end date is specified, promo will run indefinitely.
Set the discount type between Fixed Amount, Percentage or Combo (Fixed Amount & Percentage). This section is mandatory to be filled.
Fixed discount will discount the transaction over a fixed amount. If discount amount exceeds the total transaction amount, final transaction amount will be zero - be careful as this might cause the transaction to fail as some payment method/banks do not support transaction below a certain amount.
If you set the fixed discount amount to 10,000, and total transaction amount prior to discount is 100,000 - once applied by customer, final transaction amount that will be charged to Midtrans and customer will be 90,000 IDR.
Percentage discount will discount the transaction based on % set in the
Discount Amount field.. If discount IDR amount exceeds the total transaction amount, final transaction amount will be zero, same caution above applies.
If Discount Percentage is set to 10%, and total transaction amount prior to discount is 100,000 - once applied by customer, final transaction amount that will be charged to Midtrans and customer will be 90,000 IDR.
- Fixed Amount & Percentage (Combo)
Combo discount will apply % based discounts with maximum IDR amount of discount, whichever IDR discount amount is lower (either the % based discount or maximum IDR amount) will be applied to the transaction.
If discount percentage is set to 10% and fixed discount amount is set to 10,000 - if a transaction with basket size of 1,000,000 is made by customer and promotion is applied; IDR 10,000 will be discounted from the transaction (making the final amount charged to Midtrans 990,000) as 10% of the transaction amount is greater than the maximum discount amount (IDR 100,000 vs IDR 10,000).
Set the minimum transaction amount (basket size) eligible to receive promo and discount type in this section.
Minimum transaction amount in the Advanced Settings section if you want to enable promo for transaction with basket size (before discount is applied) to be at least a certain amount. Customers who makes transactions with gross amount below the set minimum amount will not be shown this promo.
Promo Budget section in the promo creation page allows you to set a maximum budget for your promo campaign. Untick it to set the promo campaign to run without regard of campaign budget until the end of specified promo period. If set to Yes, your campaign will only run until the set limit is reached, then campaign will automatically deactivate. Budget limit can be set by transaction amount, transaction count, or a combination of both.
Budget amount will limit the promotion up to your total allocated IDR budget for the whole campaign. If the
budget amount is exceeded, the promo can no longer be used.
If you set the
Budget amount as 100,000,000 - and then you have 1000 transactions which have redeemed the promotion amount accumulated to a total of 100,000,000 - the 1001st transaction going forward will not see any promotion option in Snap checkout page and be processed as normal.
Limit the promotion for x number of transactions only. If the transaction count is exceeded within the promo period, the promo can no longer be used by customer.
promo quota is set to 100, and 100 transactions from various customers have successfully used the promotion, the 101th transaction going forward will not see any promotion option in Snap and be processed as normal.
Budget amount and
Promo quota. Whichever condition is met first will deactivate the campaign.
If you set the
Budget amount as 1,000,000 and count to 10 - and then you have 10 transactions which have redeemed in total 900,000 IDR worth of discount before the campaign ends - the 11th transaction going forward will not see any promotion option in Snap and be processed as normal.
This section governs how long the campaign will be active (and with it, the budget calculation time).
Tick the Promo will be automatically active during the promo period checkbox in the Promo Period section if you want to activate the campaign which will run on the defined date, otherwise it will be saved as draft and needs to be activated manually. You will also need to specify at least the promo start date and time. If no end date is specified, promo will run indefinitely.
This section governs when promotion will be available for customers.
Daily - at selected time: campaign will be active everyday within the specified hour. Outside of specified hour, promo will deactivate and be automatically reactivated again on the next calendar day within the specified hour.
On selected days: campaign will be active on certain days of the week (multiple days selection are supported), within the specified hour.
On specific dates: campaign will be active on a certain date of the month (range between 1-31, multiple inputs are allowed separated by comma) and specified hour. Example : if you want to set up a payday period campaign that occurs every month on 25-27th day, type
Enter specific datesfield.
Promo scheduledoes not affect budget calculation - say that if you set it to
Daily - at selected time, budget calculation will not be reset daily. Instead, it will follow the start date and end date set in the
Promo Periodfields (or never reset if on End Date is specified in Promo Period).
You can set promo limitation specific to card payment properties in the
Credit Card BIN and installment section. Setting this section is optional; if not needed, then leave the checkbox unticked or leave it as empty.
Activate promo only for transactions using card with specific BIN number. For example, if you want the promo to be activated only for Mandiri cards, simply adding 46170069 in the input field will enable the promo option only for customers who use cards beginning with 46170069. You can also input multiple BINs by separating them with commas such as 46170069,52642210,45992078 (no space).
Please note that we highly recommend filling in 8 digits Card Bin in this input field.
Tick all the eligible the Installment Terms options. If not set, promo will be applicable for all type of transactions.
You can set how many times a customer can use the promotion within a certain time period. If customer exceeds the cap set here, the subsequent transaction made by said customer will proceed as normal without promotion applied.
A customer is defined by a unique card number, phone number or email address - promo engine will count transactions made by each card, phone number and email. If all three limitation fields (shown in above picture) are filled and customer is using the same credentials across three fields, whichever limit is met first will deactivate the promotion for said customer's transaction. These fields are optional.
If you set the max trx limit as follows,
a. 1 trx per card
b. 2 trx per email
c. 3 trx per mobile phone number.
If customer using card A, email B, and phone number C across all of their transactions, the first transaction will be eligible for promo, but 2nd transaction going forward will no longer be eligible for promotion since max cap per card has already been met, even though cap per email or phone number hasn't been met yet.
If customer however changes card for their second transaction, customer will be eligible for promotion on their second transaction as no max cap is met as of 2nd transaction.
The previously set customer's limitation period can be set in the
Reset cycle of promo usage section. Once the timeframe has been exceeded, customer's limit will be reset and customer can use the promo again. If not set, each customer's quota will not be reset until the end of campaign.
If limitation timeframe is set as
End of day and max transaction cap is set as 1, if customer has made a transaction and used promo today on 11PM GMT+7, customer can only use the promo again from said campaign as early as 00:00:01 GMT+7 the following day.
There are 3 types of timeframe :
End of promo period
Customer's limitation will last as long as the campaign is active. Once customer's transaction limit is met, customer can no longer use the promo until the campaign ends.
End of day
Customer's limitation will last per transaction's date (GMT+7). Once the day changed, the limitation will be reset.
End of month
Customer's limitation will last per transaction's month (GMT+7). Once the month changed, the limitation will be reset.
Define how many days (1 day is defined as 24 hour) after transaction until the limitation will be reset. Days will be calculated from the date and time when customer made a transaction. Max days that can be set is 30 days. E.g. if you set is as 2 days and customer transact at 2023-02-14 03:00:00, then customer can use promo again on 2023-02-16 03:00:00.
Download transaction as usual via Midtrans's Dashboard > Transactions. When downloading, tick the `Promo Details` checkbox which will add two columns in the report, the Promo Code (campaign unique identifier as set in the Promo Creation page), and Promo Original Amount (original transaction amount as sent by merchant prior to discount).
Updated about 1 month ago