Отправить ссылку для оплаты через PayPal

Отправить ссылку для оплаты через PayPal

Я использую Google Form для записи ответов разных друзей. В зависимости от их ответов они будут получать разные счета. Я хочу создать скрипт Bash, который...

  1. Загружайте ответы каждые 3 минуты
  2. Проверьте, есть ли новые ответы за последние 3 минуты
  3. Рассчитать их счет
  4. Отправьте электронное письмо со счетом PayPal.

У меня проблема с пунктом номер 4. У меня стандартный аккаунт на Paypal. Я понимаю, как использовать опцию email an invoiceпрямой отправки счета по электронной почте. Однако это решение не позволяет мне

  • Автоматическая отправка счета сразу после того, как пользователь ответил на форму Google.
  • Отправка счета-фактуры на основе ответов на Google-форму.

Обратите внимание: важно, чтобы я мог отслеживать, кто заплатил, по идентификационному номеру.

Какое у меня есть решение? Например, могу ли я создать около 40 типов счетов, соответствующих 40 различным URL-адресам, а затем просто отправлять URL-адреса по электронной почте?

решение1

Это решение не PayPal, но я думаю, что оно того стоит.

Вы можете использоватьAPI FreeAgentгде вы можете создать счет-фактуру через curl, например:

curl https://api.sandbox.freeagent.com/v2/invoices \
 -H "Authorization: Bearer XXXXXXX" \
 -H "Accept: application/xml" \
 -H "Content-Type: application/json" \
 -X POST  \
 -d '{
    "invoice": {
        "contact": "https://api.sandbox.freeagent.com/v2/contacts/1",
        "status": "Draft",
        "dated_on": "2012-08-16",
        "currency": "GBP",
        "exchange_rate": "1.0",
        "comments": "Added by api",
        "omit_header": false,
        "payment_terms_in_days": 30,
        "invoice_items": [
            {
                "description": "Test InvoiceItem",
                "item_type": "Hours",
                "price": "112.0",
                "quantity": "1.0"
            }
        ]
    }
}'

Источник кода:Создать счет-фактуру через API - PHP cURL - Sandbox

решение2

В этом примере создается счет-фактура с CreateInvoiceиспользованиемAPI выставления счетов PayPal:

curl -s --insecure
-H "X-PAYPAL-SECURITY-USERID: Your_API_username"
-H "X-PAYPAL-SECURITY-PASSWORD: Your_API_password"
-H "X-PAYPAL-SECURITY-SIGNATURE: Your_API_signature"
-H "X-PAYPAL-REQUEST-DATA-FORMAT: NV"
-H "X-PAYPAL-RESPONSE-DATA-FORMAT: NV"
-H "X-PAYPAL-APPLICATION-ID: Your_AppID" https://svcs.sandbox.paypal.com/Invoice/CreateInvoice
-d
"requestEnvelope.errorLanguage=en_US
&invoice.merchantEmail=merchant%40domain.com
&invoice.payerEmail=jbui-us-business2%40paypal.com
&invoice.currencyCode=USD
&invoice.itemList.item(0).name=Banana+Leaf+--+001
&invoice.itemList.item(0).description=Banana+Leaf
&invoice.itemList.item(0).quantity=1
&invoice.itemList.item(0).unitPrice=1
&invoice.itemList.item(0).taxName=Tax1
&invoice.itemList.item(0).taxRate=10.25
&invoice.paymentTerms=Net10
&invoice.logoUrl=https%3A%2F%2Fwww.example.com%2FYour_logo.jpg"

Этот, отправил бы его ( SendInvoice):

curl -s --insecure
-H "X-PAYPAL-SECURITY-USERID: Your_API_username"
-H "X-PAYPAL-SECURITY-PASSWORD: Your_API_password"
-H "X-PAYPAL-SECURITY-SIGNATURE: Your_API_signature"
-H "X-PAYPAL-REQUEST-DATA-FORMAT: NV"
-H "X-PAYPAL-RESPONSE-DATA-FORMAT: NV"
-H "X-PAYPAL-APPLICATION-ID: Your_AppID" https://svcs.sandbox.paypal.com/Invoice/SendInvoice
-d
"requestEnvelope.errorLanguage=en_US
&invoiceID=INV2-RVY9-UWTW-64HZ-BR9W"

Чтобы создать и отправить одновременно, используйте CreateAndSendInvoice:

curl -s --insecure
-H "X-PAYPAL-SECURITY-USERID: Your_API_username"
-H "X-PAYPAL-SECURITY-PASSWORD: Your_API_password"
-H "X-PAYPAL-SECURITY-SIGNATURE: Your_API_signature"
-H "X-PAYPAL-REQUEST-DATA-FORMAT: NV"
-H "X-PAYPAL-RESPONSE-DATA-FORMAT: NV"
-H "X-PAYPAL-APPLICATION-ID: Your_AppID" https://svcs.sandbox.paypal.com/Invoice/CreateAndSendInvoice
-d
"requestEnvelope.errorLanguage=en_US
&invoice.merchantEmail=merchant%40domain.com
&invoice.payerEmail=jbui-us-business2%40paypal.com
&invoice.currencyCode=USD
&invoice.itemList.item(0).name=Banana+Leaf+--+001
&invoice.itemList.item(0).description=Banana+Leaf
&invoice.itemList.item(0).quantity=1
&invoice.itemList.item(0).unitPrice=1
&invoice.itemList.item(0).taxName=Tax1
&invoice.itemList.item(0).taxRate=10.25
&invoice.paymentTerms=Net10
&invoice.logoUrl=https%3A%2F%2Fwww.example.com%2FYour_logo.jpg"

Связанный контент