The following request examples are in the format to use in the gateway playground for a SERVER-TO-SERVER integration.

This integration requires you to have your own PCI DSS-compliant environment.

🚧

PCI -DSS 4.x

Your website payment pages must comply with PCI DSS v4.x.
For more details, see Gateway PCI documentation

The gateway playground for this request is at Gateway documentation and playground for synchronous payments.


Single or initial payment with gateway 3DS

SERVER-TO-SERVER request to create a single payment using the gateway MPI for 3DS. You must include additional parameters for instalments, subscriptions, or metered payments.

entityId={channelId}
amount=20.00
currency=EUR
paymentType=DB
merchantTransactionId=P223
paymentBrand=VISA
card.number=47111000000000000
card.holder=Joe Smith
card.expiryMonth=05
card.expiryYear=2030
card.cvv=123
billing.street1=Calle Principal 123
billing.city=Barcelona
billing.country=ES
billing.postcode=08123
[email protected]
customer.ip=2001:8a0:7f4b:1b00:dd4e:2bf6:1fb8:56af
customer.givenName=Joe
customer.surname=Smith
customer.phone=34667666666
customer.merchantCustomerId=CUST11
shopperResultUrl=https://example.com/shopperresult
customer.browser.screenColorDepth=48
customer.browser.javaEnabled=false
customer.browser.language=en
customer.browser.screenHeight=1200
customer.browser.screenWidth=1600
customer.browser.timezone=60
customer.browser.challengeWindow=4
customer.browser.userAgent=Mozilla/4.0 (MSIE 6.0; Windows NT 5.0)
threeDSecure.challengeIndicator=04
customParameters[3DS2_enrolled]=true
customParameters[3DS2_flow]=challenge
testMode=EXTERNAL
entityId={channelId}
amount=20.00
currency=EUR
paymentType=DB
merchantTransactionId=P223
paymentBrand=VISA
card.number=47111000000000000
card.holder=Joe Smith
card.expiryMonth=05
card.expiryYear=2030
card.cvv=123
billing.street1=Calle Principal 123
billing.city=Barcelona
billing.country=ES
billing.postcode=08123
[email protected]
customer.ip=2001:8a0:7f4b:1b00:dd4e:2bf6:1fb8:56af
customer.givenName=Joe
customer.surname=Smith
customer.phone=34667666666
customer.merchantCustomerId=CUST11
shopperResultUrl=https://example.com/shopperresult
customer.browser.screenColorDepth=48
customer.browser.javaEnabled=false
customer.browser.language=en
customer.browser.screenHeight=1200
customer.browser.screenWidth=1600
customer.browser.timezone=60
customer.browser.challengeWindow=4
customer.browser.userAgent=Mozilla/4.0 (MSIE 6.0; Windows NT 5.0)
threeDSecure.challengeIndicator=04
customParameters[3DS2_enrolled]=true
customParameters[3DS2_flow]=challenge
standingInstruction.type=INSTALLMENT
standingInstruction.mode=INITIAL
standingInstruction.source=CIT
standingInstruction.numberOfInstallments=999
standingInstruction.expiry=9999-12-31
standingInstruction.frequency=0001
testMode=EXTERNAL
entityId={channelId}
amount=20.00
currency=EUR
paymentType=DB
merchantTransactionId=P223
paymentBrand=VISA
card.number=47111000000000000
card.holder=Joe Smith
card.expiryMonth=05
card.expiryYear=2030
card.cvv=123
billing.street1=Calle Principal 123
billing.city=Barcelona
billing.country=ES
billing.postcode=08123
[email protected]
customer.ip=2001:8a0:7f4b:1b00:dd4e:2bf6:1fb8:56af
customer.givenName=Joe
customer.surname=Smith
customer.phone=34667666666
customer.merchantCustomerId=CUST11
shopperResultUrl=https://example.com/shopperresult
customer.browser.screenColorDepth=48
customer.browser.javaEnabled=false
customer.browser.language=en
customer.browser.screenHeight=1200
customer.browser.screenWidth=1600
customer.browser.timezone=60
customer.browser.challengeWindow=4
customer.browser.userAgent=Mozilla/4.0 (MSIE 6.0; Windows NT 5.0)
threeDSecure.challengeIndicator=04
customParameters[3DS2_enrolled]=true
customParameters[3DS2_flow]=challenge
standingInstruction.type=RECURRING
standingInstruction.mode=INITIAL
standingInstruction.source=CIT
standingInstruction.recurringType=SUBSCRIPTION
standingInstruction.expiry=9999-12-31
standingInstruction.frequency=0001
testMode=EXTERNAL
entityId={channelId}
amount=20.00
currency=EUR
paymentType=DB
merchantTransactionId=P223
paymentBrand=VISA
card.number=47111000000000000
card.holder=Joe Smith
card.expiryMonth=05
card.expiryYear=2030
card.cvv=123
billing.street1=Calle Principal 123
billing.city=Barcelona
billing.country=ES
billing.postcode=08123
[email protected]
customer.ip=2001:8a0:7f4b:1b00:dd4e:2bf6:1fb8:56af
customer.givenName=Joe
customer.surname=Smith
customer.phone=34667666666
customer.merchantCustomerId=CUST11
shopperResultUrl=https://example.com/shopperresult
customer.browser.screenColorDepth=48
customer.browser.javaEnabled=false
customer.browser.language=en
customer.browser.screenHeight=1200
customer.browser.screenWidth=1600
customer.browser.timezone=60
customer.browser.challengeWindow=4
customer.browser.userAgent=Mozilla/4.0 (MSIE 6.0; Windows NT 5.0)
threeDSecure.challengeIndicator=04
customParameters[3DS2_enrolled]=true
customParameters[3DS2_flow]=challenge
standingInstruction.type=UNSCHEDULED
standingInstruction.mode=INITIAL
standingInstruction.source=CIT
standingInstruction.recurringType=STANDING_ORDER
testMode=EXTERNAL


