402
|
1 java()
|
|
2 local Luan = require "luan:Luan"
|
|
3 local error = Luan.error
|
|
4 local assert_integer = Luan.assert_integer
|
|
5 local StripeLuan = require "java:luan.modules.stripe.StripeLuan"
|
|
6 local Stripe = require "java:com.stripe.Stripe"
|
|
7 local Customer = require "java:com.stripe.model.Customer"
|
|
8 local Charge = require "java:com.stripe.model.Charge"
|
|
9
|
|
10 currency = "usd"
|
|
11
|
|
12 function init(api_key)
|
|
13 Stripe.apiKey = api_key
|
|
14 end
|
|
15
|
|
16 function create_customer(params)
|
|
17 local java_customer = Customer.create(params)
|
|
18 return StripeLuan.table(java_customer)
|
|
19 end
|
|
20
|
|
21 function retrieve_customer(id)
|
|
22 local java_customer = Customer.retrieve(id)
|
|
23 return StripeLuan.table(java_customer)
|
|
24 end
|
|
25
|
|
26 function create_charge(params)
|
|
27 params.amount or error "missing parameter 'amount'"
|
|
28 params.amount = assert_integer(params.amount)
|
|
29 params.currency = params.currency or currency
|
|
30 local java_charge = Charge.create(params)
|
|
31 return StripeLuan.table(java_charge)
|
|
32 end
|