Skip to content

Commit 0b013c4

Browse files
Merge pull request #99 from hyperwallet/feature/DTPAYWONE-568-add-missing-webhook-type-v3
DTPAYWONE-568 Add missing webhook types for V3
2 parents ff10ee6 + 34e6d36 commit 0b013c4

File tree

2 files changed

+56
-0
lines changed

2 files changed

+56
-0
lines changed

src/Hyperwallet/Model/WebhookNotification.php

+12
Original file line numberDiff line numberDiff line change
@@ -46,10 +46,22 @@ public function __construct(array $properties = array()) {
4646
$this->object = new BankAccount($properties['object']);
4747
} else if (strpos($properties['type'], 'USERS.PREPAID_CARDS') === 0) {
4848
$this->object = new PrepaidCard($properties['object']);
49+
} else if (strpos($properties['type'], 'USERS.PAYPAL_ACCOUNTS') === 0) {
50+
$this->object = new PayPalAccount($properties['object']);
51+
} else if (strpos($properties['type'], 'USERS.VENMO_ACCOUNTS') === 0) {
52+
$this->object = new VenmoAccount($properties['object']);
53+
} else if (strpos($properties['type'], 'USERS.BANK_CARDS') === 0) {
54+
$this->object = new BankCard($properties['object']);
55+
} else if (strpos($properties['type'], 'USERS.PAPER_CHECKS') === 0) {
56+
$this->object = new PaperCheck($properties['object']);
4957
} else if (strpos($properties['type'], 'USERS') === 0) {
5058
$this->object = new User($properties['object']);
5159
} else if (strpos($properties['type'], 'PAYMENTS') === 0) {
5260
$this->object = new Payment($properties['object']);
61+
} else if (strpos($properties['type'], 'TRANSFERS.REFUND') === 0) {
62+
$this->object = new TransferRefund($properties['object']);
63+
} else if (strpos($properties['type'], 'TRANSFERS') === 0) {
64+
$this->object = new Transfer($properties['object']);
5365
}
5466
}
5567
}

tests/Hyperwallet/Tests/Model/WebhookNotificationTest.php

+44
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,15 @@
22
namespace Hyperwallet\Tests\Model;
33

44
use Hyperwallet\Model\BankAccount;
5+
use Hyperwallet\Model\BankCard;
6+
use Hyperwallet\Model\PaperCheck;
57
use Hyperwallet\Model\Payment;
8+
use Hyperwallet\Model\PayPalAccount;
69
use Hyperwallet\Model\PrepaidCard;
10+
use Hyperwallet\Model\Transfer;
11+
use Hyperwallet\Model\TransferRefund;
712
use Hyperwallet\Model\User;
13+
use Hyperwallet\Model\VenmoAccount;
814
use Hyperwallet\Model\WebhookNotification;
915

