2014-04-07 4 views
3

Stripe에서 Omnipay API를 사용하려고하는데 "Name", "Metadata"또는 "Zip"과 같은 추가 매개 변수를 전달할 수 없습니다.Omnipay Stripe Extra Parameters

나는 API가 내장되어 있지 않습니까?

답변

5

Omnipay는 Stripe 's가 아닌 자체 매개 변수 이름을 사용합니다. Omnipay는 다양한 지불 게이트웨이 간의 차이점을 대부분 추상화하려고하기 때문입니다.

는 지금의 omnipay/stripe 패키지는 이러한 매개 변수의 일부를 전송 지원하지 않습니다 (단 amount, currency, description, 지금 metadata). 현재 지원되는 매개 변수를 볼 수 있습니다

, 당신은 여전히 ​​쉽게 사용자 정의 매개 변수를 추가 할 수있는 기본 스트라이프 요청에 액세스 할 수 있습니다 말했다

https://github.com/omnipay/stripe/blob/master/src/Message/AuthorizeRequest.php

:

$request = $this->stripe_gateway->purchase([ 
    'amount' => $amount, 
    'token' => $stripeToken, 
    'metadata' => ['foo' => 'bar'], 
]); 
$data = $request->getData(); 

$data['zip_address'] = '12345'; 
$data['another_custom_parameter'] = 'wow'; 
$response = $request->sendData($data); 

참고 :

$data = $request->getData(); 
$response = $request->sendData($data); 

은 정확히 다음과 같이 호출합니다.

$response = $request->send(); 

또는 OmniPay Stripe 패키지에 추가 매개 변수를 추가 할 수있는 끌어 오기 요청을 만들 수 있습니다. 방금 metadata 매개 변수를 다음과 같이 추가했습니다.

https://github.com/omnipay/stripe/commit/99c82dc42c7c0b9ec58d8c4fb917f3dc5d1c23e2