Skip to main content

PerfectMoney

This page provides an overview of the payments methods provided by the PerfectMoney adapter in the IXOPAY platform. It also includes a full list of all configuration options available to you when integrating PerfectMoney within your payments landscape, as well as an overview of the parameters required when submitting a transaction via IXOPAY's API.

Payment Methods

Payment MethodTransaction FlowsTransaction Types
BankTransferFull-Page Redirect(Debit), Server-To-Server(Payout)Debit, Register, Payout
Direct Carrier Billing (SMS)Full-Page Redirect(Debit), Server-To-Server(Payout)Debit, Register, Payout
PerfectMoney AccountFull-Page Redirect(Debit), Server-To-Server(Payout)Debit, Register, Payout
PerfectMoney VoucherFull-Page Redirect(Debit), Server-To-Server(Payout)Debit, Register, Payout
PerfectMoney WalletFull-Page Redirect(Debit), Server-To-Server(Payout)Debit, Register, Payout

Please note, that a register transaction only makes sense to be used with followed payout transactions and not for referencing debit transactions, as the latter require the customer to be redirected to PerfectMoney for re-authentication purposes on each follow-up debit. That is different to all other Register -> Debit/Preauth flows on other adapters.

Mandatory Parameters

  • amount
  • currency
  • description

Additional parameters on debit

Extra DataRequiredDescription
availablePaymentMethodsfalseWhen using the PerfectMoney wallet payment method, this makes it possible to make only specific payment methods available. Comma separated list of account,voucher,sms,wire,all
forcedPayerAccountfalseIf you want to restrict the Payer to use a specific account you know, provide the account id here E.g. U1234567
baggageFieldsfalseComma separated list of extra data keys, which values you would like to forward to PerfectMoney. All fields presented here become mandatory. E.g. baggageFields=systemId
BAGGAGE-PARAM1conditional (if provided within extra.baggageFields yes)Comma separated list of extra data keys, which values you would like to forward to PerfectMoney. All fields presented here become mandatory. E.g. baggageFields=BAGGAGE-PARAM1,..
....conditional (if provided within extra.baggageFields yes)any key value pair you want to forward to PerfectMoney
success URLfalseTo where the shopper should be back-directed after a successful payment
error URLfalseTo where the shopper should be back-directed in case of an error or customer cancellation

Additional parameters on register

Extra DataRequiredDescription
accountIdfalseThe account id of the PerfectMoney account the customer want's to use. If not supplied, the customer has to enter it, after being redirected to the returned redirect URL.
accountNamefalseIf provided, this accountName will be compared (case-insensitive) against the PerfectMoney account name associated with the accountId.
accountFullNamefalseIf provided, this accountFullName will be compared (case-insensitive) against the PerfectMoney account full name associated with the accountId.
accountPhonenumberfalseIf provided, this accountPhonenumber will be compared (case-insensitive) against the PerfectMoney account phonenumber associated with the accountId.
requireVerifiedAccountfalseIf provided, the register transaction will only succeed, if the PerfectMoney account details are currently verified though the PerfectMoney KYC checks.
success URLfalseTo where the shopper should be back-directed after a successful payment
error URLfalseTo where the shopper should be back-directed in case of an error or customer cancellation

If you want to validate the PerfectMoney account data: accountName, accountFullName, accountPhonenumber, requireVerifiedAccount, your PerfectMoney account has be enabled to return those details. Please request that from your account manager at PerfectMoney.

Additional parameters on payout

Extra DataRequiredDescription
payeeAccounttrue (if not referencing a register transaction)The PerfectMoney account id the funds will be transferred to
codefalseProvide to enable transfer protection. If code is present, payee must enter this code to get money to his/her account.
codeValidDaysIf code is provided yes.Number of days you want the transfer with protection code to be valid. If payee does not enter the protection code during this period, money will be transferred back to your account. Must be integer value from 1 to 365 days.

If the payout references a register transaction, it depends on the extra data provided on the initial register transaction, if the current PerfectMoney account details should be compared to those. For example if the extra data requireVerifiedAccount has been provided, all follow-up payouts require the current verification status to be verified. If that is not the case, the payout fails.

If additional extra data fields (accountName|accountFullName|accountPhonenumber) have been provided initially, they also have to match the current returned PerfectMoney account details. If they do not, the payout fails.

Currencies

EUR, USD, OAU