Wallet Payments

The current public wallet API uses the /payment/v1/wallet base path.

Initialize a Wallet Payment

Send POST /payment/v1/wallet/init with merchantId in the request header. The body uses the current CreatePaymentRequest contract documented under Payments. Set walletIntegratorType to the configured integration, such as ODERO_PAY, GARANTI_PAY, OLIZ_PAY, or ABB_PAY. A successful request returns 201 Created.

The response contains id, source, timestamp, resultCode, resultMessage, errors, and response. Each error contains code, type, and message. Response data contains orderId, status, redirectUrl, and qrText.

Completion Callbacks

  • POST /payment/v1/wallet/complete/garantipay: body fields are orderId and signMessage; returns the string OK in the standard response wrapper.
  • POST /payment/v1/wallet/complete/abb-pay: body fields are orderId, externalId, and status; returns OK in the standard response wrapper.

These completion endpoints are payment-provider callbacks and do not require the merchant header in the current controller.

Retrieve Payment Status

Send GET /payment/v1/wallet/status/{orderId} with merchantId in the request header. The response contains the payment status. A merchant mismatch returns a wrapped error with code 404.

GarantiPay Installment Options

Send POST /payment/v1/wallet/garantipay/v0/options using the GarantiPay installment-options request contract. The response is the provider's installment-options response in the standard API wrapper.

The wallet controller exposes no active public cancel or refund endpoint; those methods are commented out in the current source and are therefore not documented as callable APIs.