razorpay 3.0.1 → 3.1.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|