r0aringthunder/ramp-api

一个面向 laravel 的包,用于与 ramp.com API 通信。

v1.0.1 2024-08-16 23:19 UTC

README

可用服务

发布 ramp 配置

命令

php artisan vendor:publish --tag=rampapi-config

published config/ramp.php

<?php

return [
    'client_id' => env('RAMP_CLIENT_ID', 'your_client_id'),
    'client_secret' => env('RAMP_CLIENT_SECRET', 'your_client_secret'),
    'prod_ready' => env('PROD_READY', false),
    'scopes' => env('RAMP_SCOPES', 'accounting:read accounting:write bills:read business:read cards:read cards:write cashbacks:read departments:read departments:write entities:read leads:read leads:write limits:read limits:write locations:read locations:write memos:read merchants:read receipt_integrations:read receipt_integrations:write receipts:read reimbursements:read spend_programs:read spend_programs:write statements:read transactions:read transfers:read users:read users:write'),
];

示例

获取用户列表

use R0aringthunder\RampApi\Ramp;

public function rampUsers()
{
  $ramp = new Ramp();
  $users = $ramp->users->listUsers();
  return response()->json($users);
}

获取所有卡片

use R0aringthunder\RampApi\Ramp;

public function fetchCards()
{
    $ramp = new Ramp();
    $cards = $ramp->cards->listCards();
    return response()->json($cards['data']);
}

获取单个卡片

use R0aringthunder\RampApi\Ramp;

public function fetchCard()
{
  $ramp = new Ramp();
  $card = $ramp->cards->fetchCard('[CARD ID]');
  return response()->json($card);
}

重要

实施时,API和Ramp仪表板大约需要5分钟同步,但API对更改立即做出反应。

重要

Ramp只接受以下文件类型:png, webp, heif, pdf, heic, jpg, jpeg

将收据上传到交易

use R0aringthunder\RampApi\Ramp;
use Illuminate\Http\Request;

public function uploadReceipt(Request $request)
{
  $ramp = new Ramp();

  $file = $request->file('receipts');
  $path = $file->getRealPath();

  return $ramp->receipts->upload(
      [
          'user_id' => $request->input('ramp_user_id'),
          'transaction_id' => $request->input('ramp_transaction_id'),
      ],
      $path
  );
}

提示

$path处,您可以使用上传的文件或文件的链接(例如,S3链接)。

更多示例即将到来...