razorpay 3.0.1 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/ci.yml +2 -2
- data/CHANGELOG.md +13 -0
- data/README.md +4 -0
- data/documents/account.md +449 -0
- data/documents/card.md +45 -0
- data/documents/payment.md +44 -1
- data/documents/productConfiguration.md +444 -0
- data/documents/stakeholder.md +334 -0
- data/documents/tokens.md +146 -1
- data/documents/webhook.md +224 -0
- data/lib/razorpay/account.rb +39 -0
- data/lib/razorpay/addon.rb +1 -1
- data/lib/razorpay/card.rb +4 -0
- data/lib/razorpay/constants.rb +2 -2
- data/lib/razorpay/iin.rb +15 -0
- data/lib/razorpay/order.rb +1 -1
- data/lib/razorpay/product.rb +37 -0
- data/lib/razorpay/request.rb +16 -16
- data/lib/razorpay/stakeholder.rb +39 -0
- data/lib/razorpay/token.rb +28 -0
- data/lib/razorpay/virtual_account.rb +1 -1
- data/lib/razorpay/webhook.rb +50 -0
- data/lib/razorpay.rb +6 -0
- data/test/fixtures/fake_account.json +78 -0
- data/test/fixtures/fake_card_reference.json +5 -0
- data/test/fixtures/fake_iin_token.json +23 -0
- data/test/fixtures/fake_product.json +138 -0
- data/test/fixtures/fake_stakeholder.json +29 -0
- data/test/fixtures/fake_tokenise_customer.json +40 -0
- data/test/fixtures/fake_webhook.json +79 -0
- data/test/fixtures/fake_webhook_by_account_id.json +22 -0
- data/test/fixtures/fetch_tnc.json +11 -0
- data/test/fixtures/stakeholder_collection.json +35 -0
- data/test/fixtures/webhook_by_account_collection.json +35 -0
- data/test/fixtures/webhook_collection.json +85 -0
- data/test/razorpay/test_account.rb +134 -0
- data/test/razorpay/test_card.rb +6 -0
- data/test/razorpay/test_customer.rb +8 -8
- data/test/razorpay/test_iin.rb +23 -0
- data/test/razorpay/test_order.rb +1 -1
- data/test/razorpay/test_product.rb +67 -0
- data/test/razorpay/test_settlement.rb +1 -1
- data/test/razorpay/test_stakeholder.rb +87 -0
- data/test/razorpay/test_token.rb +66 -0
- data/test/razorpay/test_transfer.rb +1 -1
- data/test/razorpay/test_webhook.rb +132 -0
- metadata +47 -1
@@ -0,0 +1,23 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
module Razorpay
|
4
|
+
# Tests for Razorpay::Iin
|
5
|
+
class RazorpayIinTest < Minitest::Test
|
6
|
+
def setup
|
7
|
+
@token_id = '411111'
|
8
|
+
|
9
|
+
# Any request that ends with token/token_id
|
10
|
+
stub_get(%r{iins/#{@token_id}$}, 'fake_iin_token')
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_iin_should_be_defined
|
14
|
+
refute_nil Razorpay::Iin
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_iin_should_be_fetched
|
18
|
+
token = Razorpay::Iin.fetch(@token_id)
|
19
|
+
assert_instance_of Razorpay::Iin, token, 'Iin not an instance of Razorpay::Iin class'
|
20
|
+
assert_equal @token_id, token.iin, 'token IDs do not match'
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
data/test/razorpay/test_order.rb
CHANGED
@@ -60,7 +60,7 @@ module Razorpay
|
|
60
60
|
end
|
61
61
|
|
62
62
|
def test_fetch_order_transfers
|
63
|
-
stub_get("#{BASE_URI}orders/#{@order_id}/?expand[]=transfers&status", 'fake_order_transfers')
|
63
|
+
stub_get("#{BASE_URI}/v1/orders/#{@order_id}/?expand[]=transfers&status", 'fake_order_transfers')
|
64
64
|
order = Razorpay::Order.fetch_transfer_order(@order_id)
|
65
65
|
assert_instance_of Razorpay::Order, order, 'order not an instance of Razorpay::Order class'
|
66
66
|
assert_equal @order_id, order.id, 'order IDs do not match'
|
@@ -0,0 +1,67 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
module Razorpay
|
4
|
+
# Tests for Razorpay::Product
|
5
|
+
class RazorpayProductonTest < Minitest::Test
|
6
|
+
class Product < Razorpay::Entity; end
|
7
|
+
|
8
|
+
def setup
|
9
|
+
@product_id = 'acc_prd_00000000000001'
|
10
|
+
@account_id = 'acc_00000000000001'
|
11
|
+
@product_name = 'payment_gateway'
|
12
|
+
@tnc_id = 'tnc_map_00000000000001'
|
13
|
+
# Any request that ends with product_id
|
14
|
+
stub_get(%r{/v2/accounts\/#{Regexp.quote(@account_id)}/products\/#{Regexp.quote(@product_id)}$}, 'fake_product')
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_product_should_be_defined
|
18
|
+
refute_nil Razorpay::Product
|
19
|
+
end
|
20
|
+
|
21
|
+
def test_product_should_be_available
|
22
|
+
product = Razorpay::Product.fetch(@account_id, @product_id)
|
23
|
+
assert_instance_of Razorpay::Entity, product, 'product not an instance of Entity class'
|
24
|
+
assert_equal @product_id, product.id, 'Product IDs do not match'
|
25
|
+
assert_equal @product_name, product.product_name, 'product name is accessible'
|
26
|
+
end
|
27
|
+
|
28
|
+
def test_product_request_product_configuration
|
29
|
+
|
30
|
+
payload = create_product_payload()
|
31
|
+
stub_post(%r{accounts/#{@account_id}/products$}, 'fake_product', payload.to_json)
|
32
|
+
|
33
|
+
product = Razorpay::Product.request_product_configuration(@account_id, payload.to_json)
|
34
|
+
assert_instance_of Razorpay::Entity, product, 'Product not an instance of Entity class'
|
35
|
+
assert_equal @product_id, product.id, 'Product IDs do not match'
|
36
|
+
assert_equal @product_name, product.product_name, 'product name is accessible'
|
37
|
+
end
|
38
|
+
|
39
|
+
def test_product_edit
|
40
|
+
|
41
|
+
payload = create_product_payload()
|
42
|
+
stub_patch(%r{accounts/#{@account_id}/products/#{@product_id}$}, 'fake_product', payload.to_json)
|
43
|
+
|
44
|
+
product = Razorpay::Product.edit(@account_id, @product_id, payload.to_json)
|
45
|
+
assert_instance_of Razorpay::Entity, product, 'Product not an instance of Entity class'
|
46
|
+
assert_equal @product_id, product.id, 'Product IDs do not match'
|
47
|
+
assert_equal @product_name, product.product_name, 'product name is accessible'
|
48
|
+
end
|
49
|
+
|
50
|
+
def test_product_fetchTnc
|
51
|
+
product_name = "payments"
|
52
|
+
|
53
|
+
stub_get("#{BASE_URI}/v2/products/#{product_name}/tnc", 'fetch_tnc')
|
54
|
+
product = Razorpay::Product.fetch_tnc(product_name)
|
55
|
+
assert_instance_of Razorpay::Entity, product, 'Product not an instance of Entity class'
|
56
|
+
assert_equal @tnc_id, product.id, 'Product IDs do not match'
|
57
|
+
end
|
58
|
+
|
59
|
+
def create_product_payload
|
60
|
+
return {
|
61
|
+
"product_name": "payment_gateway",
|
62
|
+
"tnc_accepted": true,
|
63
|
+
"ip": "233.233.233.234"
|
64
|
+
}
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
@@ -36,7 +36,7 @@ module Razorpay
|
|
36
36
|
"year": 2022,
|
37
37
|
"month":12
|
38
38
|
}
|
39
|
-
stub_get("#{BASE_URI}settlements/recon/combined?month=12&year=2022", 'settlement_report_collection')
|
39
|
+
stub_get("#{BASE_URI}/v1/settlements/recon/combined?month=12&year=2022", 'settlement_report_collection')
|
40
40
|
settlement = Razorpay::Settlement.reports(para_attr)
|
41
41
|
assert_instance_of Razorpay::Collection, settlement, 'Settlement not an instance of Settlement class'
|
42
42
|
refute_empty settlement.items, 'Settlement should be more than one'
|
@@ -0,0 +1,87 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
module Razorpay
|
4
|
+
# Tests for Razorpay::Account
|
5
|
+
class RazorpayStakeholderonTest < Minitest::Test
|
6
|
+
class Stakeholder < Razorpay::Entity; end
|
7
|
+
|
8
|
+
def setup
|
9
|
+
@stakeholder_id = 'sth_00000000000001'
|
10
|
+
@account_id = 'acc_00000000000001'
|
11
|
+
@email = 'gaurav.kumar@example.com'
|
12
|
+
# Any request that ends with stakeholder_id
|
13
|
+
stub_get(%r{/v2/accounts\/#{Regexp.quote(@account_id)}/stakeholders\/#{Regexp.quote(@stakeholder_id)}$}, 'fake_stakeholder')
|
14
|
+
end
|
15
|
+
|
16
|
+
def test_stakeholder_should_be_defined
|
17
|
+
refute_nil Razorpay::Stakeholder
|
18
|
+
end
|
19
|
+
|
20
|
+
def test_stakeholder_should_be_available
|
21
|
+
stakeholder = Razorpay::Stakeholder.fetch(@account_id, @stakeholder_id)
|
22
|
+
assert_instance_of Razorpay::Stakeholder, stakeholder, 'Stakeholder not an instance of Entity class'
|
23
|
+
assert_equal @stakeholder_id, stakeholder.id, 'Stakeholder IDs do not match'
|
24
|
+
assert_equal @email, stakeholder.email, 'Stakeholder email is accessible'
|
25
|
+
end
|
26
|
+
|
27
|
+
def test_stakeholder_should_be_create
|
28
|
+
|
29
|
+
payload = create_stakeholder_payload()
|
30
|
+
stub_post(%r{accounts/#{@account_id}/stakeholders$}, 'fake_stakeholder', payload.to_json)
|
31
|
+
|
32
|
+
stakeholder = Razorpay::Stakeholder.create(@account_id, payload.to_json)
|
33
|
+
assert_instance_of Razorpay::Stakeholder, stakeholder, 'Stakeholder not an instance of Entity class'
|
34
|
+
assert_equal @stakeholder_id, stakeholder.id, 'Stakeholder IDs do not match'
|
35
|
+
assert_equal @email, stakeholder.email, 'Stakeholder email is accessible'
|
36
|
+
end
|
37
|
+
|
38
|
+
def test_stakeholder_edit
|
39
|
+
|
40
|
+
payload = create_stakeholder_payload()
|
41
|
+
stub_patch(%r{accounts/#{@account_id}/stakeholders/#{@stakeholder_id}$}, 'fake_stakeholder', payload.to_json)
|
42
|
+
|
43
|
+
stakeholder = Razorpay::Stakeholder.edit(@account_id, @stakeholder_id, payload.to_json)
|
44
|
+
assert_instance_of Razorpay::Stakeholder, stakeholder, 'Stakeholder not an instance of Entity class'
|
45
|
+
assert_equal @stakeholder_id, stakeholder.id, 'Stakeholder IDs do not match'
|
46
|
+
assert_equal @email, stakeholder.email, 'Stakeholder email is accessible'
|
47
|
+
end
|
48
|
+
|
49
|
+
def test_fetching_all_stakeholder
|
50
|
+
stub_get(%r{accounts/#{@account_id}/stakeholders$}, 'stakeholder_collection')
|
51
|
+
orders = Razorpay::Stakeholder.all(@account_id)
|
52
|
+
assert_instance_of Razorpay::Collection, orders, 'Orders should be an array'
|
53
|
+
assert !orders.items.empty?, 'orders should be more than one'
|
54
|
+
end
|
55
|
+
|
56
|
+
def create_stakeholder_payload
|
57
|
+
return {
|
58
|
+
"percentage_ownership": 10,
|
59
|
+
"name": "Gaurav Kumar",
|
60
|
+
"email": "gaurav.kumar@example.com",
|
61
|
+
"relationship": {
|
62
|
+
"director": true,
|
63
|
+
"executive": false
|
64
|
+
},
|
65
|
+
"phone": {
|
66
|
+
"primary": "9000090000",
|
67
|
+
"secondary": "9000090000"
|
68
|
+
},
|
69
|
+
"addresses": {
|
70
|
+
"residential": {
|
71
|
+
"street": "506, Koramangala 1st block",
|
72
|
+
"city": "Bengaluru",
|
73
|
+
"state": "Karnataka",
|
74
|
+
"postal_code": "560034",
|
75
|
+
"country": "IN"
|
76
|
+
}
|
77
|
+
},
|
78
|
+
"kyc": {
|
79
|
+
"pan": "AVOPB1111K"
|
80
|
+
},
|
81
|
+
"notes": {
|
82
|
+
"random_key_by_partner": "random_value"
|
83
|
+
}
|
84
|
+
}
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
@@ -0,0 +1,66 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
module Razorpay
|
4
|
+
# Tests for Razorpay::Token
|
5
|
+
class RazorpayTokenTest < Minitest::Test
|
6
|
+
class Token < Razorpay::Entity; end
|
7
|
+
|
8
|
+
def setup
|
9
|
+
@token_id = 'token_00000000000001'
|
10
|
+
@customer_id = 'cust_1Aa00000000001'
|
11
|
+
@method = 'card'
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_token_should_be_defined
|
15
|
+
refute_nil Razorpay::Token
|
16
|
+
end
|
17
|
+
|
18
|
+
def test_token_should_be_available
|
19
|
+
payload = {
|
20
|
+
"id": @token_id
|
21
|
+
}
|
22
|
+
stub_post(%r{/tokens/fetch$}, 'fake_tokenise_customer', payload.to_json)
|
23
|
+
token = Razorpay::Token.fetch(payload.to_json)
|
24
|
+
assert_instance_of Razorpay::Token, token, 'token not an instance of Token class'
|
25
|
+
assert_equal @token_id, token.id, 'Token IDs do not match'
|
26
|
+
end
|
27
|
+
|
28
|
+
def test_token_should_be_delete
|
29
|
+
payload = {
|
30
|
+
"id": @token_id
|
31
|
+
}
|
32
|
+
stub_post(%r{/tokens/delete$}, 'empty', payload.to_json)
|
33
|
+
token = Razorpay::Token.delete(payload.to_json)
|
34
|
+
assert_instance_of Razorpay::Entity, token, 'token not an instance of Entity class'
|
35
|
+
end
|
36
|
+
|
37
|
+
def test_token_create
|
38
|
+
|
39
|
+
payload = create_token_payload()
|
40
|
+
stub_post(%r{/tokens$}, 'fake_tokenise_customer', payload.to_json)
|
41
|
+
|
42
|
+
token = Razorpay::Token.create(payload.to_json)
|
43
|
+
assert_instance_of Razorpay::Token, token, 'Token not an instance of Token class'
|
44
|
+
assert_equal @token_id, token.id, 'Token IDs do not match'
|
45
|
+
end
|
46
|
+
|
47
|
+
def create_token_payload
|
48
|
+
return {
|
49
|
+
"customer_id": "cust_00000000000002",
|
50
|
+
"method": "card",
|
51
|
+
"card": {
|
52
|
+
"number": "4854000000708430",
|
53
|
+
"cvv": "123",
|
54
|
+
"expiry_month": "12",
|
55
|
+
"expiry_year": "24",
|
56
|
+
"name": "Gaurav Kumar"
|
57
|
+
},
|
58
|
+
"authentication": {
|
59
|
+
"provider": "razorpay",
|
60
|
+
"provider_reference_id": "pay_000000000000"
|
61
|
+
},
|
62
|
+
"notes": []
|
63
|
+
}
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
@@ -45,7 +45,7 @@ module Razorpay
|
|
45
45
|
end
|
46
46
|
|
47
47
|
def test_transfer_fetch_settlement_details
|
48
|
-
stub_get("#{BASE_URI}transfers/?expand[]=recipient_settlement", 'transfers_collection')
|
48
|
+
stub_get("#{BASE_URI}/v1/transfers/?expand[]=recipient_settlement", 'transfers_collection')
|
49
49
|
transfer = Razorpay::Transfer.fetch_settlements
|
50
50
|
assert_instance_of Razorpay::Collection, transfer , 'Transfer should be an array'
|
51
51
|
refute_empty transfer.items , 'Transfer should be more than one'
|
@@ -0,0 +1,132 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
module Razorpay
|
4
|
+
# Tests for Razorpay::Webhook
|
5
|
+
class RazorpayWebhookonTest < Minitest::Test
|
6
|
+
class Webhook < Razorpay::Entity; end
|
7
|
+
|
8
|
+
def setup
|
9
|
+
@webhook_id = 'H000000000000H'
|
10
|
+
@account_id = 'acc_00000000000001'
|
11
|
+
@alert_email = 'gaurav.kumar@example.com'
|
12
|
+
# Any request that ends with webhook_id
|
13
|
+
end
|
14
|
+
|
15
|
+
def test_product_should_be_defined
|
16
|
+
refute_nil Razorpay::Webhook
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_webhook_with_account_id_should_be_available
|
20
|
+
stub_get(%r{/v2/accounts\/#{Regexp.quote(@account_id)}/webhooks\/#{Regexp.quote(@webhook_id)}$}, 'fake_webhook_by_account_id')
|
21
|
+
webhook = Razorpay::Webhook.fetch(@webhook_id, @account_id)
|
22
|
+
assert_instance_of Razorpay::Webhook, webhook, 'webhook not an instance of Webhook class'
|
23
|
+
assert_equal @webhook_id, webhook.id, 'Webhook IDs do not match'
|
24
|
+
assert_equal @alert_email, webhook.alert_email, 'webhook alert_email is accessible'
|
25
|
+
end
|
26
|
+
|
27
|
+
def test_webhook_with_account_id_should_be_create
|
28
|
+
payload = create_webhook_payload_by_account()
|
29
|
+
stub_post(%r{/v2/accounts/#{@account_id}/webhooks$}, 'fake_webhook_by_account_id', payload.to_json)
|
30
|
+
|
31
|
+
webhook = Razorpay::Webhook.create(payload.to_json, @account_id)
|
32
|
+
assert_instance_of Razorpay::Webhook, webhook, 'Webhook not an instance of Webhook class'
|
33
|
+
assert_equal @webhook_id, webhook.id, 'Webhook IDs do not match'
|
34
|
+
assert_equal @alert_email, webhook.alert_email, 'webhook alert_email is accessible'
|
35
|
+
end
|
36
|
+
|
37
|
+
def test_webhook_should_be_create
|
38
|
+
payload = create_webhook_payload()
|
39
|
+
stub_post(%r{/webhooks$}, 'fake_webhook', payload.to_json)
|
40
|
+
|
41
|
+
webhook = Razorpay::Webhook.create(payload.to_json)
|
42
|
+
assert_instance_of Razorpay::Webhook, webhook, 'Webhook not an instance of Webhook class'
|
43
|
+
assert_equal @webhook_id, webhook.id, 'Webhook IDs do not match'
|
44
|
+
assert_equal @alert_email, webhook.created_by_email, 'webhook alert_email is accessible'
|
45
|
+
end
|
46
|
+
|
47
|
+
def test_webhook_with_account_id_should_be_edit
|
48
|
+
payload = edit_webhook_payload_by_account()
|
49
|
+
stub_patch(%r{/v2/accounts/#{@account_id}/webhooks/#{@webhook_id}$}, 'fake_webhook_by_account_id', payload.to_json)
|
50
|
+
|
51
|
+
webhook = Razorpay::Webhook.edit(payload.to_json, @webhook_id, @account_id)
|
52
|
+
assert_instance_of Razorpay::Webhook, webhook, 'Webhook not an instance of Webhook class'
|
53
|
+
assert_equal @webhook_id, webhook.id, 'Webhook IDs do not match'
|
54
|
+
assert_equal @alert_email, webhook.alert_email, 'webhook alert_email is accessible'
|
55
|
+
end
|
56
|
+
|
57
|
+
def test_webhook_should_be_edit
|
58
|
+
payload = edit_webhook_payload()
|
59
|
+
stub_put(%r{/webhooks/#{@webhook_id}$}, 'fake_webhook', payload.to_json)
|
60
|
+
|
61
|
+
webhook = Razorpay::Webhook.edit(payload.to_json, @webhook_id)
|
62
|
+
assert_instance_of Razorpay::Webhook, webhook, 'Webhook not an instance of Webhook class'
|
63
|
+
assert_equal @webhook_id, webhook.id, 'Webhook IDs do not match'
|
64
|
+
assert_equal @alert_email, webhook.created_by_email, 'webhook alert_email is accessible'
|
65
|
+
end
|
66
|
+
|
67
|
+
def test_webhook_fetch_webhooks_by_account
|
68
|
+
stub_get(%r{/v2/accounts/#{@account_id}/webhooks$}, 'webhook_by_account_collection', {})
|
69
|
+
|
70
|
+
webhook = Razorpay::Webhook.all({}, @account_id)
|
71
|
+
assert_instance_of Razorpay::Collection, webhook, 'Webhook not an instance of Webhook class'
|
72
|
+
refute_empty webhook.items , 'Webhook should be more than one'
|
73
|
+
end
|
74
|
+
|
75
|
+
def test_webhook_fetch_webhooks
|
76
|
+
stub_get(%r{/webhooks$}, 'webhook_collection')
|
77
|
+
|
78
|
+
webhook = Razorpay::Webhook.all()
|
79
|
+
assert_instance_of Razorpay::Collection, webhook, 'Webhook not an instance of Webhook class'
|
80
|
+
refute_empty webhook.items , 'Webhook should be more than one'
|
81
|
+
end
|
82
|
+
|
83
|
+
def create_webhook_payload_by_account
|
84
|
+
return {
|
85
|
+
"url": "https://google.com",
|
86
|
+
"alert_email": "gaurav.kumar@example.com",
|
87
|
+
"secret": "12345",
|
88
|
+
"events": [
|
89
|
+
"payment.authorized",
|
90
|
+
"payment.failed",
|
91
|
+
"payment.captured",
|
92
|
+
"payment.dispute.created",
|
93
|
+
"refund.failed",
|
94
|
+
"refund.created"
|
95
|
+
]
|
96
|
+
}
|
97
|
+
end
|
98
|
+
|
99
|
+
def edit_webhook_payload_by_account
|
100
|
+
return {
|
101
|
+
"url": "https://google.com",
|
102
|
+
"alert_email": "gaurav.kumar@example.com",
|
103
|
+
"secret": "12345",
|
104
|
+
"events": [
|
105
|
+
"payment.authorized"
|
106
|
+
]
|
107
|
+
}
|
108
|
+
end
|
109
|
+
|
110
|
+
def create_webhook_payload
|
111
|
+
return {
|
112
|
+
"url": "https://google.com",
|
113
|
+
"alert_email": "gaurav.kumar@example.com",
|
114
|
+
"secret": "12345",
|
115
|
+
"events": {
|
116
|
+
"payment.authorized": "true",
|
117
|
+
"refund.created": "true",
|
118
|
+
"subscription.charged": "true"
|
119
|
+
}
|
120
|
+
}
|
121
|
+
end
|
122
|
+
|
123
|
+
def edit_webhook_payload
|
124
|
+
return {
|
125
|
+
"url": "https://google.com",
|
126
|
+
"events": {
|
127
|
+
"payment.authorized": "true",
|
128
|
+
}
|
129
|
+
}
|
130
|
+
end
|
131
|
+
end
|
132
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: razorpay
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0
|
4
|
+
version: 3.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Abhay Rana
|
@@ -131,6 +131,7 @@ files:
|
|
131
131
|
- README.md
|
132
132
|
- Rakefile
|
133
133
|
- documents/Invoice.md
|
134
|
+
- documents/account.md
|
134
135
|
- documents/addon.md
|
135
136
|
- documents/card.md
|
136
137
|
- documents/customer.md
|
@@ -143,19 +144,23 @@ files:
|
|
143
144
|
- documents/paymentLink.md
|
144
145
|
- documents/paymentVerification.md
|
145
146
|
- documents/plan.md
|
147
|
+
- documents/productConfiguration.md
|
146
148
|
- documents/qrcode.md
|
147
149
|
- documents/refund.md
|
148
150
|
- documents/registerEmandate.md
|
149
151
|
- documents/registerNach.md
|
150
152
|
- documents/settlement.md
|
153
|
+
- documents/stakeholder.md
|
151
154
|
- documents/subscriptions.md
|
152
155
|
- documents/tokens.md
|
153
156
|
- documents/transfers.md
|
154
157
|
- documents/upi.md
|
155
158
|
- documents/virtualAccount.md
|
159
|
+
- documents/webhook.md
|
156
160
|
- lib/ca-bundle.crt
|
157
161
|
- lib/extensions/httparty/hash_conversions.rb
|
158
162
|
- lib/razorpay.rb
|
163
|
+
- lib/razorpay/account.rb
|
159
164
|
- lib/razorpay/addon.rb
|
160
165
|
- lib/razorpay/card.rb
|
161
166
|
- lib/razorpay/collection.rb
|
@@ -168,6 +173,7 @@ files:
|
|
168
173
|
- lib/razorpay/errors/razorpay_error.rb
|
169
174
|
- lib/razorpay/errors/server_error.rb
|
170
175
|
- lib/razorpay/fund_account.rb
|
176
|
+
- lib/razorpay/iin.rb
|
171
177
|
- lib/razorpay/invoice.rb
|
172
178
|
- lib/razorpay/item.rb
|
173
179
|
- lib/razorpay/order.rb
|
@@ -175,15 +181,19 @@ files:
|
|
175
181
|
- lib/razorpay/payment_link.rb
|
176
182
|
- lib/razorpay/payment_method.rb
|
177
183
|
- lib/razorpay/plan.rb
|
184
|
+
- lib/razorpay/product.rb
|
178
185
|
- lib/razorpay/qr_code.rb
|
179
186
|
- lib/razorpay/refund.rb
|
180
187
|
- lib/razorpay/request.rb
|
181
188
|
- lib/razorpay/settlement.rb
|
189
|
+
- lib/razorpay/stakeholder.rb
|
182
190
|
- lib/razorpay/subscription.rb
|
183
191
|
- lib/razorpay/subscription_registration.rb
|
192
|
+
- lib/razorpay/token.rb
|
184
193
|
- lib/razorpay/transfer.rb
|
185
194
|
- lib/razorpay/utility.rb
|
186
195
|
- lib/razorpay/virtual_account.rb
|
196
|
+
- lib/razorpay/webhook.rb
|
187
197
|
- razorpay-ruby.gemspec
|
188
198
|
- test/fixtures/addon_collection.json
|
189
199
|
- test/fixtures/bad_request_error.json
|
@@ -194,15 +204,18 @@ files:
|
|
194
204
|
- test/fixtures/delete_token.json
|
195
205
|
- test/fixtures/downtimes_collection.json
|
196
206
|
- test/fixtures/empty.json
|
207
|
+
- test/fixtures/fake_account.json
|
197
208
|
- test/fixtures/fake_addon.json
|
198
209
|
- test/fixtures/fake_captured_payment.json
|
199
210
|
- test/fixtures/fake_card.json
|
211
|
+
- test/fixtures/fake_card_reference.json
|
200
212
|
- test/fixtures/fake_create_upi_payment.json
|
201
213
|
- test/fixtures/fake_customer.json
|
202
214
|
- test/fixtures/fake_customer_edited.json
|
203
215
|
- test/fixtures/fake_direct_transfer.json
|
204
216
|
- test/fixtures/fake_downtime.json
|
205
217
|
- test/fixtures/fake_fund_account.json
|
218
|
+
- test/fixtures/fake_iin_token.json
|
206
219
|
- test/fixtures/fake_instant_settlement.json
|
207
220
|
- test/fixtures/fake_invoice.json
|
208
221
|
- test/fixtures/fake_item.json
|
@@ -217,6 +230,7 @@ files:
|
|
217
230
|
- test/fixtures/fake_payment_link.json
|
218
231
|
- test/fixtures/fake_pending_update.json
|
219
232
|
- test/fixtures/fake_plan.json
|
233
|
+
- test/fixtures/fake_product.json
|
220
234
|
- test/fixtures/fake_qrcode.json
|
221
235
|
- test/fixtures/fake_qrcode_close.json
|
222
236
|
- test/fixtures/fake_recurring.json
|
@@ -224,11 +238,13 @@ files:
|
|
224
238
|
- test/fixtures/fake_refunded_payment.json
|
225
239
|
- test/fixtures/fake_settlement.json
|
226
240
|
- test/fixtures/fake_settlement_on_demand.json
|
241
|
+
- test/fixtures/fake_stakeholder.json
|
227
242
|
- test/fixtures/fake_subscription.json
|
228
243
|
- test/fixtures/fake_subscription_pause.json
|
229
244
|
- test/fixtures/fake_subscription_registration.json
|
230
245
|
- test/fixtures/fake_subscription_resume.json
|
231
246
|
- test/fixtures/fake_token.json
|
247
|
+
- test/fixtures/fake_tokenise_customer.json
|
232
248
|
- test/fixtures/fake_transfer.json
|
233
249
|
- test/fixtures/fake_transfer_reverse.json
|
234
250
|
- test/fixtures/fake_update_payment.json
|
@@ -238,6 +254,9 @@ files:
|
|
238
254
|
- test/fixtures/fake_virtual_account_closed.json
|
239
255
|
- test/fixtures/fake_virtual_account_collection.json
|
240
256
|
- test/fixtures/fake_virtual_account_receiver.json
|
257
|
+
- test/fixtures/fake_webhook.json
|
258
|
+
- test/fixtures/fake_webhook_by_account_id.json
|
259
|
+
- test/fixtures/fetch_tnc.json
|
241
260
|
- test/fixtures/fund_collection.json
|
242
261
|
- test/fixtures/hello_response.json
|
243
262
|
- test/fixtures/invoice_collection.json
|
@@ -258,34 +277,43 @@ files:
|
|
258
277
|
- test/fixtures/settlement_collection.json
|
259
278
|
- test/fixtures/settlement_instant_collection.json
|
260
279
|
- test/fixtures/settlement_report_collection.json
|
280
|
+
- test/fixtures/stakeholder_collection.json
|
261
281
|
- test/fixtures/subscription_collection.json
|
262
282
|
- test/fixtures/success.json
|
263
283
|
- test/fixtures/tokens_collection.json
|
264
284
|
- test/fixtures/transfer_settlements_collection.json
|
265
285
|
- test/fixtures/transfers_collection.json
|
266
286
|
- test/fixtures/update_invoice.json
|
287
|
+
- test/fixtures/webhook_by_account_collection.json
|
288
|
+
- test/fixtures/webhook_collection.json
|
267
289
|
- test/fixtures/welcome.json
|
290
|
+
- test/razorpay/test_account.rb
|
268
291
|
- test/razorpay/test_addon.rb
|
269
292
|
- test/razorpay/test_card.rb
|
270
293
|
- test/razorpay/test_customer.rb
|
271
294
|
- test/razorpay/test_entity.rb
|
272
295
|
- test/razorpay/test_fund_account.rb
|
296
|
+
- test/razorpay/test_iin.rb
|
273
297
|
- test/razorpay/test_invoice.rb
|
274
298
|
- test/razorpay/test_item.rb
|
275
299
|
- test/razorpay/test_order.rb
|
276
300
|
- test/razorpay/test_payment.rb
|
277
301
|
- test/razorpay/test_payment_link.rb
|
278
302
|
- test/razorpay/test_plan.rb
|
303
|
+
- test/razorpay/test_product.rb
|
279
304
|
- test/razorpay/test_qr_code.rb
|
280
305
|
- test/razorpay/test_razorpay.rb
|
281
306
|
- test/razorpay/test_refund.rb
|
282
307
|
- test/razorpay/test_request.rb
|
283
308
|
- test/razorpay/test_settlement.rb
|
309
|
+
- test/razorpay/test_stakeholder.rb
|
284
310
|
- test/razorpay/test_subscription.rb
|
285
311
|
- test/razorpay/test_subscription_registration.rb
|
312
|
+
- test/razorpay/test_token.rb
|
286
313
|
- test/razorpay/test_transfer.rb
|
287
314
|
- test/razorpay/test_utility.rb
|
288
315
|
- test/razorpay/test_virtual_account.rb
|
316
|
+
- test/razorpay/test_webhook.rb
|
289
317
|
- test/test_helper.rb
|
290
318
|
homepage: https://razorpay.com/
|
291
319
|
licenses:
|
@@ -320,15 +348,18 @@ test_files:
|
|
320
348
|
- test/fixtures/delete_token.json
|
321
349
|
- test/fixtures/downtimes_collection.json
|
322
350
|
- test/fixtures/empty.json
|
351
|
+
- test/fixtures/fake_account.json
|
323
352
|
- test/fixtures/fake_addon.json
|
324
353
|
- test/fixtures/fake_captured_payment.json
|
325
354
|
- test/fixtures/fake_card.json
|
355
|
+
- test/fixtures/fake_card_reference.json
|
326
356
|
- test/fixtures/fake_create_upi_payment.json
|
327
357
|
- test/fixtures/fake_customer.json
|
328
358
|
- test/fixtures/fake_customer_edited.json
|
329
359
|
- test/fixtures/fake_direct_transfer.json
|
330
360
|
- test/fixtures/fake_downtime.json
|
331
361
|
- test/fixtures/fake_fund_account.json
|
362
|
+
- test/fixtures/fake_iin_token.json
|
332
363
|
- test/fixtures/fake_instant_settlement.json
|
333
364
|
- test/fixtures/fake_invoice.json
|
334
365
|
- test/fixtures/fake_item.json
|
@@ -343,6 +374,7 @@ test_files:
|
|
343
374
|
- test/fixtures/fake_payment_link.json
|
344
375
|
- test/fixtures/fake_pending_update.json
|
345
376
|
- test/fixtures/fake_plan.json
|
377
|
+
- test/fixtures/fake_product.json
|
346
378
|
- test/fixtures/fake_qrcode.json
|
347
379
|
- test/fixtures/fake_qrcode_close.json
|
348
380
|
- test/fixtures/fake_recurring.json
|
@@ -350,11 +382,13 @@ test_files:
|
|
350
382
|
- test/fixtures/fake_refunded_payment.json
|
351
383
|
- test/fixtures/fake_settlement.json
|
352
384
|
- test/fixtures/fake_settlement_on_demand.json
|
385
|
+
- test/fixtures/fake_stakeholder.json
|
353
386
|
- test/fixtures/fake_subscription.json
|
354
387
|
- test/fixtures/fake_subscription_pause.json
|
355
388
|
- test/fixtures/fake_subscription_registration.json
|
356
389
|
- test/fixtures/fake_subscription_resume.json
|
357
390
|
- test/fixtures/fake_token.json
|
391
|
+
- test/fixtures/fake_tokenise_customer.json
|
358
392
|
- test/fixtures/fake_transfer.json
|
359
393
|
- test/fixtures/fake_transfer_reverse.json
|
360
394
|
- test/fixtures/fake_update_payment.json
|
@@ -364,6 +398,9 @@ test_files:
|
|
364
398
|
- test/fixtures/fake_virtual_account_closed.json
|
365
399
|
- test/fixtures/fake_virtual_account_collection.json
|
366
400
|
- test/fixtures/fake_virtual_account_receiver.json
|
401
|
+
- test/fixtures/fake_webhook.json
|
402
|
+
- test/fixtures/fake_webhook_by_account_id.json
|
403
|
+
- test/fixtures/fetch_tnc.json
|
367
404
|
- test/fixtures/fund_collection.json
|
368
405
|
- test/fixtures/hello_response.json
|
369
406
|
- test/fixtures/invoice_collection.json
|
@@ -384,32 +421,41 @@ test_files:
|
|
384
421
|
- test/fixtures/settlement_collection.json
|
385
422
|
- test/fixtures/settlement_instant_collection.json
|
386
423
|
- test/fixtures/settlement_report_collection.json
|
424
|
+
- test/fixtures/stakeholder_collection.json
|
387
425
|
- test/fixtures/subscription_collection.json
|
388
426
|
- test/fixtures/success.json
|
389
427
|
- test/fixtures/tokens_collection.json
|
390
428
|
- test/fixtures/transfer_settlements_collection.json
|
391
429
|
- test/fixtures/transfers_collection.json
|
392
430
|
- test/fixtures/update_invoice.json
|
431
|
+
- test/fixtures/webhook_by_account_collection.json
|
432
|
+
- test/fixtures/webhook_collection.json
|
393
433
|
- test/fixtures/welcome.json
|
434
|
+
- test/razorpay/test_account.rb
|
394
435
|
- test/razorpay/test_addon.rb
|
395
436
|
- test/razorpay/test_card.rb
|
396
437
|
- test/razorpay/test_customer.rb
|
397
438
|
- test/razorpay/test_entity.rb
|
398
439
|
- test/razorpay/test_fund_account.rb
|
440
|
+
- test/razorpay/test_iin.rb
|
399
441
|
- test/razorpay/test_invoice.rb
|
400
442
|
- test/razorpay/test_item.rb
|
401
443
|
- test/razorpay/test_order.rb
|
402
444
|
- test/razorpay/test_payment.rb
|
403
445
|
- test/razorpay/test_payment_link.rb
|
404
446
|
- test/razorpay/test_plan.rb
|
447
|
+
- test/razorpay/test_product.rb
|
405
448
|
- test/razorpay/test_qr_code.rb
|
406
449
|
- test/razorpay/test_razorpay.rb
|
407
450
|
- test/razorpay/test_refund.rb
|
408
451
|
- test/razorpay/test_request.rb
|
409
452
|
- test/razorpay/test_settlement.rb
|
453
|
+
- test/razorpay/test_stakeholder.rb
|
410
454
|
- test/razorpay/test_subscription.rb
|
411
455
|
- test/razorpay/test_subscription_registration.rb
|
456
|
+
- test/razorpay/test_token.rb
|
412
457
|
- test/razorpay/test_transfer.rb
|
413
458
|
- test/razorpay/test_utility.rb
|
414
459
|
- test/razorpay/test_virtual_account.rb
|
460
|
+
- test/razorpay/test_webhook.rb
|
415
461
|
- test/test_helper.rb
|