Payment solution ID 2

Создание платежей

URL POST
https://api-merchant.alikassa.com/v1/payment
HEADER
Content-Type application/json
Account Your account uuid, you can find in Accounts
https://merchant.alikassa.com/cabinet/resources/project-accounts
Sign Request signature

Link https://merchant.alikassa.com/cabinet/form/setting-api-certs generate "API certificate for payment", save the archive, unpack

  • password.txt
  • private.pem
  • public.pem

We keep only public.pem for signature verification.

Wrap all POST data in json (in the same order) and sign

$data = json_encode($data);

$privateKey = openssl_pkey_get_private(
        file_get_contents('private.pem'),
        file_get_contents('password.txt')
    );

if ($privateKey===false) {

        throw new \Exception('Error cert.');
}

openssl_sign($data, $sign, $privateKey);
$sign = base64_encode($sign);

Pass the received $sign in the Sign header. You can find a sample code at the end of the document.

* - Required fields
Name Type Description
amount* decimal (11.2) Amount
order_id* string (128) Your id must be unique
service* string (100) online_banking_idr_hpp
qr_code_idr_hpp
virtual_account_idr_hpp
local_bank_transfer_idr_hpp
customer_ip* ip Payer's IP address
customer_code* string (100) Deposit Bank Code
customer_first_name* string Имя плательщика
customer_last_name* string Фамилия плательщика
success_redirect_id int Id of redirect upon successful payment
fail_redirect_id int Id of redirect in case of unsuccessful payment
notification_endpoint_id int Notification id
success_redirect_url string|max:255 Link to redirect after successful payment
fail_redirect_url string|max:255 Link to redirect after unsuccessful payment
notification_endpoint_url string|max:255 Link to send a callback after the statuses are finalized

Response

Name Description
url Link to payment
payment_status Payment status
wait — in the process of payment
id AliKassa payment id
uuid AliKassa payment uuid
success_redirect_url Ссылка на вашу страницу, для редирека клиента после успешной оплаты

When creating, always wait, check the payment status via the API or wait for a notification!

Example of a successful HTTP CODE 200 response:

{
    "url" => "https://pay-merchant.alikassa.com/bd291fe1-5c19-4113-ae62-a2d3c4d01d20"
    "payment_status" => "wait"
    "id" => 108465371
    "uuid" => "bd291fe1-5c19-4113-ae62-a2d3c4d01d20"
    "success_redirect_url" => null
}

An example of an unsuccessful HTTP CODE 400 response:

{
   "message": "The given data was invalid.",
   "errors": {
      ...
   }
}

After receiving the url, redirect the client to the link.

Possible values of payment_status, see the documentation "Payment status".

Если вы передали notification_endpoint_id или notification_endpoint_url, то вы получите уведомление о смене статуса оплаты

Deposit Bank Code

service customer_code bank name
online_banking_idr_hpp BCA Bank Central Asia
BNI Bank Negara Indonesia
BRI Bank Rakyat Indonesia
CIMBN CIMB Niaga
MDR Mandiri Bank
PMTB Permata Bank
PANIN Panin Bank
qr_code_idr_hpp QRIS QRIS
DANAQRIS DANA QRIS
GOPAYQRIS GO PAY QRIS
LINKAJAQRIS LINK AJA QRIS
OVOQRIS OVO QRIS
SHOPEEQRIS Shopee Pay QRIS
virtual_account_idr_hpp BCAVA BCA Virtual Account
BNIVA BNI Virtual Account
BRIVA BRI Virtual Account
CIMBNVA CIMBN Virtual Account
MBBIVA MBBI Virtual Account
MDRVA MDR Virtual Account
PMTBVA PMTB Virtual Account
PANINVA PANIN Virtual Account
BDIVA BDI Virtual Account
local_bank_transfer_idr_hpp BCALBT BCA Bank Local Bank Transfer
BNILBT BNI Bank (Local Bank Transfer)
BRILBT BRI Bank (Local Bank Transfer)
MDRLBT Mandiri Bank (Local Bank Transfer)

Создание выплаты

URL POST
https://api-merchant.alikassa.com/v1/payout
HEADER
Content-Type application/json
Account Your account uuid, you can find in Accounts
https://merchant.alikassa.com/cabinet/resources/project-accounts
Sign Request signature
* - Required fields
Name Type Description
amount* decimal (11.2) Amount
order_id* string (128) "1234"
service* string (100) payment_card_idr
number* string (100) Номер счета получателя
customer_code* string (100) Payout Bank Code
customer_first_name* string (100) Имя плательщика
customer_last_name* string (100) Фамилия плательщика
notification_endpoint_id int Notification id
notification_endpoint_url string|max:255 Link to send a callback after the statuses are finalized

Response

Name Description
id AliKassa payment id
payment_status Payment status
wait — in the process of payment

Payout Bank Code

service customer_code bank name
payment_card_idr PMTB Permata Bank
BCASB BCA Syariah Bank (enterprise)
BMI Bank Mega Indonesia
BRISB BRI Syariah Bank (enterprise)
BSM Bank Sinarmas
BTN Bank Tabungan Negara
BTPN Bank Tabungan Pensiunan Nasional
OCBCN Bank OCBC NISP
MDRSB Mandiri Syariah Bank
PNBN PT. Bank Pan Indonesia
UOBI UOB Indonesia
BSI Bank Syariah Indonesia (under maintenance)
PTBC PT. Bank Commonwealth
HSBCI HSBC Indonesia
PANIN Panin Bank
DBSI BANK DBS
HANAI Hanabank Indonesia
MNC Bank MNC Internasional
BKAL Bank Kalteng
ALLOB ALLO BANK
SEABANK SeaBank
SUMUT Bank Sumut
BMLI Bank Muamalat
BCAD BCA Digital
BJB Bank Jabar (BJB)