Я пытаюсь создать простую страницу оформления заказа с помощью wepay, и мой код проверки (взятый из примера SDK) отлично работает для владельца (меня), когда я вошел в систему, но при входе в систему от имени другого пользователя, который не имеет создал учетную запись (под своей?), он говорит, что учетная запись недействительна или не принадлежит пользователю.
Так как же новые зарегистрированные пользователи должны платить за аккаунт (мой), другими словами, делать платежи?
Вот код для справки. Account_id не работает для новых вошедших в систему пользователей, потому что они не создали его.
$wepay = new WePay($_SESSION['wepay_access_token']);
$checkout = $wepay->request('checkout/create', array(
'account_id' => 501999810,
'amount' => 1.00,
'currency'=> 'USD',
'short_description'=> 'Selling 42 Pens',
'type'=> 'goods'
));
Может быть, у меня что-то полностью отключено, но этот account_id — это место, где я хочу получать платежи?
Любая помощь будет оценена!
Как только вы зарегистрируете пользователя, вы должны создать реальную учетную запись продавца, позвонив /account/create
.
Получив токен доступа пользователя, вы можете позвонить /account/create
с токеном доступа пользователя и соответствующей информацией, чтобы фактически присоединить учетную запись к пользователю. /account/create
вызов вернет account_id
, Тот account_id
тот, который вы используете в /checkout/create
вызов.
Так что пока вы не создадите аккаунт через /account/create
пользователь не может принимать платежи.
$productData['data']['seller_data']['wepay_access_token']="STAGE_ea6cd2dffa3dfa23bd4817f210936fadada9fa91e906f353e15813c6cf920fb8";
$productData['data']['seller_data'}['wepay_account_id']="287443494";
$wepay = new WePay($productData['data']['seller_data']['wepay_access_token']);
$checkOutData = array(
//"account_id" => 12345678,
"account_id" => $productData['data']['seller_data'}['wepay_account_id'],
"amount" => 500,
"type" => "goods",
"currency" => "USD",
"short_description" => "Purchase made at test site",
"long_description" => "The charges made in this payment are of the order placed in test",
"delivery_type" => "point_of_sale",
"fee" => array(
"app_fee" => 15,
//'fee_payer' => 'payer_from_app'
'fee_payer' => 'payee_from_app'
),
//"auto_release"=>false,
"payment_method" => array(
"type" => "credit_card",
"credit_card" => array(
"id" => 2178689241,
"auto_capture" => false
)
)
);
try {
$checkoutResult = $wepay->request('checkout/create', $checkOutData);
} catch (Exception $e) {
$data['status'] = '0';
$data['message'] = 'We could not complete checkout!';
return $this->SetOutput();
}
You can get seller access token and account id using$user_id=20;
$access_token="STAGE_ea6cd2dffa3dfa23bd4817f210936fadada9fa91e906f353e15813c6cf920fb8":
$userName="test user";
$description="sell products";
try {
$wepay = new WePay($access_token);
if (empty($userName)) {
try {
$uresponse = $wepay->request('/user');
$userName = $uresponse->user_name;
} catch (WePayException $e) {
$uresponse['status'] = '0';
$uresponse['message'] = $e->getMessage();
return $uresponse;
}
}
$response = $wepay->request('account/create/', array(
'name' => $userName,
'description' => $description,
'reference_id' => '"' . $user_id . '"'
));
} catch (WePayException $e) {
$response['status'] = '0';
$response['message'] = $e->getMessage();
return $response;
}