1
1
<?php
2
+ require '../init.php ' ;
2
3
3
4
use Request \marketplace \AlipayRegisterRequest ;
5
+ use Client \DefaultAlipayClient ;
6
+
7
+ const clientId = "" ;
8
+ const merchantPrivateKey = "" ;
9
+ const alipayPublicKey = "" ;
10
+ const gatewayUrl = "" ;
4
11
5
12
function register ()
6
13
{
7
14
$ alipayRegisterRequest = new AlipayRegisterRequest ();
8
- $ alipayRegisterRequest ->setRegistrationRequestId ();
9
- }
15
+ $ alipayRegisterRequest ->setRegistrationRequestId ('register_ ' . round (microtime (true ) * 1000 ));
16
+
17
+ $ settlementInfo = new \Model \SettlementInfo ();
18
+ $ settlementInfo ->setSettlementCurrency ("BRL " );
19
+ $ settlementBankAccount = new \Model \SettlementBankAccount ();
20
+ $ settlementBankAccount ->setBranchCode ("1231 " );
21
+ $ settlementBankAccount ->setRoutingNumber ("12 " );
22
+ $ settlementBankAccount ->setAccountType (\Model \AccountType::CHECKING );
23
+ $ settlementBankAccount ->setAccountHolderTIN ("1213214 " );
24
+ $ settlementBankAccount ->setAccountHolderName ("Timi " );
25
+ $ settlementBankAccount ->setBankAccountNo ("121232141 " );
26
+ $ settlementBankAccount ->setAccountHolderType (\Model \AccountHolderType::ENTERPRISE );
27
+ $ settlementInfo ->setSettlementBankAccount ($ settlementBankAccount );
28
+ $ alipayRegisterRequest ->setSettlementInfos ($ settlementInfo );
29
+
30
+
31
+ $ merchantInfo = new \Model \MerchantInfo ();
32
+ $ merchantInfo->
setLoginId (
"[email protected] " );
33
+ $ merchantInfo ->setLegalEntityType (\Model \LegalEntityType::COMPANY );
34
+
35
+ $ company = new \Model \Company ();
36
+ $ company ->setLegalName ("legalName " );
37
+ $ address = new \Model \Address ();
38
+ $ address ->setRegion ("BR " );
39
+ $ company ->setRegisteredAddress ($ address );
40
+ $ company ->setCompanyType (\Model \CompanyType::LTDA );
41
+ $ address1 = new \Model \Address ();
42
+ $ address1 ->setRegion ("BR " );
43
+ $ address1 ->setAddress1 ("address1 " );
44
+ $ company ->setOperatingAddress ($ address1 );
45
+
46
+ $ attachment = new \Model \Attachment ();
47
+ $ attachment ->setAttachmentName ("attachmentName " );
48
+ $ attachment ->setAttachmentType (\Model \AttachmentType::ASSOCIATION_ARTICLE );
49
+ $ company ->setAttachments ([$ attachment ]);
50
+ $ company ->setOperatingAddress ($ address );
51
+ $ certificate = new \Model \Certificate ();
52
+ $ certificate ->setCertificateNo ("11321421 " );
53
+ $ certificate ->setCertificateType (\Model \CertificateType::ENTERPRISE_REGISTRATION );
54
+ $ company ->setCertificates ([$ certificate ]);
55
+
56
+ $ merchantInfo ->setCompany ($ company );
57
+ $ merchantInfo ->setReferenceMerchantId (round (microtime (true ) * 1000 ));
58
+
59
+ $ businessInfo = new \Model \BusinessInfo ();
60
+ $ businessInfo ->setDoingBusinessAs ("DoingBusinessAs " );
61
+ $ webSite = new \Model \WebSite ();
62
+ $ webSite ->setUrl ("www.alipay.com " );
63
+ $ businessInfo ->setWebsites ([$ webSite ]);
64
+ $ merchantInfo ->setBusinessInfo ($ businessInfo );
65
+
66
+ $ entityAssociations = new \Model \EntityAssociations ();
67
+ $ individual = new \Model \Individual ();
68
+ $ certificate1 = new \Model \Certificate ();
69
+ $ certificate1 ->setCertificateNo ("11321421 " );
70
+ $ certificate1 ->setCertificateType (\Model \CertificateType::CPF );
71
+ $ individual ->setCertificates ([$ certificate1 ]);
72
+ $ userName = new \Model \UserName ();
73
+ $ userName ->setFirstName ("firstName " );
74
+ $ userName ->setLastName ("lastName " );
75
+ $ individual ->setName ($ userName );
76
+ $ individual ->setDateOfBirth ("1990-01-01 " );
77
+ $ entityAssociations ->setIndividual ($ individual );
78
+ $ entityAssociations ->setLegalEntityType (\Model \LegalEntityType::INDIVIDUAL );
79
+
80
+ $ merchantInfo ->setEntityAssociations ([$ entityAssociations ]);
81
+
82
+ $ alipayRegisterRequest ->setMerchantInfo ($ merchantInfo );
83
+
84
+ $ alipayClient = new DefaultAlipayClient ("https://open-sea-global.alipay.com " , merchantPrivateKey, alipayPublicKey, clientId);
85
+ $ alipayResponse = $ alipayClient ->execute ($ alipayRegisterRequest );
86
+
87
+ echo json_encode ($ alipayResponse );
88
+
89
+ }
90
+
91
+ function update ($ referenceMerchantId )
92
+ {
93
+ $ alipaySettlementInfoUpdateRequest = new \Request \marketplace \AlipaySettlementInfoUpdateRequest ();
94
+ $ alipaySettlementInfoUpdateRequest ->setReferenceMerchantId ($ referenceMerchantId );
95
+ $ alipaySettlementInfoUpdateRequest ->setUpdateRequestId ("update_ " . round (microtime (true ) * 1000 ));
96
+ $ alipaySettlementInfoUpdateRequest ->setSettlementCurrency ("BRL " );
97
+ $ settlementBankAccount = new \Model \SettlementBankAccount ();
98
+ $ settlementBankAccount ->setBranchCode ("1231 " );
99
+ $ settlementBankAccount ->setRoutingNumber ("12 " );
100
+ $ settlementBankAccount ->setAccountType (\Model \AccountType::CHECKING );
101
+ $ settlementBankAccount ->setAccountHolderTIN ("1213214 " );
102
+ $ settlementBankAccount ->setAccountHolderName ("Timi " );
103
+ $ settlementBankAccount ->setBankAccountNo ("121232141 " );
104
+ $ settlementBankAccount ->setAccountHolderType (\Model \AccountHolderType::ENTERPRISE );
105
+ $ alipaySettlementInfoUpdateRequest ->setSettlementBankAccount ($ settlementBankAccount );
106
+
107
+ $ alipayClient = new DefaultAlipayClient ("https://open-sea-global.alipay.com " , merchantPrivateKey, alipayPublicKey, clientId);
108
+ $ alipayResponse = $ alipayClient ->execute ($ alipaySettlementInfoUpdateRequest );
109
+
110
+ echo json_encode ($ alipayResponse );
111
+ }
112
+
113
+ function queryBalance ($ referenceMerchantId )
114
+ {
115
+ $ alipayInquireBalanceRequest = new \Request \marketplace \AlipayInquireBalanceRequest ();
116
+ $ alipayInquireBalanceRequest ->setReferenceMerchantId ($ referenceMerchantId );
117
+
118
+ $ alipayClient = new DefaultAlipayClient ("https://open-sea-global.alipay.com " , merchantPrivateKey, alipayPublicKey, clientId);
119
+ $ alipayResponse = $ alipayClient ->execute ($ alipayInquireBalanceRequest );
120
+
121
+ echo json_encode ($ alipayResponse );
122
+ }
123
+
124
+ function paymentId ($ paymentId )
125
+ {
126
+ $ alipaySettleRequest = new \Request \marketplace \AlipaySettleRequest ();
127
+ $ alipaySettleRequest ->setPaymentId ($ paymentId );
128
+ $ alipaySettleRequest ->setSettlementRequestId ("settle_ " . round (microtime (true ) * 1000 ));
129
+ $ settlementDetail = new \Model \SettlementDetail ();
130
+ $ settlementDetail ->setSettleTo (\Model \SettleToType::SELLER );
131
+ $ amount = new \Model \Amount ();
132
+ $ amount ->setValue ("90 " );
133
+ $ amount ->setCurrency ("BRL " );
134
+ $ settlementDetail ->setSettlementAmount ($ amount );
135
+
136
+ $ settlementDetail1 = new \Model \SettlementDetail ();
137
+ $ settlementDetail1 ->setSettleTo (\Model \SettleToType::MARKETPLACE );
138
+ $ amount1 = new \Model \Amount ();
139
+ $ amount1 ->setValue ("10 " );
140
+ $ amount1 ->setCurrency ("BRL " );
141
+ $ settlementDetail1 ->setSettlementAmount ($ amount );
142
+
143
+ $ alipaySettleRequest ->setSettlementDetails ([$ settlementDetail , $ settlementDetail1 ]);
144
+
145
+
146
+ $ alipayClient = new DefaultAlipayClient ("https://open-sea-global.alipay.com " , merchantPrivateKey, alipayPublicKey, clientId);
147
+ $ alipayResponse = $ alipayClient ->execute ($ alipaySettleRequest );
148
+
149
+ echo json_encode ($ alipayResponse );
150
+
151
+ }
152
+
153
+
154
+ function createPayout ()
155
+ {
156
+ $ alipayCreatePayoutRequest = new \Request \marketplace \AlipayCreatePayoutRequest ();
157
+ $ alipayCreatePayoutRequest ->setTransferRequestId ("transfer_ " . round (microtime (true ) * 1000 ));
158
+
159
+ $ transferFromDetail = new \Model \TransferFromDetail ();
160
+ $ paymentMethod = new \Model \PaymentMethod ();
161
+ $ paymentMethod ->setPaymentMethodId (round (microtime (true ) * 1000 ));
162
+ $ paymentMethod ->setPaymentMethodType (\Model \WalletPaymentMethodType::BALANCE_ACCOUNT );
163
+ $ transferFromDetail ->setTransferFromMethod ($ paymentMethod );
164
+ $ alipayCreatePayoutRequest ->setTransferFromDetail ($ transferFromDetail );
165
+
166
+ $ transferToDetail = new \Model \TransferToDetail ();
167
+ $ paymentMethod1 = new \Model \PaymentMethod ();
168
+ $ paymentMethod1 ->setPaymentMethodId (round (microtime (true ) * 1000 ));
169
+ $ paymentMethod1 ->setPaymentMethodType (\Model \WalletPaymentMethodType::SETTLEMENT_CARD );
170
+ $ transferToDetail ->setTransferToMethod ($ paymentMethod1 );
171
+ $ transferToDetail ->setTransferToCurrency ("BRL " );
172
+ $ transferToDetail ->setPurposeCode ("GSD " );
173
+ $ transferToDetail ->setTransferNotifyUrl ("www.alipay.com " );
174
+ $ alipayCreatePayoutRequest ->setTransferToDetail ($ transferToDetail );
175
+
176
+ $ alipayClient = new DefaultAlipayClient ("https://open-sea-global.alipay.com " , merchantPrivateKey, alipayPublicKey, clientId);
177
+ $ alipayResponse = $ alipayClient ->execute ($ alipayCreatePayoutRequest );
178
+
179
+ echo json_encode ($ alipayResponse );
180
+ }
181
+
182
+ function createTransfer ()
183
+ {
184
+ $ alipayCreateTransferRequest = new \Request \marketplace \AlipayCreateTransferRequest ();
185
+ $ alipayCreateTransferRequest ->setTransferRequestId ("transfer_ " . round (microtime (true ) * 1000 ));
186
+
187
+ $ transferFromDetail = new \Model \TransferFromDetail ();
188
+ $ paymentMethod = new \Model \PaymentMethod ();
189
+ $ paymentMethod ->setPaymentMethodId (round (microtime (true ) * 1000 ));
190
+ $ paymentMethod ->setPaymentMethodType (\Model \WalletPaymentMethodType::BALANCE_ACCOUNT );
191
+ $ amount = new \Model \Amount ();
192
+ $ amount ->setValue ("100 " );
193
+ $ amount ->setCurrency ("BRL " );
194
+ $ transferFromDetail ->setTransferFromAmount ($ amount );
195
+ $ transferFromDetail ->setTransferFromMethod ($ paymentMethod );
196
+ $ alipayCreateTransferRequest ->setTransferFromDetail ($ transferFromDetail );
197
+
198
+ $ transferToDetail = new \Model \TransferToDetail ();
199
+ $ paymentMethod1 = new \Model \PaymentMethod ();
200
+ $ paymentMethod1 ->setPaymentMethodId (round (microtime (true ) * 1000 ));
201
+ $ paymentMethod1 ->setPaymentMethodType (\Model \WalletPaymentMethodType::BALANCE_ACCOUNT );
202
+ $ transferToDetail ->setTransferToMethod ($ paymentMethod1 );
203
+ $ transferToDetail ->setTransferToCurrency ("BRL " );
204
+ $ transferToDetail ->setPurposeCode ("GSD " );
205
+ $ transferToDetail ->setTransferNotifyUrl ("www.alipay.com " );
206
+ $ alipayCreateTransferRequest ->setTransferToDetail ($ transferToDetail );
207
+
208
+ $ alipayClient = new DefaultAlipayClient ("https://open-sea-global.alipay.com " , merchantPrivateKey, alipayPublicKey, clientId);
209
+ $ alipayResponse = $ alipayClient ->execute ($ alipayCreateTransferRequest );
210
+
211
+ echo json_encode ($ alipayResponse );
212
+ }
213
+
214
+ register ();
215
+
216
+
0 commit comments