Bank::fxRate()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 6
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 3
c 1
b 0
f 0
dl 0
loc 6
rs 10
cc 1
nc 1
nop 1
1
<?php
2
3
namespace Digikraaft\Flutterwave;
4
5
class Bank extends ApiResource
6
{
7
    const OBJECT_NAME = 'banks';
8
9
    /**
10
     * @param string $country
11
     * @return array|object
12
     *
13
     * @link https://developer.flutterwave.com/reference#get-all-banks
14
     */
15
    public static function list(string $country)
16
    {
17
        $url = static::endPointUrl($country);
18
19
        return static::staticRequest('GET', $url);
20
    }
21
    /**
22
     * @param string $bankId
23
     *
24
     * @link https://developer.flutterwave.com/reference#get-bank-branches
25
     * @return array|object
26
     */
27
    public static function branches(string $bankId)
28
    {
29
        $url = static::endPointUrl("{$bankId}/branches");
30
31
        return static::staticRequest('GET', $url);
32
    }
33
    /**
34
     * @param array $params
35
     *
36
     * @link https://developer.flutterwave.com/reference#resolve-account-transfer-details
37
     * @return array|object
38
     */
39
    public static function resolveAccountNumber(array $params)
40
    {
41
        self::validateParams($params, true);
42
        $url = urlencode("accounts/resolve");
43
44
        return static::staticRequest('POST', $url);
45
    }
46
47
    /**
48
     * @param string $bvn
49
     *
50
     * @link https://developer.flutterwave.com/reference#resolve-bvn-details
51
     *
52
     * @return array|object
53
     */
54
    public static function resolveBvn(string $bvn)
55
    {
56
        $url = urlencode("kyc/bvns/{$bvn}");
57
58
        return static::staticRequest('GET', $url);
59
    }
60
61
    /**
62
     * @param string $bin
63
     *
64
     * @link https://developer.flutterwave.com/reference#resolve-card-bins
65
     *
66
     * @return array|object
67
     */
68
    public static function resolveCardBin(string $bin)
69
    {
70
        $url = "card-bins/{$bin}";
71
72
        return static::staticRequest('GET', $url);
73
    }
74
75
    /**
76
     * @param array $params
77
     * @return array|object
78
     *
79
     * @link https://developer.flutterwave.com/reference#fx-rates
80
     */
81
    public static function fxRate(array $params)
82
    {
83
        $url = "rates";
84
        $url .= '?'.http_build_query($params);
85
86
        return static::staticRequest('GET', $url);
87
    }
88
}
89