Instant Payment Notification

A notification is sent to merchant’s server when the payment status is updated. The target URL the notification is sent to is configured in the merchant portal, and it can be overwritten when calling Submit Payment Information API. IPN must be responded with an “OK” message from the target URL; A fallback mechanism will send the notification every 5 minutes until the target URL responds with “OK”.

Method: POST

Request

Format: POST-JSON

  • status :  string (5)
Remark Sample
Status of the request. Can be either 200 or 3001. Refer to appendix for status code meaning. 200

  • message :  string (255)
Remark Sample
Error message, if any -

  • api_key :  string (255)
Remark Sample
Pipwave-assigned merchant’s API key 123456

  • notification_id :  string (32)
Remark Sample
The unique notification ID 123456

  • notification_date :  timestamp
Remark Sample
When the notification was sent 1451606395

  • type :  string (32)
Remark Sample
The type of this transaction - payment, refund or chargeback payment

  • pw_id :  string (255)
Remark Sample
Pipwave reference transaction ID 123456

  • txn_id :  string (255)
Remark Sample
Merchant’s transaction ID -

  • pg_txn_id :  string (255)
Remark Sample
Payment gateway's reference transaction ID -

  • amount :  decimal (11, 2)
Remark Sample
The payment checkout amount 123

  • tax_exempted_amount :  decimal (11, 2)
Remark Sample
The tax-exempted amount from the payment checkout amount 0

  • processing_fee_amount :  decimal (11, 2)
Remark Sample
The processing fee amount 1.2

  • shipping_amount :  decimal (11, 2)
Remark Sample
The shipping fee amount -

  • handling_amount :  decimal (11, 2)
Remark Sample
The handling fee amount -

  • tax_amount :  decimal (11, 2)
Remark Sample
The tax amount 2.4

  • total_amount :  decimal (11, 2)
Remark Sample
The total amount for the payment 126.6

  • final_amount :  decimal (11, 2)
Remark Sample
Final amount for this transaction (after potential chargeback / refund / adjustments) 126.6

  • currency_code :  string (3)
Remark Sample
The payment currency. Follow ISO 4217 standard. MYR

  • transaction_status :  string (5)
Remark Sample
Status of the payment as stored by pipwave. Refer to appendix for list of possible values. -

  • type :  string (32)
Remark Sample
The type of this transaction - payment, refund or chargeback -

  • reverse_pw_id :  string (32)
Remark Sample
The pipwave reverse ID, if the type is refund or chargeback -

  • reverse_txn_id :  string (255)
Remark Sample
The reverse ID given by PG, if type is refund or chargeback -

  • reverse_status :  string (5)
Remark Sample
Status of the reverse transaction -

  • subscription_token :  string (32)
Remark Sample
If payment is subscription type, this data is pipwave’s subscription payment token 123456

  • charge_index :  integer
Remark Sample
Charging index, only subscription payments will include this data, 1 indicates initial payment, subsequent number indicates subsequent charges, in sequence 1

  • payment_method_code :  string (32)
Remark Sample
The payment method code that buyer selected. Refer to appendix for list of possible values. 123456

  • payment_method_title :  string (255)
Remark Sample
The title of the payment method. Paypal

  • reversible_payment :  boolean
Remark Sample
Is the payment method reversible? -

  • settlement_account :  string (255)
Remark Sample
The identifier of the settlement account that processed the payment. Default

  • require_capture :  boolean
Remark Sample
Does this transaction require capture? -

  • billing_info :  key-value
Remark Sample
Billing info as acquired by pipwave -

  • shipping_info :  key-value
Remark Sample
Shipping info as acquired by pipwave -

  • tax_info :  key-value
Remark Sample
Tax info -

  • tax_info.tax_name :  string (255)
Remark Sample
The name of the tax GST

  • tax_info.tax_country :  string (2)
Remark Sample
The country detected by pipwave to apply tax MY

  • tax_info.tax_base_rate :  float
Remark Sample
The base rate of the tax configured by Merchant 6

  • tax_info.tax_local_rate :  float
Remark Sample
Tax rate override by region or city, if applicable null

  • tax_info.tax_rate :  float
Remark Sample
Final tax rate to apply 6

  • tax_info.items :  array
Remark Sample
Array of items sent in initiate-payment, with tax information -

  • tax_info.items.x.item_tax :  decimal (11, 2)
Remark Sample
Tax imposed onto this line of item 0.06

  • tax_info.items.x.item_tax_rate :  float
Remark Sample
The tax rate applied to this line of item, after overrides where applicable 6

  • tax_info.items.x.taxable_amount :  decimal (11, 2)
Remark Sample
Taxable amount based on the total against item total 1

  • tax_info.processing_fee_tax_rate :  float
Remark Sample
The tax rate applied to the processing fee 6

  • tax_info.processing_fee_tax :  decimal (11, 2)
Remark Sample
Tax imposed onto the processing fee -

  • tax_info.shipping_amount_tax_rate :  float
