Comparison Chart

For online payment, the merchant decides which approaches fit the business requirements.

Integration approachHosted payment pageSeamless integrationIn-page checkoutMobile XDKDirect server API + CSERecurring API
Browser dependencyYes, popup and redirectionYes, popup and redirectionYes, iframe, popup and redirectionSmartphone built-in browserDependsNo
UI/UXModerateBetterBetterBest for mobileHandled by merchantHandled by merchant
Time to market (man-day)1–72–142–142–145–6010–90
Suitable forFast and easy deploymentBetter UXBetter UXIn-app purchaseBetter UI & UXSubscription or billing
Mobile readinessRWDRWDRWDNative / hybridBackend onlyBackend only
PCI-DSS compliantPGPGPGPGPG / Merchant if handling PANPG / Merchant if handling PAN
Availability on github20/22 of the cart modules6/22 of the cart modulesYes12 dev-tools supportednilnil
Available endpointsall 3 endpointsall 3 endpointsall 3 endpointsnotification & callback URLall 3 endpointsnotification & callback URL
Fraud screeningBy PGBy PGBy PGBy PGBy merchantBy merchant


For response handling, setup these endpoints (webhook) to capture the payment response.

Response endpoint

Return URL

Notification URL

Callback URL

Browser dependency

Yes

No

No

Payment type response

Realtime payment

Realtime payment

Cash payment / defer update

Reliability

Low

High

High

Security

Low if payment verification is not enabled

High

High

IPN implementation

Frontend: easier to implement using JS snippet with treq=0

Backend: POST back all values + treq=1 to returnipn.php, more reliable

Backend: POST back all the values + treq=1 to returnipn.php

Backend: echo "CBTOKEN: MPSTATOK"

dsgdfgfdfdgdg
fdgdfgdf