Get started with docs
Flow
- 1. Call
pspg_create_paylink() - 2. PSPG creates a new row in
wp_pspg_orders - 3. PSPG generates a public PayLink URL
- 4. PSPG stores
paylink.createevent in logs - 5. User opens the public link and starts payment
- 6. PSPG updates status after payment flow continues through the public PayLink route
Supported scenarios
- Single link — one payment flow per link
- Unlimited link — reusable payment link
Scenario 1: Single link
$result = pspg_create_paylink(
array(
'bank' => 'arca_idbank',
'currency_code' => 'AMD',
'amount' => '10.00',
'link_mode' => 'single',
'purpose' => 'Order payment',
'description' => 'Single PayLink',
)
);
Expected result:
{
"ok": true,
"pspg_order_id": 123,
"paylink_url": "https://example.com/pspg/paylink/123/abcdef1234567890",
"bank": "arca_idbank",
"currency_code": "051",
"amount": "10.00",
"link_mode": "single",
"purpose": "Test payment",
"description": "Test PayLink",
"test_mode": 1
}
Scenario 2: Unlimited link
$result = pspg_create_paylink(
array(
'bank' => 'arca_idbank',
'currency_code' => 'AMD',
'amount' => '10.00',
'link_mode' => 'unlimited',
'purpose' => 'Donation',
'description' => 'Unlimited PayLink',
)
);
Expected result:
{
"ok": true,
"pspg_order_id": 123,
"paylink_url": "https://example.com/pspg/paylink/123/abcdef1234567890",
"bank": "arca_idbank",
"currency_code": "051",
"amount": "10.00",
"link_mode": "unlimited",
"purpose": "Donation",
"description": "Unlimited PayLink",
"test_mode": 1
}
What the response means
ok— PayLink was created successfullypspg_order_id— internal PSPG order number inwp_pspg_orderspaylink_url— ready-to-use public payment linkbank— selected PSPG bank idcurrency_code— normalized numeric ISO currency codeamount— normalized amount stored in PSPGlink_mode— PayLink type:singleorunlimitedpurpose— optional internal purpose labeldescription— public/admin description of the linktest_mode— bank mode derived from bank settings
Statuses
created— PayLink row exists, but public payment flow has not started yetregistered— bank order was already initiatedpaid— payment completed successfully
Available bank IDs
ameria— Ameriabankineco— Inecobankamio— AMIO Bankarca_acba— ACBA Bank (ArCa)arca_ararat— Araratbank (ArCa)arca_armeconombank— Armeconombank (ArCa)arca_armswiss— Armswissbank (ArCa)arca_ardshin— Ardshinbank (ArCa)arca_byblos— Byblos Bank Armenia (ArCa)arca_converse— Converse Bank (ArCa)arca_evoca— Evocabank (ArCa)arca_fastbank— Fast Bank (ArCa)arca_idbank— IDBank (ArCa)
Important
bank,currency_code,amount, anddescriptionare requiredcurrency_codeaccepts both alpha and numeric values, for exampleAMDor051link_modesupports onlysingleandunlimitedtest_modeis derived automatically from bank settings- PayLink metadata is always stored in logs as
paylink.createevent - For debugging and support, use
pspg_order_idand check thelogfield inwp_pspg_orders