1016
class WebhookNotificationTest extends ModelTestCase {
@@ -94,7 +100,45 @@ public function notificationTypeProvider() {
94100
'USERS.PREPAID_CARDS.UPDATED.STATUS.COMPLIANCE_HOLD' => array('USERS.PREPAID_CARDS.UPDATED.STATUS.COMPLIANCE_HOLD', PrepaidCard::class),
95101
'USERS.PREPAID_CARDS.UPDATED.STATUS.KYC_HOLD' => array('USERS.PREPAID_CARDS.UPDATED.STATUS.KYC_HOLD', PrepaidCard::class),
96102

103+
'USERS.PAYPAL_ACCOUNTS.CREATED' => array('USERS.PAYPAL_ACCOUNTS.CREATED', PayPalAccount::class),
104+
'USERS.PAYPAL_ACCOUNTS.UPDATED.STATUS.ACTIVATED' => array('USERS.PAYPAL_ACCOUNTS.UPDATED.STATUS.ACTIVATED', PayPalAccount::class),
105+
'USERS.PAYPAL_ACCOUNTS.UPDATED.STATUS.DE_ACTIVATED' => array('USERS.PAYPAL_ACCOUNTS.UPDATED.STATUS.DE_ACTIVATED', PayPalAccount::class),
106+
'USERS.PAYPAL_ACCOUNTS.UPDATED.STATUS.VERIFIED' => array('USERS.PAYPAL_ACCOUNTS.UPDATED.STATUS.VERIFIED', PayPalAccount::class),
107+
'USERS.PAYPAL_ACCOUNTS.UPDATED.STATUS.INVALID' => array('USERS.PAYPAL_ACCOUNTS.UPDATED.STATUS.INVALID', PayPalAccount::class),
108+
109+
'USERS.VENMO_ACCOUNTS.CREATED' => array('USERS.VENMO_ACCOUNTS.CREATED', VenmoAccount::class),
110+
'USERS.VENMO_ACCOUNTS.UPDATED.STATUS.ACTIVATED' => array('USERS.VENMO_ACCOUNTS.UPDATED.STATUS.ACTIVATED', VenmoAccount::class),
111+
'USERS.VENMO_ACCOUNTS.UPDATED.STATUS.DE_ACTIVATED' => array('USERS.VENMO_ACCOUNTS.UPDATED.STATUS.DE_ACTIVATED', VenmoAccount::class),
112+
'USERS.VENMO_ACCOUNTS.UPDATED.STATUS.VERIFIED' => array('USERS.VENMO_ACCOUNTS.UPDATED.STATUS.VERIFIED', VenmoAccount::class),
113+
'USERS.VENMO_ACCOUNTS.UPDATED.STATUS.INVALID' => array('USERS.VENMO_ACCOUNTS.UPDATED.STATUS.INVALID', VenmoAccount::class),
114+
115+
'USERS.BANK_CARDS.CREATED' => array('USERS.BANK_CARDS.CREATED', BankCard::class),
116+
'USERS.BANK_CARDS.UPDATED.STATUS.ACTIVATED' => array('USERS.BANK_CARDS.UPDATED.STATUS.ACTIVATED', BankCard::class),
117+
'USERS.BANK_CARDS.UPDATED.STATUS.DE_ACTIVATED' => array('USERS.BANK_CARDS.UPDATED.STATUS.DE_ACTIVATED', BankCard::class),
118+
'USERS.BANK_CARDS.UPDATED.STATUS.VERIFIED' => array('USERS.BANK_CARDS.UPDATED.STATUS.VERIFIED', BankCard::class),
119+
'USERS.BANK_CARDS.UPDATED.STATUS.INVALID' => array('USERS.BANK_CARDS.UPDATED.STATUS.INVALID', BankCard::class),
120+
121+
'USERS.PAPER_CHECKS.CREATED' => array('USERS.PAPER_CHECKS.CREATED', PaperCheck::class),
122+
'USERS.PAPER_CHECKS.UPDATED' => array('USERS.PAPER_CHECKS.UPDATED', PaperCheck::class),
123+
'USERS.PAPER_CHECKS.UPDATED.STATUS.ACTIVATED' => array('USERS.PAPER_CHECKS.UPDATED.STATUS.ACTIVATED', PaperCheck::class),
124+
'USERS.PAPER_CHECKS.UPDATED.STATUS.DE_ACTIVATED' => array('USERS.PAPER_CHECKS.UPDATED.STATUS.DE_ACTIVATED', PaperCheck::class),
125+
'USERS.PAPER_CHECKS.UPDATED.STATUS.VERIFIED' => array('USERS.PAPER_CHECKS.UPDATED.STATUS.VERIFIED', PaperCheck::class),
126+
'USERS.PAPER_CHECKS.UPDATED.STATUS.INVALID' => array('USERS.PAPER_CHECKS.UPDATED.STATUS.INVALID', PaperCheck::class),
127+
97128
'PAYMENTS.CREATED' => array('PAYMENTS.CREATED', Payment::class),
129+
'PAYMENTS.UPDATED.STATUS.SCHEDULED' => array('PAYMENTS.UPDATED.STATUS.SCHEDULED', Payment::class),
130+
'PAYMENTS.UPDATED.STATUS.PENDING_ACCOUNT_ACTIVATION' => array('PAYMENTS.UPDATED.STATUS.PENDING_ACCOUNT_ACTIVATION', Payment::class),
131+
'PAYMENTS.UPDATED.STATUS.PENDING_ID_VERIFICATION' => array('PAYMENTS.UPDATED.STATUS.PENDING_ID_VERIFICATION', Payment::class),
132+
'PAYMENTS.UPDATED.STATUS.PENDING_TAX_VERIFICATION' => array('PAYMENTS.UPDATED.STATUS.PENDING_TAX_VERIFICATION', Payment::class),
133+
134+
135+
'TRANSFERS.UPDATED.STATUS.SCHEDULED' => array('TRANSFERS.UPDATED.STATUS.SCHEDULED', Transfer::class),
136+
'TRANSFERS.UPDATED.STATUS.IN_PROGRESS' => array('TRANSFERS.UPDATED.STATUS.IN_PROGRESS', Transfer::class),
137+
'TRANSFERS.UPDATED.STATUS.COMPLETED' => array('TRANSFERS.UPDATED.STATUS.COMPLETED', Transfer::class),
138+
'TRANSFERS.UPDATED.STATUS.FAILED' => array('TRANSFERS.UPDATED.STATUS.FAILED', Transfer::class),
139+
140+
'TRANSFERS.REFUND.CREATED' => array('TRANSFERS.REFUND.CREATED', TransferRefund::class),
141+
'TRANSFERS.REFUND.UPDATED' => array('TRANSFERS.REFUND.UPDATED', TransferRefund::class),
98142

99143
'TEST' => array('TEST', null),
100144
);

0 commit comments

Comments
 (0)