Single or initial payment with merchant 3DS

SERVER-TO-SERVER request to create a single payment when using your own MPI for 3DS. You must include additional parameters for instalments, subscriptions, or metered payments.

entityId={channelId}
amount=20.00
currency=EUR
paymentType=DB
merchantTransactionId=P223
paymentBrand=VISA
card.number=47111000000000000
card.holder=Joe Smith
card.expiryMonth=05
card.expiryYear=2030
card.cvv=123
billing.street1=Calle Principal 123
billing.city=Barcelona
billing.country=ES
billing.postcode=08123
[email protected]
customer.ip=2001:8a0:7f4b:1b00:dd4e:2bf6:1fb8:56af
customer.givenName=Joe
customer.surname=Smith
customer.phone=34667666666
customer.merchantCustomerId=CUST11
shopperResultUrl=https://website.example.com/shopperresult
threeDSecure.eci=05
threeDSecure.authenticationStatus=Y
threeDSecure.version=2.2.0
threeDSecure.dsTransactionId=c75f23af-9454-43f6-ba17-130ed529507e
threeDSecure.acsTransactionId=2c42c553-176f-4f08-af6c-f99364ecbd0e8
threeDSecure.verificationId=MTIzNDU2Nzg5MDEyMzQ1Njc4OTA=
threeDSecure.flow=challenge
testMode=EXTERNAL
entityId={channelId}
amount=20.00
currency=EUR
paymentType=DB
merchantTransactionId=P223
paymentBrand=VISA
card.number=47111000000000000
card.holder=Joe Smith
card.expiryMonth=05
card.expiryYear=2030
card.cvv=123
billing.street1=Calle Principal 123
billing.city=Barcelona
billing.country=ES
billing.postcode=08123
[email protected]
customer.ip=2001:8a0:7f4b:1b00:dd4e:2bf6:1fb8:56af
customer.givenName=Joe
customer.surname=Smith
customer.phone=34667666666
customer.merchantCustomerId=CUST11
shopperResultUrl=https://website.example.com/shopperresult
threeDSecure.eci=05
threeDSecure.authenticationStatus=Y
threeDSecure.version=2.2.0
threeDSecure.dsTransactionId=c75f23af-9454-43f6-ba17-130ed529507e
threeDSecure.acsTransactionId=2c42c553-176f-4f08-af6c-f99364ecbd0e8
threeDSecure.verificationId=MTIzNDU2Nzg5MDEyMzQ1Njc4OTA=
threeDSecure.flow=challenge
standingInstruction.type=INSTALLMENT
standingInstruction.mode=INITIAL
standingInstruction.source=CIT
standingInstruction.numberOfInstallments=999
standingInstruction.expiry=9999-12-31
standingInstruction.frequency=0001
testMode=EXTERNAL
entityId={channelId}
amount=20.00
currency=EUR
paymentType=DB
merchantTransactionId=P223
paymentBrand=VISA
card.number=47111000000000000
card.holder=Joe Smith
card.expiryMonth=05
card.expiryYear=2030
card.cvv=123
billing.street1=Calle Principal 123
billing.city=Barcelona
billing.country=ES
billing.postcode=08123
[email protected]
customer.ip=2001:8a0:7f4b:1b00:dd4e:2bf6:1fb8:56af
customer.givenName=Joe
customer.surname=Smith
customer.phone=34667666666
customer.merchantCustomerId=CUST11
shopperResultUrl=https://website.example.com/shopperresult
threeDSecure.eci=05
threeDSecure.authenticationStatus=Y
threeDSecure.version=2.2.0
threeDSecure.dsTransactionId=c75f23af-9454-43f6-ba17-130ed529507e
threeDSecure.acsTransactionId=2c42c553-176f-4f08-af6c-f99364ecbd0e8
threeDSecure.verificationId=MTIzNDU2Nzg5MDEyMzQ1Njc4OTA=
threeDSecure.flow=challenge
standingInstruction.type=RECURRING
standingInstruction.mode=INITIAL
standingInstruction.source=CIT
standingInstruction.recurringType=SUBSCRIPTION
standingInstruction.expiry=9999-12-31
standingInstruction.frequency=0001
testMode=EXTERNAL
entityId={channelId}
amount=20.00
currency=EUR
paymentType=DB
merchantTransactionId=P223
paymentBrand=VISA
card.number=47111000000000000
card.holder=Joe Smith
card.expiryMonth=05
card.expiryYear=2030
card.cvv=123
billing.street1=Calle Principal 123
billing.city=Barcelona
billing.country=ES
billing.postcode=08123
[email protected]
customer.ip=2001:8a0:7f4b:1b00:dd4e:2bf6:1fb8:56af
customer.givenName=Joe
customer.surname=Smith
customer.phone=34667666666
customer.merchantCustomerId=CUST11
shopperResultUrl=https://website.example.com/shopperresult
threeDSecure.eci=05
threeDSecure.authenticationStatus=Y
threeDSecure.version=2.2.0
threeDSecure.dsTransactionId=c75f23af-9454-43f6-ba17-130ed529507e
threeDSecure.acsTransactionId=2c42c553-176f-4f08-af6c-f99364ecbd0e8
threeDSecure.verificationId=MTIzNDU2Nzg5MDEyMzQ1Njc4OTA=
threeDSecure.flow=challenge
standingInstruction.type=UNSCHEDULED
standingInstruction.mode=INITIAL
standingInstruction.source=CIT
standingInstruction.recurringType=STANDING_ORDER
testMode=EXTERNAL


