1. Initiate Payment

This is a method you can use to initiate payments based on DirectPay with connected APM providers.

Initiate Payment (Id)

POST {{Base Adres}}/api/paywall/apm/pay

Important: To use the APM Payment Initiation (DirectPay) service, you need to include 'apikeypublic' and 'apiclientpublic' parameters in the 'Header' field.

PaymentAPI Address

The parameters that need to be sent to the service in the headers are as follows:

Parameter
Type
Compulsory
Description

apikeypublic

string

Yes

The Public Key obtained from the merchant panel.

apiclientpublic

string

Yes

The Public Client obtained from the merchant panel.

The parameters that need to be sent to the service in the body are as follows:

Parameter
Type
Compulsory
Description

ApmKey

int

Yes (Conditional)

The Key information of the APM provider.

Bkz: APM

ApmConnectionId

int

Yes (Conditional)

The Id (identifier) information of the connections obtained through the APM listing service. You can initiate payments through the relevant connection using this parameter when dynamically generating your payment screen scenarios.

CurrencyId

int

Yes

The currency in which the payment is intended to be processed. Bkz: Currency Units

SectorId

short?

No

The sector information where the payment will be processed. Shared with providers.

Sectors

MerchantUniqueCode

string

Yes

The unique identifier you've generated for the payment.

Amount

decimal

Yes

The payment amount.

Description

string

Yes

The description of the payment. Depending on the provider, this description can be displayed on the payment screen.

Payer

Payer

Yes

This object contains the payer information for the payment. The parameters under this object may vary depending on the requirements of the provider. Example: For a provider that expects CardNumber, the Paywall API makes CardNumber parameter mandatory.

Products

List<Products>

No

It will be useful for sending, reporting, and tracking purposes. If these details are sent, the total amount of the sent products is compared with the actual transaction amount. However, if they are not sent, no comparison is made.

Provider:Parameters

Dynamic

Yes/No

If there are dynamic details expected by the provider at the time of payment, such information is obtained externally and shared with the providers. For example, if a provider expects information like store code or store identity, Paywall API verifies and enforces these details as mandatory.

Payer :

Parameter
Type
Compolsory
Description

Fullname

string

Yes (Conditional)

Payer full name

CardNumber

string

Yes (Conditional)

Payer card number (e.g., meal card, etc.)

CardId

string

Yes (Conditional)

Payer card identity number (works if stored in the APM provider)

Phone

string

Yes (Conditional)

Payer phone number

Email

string

Yes (Conditional)

Payer email address

UserIdentity

string

Yes (Conditional)

Payer identity information in your system (TCKN/VKN)

ConsumerIdentity

string

Yes (Conditional)

Payer identity information in your system (UserId)

Birthday

DateTime

No

Payer date of birth

CardAlias

string

Yes (Conditional)

Label of the card belonging to the payer (Masterpass)

Servise gönderilecek örnek bir JSON dosyası şu şekildedir :

The parameters returned from the service are as follows:

Parameter
Type
Description

ErrorCode

int

Error code. Returns '0' if the operation is successful.

Result

bool

Returns a true or false value. If the operation is successful, it returns 'true'.

Message

string

If the operation fails, this is the message describing the error, with language support based on the locale parameter.

Body

object

If the operation fails, this is the error detail object.

Important: If the PendingOtpConfirm parameter returns TRUE, you must confirm the payment with the request on the Confirm Payment page.

Last updated