CalculationService.php 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?php
  2. // File generated from our OpenAPI spec
  3. namespace Stripe\Service\Tax;
  4. /**
  5. * @phpstan-import-type RequestOptionsArray from \Stripe\Util\RequestOptions
  6. * @psalm-import-type RequestOptionsArray from \Stripe\Util\RequestOptions
  7. */
  8. class CalculationService extends \Stripe\Service\AbstractService
  9. {
  10. /**
  11. * Retrieves the line items of a tax calculation as a collection, if the
  12. * calculation hasn’t expired.
  13. *
  14. * @param string $id
  15. * @param null|array $params
  16. * @param null|RequestOptionsArray|\Stripe\Util\RequestOptions $opts
  17. *
  18. * @throws \Stripe\Exception\ApiErrorException if the request fails
  19. *
  20. * @return \Stripe\Collection<\Stripe\Tax\CalculationLineItem>
  21. */
  22. public function allLineItems($id, $params = null, $opts = null)
  23. {
  24. return $this->requestCollection('get', $this->buildPath('/v1/tax/calculations/%s/line_items', $id), $params, $opts);
  25. }
  26. /**
  27. * Calculates tax based on the input and returns a Tax <code>Calculation</code>
  28. * object.
  29. *
  30. * @param null|array $params
  31. * @param null|RequestOptionsArray|\Stripe\Util\RequestOptions $opts
  32. *
  33. * @throws \Stripe\Exception\ApiErrorException if the request fails
  34. *
  35. * @return \Stripe\Tax\Calculation
  36. */
  37. public function create($params = null, $opts = null)
  38. {
  39. return $this->request('post', '/v1/tax/calculations', $params, $opts);
  40. }
  41. }