Payment Notification¶
FloCash offers a Payment Notification service that notifies you of transactions within the FloCash system for your merchant account. It sends data in a near real time fashion for the following action types:
- Sale
- Refund
- Chargeback
- Cancel
- Test
The service attempts to post information via HTML FORM POST to a URL specified by you. Each post contains a group of URL Parameters relevant to the transaction.
Note: This service is intended for use by experienced programmers. Clients without extensive programming skills should refrain from implementing Instant Notifications without first enlisting the services of an experienced programmer.
How it works¶
The FloCash Payment Notification service is triggered every time a transaction is created or an action is taken upon a transaction in your FloCash merchant account. The primary flow involves the following steps:
- An action occurs in the FloCash system ex sale, refund, etc
- FloCash posts FORM parameters to a URL you specify
- FloCash observes the server response
- A program you build processes the variables
Setting up the service on your FloCash merchant account is straightforward as described in previous section. However, it is also necessary to build a program that processes the Payment Notification URL Parameters, which is a more technical task. In order to make good use of this service, your program must at least process the parameters outline in the URL Parameters section of this document.
Activate notification parameters¶
Login with your merchant account and change URL notify parameter to your listener to receive instant notification.
No. | Field Name | Description | Data type | sample |
---|---|---|---|---|
1 | merchant | Merchant username | 1-50 Characters | sales@demoshop.com |
2 | sender_acct | Sender Account | 1-50 Characters | 1-50 Characters |
3 | order_id | Unique transaction ID of the order | 1-25 Characters | AT000001 |
4 | Amount | The total amount the buyer needs to pay | float | 23.45 |
5 | item_name | Name of Item | 1-250 Characters | Call Credit |
6 | item_price | Price per item | float | 2.50 |
7 | currency_code | 3-letter code of the currency of the ammo unt based on ISO4217 | 3 Characters | USD |
8 | Quantity | The number of items | Int | Characters |
9 | trans_id | Unique transaction ID. If error, the va lue is 0 | 1-20 characters | |
10 | fpn_id | Unique FloCash ID | 1-20 characters | |
11 | Custom | Customer Id | 1-25 characters | |
12 | Customer | Customer Name | 1-250 character | |
13 | Status | Transaction Status Refer to status code in Appendix A | Int | |
14 | status_msg | Status message | 1-250 characters | |
15 | payer_email | customers email | 1-250 characters | |
16 | payment_channel | Payment channel customer choose: mobile,card, wallet | 1-250 characters | |
17 | txn_partner_ref | Transaction reference returned back from bank | 1-250 characters |
For the Instant Notification service to function properly, you need to understand the follow ing items. Failure to properly understand and implement these items will result in not getting accurate payment information to servers.
- What a HTML FORM POST to a URL is
- What Post Parameters are
- The importance of utilizing Secure Socket Layer SSL
Steps to process Payment Notification:
- Develop a listener to accept an HTTP Post from FloCash gateway as shown in the message above
- Extract the relevant response parameters from the POST message
- Process data
- Respond to the HTTP Post with the value ‘00’ if the merchant has verified the POST
message
ERROR CODE
if message cannot be verified.
The Payment Notification service attempts to POST information via HTML to the URL specified on your merchant account. If our attempt to post receives a response code from your system of something other than 00, FloCash will retry delivering the data an hour later. The service will continue retrying once an hour for up to 72 hours, after which the feature will no longer attempt delivery.
Merchant Polling¶
For Merchant poll transactions we provide two methods over web service protocol:
- pollPayInbyRef
- pollPayInbyTime
The web service WSDL specification is available in the appendix section or:
http://api.flocash.com:8080/FloCMS/services/APIMerchantService?wsdl
Prior to implementing this feature, you should familiarize yourself with the following information.
Element name | Description | Data type | Note |
---|---|---|---|
Auth | |||
MerchantCode | Merchant Code | Currently not used | |
APIUsername | API username | Username provided by FloCash | |
APIPassword | API password | Password provided by FloCash | |
PayInbyRef | |||
trace_number | This key is used to poll transactions using a ref value called trace_number that merchant receives to its Return URL or Notify URL | Sample: T111394972087797 | |
PayInbyTime | |||
fromTime | Start time | ||
toTime | End time | ||
Sender | |||
account | FloCash Merchant account which is usually registered email address of merchant. | ||
Header | |||
statusCode | Status Code | ||
statusMsg | Status Message | ||
Payment | Transaction information | ||
transid | Transaction ID | ||
trace_number | This key is used to poll transactions using a ref value called trace_number that merchant receives to its Return URL or Notify URL | ||
postDate | Date of transaction | ||
currency_code | Currency for the transaction | 3 digits as per the ISO 4217 Currency code standard. These are available on the web at:http://www.iso.org/iso/en/prodsservices/ popstds/currencycodeslist.html | |
amount | Total amount to be credited to merchant accou nt | ||
status | Payment status as notified by FloCash gateway | Check Appendix A | |
message | Message description | ||
sender | Please refer to Sender element | ||
custom | Custom field that merchant provided | ||
order_id | Order Id from merchant | ||
quantity | Info merchant post from html form | ||
item_price | Info merchant post from html form | ||
item_name | Info merchant post from html form | ||
payment_channel | Channel perform payment | Mobile, Wallet, Card | |
payer_email | Payers email | ||
txn_partner_ref | Transaction reference of bank | ||
Payments | Contains all | ||
transaction query | |||
Payment | Please refer to Payment element | ||
pollPayInbyRef | |||
Auth | Please refer to Auth element | ||
PayInbyRef | Please refer to PayInbyRefelement | ||
pollPayInbyTime | |||
Auth | Please refer to Auth element | ||
PayInbyTime | Please refer to PayInbyTime element | ||
ReponsePollPayIn | |||
Header | Please refer to Header element | ||
Payments | Please refer to Payments element |