Как получить идентификатор транзакции после успешной подписки - PullRequest
0 голосов
/ 26 сентября 2018

Я работаю на платформе, предлагающей услуги.При создании новой подписки создается новая транзакция для первого биллинга.Как я могу получить доступ к идентификатору транзакции?

У меня есть форма с пользовательским интерфейсом Braintree, и мой бэкэнд в настоящее время выглядит следующим образом:

if (!auth()->user()->subscribed('main')) {
     $subscription = auth()->user()->newSubscription('main', 'membership-monthly')->create($request->payment_method_nonce, []);
     dd($subscription);
}

Это успешно создает новую подписку!

Теперь я хочу получить доступ к идентификатору первой платежной транзакции этой подписки.enter image description here Как мне этого добиться?

Ответы [ 3 ]

0 голосов
/ 26 сентября 2018

Возможно, вы должны предоставить второй параметр для создания функции, попробуйте это:

if (!auth()->user()->subscribed('main')) {
    $payload = array();
    $subscription = auth()
         ->user()
         ->newSubscription('main', 'membership-monthly')
         ->create($request->payment_method_nonce, $payload);
    dd($subscription);
    dd($payload);

}
0 голосов
/ 26 сентября 2018

Из документации кассира Laravel схема базы данных выглядит следующим образом:

Schema::create('subscriptions', function ($table) {
    $table->increments('id');
    $table->unsignedInteger('user_id');
    $table->string('name');
    $table->string('braintree_id');
    $table->string('braintree_plan');
    $table->integer('quantity');
    $table->timestamp('trial_ends_at')->nullable();
    $table->timestamp('ends_at')->nullable();
    $table->timestamps();
});

Я бы предположил, что получение подписки в вашем случае будет похоже на $subscription->braintree_id

0 голосов
/ 26 сентября 2018

Если у вас есть связь между подпиской и транзакциями, вам нужен доступ так:

foreach($subscription->transactions() as $transaction){
   //here you access yo transactions id
   dd($transaction);
}

Я надеюсь, что смогу вам помочь

...