Repeated payments base parameters

SERVER-TO-SERVER requests to collect a repeated payment for instalments, subscriptions, and metered payments.

entityId=(Channel ID)
amount=40.00
currency=EUR
paymentType=DB
merchantTransactionId=P123
paymentBrand=VISA
card.number=4711100000000000
card.holder=Joe Smith
card.expiryMonth=05
card.expiryYear=2030
billing.street1=Ave. Diagonal 611
billing.city=Barcelona
billing.country=ES
billing.postcode=08028
[email protected]
customer.ip=2001:8a0:7f4b:1b00:dd4e:2bf6:1fb8:56af
standingInstruction.type=INSTALLMENT
standingInstruction.mode=REPEATED
standingInstruction.source=MIT
standingInstruction.initialTransactionId={CardholderInitiatedTransactionID}
testMode=EXTERNAL
entityId=(Channel ID)
amount=40.00
currency=EUR
paymentType=DB
merchantTransactionId=P123
paymentBrand=VISA
card.number=4711100000000000
card.holder=Joe Smith
card.expiryMonth=05
card.expiryYear=2030
billing.street1=Ave. Diagonal 611
billing.city=Barcelona
billing.country=ES
billing.postcode=08028
[email protected]
customer.ip=2001:8a0:7f4b:1b00:dd4e:2bf6:1fb8:56af
standingInstruction.type=RECURRING
standingInstruction.mode=REPEATED
standingInstruction.source=MIT
standingInstruction.recurringType=SUBSCRIPTION
standingInstruction.initialTransactionId={CardholderInitiatedTransactionID}
testMode=EXTERNAL
entityId=(Channel ID)
amount=40.00
currency=EUR
paymentType=DB
merchantTransactionId=P123
paymentBrand=VISA
card.number=4711100000000000
card.holder=Joe Smith
card.expiryMonth=05
card.expiryYear=2030
billing.street1=Ave. Diagonal 611
billing.city=Barcelona
billing.country=ES
billing.postcode=08028
[email protected]
customer.ip=2001:8a0:7f4b:1b00:dd4e:2bf6:1fb8:56af
standingInstruction.type=UNSCHEDULED
standingInstruction.mode=REPEATED
standingInstruction.source=MIT
standingInstruction.recurringType=STANDING_ORDER
standingInstruction.initialTransactionId={CardholderInitiatedTransactionID}
testMode=EXTERNAL


