Pre-Authorization

Learn how to handle pre-authorization requests.

The Pre-Authorization interface is suitable for the business where you need time before claiming funds from customers. If you plan to use a pre-authorization request when you need to claim funds manually through a Capture interface.
The Pre-Authorization interface will verify the credit card data, credit line, and reserve the requested funds.

📘

We can set automatic Capture for your pre-authorizations within needed time period. Contact your account manager or technical team to turn this function on, indicate a desired time frame.

🚧

If no Capture initiated for several days, authorization will expire. The funds will be returned to a customer and your Capture request will fail. Holding period depends on Issuer settings and usually vary from 9 till 30 days.


Step 1. Send a request

To initiate a transaction you need to send an authorization request with payment and customer data:

POST https://sandbox.payabl.com/pay/backoffice/payment_preauthorize

In your request, include:

  • merchantid : The merchant identification number is issued during account creation.
  • amount : The amount field contains the transaction’s total amount. This is the amount that will be transmitted to the authorizing system.
  • currency : TThe currency field contains the alphanumeric currency code for the transaction, according to ISO 4217, e.g. EUR, USD, AUD, CAD, NOK, SEK, CHF. to http://www.xe.com/iso4217.php.
  • payment_method : Valid payment method id, e.g. 1 = Credit Card.
  • signature : The signature field contains a 40-figure hexadecimal value. This signature value is a checksum designed to protect the merchant account from unauthorized access..
  • ccn : The ccn field contains the customer's credit card number. The payment gateway is capable of processing any credit card type.
  • exp_month
  • exp_year
  • cvc_code
  • cardholder_name
  • email : A RFC 822 compliant email address
  • customerip
    You can see a full list of parameters in Pre-Authorization.

Request example

merchantid=api_test&amount=1.23&currency=EUR&orderid=1234-123456789
4321&language=de&lastname=Mustermann&street=Hanauer+Landstrasse&zip=60322&city=Frank
urt&country=DEU&firstname=Max&company=Powerpay21&email=aneu%40powerpay21.com&sig
ature=924043247f6d7d943a44e319a101e8522d681b1e&customerip=127.1.1.1&payment_method=
&ccn=4242424242424242&cvc_code=123&cardholder_name=Max+Mustermann&exp_month=01
exp_year=2015

Step 2. 3DSecure

payabl. will send a response with url_3ds parameter. The status of the transaction will be pending errorcode=2000.

🚧

3DSecure step depends on the processing countries and the technical settings of the account.

Response example

transactionid=213592105&transid=213592105&status=2000&errormessage=pending&errmsg=pending&
amount=1.23&price=1.23¤cy=USD&orderid=Powercash21-Test&payment_method=1&ccn_four=4242&
card_type=VISA&expiry_month=12&expiry_year=2030&url_3ds=http%3A%2F%2F172.25.50.31%3A9100%2Ftest%2Fv1%2Ffb1657ac65343bdaa831dfd633ff8f20%2Fredirect&user_id=46929

After you received the 3D Secure URL, you need to decode it and redirect the customers to it. When customers need to provide PIN/passphrase to their bank/customer’s credit card institution for transaction verification.

An internal notification will be sent to the merchant’s notification URL and the customer will be redirected to the url_return if the 3D Secure step was successful.

Notification example

"security=6def3e9d217612fcba5264315a0eef45cf7b0130&type=capture&transactionid=213592105&errorcode=0&errormessage=&orderid=Powercash21-Test" "http://83.169.19.140/simulation/billing_response.php"

Our Technical Support team is there to help you:
Email: [email protected]
Available Monday – Friday between 09:00 and 17:00 CET/CEST