Production APIs running at https://api.ayriaclub.ir
Note: for test purposes please use https://dev.ayriaclub.ir
1. Ayria api key
Please contact Ayria’s support to receive your api key.
2. Signup
2.1. Normal
Signup member with minimum required information, later Member should activate her/his account(with sent SMS) within 3 days.
2.1.1. request
POST /api/register HTTP/1.1
Content-Type: application/json;charset=UTF-8
AYRIA-API-KEY: DUh91Uzx0YUj1AtEj2MkkkAFBdQL8Y7keAfTtUkBfg70Cf44DZsoJmbS28EiS6SE
Content-Length: 138
Host: localhost:8080
{"login":"09120000000","firstName":"رستم","lastName":"دستان","email":"rostam@dastan.com","activated":false,"password":"p@$$w0rd"}
2.1.1.1. request headers
Name |
Value |
DUh91Uzx0YUj1AtEj2MkkkAFBdQL8Y7keAfTtUkBfg70Cf44DZsoJmbS28EiS6SE |
|
Content-Type |
application/json |
2.1.1.2. request fields
Path | Optional | Type | Description | Constraints |
---|---|---|---|---|
|
|
|
Member’s mobile number |
[Must match the regular expression |
|
|
|
Member’s password |
[Must not be null, Size must be between 4 and 100 inclusive] |
|
|
|
Member’s first name |
[Size must be between 0 and 50 inclusive] |
|
|
|
Member’s last name |
[Size must be between 0 and 50 inclusive] |
|
|
|
Member’s email |
[Must be a well-formed email address, Size must be between 5 and 254 inclusive] |
2.1.2. response
HTTP/1.1 201 Created
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
2.2. Verified
Signup member as verified.
2.2.1. request
POST /api/v1/users/register HTTP/1.1
Content-Type: application/json;charset=UTF-8
AYRIA-API-KEY: DUh91Uzx0YUj1AtEj2MkkkAFBdQL8Y7keAfTtUkBfg70Cf44DZsoJmbS28EiS6SE
Content-Length: 620
Host: localhost:8080
{"firstName":"رستم","lastName":"دستان","email":"rostam@hero.com","langKey":"fa","imageUrl":"http://placehold.it/50x50","fatherName":"زال","nationalCode":"1234567890","identityNumber":"101","birthdayYear":1360,"birthdayMonth":12,"birthdayDay":20,"registeredCity":"سیستان","tel":"02170707070","address":"شاهنامه","workTel":"02180808080","workAddress":"هفت خان","jobTitle":"محیط بان","educationDegree":"MASTER","maritalStatus":"MARRIED","gender":"MALE","children":1,"bankShebaNumber":"IR180620000000202799901009","shebaNumberVerified":false,"login":"09121111111","password":"p@$$w0rd"}
2.2.1.1. request headers
Name |
Value |
DUh91Uzx0YUj1AtEj2MkkkAFBdQL8Y7keAfTtUkBfg70Cf44DZsoJmbS28EiS6SE |
|
Content-Type |
application/json |
2.2.1.2. request fields
Path | Optional | Type | Description | Constraints |
---|---|---|---|---|
|
|
|
شماره همراه |
[Must match the regular expression |
|
|
|
رمز عبور |
[Size must be between 4 and 100 inclusive] |
|
|
|
کد ملی |
[Must match the regular expression |
|
|
|
نام |
[Must not be empty, Size must be between 2 and 2147483647 inclusive] |
|
|
|
نام خانوادگی |
[Must not be empty, Size must be between 2 and 2147483647 inclusive] |
|
|
|
نام پدر |
[Must not be empty, Size must be between 2 and 2147483647 inclusive] |
|
|
|
جنسیت |
[Must not be null] |
|
|
|
سال تولد |
[Must be at least 1250, Must be at least 1300, Must be at most 1400, Must be at most 1410, Must not be null] |
|
|
|
ماه تولد |
[Must be at least 1, Must be at most 12, Must not be null] |
|
|
|
روز تولد |
[Must be at least 1, Must be at most 31, Must not be null] |
|
|
|
شماره شناسنامه |
[] |
|
|
|
محل صدور شناسنامه |
[] |
|
|
|
تلفن ثابت |
[] |
|
|
|
آدرس |
[] |
|
|
|
تلفن محل کار |
[] |
|
|
|
آدرس محل کار |
[] |
|
|
|
شغل |
[] |
|
|
|
میزان تحصیلات |
[] |
|
|
|
وضعیت تاهل |
[] |
|
|
|
تعداد فرزندان |
[] |
|
|
|
شماره شبا |
[] |
|
|
|
ایمیل |
[] |
|
|
|
کد زبان |
[] |
|
|
|
آدرس تصویر پروفایل |
[] |
2.2.2. response
HTTP/1.1 201 Created
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
3. Login
3.1. request
POST /api/authenticate HTTP/1.1
Content-Type: application/json;charset=UTF-8
AYRIA-API-KEY: DUh91Uzx0YUj1AtEj2MkkkAFBdQL8Y7keAfTtUkBfg70Cf44DZsoJmbS28EiS6SE
Content-Length: 63
Host: localhost:8080
{"username":"09100000000","password":"test","rememberMe":false}
3.1.1. request fields
Path | Optional | Type | Description | Constraints |
---|---|---|---|---|
|
|
|
Member’s mobile number |
[Must match the regular expression |
|
|
|
Member’s password |
[Must not be null, Size must be between 4 and 100 inclusive] |
|
|
|
Member’s remember me |
[] |
3.2. response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIwOTEwMDAwMDAwMCIsImF1dGgiOiIiLCJleHAiOjE2NTEzMDQyMDF9.o80JvY1ohvE8Tswr7mjYndUScQD6EMmEE4s-8fwufpYfML4IC9A7DWXHH8CYDf-hHaAqZMkVQzMk7VUmBj4f_Q
Content-Type: application/json
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
Content-Length: 187
{"id_token":"eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIwOTEwMDAwMDAwMCIsImF1dGgiOiIiLCJleHAiOjE2NTEzMDQyMDF9.o80JvY1ohvE8Tswr7mjYndUScQD6EMmEE4s-8fwufpYfML4IC9A7DWXHH8CYDf-hHaAqZMkVQzMk7VUmBj4f_Q"}
3.2.1. id_token
Identity token is required for accessing protected/secure APIs.
3.2.2. response fields
Path | Type | Description |
---|---|---|
|
|
Identity token |
4. Account
4.1. request
GET /api/account HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIwOTEwMDAwMDAwMCIsImF1dGgiOiIiLCJleHAiOjE2MDA3ODExMDZ9.r3AnYakU3U9v5YG6sMM4FBhgYJFXeP7bTIQhT-O8VowcWi41_KWoXwbHPF8PilE4KrNZsgw74JN1WsjtGxuwIA
AYRIA-API-KEY: DUh91Uzx0YUj1AtEj2MkkkAFBdQL8Y7keAfTtUkBfg70Cf44DZsoJmbS28EiS6SE
Accept: application/json
Host: localhost:8080
4.1.1. request headers
Name | Value |
---|---|
Authorization |
Bearer id_token |
DUh91Uzx0YUj1AtEj2MkkkAFBdQL8Y7keAfTtUkBfg70Cf44DZsoJmbS28EiS6SE |
|
|
application/json |
|
localhost:8080 |
4.2. response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
Content-Length: 350
{"login":"09120000000","firstName":"رستم","lastName":"دستان","nickname":"بَبْرِ بَیان","gender":"MALE","email":"rostam@shahnameh.com","mobile":"09120000000","imageUrl":"http://placehold.it/50x50","activated":false,"langKey":"fa","authorities":["ROLE_USER"],"plan":"BASIC","clubCode":null,"theme":null,"logo":null,"smallLogo":null}
4.2.1. response fields
Path | Type | Description |
---|---|---|
|
|
Member’s mobile number |
|
|
Member’s activation status |
|
|
Member’s plan |
|
|
Member’s first name |
|
|
Member’s last name |
|
|
Member’s gender |
|
|
Member’s nickname |
|
|
Member’s email |
|
|
Member’s roles |
|
|
Member’s language key |
|
|
Member’s image url |
5. Card
5.1. Create Card
Api for create bank cards for members.
5.1.1. request
POST /api/v1/cards HTTP/1.1
Content-Type: application/json;charset=UTF-8
AYRIA-API-KEY: DUh91Uzx0YUj1AtEj2MkkkAFBdQL8Y7keAfTtUkBfg70Cf44DZsoJmbS28EiS6SE
Content-Length: 54
Host: localhost:8080
{"mobile":"09121122333","cardNumber":6362141077778888}
5.1.1.1. request fields
Path | Optional | Type | Description | Constraints |
---|---|---|---|---|
|
|
|
Member’s mobile |
[Must match the regular expression |
|
|
|
Member’s card number |
[Must be at least 1000000000000000, Must be at most 9999999999999999, Must not be null] |
5.1.2. response
HTTP/1.1 201 Created
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
Content-Length: 84
{"owner":"09121122333","mask":"636214********8888","activated":true,"deleted":false}
5.1.2.1. response fields
Path | Type | Description |
---|---|---|
|
|
Card’s owner mobile number |
|
|
Card’s mask number |
|
|
Card’s active status |
|
|
Card’s delete status |
5.2. Delete Card
Api for delete bank cards.
5.2.1. request
DELETE /api/v1/cards HTTP/1.1
Content-Type: application/json;charset=UTF-8
AYRIA-API-KEY: DUh91Uzx0YUj1AtEj2MkkkAFBdQL8Y7keAfTtUkBfg70Cf44DZsoJmbS28EiS6SE
Content-Length: 64
Host: localhost:8080
{"mobile":"09121122333","cardNumberOrMask":"636214********9999"}
5.2.1.1. request fields
Path | Optional | Type | Description | Constraints |
---|---|---|---|---|
|
|
|
Member’s mobile |
[Must match the regular expression |
|
|
|
Member’s card number or it’s mask |
[Must not be empty] |
5.2.2. response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
Content-Length: 84
{"owner":"09121122333","mask":"636214********9999","activated":false,"deleted":true}
5.2.2.1. response fields
Path | Type | Description |
---|---|---|
|
|
Card’s owner mobile number |
|
|
Card’s mask number |
|
|
Card’s active status |
|
|
Card’s delete status |
5.3. List Cards
Api for list bank cards for a member.
5.3.1. request
GET /api/v1/cards/09121122333 HTTP/1.1
Content-Type: application/json;charset=UTF-8
AYRIA-API-KEY: DUh91Uzx0YUj1AtEj2MkkkAFBdQL8Y7keAfTtUkBfg70Cf44DZsoJmbS28EiS6SE
Host: localhost:8080
5.3.2. response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
Content-Length: 256
[{"owner":"09121122333","mask":"636214********9999","activated":false,"deleted":true},{"owner":"09121122333","mask":"636214********8888","activated":true,"deleted":false},{"owner":"09121122333","mask":"636214********7777","activated":true,"deleted":false}]
5.3.2.1. response fields
Path | Type | Description |
---|---|---|
|
|
Card’s owner mobile number |
|
|
Card’s mask number |
|
|
Card’s active status |
|
|
Card’s delete status |
6. Acceptor
6.1. List
Pageable(and filterable) list of Acceptors.
6.1.1. request
GET /api/v1/acceptors?page=0&size=20&acceptorName.contains=%DA%AF%DB%8C%D9%84%D8%A7%D9%86%D9%87&acceptorNameFn.contains=Gilaneh&department.equals=RESTAURANT&code.equals=100118&referralCode.equals=100118&shortDescription.contains=%DA%A9%D8%A8%D8%A7%D8%A8&targetGroup.equals=UNISEX HTTP/1.1
Content-Type: application/json;charset=UTF-8
AYRIA-API-KEY: DUh91Uzx0YUj1AtEj2MkkkAFBdQL8Y7keAfTtUkBfg70Cf44DZsoJmbS28EiS6SE
Host: localhost:8080
6.1.1.1. request headers
Name |
Value |
DUh91Uzx0YUj1AtEj2MkkkAFBdQL8Y7keAfTtUkBfg70Cf44DZsoJmbS28EiS6SE |
|
Content-Type |
application/json |
6.1.1.2. request parameters
Parameter | Description |
---|---|
|
شماره صفحه |
|
سایز صفحه |
|
فیلتر با نام مرکز |
|
فیلتر با نام انگلیسی مرکز |
|
فیلتر با دپارتمان |
|
فیلتر با کد |
|
فیلتر با کد معرف |
|
فیلتر با توضحیات کوتاه |
|
فیلتر با گروه مخاطب |
6.1.2. response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
X-Total-Count: 1
Link: </api/public/acceptors?page=0&size=20>; rel="last",</api/public/acceptors?page=0&size=20>; rel="first"
Content-Type: application/json
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
Content-Length: 568
[{"acceptorName":"رستوران گیلانه","acceptorNameEn":"Gilaneh Restaurant","department":"RESTAURANT","code":"100118","referralCode":100118,"shortDescription":"انواع کباب | ماهی | انواع خورشت | پیش غذا و مخلفات گیلکی","targetGroup":"UNISEX","logo":"https://cdn.ayriaclub.ir/public/1850c464-7971-4b1e-aac0-b1de97a014b5","address":"جردن ، بلوار صبا","tel":"02122055335","website":"https://dashboard.ayria.club/tabs/center/100118","instagram":"gilaneh_restaurant_group","coordinates":"35.7713191,51.421887"}]
6.1.2.1. response fields
Path | Type | Description |
---|---|---|
|
|
نام مرکز |
|
|
نام مرکز به انگلیسی |
|
|
توضیح کوتاه درباره مرکز |
|
|
دپارتمان |
|
|
مخاطب |
|
|
آدرس اینترنتی لوگو |
|
|
تلفن |
|
|
آدرس |
|
|
وبسایت |
|
|
اینستاگرام |
|
|
طول و عرض جغرافیایی |
|
|
کد مرکز |
|
|
کد معرف مرکز |
7. APG (Ayria Payment Gateway)
7.1. General
7.1.1. APG api key
Receive your APG api key from https://panel.apg.to > Panel > Settings > Advance.
7.1.2. APG Wallet identity
Receive your APG wallet identity from https://panel.apg.to > Panel > Wallet identity.
7.1.3. APG Default Callback URL
You must provide your default callback URL to Ayria support team if you want to 1) receive a callback on successful payment or if 2) your payment needs verification.
For example if your callback url is
https://example.com/app/callback
-
On successful payment all payment fields will be POST to above callback url
$ curl 'https://example.com/app/callback' -i -X POST \
-H 'Content-Type: application/json;charset=UTF-8' \
-d '{"amount":1000000,"referralCode":100120,"payerMobile":"09121122333","trackingNumber":100004,"referenceCode":"ed6b0bb0-1fde-4ded-92a9-dad47e51bbc1","payeeName":"رستوران گیلانه","payerName":"رستم دستان","description":"تراکنش تستی","extraData":"{\"product\": \"clock\"}","paymentNumber":"123456","paid":true,"canceled":false,"createdDate":"2021-01-11T16:00:09.873Z","paymentUrl":"https://localhost:8080/api/public/v1/payment/init/ed6b0bb0-1fde-4ded-92a9-dad47e51bbc1","cancelDescription":null,"kalas":[{"name":"گرز","price":800000.00,"count":1,"service":false,"brand":"اصیل"}],"issuerMustVerifyPayment":false,"paymentStatus":"DEFAULT"}'
-
If payment needs verification then customer will be redirected to callback url
$ curl 'https://example.com/app/callback?referenceCode=ed6b0bb0-1fde-4ded-92a9-dad47e51bbc1' -i -X GET
7.1.3.1. Dynamic Callback URL
If your callback url needs to be dynamic? then you must register your dynamic callback url within payment. And your dynamic callback must have same "host" as your default callback url. With an exception for "localhost" which may be useful for development environment.
7.1.4. SDKs
7.1.4.1. CSharp
7.1.4.2. Java
7.1.4.3. PHP
7.1.5. Plugins
7.2. Create Payment
Create a payment entity.
7.2.1. request
POST /apg/v1/create HTTP/1.1
Content-Type: application/json;charset=UTF-8
APG-API-KEY: APG1B1dPzCJMSkUeRsv1OfBKzS8xIHfDCmYkUsqy2sGygVvSWlUfIBe8nFsmeX7c
APG-WALLET-ID: 10012036
Content-Length: 394
Host: localhost:8080
{"referralCode":100120,"amount":1000000,"payerMobile":"09121122333","payerName":"رستم دستان","description":"تراکنش تستی","paymentNumber":"123456","extraData":"{\"product\": \"clock\"}","kalas":[{"name":"گرز","price":800000,"count":1,"service":false,"brand":"اصیل"}],"issuerMustVerifyPayment":true,"callbackUrl":"http://localhost:8081/apg/v1/callback?token=N10PSeaXAH"}
7.2.1.1. request fields
Path | Optional | Type | Description | Constraints |
---|---|---|---|---|
|
|
|
کد معرف دریافت کننده |
[Must not be null] |
|
|
|
مبلغ پرداختی(ریال) |
[Must be at least 15000, Must not be null] |
|
|
|
شماره همراه پرداخت کننده |
[Must match the regular expression |
|
|
|
نام پرداخت کننده |
[Size must be between 0 and 255 inclusive] |
|
|
|
توضیحات تراکنش |
[] |
|
|
|
شماره پراخت دلخواه |
[Size must be between 0 and 255 inclusive] |
|
|
|
اطلاعات تکمیلی دلخواه |
[] |
|
|
|
آیا تایید تراکنش بوسیله پذیرنده ضروری است |
[] |
|
|
|
آدرس برگشتی پویا |
[Size must be between 0 and 2000 inclusive] |
|
|
|
نام کالا |
[Must not be null] |
|
|
|
مبلغ کالا |
[Must not be null] |
|
|
|
تعداد کالا |
[Must not be null] |
|
|
|
برند کالا |
[] |
|
|
|
آیا کالا مورد نظر از جنس خدمات هست |
[] |
7.2.2. response
HTTP/1.1 201 Created
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Location: /apg/v1/get/32c8e479-6534-4e6b-a9a7-5aeeae3d1f6c
Content-Type: application/json
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
Content-Length: 764
{"amount":1000000,"referralCode":100120,"payerMobile":"09121122333","trackingNumber":100004,"referenceCode":"32c8e479-6534-4e6b-a9a7-5aeeae3d1f6c","payeeName":"رستوران گیلانه","payerName":"رستم دستان","description":"تراکنش تستی","extraData":"{\"product\": \"clock\"}","paymentNumber":"123456","paid":false,"canceled":false,"createdDate":"2022-04-29T07:36:56.521370Z","paymentUrl":"https://localhost:8080/api/public/v1/payment/init/32c8e479-6534-4e6b-a9a7-5aeeae3d1f6c","cancelDescription":null,"kalas":[{"name":"گرز","price":800000.00,"count":1,"service":false,"brand":"اصیل","description":null}],"issuerMustVerifyPayment":true,"paymentStatus":"DEFAULT","callbackUrl":"http://localhost:8081/apg/v1/callback?token=N10PSeaXAH"}
7.2.2.1. response fields
Path | Type | Description |
---|---|---|
|
|
مبلغ تراکنش |
|
|
آدرس اینترنتی پرداخت |
|
|
وضعیت پرداخت |
|
|
شماره پیگیری |
|
|
کد مرجع |
|
|
شماره پرداخت کننده |
|
|
نام پرداخت کننده |
|
|
کد معرف دریافت کننده |
|
|
نام دریافت کننده (حقیقی یا حقوقی) |
|
|
شماره پرداخت مربوط به تراکنش |
|
|
توضیحات مربوط به تراکنش |
|
|
اطلاعات اضافی |
|
|
وضعیت لغو |
|
|
توضیحات مربوط به لغو درخواست |
|
|
زمان ایجاد تراکنش |
|
|
آیا تایید تراکنش بوسیله پذیرنده ضروری است |
|
|
وضعیت پرداخت در صورت ضروری بودن تایید تراکنش |
|
|
آدرس برگشتی پویا |
|
|
نام کالا |
|
|
قیمت کالا |
|
|
تعداد کالا |
|
|
نوع سرویس |
|
|
برند کالا |
|
|
توضیحات کالا |
7.3. Get Payment
Get existing payment with reference code.
7.3.1. request
GET /apg/v1/get/77a1965f-0b03-4242-bf2a-dfc9eee829ab HTTP/1.1
Content-Type: application/json;charset=UTF-8
APG-API-KEY: APG1B1dPzCJMSkUeRsv1OfBKzS8xIHfDCmYkUsqy2sGygVvSWlUfIBe8nFsmeX7c
APG-WALLET-ID: 10012036
Host: localhost:8080
7.3.2. response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
Content-Length: 765
{"amount":1000000,"referralCode":100120,"payerMobile":"09121122333","trackingNumber":100003,"referenceCode":"77a1965f-0b03-4242-bf2a-dfc9eee829ab","payeeName":"رستوران گیلانه","payerName":"رستم دستان","description":"تراکنش تستی","extraData":"{\"product\": \"clock\"}","paymentNumber":"123456","paid":false,"canceled":false,"createdDate":"2022-04-29T07:36:56.443294Z","paymentUrl":"https://localhost:8080/api/public/v1/payment/init/77a1965f-0b03-4242-bf2a-dfc9eee829ab","cancelDescription":null,"kalas":[{"name":"گرز","price":800000.00,"count":1,"service":false,"brand":"اصیل","description":null}],"issuerMustVerifyPayment":false,"paymentStatus":"DEFAULT","callbackUrl":"http://localhost:8081/apg/v1/callback?token=1WKnVEIWzY"}
7.3.2.1. response fields
Path | Type | Description |
---|---|---|
|
|
مبلغ تراکنش |
|
|
آدرس اینترنتی پرداخت |
|
|
وضعیت پرداخت |
|
|
شماره پیگیری |
|
|
کد مرجع |
|
|
شماره پرداخت کننده |
|
|
نام پرداخت کننده |
|
|
کد معرف دریافت کننده |
|
|
نام دریافت کننده (حقیقی یا حقوقی) |
|
|
شماره پرداخت مربوط به تراکنش |
|
|
توضیحات مربوط به تراکنش |
|
|
اطلاعات اضافی |
|
|
وضعیت لغو |
|
|
توضیحات مربوط به لغو درخواست |
|
|
زمان ایجاد تراکنش |
|
|
آیا تایید تراکنش بوسیله پذیرنده ضروری است |
|
|
وضعیت پرداخت در صورت ضروری بودن تایید تراکنش |
|
|
آدرس برگشتی پویا |
|
|
نام کالا |
|
|
قیمت کالا |
|
|
تعداد کالا |
|
|
نوع سرویس |
|
|
برند کالا |
|
|
توضیحات کالا |
7.4. Cancel Payment
Cancel existing payment with reference code.
7.4.1. request
POST /apg/v1/cancel HTTP/1.1
Content-Type: application/json;charset=UTF-8
APG-API-KEY: APG1B1dPzCJMSkUeRsv1OfBKzS8xIHfDCmYkUsqy2sGygVvSWlUfIBe8nFsmeX7c
APG-WALLET-ID: 10012036
Content-Length: 100
Host: localhost:8080
{"referenceCode":"dfdc980e-2428-4772-a47e-c05ca20a98b4","cancelDescription":"قیمت اشتباه"}
7.4.2. response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
Content-Length: 783
{"amount":1000000,"referralCode":100120,"payerMobile":"09121122333","trackingNumber":100000,"referenceCode":"dfdc980e-2428-4772-a47e-c05ca20a98b4","payeeName":"رستوران گیلانه","payerName":"رستم دستان","description":"تراکنش تستی","extraData":"{\"product\": \"clock\"}","paymentNumber":"123456","paid":false,"canceled":true,"createdDate":"2022-04-29T07:36:56.204029Z","paymentUrl":"https://localhost:8080/api/public/v1/payment/init/dfdc980e-2428-4772-a47e-c05ca20a98b4","cancelDescription":"قیمت اشتباه","kalas":[{"name":"گرز","price":800000.00,"count":1,"service":false,"brand":"اصیل","description":null}],"issuerMustVerifyPayment":false,"paymentStatus":"DEFAULT","callbackUrl":"http://localhost:8081/apg/v1/callback?token=D7e3coXjfD"}
7.4.2.1. response fields
Path | Type | Description |
---|---|---|
|
|
مبلغ تراکنش |
|
|
آدرس اینترنتی پرداخت |
|
|
وضعیت پرداخت |
|
|
شماره پیگیری |
|
|
کد مرجع |
|
|
شماره پرداخت کننده |
|
|
نام پرداخت کننده |
|
|
کد معرف دریافت کننده |
|
|
نام دریافت کننده (حقیقی یا حقوقی) |
|
|
شماره پرداخت مربوط به تراکنش |
|
|
توضیحات مربوط به تراکنش |
|
|
اطلاعات اضافی |
|
|
وضعیت لغو |
|
|
توضیحات مربوط به لغو درخواست |
|
|
زمان ایجاد تراکنش |
|
|
آیا تایید تراکنش بوسیله پذیرنده ضروری است |
|
|
وضعیت پرداخت در صورت ضروری بودن تایید تراکنش |
|
|
آدرس برگشتی پویا |
|
|
نام کالا |
|
|
قیمت کالا |
|
|
تعداد کالا |
|
|
نوع سرویس |
|
|
برند کالا |
|
|
توضیحات کالا |
7.5. List Payments
List existing payments with created date.
7.5.1. request
GET /apg/v1/list?page=0&size=20&sort=createdDate,asc&createdDate.greaterThan=2022-04-21T19:30:00Z&createdDateTo.lessThanOrEqual=2022-04-29T07:36:56.395773Z HTTP/1.1
Content-Type: application/json;charset=UTF-8
APG-API-KEY: APG1B1dPzCJMSkUeRsv1OfBKzS8xIHfDCmYkUsqy2sGygVvSWlUfIBe8nFsmeX7c
APG-WALLET-ID: 10012036
Host: localhost:8080
7.5.1.1. request parameters
Parameter | Description |
---|---|
|
شماره صفحه |
|
سایز صفحه |
|
ستون و جهت ترتیب |
|
فیلتر با تاریخ ایجاد بزرگتر از |
|
فیلتر با تاریخ ایجاد کوچکتر یا مساوی |
7.5.2. response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
X-Total-Count: 3
Link: </apg/v1/list?page=0&size=20>; rel="last",</apg/v1/list?page=0&size=20>; rel="first"
Content-Type: application/json
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
Content-Length: 2266
[{"amount":1000000,"referralCode":100120,"payerMobile":"09121122333","trackingNumber":100000,"referenceCode":"dfdc980e-2428-4772-a47e-c05ca20a98b4","payeeName":"رستوران گیلانه","payerName":null,"description":"تراکنش تستی","extraData":"{\"product\": \"clock\"}","paymentNumber":"123456","paid":false,"canceled":true,"createdDate":"2022-04-29T07:36:56.204029Z","paymentUrl":"https://localhost:8080/api/public/v1/payment/init/dfdc980e-2428-4772-a47e-c05ca20a98b4","cancelDescription":"قیمت اشتباه","kalas":[{"name":"گرز","price":800000.00,"count":1,"service":false,"brand":"اصیل","description":null}],"issuerMustVerifyPayment":false,"paymentStatus":"DEFAULT","callbackUrl":"http://localhost:8081/apg/v1/callback?token=D7e3coXjfD"},{"amount":1000000,"referralCode":100120,"payerMobile":"09121122333","trackingNumber":100001,"referenceCode":"bad54c5f-38b0-4a3e-81f7-2bf77971b34c","payeeName":"رستوران گیلانه","payerName":null,"description":"تراکنش تستی","extraData":"{\"product\": \"clock\"}","paymentNumber":"123456","paid":false,"canceled":false,"createdDate":"2022-04-29T07:36:56.309060Z","paymentUrl":"https://localhost:8080/api/public/v1/payment/init/bad54c5f-38b0-4a3e-81f7-2bf77971b34c","cancelDescription":null,"kalas":[{"name":"گرز","price":800000.00,"count":1,"service":false,"brand":"اصیل","description":null}],"issuerMustVerifyPayment":false,"paymentStatus":"DEFAULT","callbackUrl":"http://localhost:8081/apg/v1/callback?token=v4ch6GVr0M"},{"amount":1000000,"referralCode":100120,"payerMobile":"09121122333","trackingNumber":100002,"referenceCode":"17e9e6a8-12c7-4627-8c7b-56059e771185","payeeName":"رستوران گیلانه","payerName":null,"description":"تراکنش تستی","extraData":"{\"product\": \"clock\"}","paymentNumber":"123456","paid":false,"canceled":false,"createdDate":"2022-04-29T07:36:56.359289Z","paymentUrl":"https://localhost:8080/api/public/v1/payment/init/17e9e6a8-12c7-4627-8c7b-56059e771185","cancelDescription":null,"kalas":[{"name":"گرز","price":800000.00,"count":1,"service":false,"brand":"اصیل","description":null}],"issuerMustVerifyPayment":false,"paymentStatus":"DEFAULT","callbackUrl":"http://localhost:8081/apg/v1/callback?token=rY5qaZvYS9"}]
7.5.2.1. response fields
7.6. Verify Payment
Verify existing payment with reference code.
7.6.1. request
POST /apg/v1/verify/32c8e479-6534-4e6b-a9a7-5aeeae3d1f6c HTTP/1.1
APG-API-KEY: APG1B1dPzCJMSkUeRsv1OfBKzS8xIHfDCmYkUsqy2sGygVvSWlUfIBe8nFsmeX7c
APG-WALLET-ID: 10012036
Host: localhost:8080
7.6.2. response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
Content-Length: 764
{"amount":1000000,"referralCode":100120,"payerMobile":"09121122333","trackingNumber":100004,"referenceCode":"32c8e479-6534-4e6b-a9a7-5aeeae3d1f6c","payeeName":"رستوران گیلانه","payerName":"رستم دستان","description":"تراکنش تستی","extraData":"{\"product\": \"clock\"}","paymentNumber":"123456","paid":true,"canceled":false,"createdDate":"2022-04-29T07:36:56.521370Z","paymentUrl":"https://localhost:8080/api/public/v1/payment/init/32c8e479-6534-4e6b-a9a7-5aeeae3d1f6c","cancelDescription":null,"kalas":[{"name":"گرز","price":800000.00,"count":1,"service":false,"brand":"اصیل","description":null}],"issuerMustVerifyPayment":true,"paymentStatus":"VERIFIED","callbackUrl":"http://localhost:8081/apg/v1/callback?token=N10PSeaXAH"}
7.6.2.1. response fields
Path | Type | Description |
---|---|---|
|
|
مبلغ تراکنش |
|
|
آدرس اینترنتی پرداخت |
|
|
وضعیت پرداخت |
|
|
شماره پیگیری |
|
|
کد مرجع |
|
|
شماره پرداخت کننده |
|
|
نام پرداخت کننده |
|
|
کد معرف دریافت کننده |
|
|
نام دریافت کننده (حقیقی یا حقوقی) |
|
|
شماره پرداخت مربوط به تراکنش |
|
|
توضیحات مربوط به تراکنش |
|
|
اطلاعات اضافی |
|
|
وضعیت لغو |
|
|
توضیحات مربوط به لغو درخواست |
|
|
زمان ایجاد تراکنش |
|
|
آیا تایید تراکنش بوسیله پذیرنده ضروری است |
|
|
وضعیت پرداخت در صورت ضروری بودن تایید تراکنش |
|
|
آدرس برگشتی پویا |
|
|
نام کالا |
|
|
قیمت کالا |
|
|
تعداد کالا |
|
|
نوع سرویس |
|
|
برند کالا |
|
|
توضیحات کالا |
7.6.2.2. paymentStatus
paymentStatus
can be either DEFAULT
, WAITING_FOR_VERIFY
or VERIFIED
.
Please note payments will go to WAITING_FOR_VERIFY
state for 15 minutes and if we don’t receive verification within this time,
then paymentStatus
will go back to DEFAULT
state and paid
status remains as 'false'.
Obviously IPG verification also fails and the flow must be repeated from redirecting customer to APG with created referenceCode
.