Transactions API

Obtain an overview of the payment transactions

❗️

In order to use this API, You will need to send Authentiaction Header !

click here to read more...

👍

This API can give you an overview of all transactions in the Centili system

🚧

Request must be sent as HTTP POST with Content-Type: application/json.

URL to which request should be posted

https://api.centili.com/v1/transactions

Example of POST request

HTTP/1.1
POST https://api.centili.com/v1/transactions
Host: api.centili.com:443
Content-Type: application/json

{
    "serviceKey": "2ea0e6c989b433d6c591633f91c67e07",
    "transactionId": "4970484531",
    "msisdn": "66876696573"
}

Example of a response

HTTP/1.1 200 OK
Content-Type: application/json

{
    "action": "SUB_START",
    "actionStatus": "COMPLETED",
    "amount": 1,
    "billingType": "DMB",
    "comment": null,
    "country": "pt",
    "currency": "EUR",
    "encryptedTransactionId": "zDmk6KHo2K3prWtovNCRKQ==",
    "endUserPrice": 7.00,
    "errorMessage": null,
    "errorType": null,
    "executionTime": null,
    "finishedBy": null,
    "integrationSolution": "API",
    "ip": "212.200.247.166",
    "keyword": null,
    "merchantName": "Go4Mobile",
    "merchantNotificationStatus": "DELIVERED",
    "merchantReference": null,
    "moMessage": null,
    "msisdn": "66876696573",
    "mtMessage": "Obrigada pela sua compra. Você pagou ( 7.00EUR +tributos)",
    "operator": "PT_NOS",
    "pinIdentification": null,
    "price": 7.00,
    "provider": "PT_NOS",
    "reference": null,
    "serviceKey": "0fc073fbcba4916c9155dd57a08454b2",
    "serviceName": "Games Unlimited",
    "servicePrice": 7.00,
    "shortCode": null,
    "subscriptionId": 4304326630,
    "timeCharged": "2017-08-16 11:41:08",
    "timeChargedLocal": "2017-08-16 12:41:08",
    "timeNotified": "2017-08-16 11:42:08",
    "timeUpdated": "2017-08-16 11:42:08",
    "transactionId": 4970484531,
    "transactionState": "FINISHED"
}

Request / Response parameters

ParameterRequestResponseExample of param valueInfo
"action""CHARGE"
“SUB_START”
"SUB_RENEW"
"SUB_REMIND"
"SUB_IDENTIFY"
"SUB CANCEL"
"SUB_ADMIN CANCEL"
"REFUND"
Transaction type.
“actionStatus”null
“COMPLETED”
"FAILED"
"CANCELED"
Transaction status at the and of it's life-cycle.
"amount"1
7
50
...
If merchant is using several prices for a same product / amount of his product, this can help identifying the package (like 7 days subscription to online theater, package of 50 diamonds android game etc...)
“billingType”"MO"
“MT”
"DMB"
Billing technology.
"comment"null
"or some comment..."
When someone is updating transaction manually (most often Centili support or system itself), comment can be added...
"country"“pt”2 letters country parameter. We are using "ISO 3166-1 alpha-2" standard. Here is full list of 2 letter country codes.
"currency"“EUR”Currency in which price is presented.
“encryptedTransactionId”“zDmk6KHo2K3prWtovNCRKQ==“Encrypted version of "transactionId".
“endUserPrice”0.000
2.07
7.00
Final price paid (or should have been paid if transaction is failed) by the customer (end-user) in local currency with VAT included.
In some countries this price is higher then the service price, because there are additional taxes added by that countries' governments.
“errorMessage”null
"Charging failed."
"Insufficient funds"
"Canceled by timeout - expired"
Error description in case of failed transaction.
“errorType”null
"CANCELED_BY_USER"
"WRONG_PIN"
"SUBSCRIBER_BLACKLISTED"
"NOT_ENOUGH_CREDIT"
Type of error which occurred (if it occurred).
Click here to see the whole list.
“executionTime”null
yyyy-MM-dd HH:mm:ss
Time when scheduled transaction will execute.
“finishedBy”null
"s.georgijev"
If transaction is updated manually, this param shows user who made the update.
“integrationSolution”“SMS”
"SEP"
"API"
Channel trough which transaction is initiated. It should present the integration type of merchant to Centili platform.
"ip"null
"212.200.247.166"
End-user's IP
"keyword"null
“D10"
Keyword which has been sent to "shortCode" (Premium SMS connections).
“merchantName”"Go4Mobile"Name of the merchant in Centili’s system.
“merchantNotificationStatus”"PENDING"
"DELIVERED"
"EXCLUDED"
"REJECTED"
"FAILED"
Indicates if merchant is successfully notified about particular transaction
“merchantReference”null
"1209xyz007"
Reference to customer or transaction at merchant side, sent by them in payment initiation step.
“moMessage”null
"BADOO GND"
...
Original SMS message received from the customer.
"msisdn"“66876696573""Mobile (phone) number of customer.
It is in E.164 format excluding plus (""+"") character."
“mtMessage”"Obrigada pela sua compra. Você pagou ( 2.99EUR +tributos)"MT message sent to end-user.
"operator"“PT_NOS”Mobile Network Operator code in Centili’s system.
“pinIdentification”null
"JF2"
...
PIN code user received through SMS.
"price"0.000
1.50
2.75
Price paid (or should have been paid if transaction is failed) by the customer (end-user) in local currency with VAT included.
"provider"“PT_NOS”
"TELENOR_GROUP"
"ORANGE_GROUP"
Provider code in Centili’s system.
"reference"null
"xyz123abc002"
"transactionId" in Operator's system (if Operator has transaction management on their side)
“serviceKey”“0fc073fbcba4916c9155dd57a08454b2""Unique identifier of each service registered inside Centili Payment Platform (API key).
Consists of alphanumeric characters and counts up to 32 characters."
“serviceName”"Games Unlimited"Name of the service in Centili’s system.
“servicePrice”10.700
4.00
...
Price which end-user will pay when successfully charged (successful renewal) in local currency with VAT included.
Price for every service is set up on Centili platform.
“shortCode”“4882269"Short number to which SMS has been sent (Premium SMS connections).
“subscriptionId”4304326630Unique subscription identifier in Centili Payment Platform. Used to identify any particular subscription within Centili system.
“timeCharged”yyyy-MM-dd HH:mm:ssTime in UTC-0 when charging happened if it was successful, and if the action itself has price > 0. This param will be present even in the transactions which have no cost (price=0.00), and in failed transactions also.

* When using dates in requests, they should be sent in the format:
"timeCharged" : {"gt":"2017-08-07 12:44:19" , "lt":"2017-08-07 13:44:19"}
where "gt" means greater then, and "lt" means less then.
“timeChargedLocal”yyyy-MM-dd HH:mm:ssSame as above, just in local timezone.

* request:
"timeChargedLocal" : {"gt":"2017-08-07 12:44:19" , "lt":"2017-08-07 13:44:19"}
“timeNotified”null
yyyy-MM-dd HH:mm:ss
Time in UTC-0 when merchant received notification about transaction.
“timeUpdated”yyyy-MM-dd HH:mm:ssTime in UTC-0 when transaction lyfe-cycle finished.

* request:
"timeUpdated" : {"gt":"2017-08-07 12:44:19" , "lt":"2017-08-07 13:44:19"}
“transactionId”4970484531Unique transaction identifier in Centili Payment Platform. Used to identify any particular transaction within Centili system.
“transactionState”"EXECUTING"
"PENDING"
"FINISHED"
"FAILED"
"CANCELED"
"SKIPPED"
"SCHEDULED"
Shows current state of the transaction.