Remark Sample
The tax rate applied to the shipping amount -

  • tax_info.shipping_amount_tax :  decimal (11, 2)
Remark Sample
Tax imposed onto the shipping amount -

  • tax_info.handling_amount_tax_rate :  float
Remark Sample
The tax rate applied to the handling amount -

  • tax_info.handling_amount_tax :  decimal (11, 2)
Remark Sample
Tax imposed onto the handling amount -

  • tax_info.amount_tax :  decimal (11, 2)
Remark Sample
Tax imposed onto the order amount -

  • tax_info.total_tax :  decimal (11, 2)
Remark Sample
Total tax imposed onto the checkout total -

  • reversible_payment :  boolean
Remark Sample
Is the payment method reversible? -

  • require_capture :  boolean
Remark Sample
Does this transaction require capture? -

  • mobile_number :  string (32)
Remark Sample
Buyer’s mobile number as verified 123456789

  • mobile_number_country_iso2 :  string (2)
Remark Sample
Buyer's mobile number country iso2 MY

  • mobile_number_country_code :  string (8)
Remark Sample
Buyer's mobile number country dialing code 60

  • mobile_number_verification :  string (32)
Remark Sample
Did the verification succeed? One of "verified", "verified previously", "unverified", or "skipped" -

  • pg_status :  string (5)
Remark Sample
Status of the payment as reported by PG. Refer to appendix for list of possible values. 0

  • pg_reason :  string (255)
Remark Sample
The reason why the PG status is not successful -

  • pg_date :  timestamp
Remark Sample
When the payment was effected 1451606400

  • pg_raw_data :  string
Remark Sample
JSON of original PG response []

  • pipwave_score :  integer (3)
Remark Sample
The fraud risk rating for this transaction as processed by pipwave -

  • rules_action :  string (16)
Remark Sample
The suggested action to undertake for this transaction, can be one of “approve”, “decline” or “review” approve

  • rules_action_reason :  string (255)
Remark Sample
The reason of above rules_action, especially for RulesDisabled case. -

  • risk_management_data :  key-value
Remark Sample
The extra risk data -

  • matched_rules :  array
Remark Sample
The array of all rules was that matched -

  • extra_param1 :  string (255)
Remark Sample
Extra IPN parameter that was configured when Submit Payment Information API is being called 123456

  • extra_param2 :  string (255)
Remark Sample
Extra IPN parameter that was configured when Submit Payment Information API is being called abcdef

  • extra_param3 :  string (255)
Remark Sample
Extra IPN parameter that was configured when Submit Payment Information API is being called -

  • upload_files :  array
Remark Sample
A list of urls to the files uploaded for offline payments. All images are signed for 1 hour only, for integrated system to download and store the image. -

  • upload_remark :  string (255)
Remark Sample
The payer's remark on the uploaded files. -

  • payment_data :  key-value
Remark Sample
- -

  • payment_data.wallet :  key-value
Remark Sample
Buyer's payment wallet details will be available if buyer uses wallet to pay -

  • payment_data.wallet.wallet_id :  string(255)
Remark Sample
Payment wallet ID -

  • payment_data.wallet.wallet_email :  string(255)
Remark Sample
Payment wallet email -

  • payment_data.credit_card :  key-value
Remark Sample
Buyer's payment credit card details will be available if buyer uses credit card to pay -

  • payment_data.credit_card.formatted_pan :  string(255)
Remark Sample
Credit card first 6 and last 4 -

  • payment_data.credit_card.cvv :  string(255)
Remark Sample
Credit card CVV matching result code, refer to appendix for possible values -

  • payment_data.credit_card.avc :  string(255)
Remark Sample
Credit card AVS matching result code, refer to appendix for possible values -

  • payment_data.credit_card.threeds :  string(255)
Remark Sample
Credit card Three-D Secure result code, refer to appendix for possible values -

  • payment_data.credit_card.issuer_country :  string(2)
Remark Sample
Credit card issuer country in ISO Code 2 -

  • payment_data.credit_card.issuer_bank :  string(255)
Remark Sample
Credit card issuer bank -

  • payment_data.credit_card.card_type :  string(255)
Remark Sample
Credit card type -

  • payment_data.credit_card.card_brand :  string(255)
Remark Sample
Credit card brand -

  • payment_data.credit_card.card_level :  string(255)
Remark Sample
Credit card level -

  • payment_data.credit_card.card_holder_name :  string(255)
Remark Sample
Credit card holder's name -

  • payment_data.credit_card.card_expiry_month :  string(2)
Remark Sample
Credit card expiry month -

  • payment_data.credit_card.card_expiry_year :  string(4)
Remark Sample
Credit card expiry year -

Signature

The data involved in generating the signature for this API are:

  • timestamp
  • api_key
  • pw_id
  • txn_id
  • amount
  • currency_code
  • transaction_status
  • api_secret

results matching ""

    No results matching ""