Single payment without 3DS

Here is an example of a SERVER-TO-SERVER request to create a single payment without 3DS.

👍

We recommend that you always use a 3DS challenge

entityId={non-3DS_or_MOTO_channelId}
amount=20.00
currency=EUR
paymentType=DB
merchantTransactionId=P223
paymentBrand=MASTER
card.number=5200000000000049
card.holder=Joe Smith
card.expiryMonth=05
card.expiryYear=2030
card.cvv=123
billing.street1=Calle Principal 123
billing.city=Barcelona
billing.country=ES
billing.postcode=08123
[email protected]
customer.ip=2001:8a0:7f4b:1b00:dd4e:2bf6:1fb8:56af
customer.givenName=Joe
customer.surname=Smith
customer.phone=34667666666
customer.merchantCustomerId=CUST11
threeDSecure.exemptionFlag=01
customParameters[3DS2_flow]=frictionless
shopperResultUrl=https://example.com/
testMode=EXTERNAL

For the entityId, use your non-3DS channel ID or MOTO channel ID.

For values of the threeDSecure.exemptionFlag, see https://cardcorp.docs.oppwa.com/integrations/server-to-server/standaloneexemption.


Save the customer's card in the gateway

Add the following additional parameter to save a customer card.

createRegistration=true

When the payment is approved, get the registrationId from the response object and the 3DS data.


Repeated payment with saved card

Submit the repeated payment to the registration endpoint at https://eu-test.oppwa.com/v1/registrations/{id}/payments.

Replace {id} with the registrationId and do not submit any card or customer data. Also, send the 3DS data from the original request.

entityId={channelId}
paymentBrand=VISA
paymentType=DB
amount=18.99
currency=EUR
customer.givenName=Joe
customer.surname=Smith
customer.merchantCustomerId=CUST01
threeDSecure.eci=05
threeDSecure.authenticationStatus=Y
threeDSecure.version=2.2.0
threeDSecure.dsTransactionId=c75f23af-9454-43f6-ba17-130ed529507e
threeDSecure.acsTransactionId=2c42c553-176f-4f08-af6c-f9364ecbd0e8
threeDSecure.verificationId=MTIzNDU2Nzg5MDEyMzQ1Njc4OTA=
threeDSecure.amount=19.99
threeDSecure.currency=EUR
threeDSecure.flow=challenge
testMode=EXTERNAL
standingInstruction.type=RECURRING
standingInstruction.mode=INITIAL
standingInstruction.source=CIT